Gemini Stream Generate Content
Gemini Stream Generate Content API로 SSE 스트리밍 생성 결과를 수신합니다.
Stream Generate Content API는 일반 생성과 동일한 Content, Parts, Bearer 인증 및 생성 설정을 사용하며 단방향 SSE로 GenerateContentResponse 데이터 청크를 계속 반환합니다. WebSocket 기반 양방향 Live API와는 다릅니다.
클라이언트는 빈 줄 경계로 각 SSE data:를 파싱한 후 텍스트 또는 Structured Output 조각을 순서대로 연결해야 합니다. 전체 응답 스트림에 한 번에 JSON.parse를 실행하면 안 됩니다. 중간 청크에는 finishReason이 없을 수 있습니다. usageMetadata가 나타나면 최신 값을 유지해야 합니다. 동일한 responseId는 같은 생성의 모든 청크를 연결합니다. candidates가 없으면 promptFeedback을 확인하세요.
/v1beta/models/{model}:streamGenerateContentSSE를 통해 GenerateContentResponse 데이터 청크를 계속 반환합니다.
인증
bearerAuth Authorization Header에 Bearer your-api-key를 사용합니다.
전달 위치: header
경로 매개변수
콘텐츠 생성에 사용할 모델 ID입니다. 경로는 자동으로 models/{model}로 구성됩니다.
"MODEL_ID"쿼리 매개변수
SSE 전송 형식을 선택합니다. 이 매개변수는 URL 쿼리 매개변수이며 GenerateContentRequest 요청 본문에 속하지 않습니다.
"sse"허용 값
- "sse"
요청 본문
Gemini는 Content와 Parts로 텍스트, 멀티모달, 도구 및 생성 설정을 표현합니다.
application/jsonuser와 model Content로 단일 턴 또는 여러 턴 텍스트 대화를 구성합니다.
- contents[]
- 순서대로 정렬한 대화 콘텐츠입니다.
- parts[].text
- 각 메시지의 텍스트 콘텐츠입니다.
- role
- 메시지 생성 주체입니다. 일반적인 값은 user 또는 model입니다.
{
"contents": [
{
"role": "user",
"parts": [
{
"text": "안녕하세요! 자신을 소개해 주세요."
}
]
}
]
}Content와 text Part로 단일 턴 또는 여러 턴 텍스트 대화를 구성합니다.
응답 본문
text/event-stream
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
SSE data 구조
아래 필드는 단일 data: 이벤트의 JSON을 설명하며 전체 SSE 텍스트 스트림을 나타내지 않습니다.