すべてのプロダクト
Search
ドキュメントセンター

Platform For AI:Stepfun Step1X-Edit モデルのワンクリックデプロイ

最終更新日:Oct 17, 2025

Step1X-Edit は、編集の精度と画像の忠実度を向上させるために設計された、Stepfun の先進的なオープンソース画像編集モデルです。マルチモーダル言語技術と拡散画像デコーダーを統合することにより、このモデルはさまざまな編集タスクで優れたパフォーマンスを発揮し、プロフェッショナルな画像編集のニーズに応えます。Platform for AI (PAI) はこのモデルを完全にサポートしています。PAI モデルギャラリーでワンクリックでモデルをデプロイして呼び出すことができます。

モデルの紹介

Stepfun は、Step1X-Edit 大規模画像編集モデルを正式にリリースし、オープンソース化しました。このモデルは、マルチモーダル大規模言語モデル (MLLM) と拡散画像トランスフォーマー (DiT) を組み合わせ、画像編集におけるパフォーマンスを大幅に向上させています。Step1X-Edit のパラメーター数は合計 190 億です。高精度の編集と画像の忠実度を提供し、いくつかの技術的利点を示します:

  • 正確な意味解析: このモデルは、ユーザーの編集命令を正確に理解し、意味レベルで解析します。これにより、編集結果がユーザーの意図と一致することが保証されます。

  • ID の一貫性: 編集中に、モデルは画像内の ID の一貫性を維持します。これにより、主要な被写体の特徴が影響を受けないことが保証されます。

  • 高精度の領域制御: このモデルは、特定の画像領域の正確な制御と編集をサポートします。これにより、詳細な画像修正が可能になります。

  • 豊富なタスクサポート: このモデルは、テキストの置き換えやスタイルの転送など、最大 11 種類の一般的な画像編集タスクをサポートします。これにより、さまざまな画像編集シナリオにおける幅広いユーザーニーズに対応します。

  • 優れたパフォーマンス: 最新の GEdit-Bench 画像編集ベンチマークにおいて、Step1X-Edit は意味的一貫性、画質、および総合スコアで非常に優れたパフォーマンスを発揮します。これは、画像編集分野におけるその主導的な地位を示しています。

Step1X-Edit の詳細については、「stepfun-ai/Step1X-Edit」をご参照ください。

環境要件

Stepfun Step1X-Edit モデルをデプロイするには、48 GB 以上のビデオメモリを搭載した GPU が必要です。

モデルのデプロイ

  1. モデルギャラリーページに移動します。

    1. PAI コンソール にログオンします。

    2. 左上隅で、リージョンを選択します。

    3. 左側のナビゲーションウィンドウで、[ワークスペース管理] を選択します。対象のワークスペースの名前をクリックして開きます。

    4. 左側のナビゲーションウィンドウで、[クイックスタート] > [モデルギャラリー] を選択します。

  2. モデルギャラリーページで、右側のモデルリストから [Stepfun Step1X-Edit] を検索し、モデルカードをクリックしてモデル詳細ページに移動します。

  3. 右上隅にある [デプロイ] をクリックします。推論サービス名とデプロイリソースを設定して、モデルを Elastic Algorithm Service (EAS) 推論サービスプラットフォームにデプロイします。

    image

モデルの呼び出し

デプロイされた Stepfun Step1X-Edit モデルは、Web アプリケーションから、または API を使用して呼び出すことができます。

Web アプリケーション

モデルサービスの詳細ページで、右上隅にある [WEB アプリの表示] をクリックして Web UI を開きます。

image

画像をアップロードし、プロンプトを入力してから [生成] をクリックして画像を生成します。

daf55879bf7aeed0c1695928c5452aa9

API 呼び出し

モデルサービスの詳細ページで、[呼び出し情報の表示] をクリックして、エンドポイントとトークンを取得します。

image

次の Python サンプルコードを使用して API 呼び出しを行うことができます:

import requests
import time

EAS_URL = "<YOUR_EAS_URL>"
EAS_TOKEN = "<YOUR_EAS_TOKEN>"


class TaskStatus:
    PENDING = "pending"
    PROCESSING = "processing"
    COMPLETED = "completed"
    FAILED = "failed"


response = requests.post(
    f"{EAS_URL}/generate",
    headers={
        "Authorization": f"{EAS_TOKEN}"
    },
    json={
        "prompt": "A spaceship orbiting Earth",
        "seed": 42,
        "neg_prompt": "low quality, blurry",
        "infer_steps": 28,
        "cfg_scale": 6,
        "size":1024,
        "image": "<The Base64 encoding of your image>"
    }
)
task_id = response.json()["task_id"]
print(f"Task ID: {task_id}")

while True:
    status_response = requests.get(
        f"{EAS_URL}/tasks/{task_id}/status",
        headers={
            "Authorization": f"{EAS_TOKEN}"
        })
    status = status_response.json()

    print(f"Current status: {status['status']}")

    if status["status"] == TaskStatus.COMPLETED:
        print("Image ready!")
        break
    elif status["status"] == TaskStatus.FAILED:
        print(f"Failed: {status['error']}")
        exit(1)

    time.sleep(5)

image_response = requests.get(
    f"{EAS_URL}/tasks/{task_id}/image",
    headers={
        "Authorization": f"{EAS_TOKEN}"
    })
with open("generated_image.jpg", "wb") as f:
    f.write(image_response.content)

print("Image downloaded successfully!")

注: EAS_URLEAS_TOKEN を、取得したエンドポイントとトークンに置き換えてください。

参考資料