OpenAPI 参考

Modelink API · 图像

Modelink 图像生成 API,提供基于 OpenAI 格式的同步生成与基于 Fal 格式的异步任务能力。Fal 格式接口使用 Authorization: Key {api_key};其他接口使用 Bearer 鉴权。

版本 1.0.0

对话接口 - 支持文生图、图生图和纯对话

POST
/v1/chat/completions

通过 OpenAI Chat Completions 格式同步调用 Gemini 生图模型。接口支持文生图、图生图和纯对话。

调用模式:普通响应和 stream: true 的流式响应都在当前请求连接内返回结果,区别于 Fal queue 提交任务后再查询结果的异步模式。

接口特点

  • 支持流式输出:可以实时接收生成进度
  • 展示思考过程:返回模型的推理过程(reasoning_content)
  • 更灵活的交互:可以只聊天不生图,也可以生成图像
  • 多模态支持:在对话中自然地混合文本和图像输入

不同模型支持的分辨率和画幅比例可能不同,请按所选模型的能力使用 image_config

认证方式

BearerAuthBEARER

Authorization 请求头中传入 API Key 或访问令牌,格式:Bearer {token}

Bearer 格式:JWT

请求体

请求体属性

  • modelstring, 必填

    需要调用的 Gemini 生图模型名称,具体可用模型以模型列表为准。

  • streamboolean

    是否启用流式输出

    • true:流式返回,可实时接收生成进度
    • false:等待生成完成后返回完整结果

    default: false

  • temperaturenumber<float>

    生成温度,取值范围:0.0-2.0

    minimum: 0; maximum: 2

  • top_pnumber<float>

    核采样参数,取值范围:0.0-1.0

    minimum: 0; maximum: 1

  • top_kinteger

    Top-K 采样参数,最小值:1

    minimum: 1

请求

POST/v1/chat/completions
curl https://api.qnaigc.com/v1/chat/completions \
  --request POST \
  --header 'Authorization: Bearer YOUR_BEARER_AUTH' \
  --header 'Accept: application/json' \
  --header 'Content-Type: application/json' \
  --data '{
  "model": "gemini-3.0-pro-image-preview",
  "stream": false,
  "messages": [
    {
      "role": "user",
      "content": "画一张电影质感的海岸公路照片"
    }
  ],
  "image_config": {
    "aspect_ratio": "16:9",
    "image_size": "2K"
  }
}'

响应

object

请求成功

响应体属性

  • idstring, 必填

    对话完成 ID

  • createdinteger<int64>, 必填

    响应创建时间戳(Unix 时间戳,秒)

  • modelstring, 必填

    使用的模型名称

    • indexinteger

      结果索引

    • finish_reasonstring

      完成原因,通常为 stop

    • prompt_tokensinteger

      输入 token 数

    • completion_tokensinteger

      输出 token 数

    • total_tokensinteger

      总 token 数

响应

application/json
{
  "id": "chatcmpl-2f8236e9f2b34bd391289576d0e23e72",
  "object": "chat.completion",
  "created": 1764574464,
  "model": "gemini-3.1-flash-image-preview",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "",
        "reasoning_content": "**Analyzing the Icon Redesign**\n\nI'm focused on the icon's elements...",
        "images": [
          {
            "type": "image_url",
            "image_url": {
              "url": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABYAAAAMACAIAAAASU1SbA.........."
            },
            "index": 0
          }
        ]
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 19,
    "completion_tokens": 1322,
    "total_tokens": 1341,
    "prompt_tokens_details": {
      "text_tokens": 19
    },
    "completion_tokens_details": {
      "reasoning_tokens": 202,
      "image_tokens": 1120
    }
  }
}