/v1/messages), the response is OpenAI 호환 모드와는 완전히 다릅니다: the answer is a type된 content block array, and 스트리밍 uses Anthropic의 명명된 이벤트 SSE 프로토콜. 이 페이지는 두 모드를 모두 파싱하는 방법을 설명합니다.
요청 측(엔드포인트,
anthropic-version 헤더, x-api-key 인증, 노력 / 추론 매개변수)은 Claude API 기본 및 Claude 노력 & 추론 가이드에서 다룹니다. 이 페이지는 순전히 응답 측에 관한 것입니다. 예제는 경량 모델 claude-haiku-4-5-20251001을 사용합니다.비스트리밍 응답
최상위 수준은message 객체이며, 답변은 content 배열에 있고, type로 블록이 나뉩니다:
content 배열을 반복 처리해야 합니다 — OpenAI처럼 단일 문자열 필드를 읽을 수는 없습니다:
stop_reason 값: end_turn (정상), max_tokens (max_tokens에 의해 잘림 — 텍스트가 비어 있을 수 있으므로 제한을 늘리십시오), stop_sequence, tool_use (도구를 호출하려고 합니다). thinking을 켜면 content 배열에 type: "thinking" 블록이 추가되어 text 블록 앞에 배치됩니다.스트리밍 응답(이름 있는 이벤트 SSE)
Claude 스트리밍은 Anthropic 이벤트 프로토콜을 사용합니다: 각 메시지에는event: 이름과 data: 페이로드가 있으며, OpenAI처럼 모든 청크를 동일하게 처리하는 대신 이벤트 유형으로 디스패치합니다.
핵심은
text_delta를 content_block_delta 안에서 누적하는 것입니다:
thinking(적응형 thinking)을 켠 경우, 먼저
type: "thinking" 블록이 나타납니다. 그 증분은 thinking_delta이며, 블록이 닫히기 전에 signature_delta(thinking 블록 서명)가 나타납니다. thinking을 표시하려면 thinking_delta와 text_delta를 각각 따로 렌더링하십시오. Claude Effort & Thinking 가이드를 참조하십시오.OpenAI 호환 모드와의 주요 차이점
사용 및 과금
- 비스트리밍:
usage이 결과와 함께 반환되며, 여기에는input_tokens,output_tokens,cache_creation_input_tokens,cache_read_input_tokens가 포함됩니다. - 스트리밍:
input_tokens는message_start에 있고, 최종output_tokens은message_delta에 있습니다 — 둘 다 병합합니다. - 캐시 적중 필드(
cache_read_input_tokens)의 할인 및 사용량은 Claude Cache Billing을 참조하십시오.
관련 링크
- 같은 그룹: Claude API 기초 · Claude 캐시 과금 · Claude 요율 배수 및 추론 가이드
- 호환 형식 대응 항목: OpenAI 호환 모드: 응답 처리
- 토큰 가져오기 / 관리:
https://api.apiyi.com/token