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

Platform For AI:Stepfun Step1X-Edit モデルのデプロイ

最終更新日:Aug 29, 2026

PAI のモデルギャラリーから Step1X-Edit 画像編集モデルを Elastic Algorithm Service (EAS) の推論サービスにデプロイします。

モデルの概要

Step1X-Edit は、Stepfun が提供するオープンソースの画像編集モデルです。マルチモーダル大規模言語モデル (MLLM) と拡散画像デコーダー (DiT) を組み合わせています。190 億のパラメーターを持つ Step1X-Edit は、次の機能を提供します:

  • 高精度なセマンティック解析:編集指示を正確に解釈し、ユーザーの意図に合致する結果を生成します。

  • 同一性の保持:編集時に被写体の同一性を維持し、主要な特徴を保持します。

  • 領域レベルの制御:領域レベルの精密な編集に対応し、きめ細かな変更を行えます。

  • 幅広いタスク対応:テキスト置換やスタイル変換など、一般的な 11 種類の画像編集タスクに対応します。

  • 優れたベンチマーク結果:GEdit-Bench ベンチマークにおいて、セマンティック一貫性、画像品質、総合性能で最高スコアを達成します。

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

リソース要件

Step1X-Edit をデプロイするには、少なくとも 48 GB のビデオメモリを搭載した GPU が必要です。

手順

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

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

    2. 上部メニューの左上で、リージョンを選択します。

    3. 左側メニューで ワークスペースリスト をクリックし、開きたいワークスペースの名前をクリックします。

    4. 左側メニューで、クイックスタート > [Model Gallery] を選択します。

  2. モデルギャラリーページで、モデルリストで Stepfun Step1X-Edit を検索し、モデルカードをクリックします。

  3. モデル詳細ページの右上隅にある デプロイメント をクリックします。サービス名とリソース設定を構成して、モデルを Elastic Algorithm Service (EAS) にデプロイします。

    デプロイ設定パネルで、[Deployment Method][single-node standard deployment] に、[Resource Type][public resource] に設定し、[Instance Count] を 1 に設定します。次に、[Deploy] をクリックします。

モデルの呼び出し

デプロイ後、Web アプリケーションまたは API で Step1X-Edit を呼び出すことができます。

Web アプリケーション

サービス詳細ページで、右上隅にある WEB アプリケーションの表示 をクリックして Web アプリケーションを開きます。

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

Web UI では、[Negative Prompt][Seed][Inference Steps][cfg_scale][Size_level] などの画像生成パラメーターも設定できます。

API 呼び出し

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

次の 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": "<画像をBase64でエンコードした文字列>"
    }
)
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 を、実際のエンドポイントとトークンに置き換えてください。

関連ドキュメント