메인 콘텐츠로 건너뛰기
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 작업을 사용하며, 위의 플레이그라운드에는 일반 텍스트 채팅이 미리 입력되어 있습니다. 아래 내용은 단일 요청에서 이미지, 오디오, 비디오 또는 혼합 미디어를 분석하기 위해 contents[].parts에 추가할 수 있는 Gemini 네이티브 멀티모달 필드를 설명합니다.
각 파트는 텍스트 지시와 함께 인라인 데이터(base64로 인코딩된 바이트와 MIME 유형)를 포함할 수 있어, 모델이 한 번의 호출로 여러 모달리티에 걸쳐 추론할 수 있습니다.

Gemini 네이티브 요청 필드

플레이그라운드에 표시되는 일반적인 contentsgenerationConfig 필드는 멀티모달 인식을 위해 다음과 같은 중첩 구조를 허용합니다.
필드유형필수설명
contents[].rolestring아니요턴의 역할입니다 (예: user).
contents[].partsarray콘텐츠 파트(텍스트 및/또는 인라인 미디어)의 순서가 있는 목록입니다.
contents[].parts[].textstring아니요모델에 대한 텍스트 지시 또는 질문입니다.
contents[].parts[].inlineDataobject아니요이미지, 오디오 또는 비디오 이해를 위한 인라인 미디어 페이로드입니다.
contents[].parts[].inlineData.mimeTypestring아니요인라인 데이터의 MIME 유형입니다 (예: image/jpeg, audio/mp3, video/mp4).
contents[].parts[].inlineData.datastring아니요base64로 인코딩된 미디어 바이트입니다.
하나의 턴에서 여러 파트를 혼합할 수 있습니다 — 예를 들어 지시 사항이 담긴 text 파트 다음에 분석할 미디어를 담은 하나 이상의 inlineData 파트를 추가할 수 있습니다.

예시: 이미지 분석

{
  "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
promptTokenCount, candidatesTokenCount, totalTokenCount를 포함한 토큰 사용 메타데이터입니다. 인라인 미디어(이미지, 오디오, 비디오)는 텍스트 파트와 별도로 추가적인 프롬프트 토큰을 소비합니다.

응답 예시

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.