模型能力
Files API 集成
Imagine API 可从两个方向与 Files API 集成:
将文件引用为输入在所有 Imagine endpoint 中,使用已存储的 file_id 替代 URL 或 base64 输入。探索 持久保存生成的输出将 Imagine 生成的图像和视频保存到 Files 存储,并可选择发布可分享的 public URL。探索
默认情况下,Imagine 请求会在 临时 上返回一个imgen.x.ai,或在 vidgen.x.ai 上返回一个临时 URL,它只能在生成后的短时间内用于获取 asset。Files 集成让你可以在同一次请求中复用已存储的输入并持久保存输出。
组合使用:迭代循环
同时使用输入和输出最直接的收益,是可以始终通过 Files API 串联 Imagine 调用。直接引用上一次调用的 file_id 中已存储的 file_output,无需下载、重新上传或将文件设为公开。
import os
import xai_sdk
client = xai_sdk.Client(api_key=os.getenv("XAI_API_KEY"))
# 1. Generate an image and store it
gen = client.image.sample(
prompt="A futuristic city skyline at night",
model="grok-imagine-image-quality",
storage_options={"filename": "city.jpg"}, # store privately, no public URL needed
)
city = gen.file_output.file_id
# 2. Edit the stored image without re-uploading
edit = client.image.sample(
prompt="Add neon signs to the buildings",
model="grok-imagine-image-quality",
image_file_id=city,
storage_options={"filename": "city-neon.jpg"},
)
# 3. Animate the edited result into a video
vid = client.video.generate(
prompt="A camera pulls back through the city",
model="grok-imagine-video-1.5",
duration=5,
image_file_id=edit.file_output.file_id,
)
print(vid.url)相关内容
将文件引用为输入 — 输入方向的完整参考与示例。
持久保存生成的输出 — 输出方向的完整参考与示例。
Files → Public URLs — 任意文件的 public URL 生命周期,无论文件以何种方式创建。
管理文件 — 上传、列出、获取、更新和删除文件。