Step1X-Edit是階躍星辰開源的影像編輯模型,結合多模態語言模型與擴散映像解碼器,支援多種影像編輯任務。PAI Model Gallery已支援該模型,可一鍵部署和調用。
模型簡介
階躍星辰開源了影像編輯模型Step1X-Edit。該模型結合多模態大型語言模型(MLLM)與擴散映像解碼器(DiT),總參數量達到19B,具備高精度編輯能力和映像逼真度,主要優勢如下:
語義精準解析:精確理解編輯指令,確保編輯結果符合使用者意圖。
身份一致性保持:編輯時保持映像中的身份一致性,確保主體特徵不受影響。
高精度地區級控制:支援對映像特定地區進行精確編輯,實現細粒度修改。
豐富的任務支援:支援11類高頻影像編輯任務,包括文字替換、風格遷移等。
卓越的效能表現:在影像編輯基準GEdit-Bench中,語義一致性、映像品質和綜合得分三項指標均表現優異。
更多關於Step1X-Edit資訊,請參見stepfun-ai/Step1X-Edit。
運行環境要求
部署階躍星辰 Step1X-Edit模型,建議使用顯存容量為48GB或以上的卡型。
模型部署
-
進入Model Gallery頁面。
-
登入PAI控制台。
-
在頂部左上方根據實際情況選擇地區。
-
在左側導覽列選擇工作空间列表,單擊指定工作空間名稱,進入對應工作空間內。
-
在左側導覽列選擇快速开始 > Model Gallery。
-
在Model Gallery頁面右側的模型列表中,搜尋階躍星辰 Step1X-Edit,並單擊該模型卡片,進入模型詳情頁面。
單擊右上方部署,佈建服務名稱和資源資訊,部署到EAS推理服務。
在部署配置面板中,部署方式選擇單節點標準部署,資源類型選擇公用資源,執行個體數設定為1,單擊部署。
模型調用
階躍星辰 Step1X-Edit支援Web應用和API兩種調用方式:
Web應用
在模型服務詳情頁單擊右上方查看WEB应用,進入WebUI頁面。
上傳圖片並輸入Prompt,單擊Generate生圖。
WebUI 頁面還支援配置 Negative Prompt、Seed、Inference Steps、cfg_scale 和 Size_level 等生圖參數。
API調用
在模型服務詳情頁單擊查看调用信息,即可擷取服務地址和Token資訊。
通過以下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_URL和EAS_TOKEN替換為實際的服務地址和Token。