跳轉到主要內容
POST
/
v1
/
models
/
{model}
:generateContent
Generate content (Gemini)
curl --request POST \
  --url https://api.dgrid.ai/v1/models/{model}:generateContent \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "contents": [
    {
      "role": "user",
      "parts": [
        {
          "text": "Hello from DGrid."
        }
      ]
    }
  ]
}
'
{
  "candidates": [
    {
      "content": {
        "role": "<string>",
        "parts": [
          {}
        ]
      },
      "finishReason": "<string>",
      "safetyRatings": [
        {}
      ]
    }
  ],
  "usageMetadata": {
    "promptTokenCount": 123,
    "candidatesTokenCount": 123,
    "totalTokenCount": 123
  }
}
本頁使用與 生成內容(Gemini) 相同的 generateContent 操作,上方 playground 已預先填入純文字對話範例。以下說明可加入 contents[].parts 的 Gemini 原生多模態欄位,讓你在單一請求中分析圖片、音訊、影片或混合媒體。
每個 part 都可以同時攜帶內嵌資料(base64 編碼位元組加上 MIME 類型)與文字指令,讓模型能在一次呼叫中跨模態推理。

Gemini 原生請求欄位

playground 中顯示的通用 contentsgenerationConfig 欄位,可接受以下多模態辨識的巢狀結構:
欄位類型必填說明
contents[].rolestring該輪對話的角色,例如 user
contents[].partsarray有順序的內容 parts 清單(文字與/或內嵌媒體)。
contents[].parts[].textstring提供給模型的文字指令或問題。
contents[].parts[].inlineDataobject用於圖片、音訊或影片理解的內嵌媒體負載。
contents[].parts[].inlineData.mimeTypestring內嵌資料的 MIME 類型,例如 image/jpegaudio/mp3video/mp4
contents[].parts[].inlineData.datastring以 base64 編碼的媒體位元組。
你可以在單一輪次中混合多個 parts,例如先放一個 text 指令,再放一個或多個包含待分析媒體的 inlineData parts。

範例:分析圖片

{
  "contents": [
    {
      "role": "user",
      "parts": [
        { "text": "Describe what is happening in this image." },
        {
          "inlineData": {
            "mimeType": "image/jpeg",
            "data": "<base64-encoded-image-bytes>"
          }
        }
      ]
    }
  ]
}

回應欄位

回應遵循標準 generateContent 結構。與媒體辨識最相關的欄位如下:
candidates
array
模型回傳的候選回應。
usageMetadata
object
Token 計量中繼資料,包括 promptTokenCountcandidatesTokenCounttotalTokenCount。內嵌媒體(圖片、音訊、影片)除了文字 parts 外,也會消耗 prompt tokens。

回應範例

200
{
  "candidates": [
    {
      "content": {
        "role": "model",
        "parts": [
          { "text": "The image shows a golden retriever sitting on a grassy lawn." }
        ]
      },
      "finishReason": "STOP",
      "safetyRatings": []
    }
  ],
  "usageMetadata": {
    "promptTokenCount": 264,
    "candidatesTokenCount": 18,
    "totalTokenCount": 282
  }
}

授權

Authorization
string
header
必填

Your DGrid API key. All endpoints use Authorization: Bearer <DGRID_API_KEY>.

路徑參數

model
string
必填

Target model ID, such as gemini-1.5-pro.

主體

application/json
contents
object[]

Input content array with role and parts.

generationConfig
object

Generation configuration.

回應

Generated content candidates.

candidates
object[]

Candidate responses returned by the model.

usageMetadata
object

Token accounting metadata.