Claude Opus 5 API
Anthropic에서 제공하는 Claude Opus 5 LLM 모델의 전체 API 레퍼런스입니다.
모델 변형
이 API는 두 가지 Claude Opus 5 모델 변형을 지원합니다.
빠른 비교
Claude Opus 5 텍스트-텍스트
엔드포인트 {#}
POST /api/v1/chat/completions
요청 파라미터
필수
메시지 지원
선택 사항
요청 예시
const response = await fetch('https://api.flaq.ai/api/v1/chat/completions', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Accept': 'text/event-stream',
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'claude-opus-5-text-to-text',
messages: [
{
role: 'user',
content: '이 아키텍처 선택에 대한 기술 의사 결정 메모를 작성하세요.'
}
],
stream: true,
max_tokens: 2048
})
});
Claude Opus 5 파일 분석
엔드포인트
POST /api/v1/chat/completions
요청 파라미터
필수
메시지 지원
선택 사항
요청 예시
const response = await fetch('https://api.flaq.ai/api/v1/chat/completions', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Accept': 'text/event-stream',
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'claude-opus-5-file-analysis',
messages: [
{
role: 'user',
content: [
{ type: 'text', text: '이 파일을 요약하고 주요 위험을 추출하세요.' },
{
type: 'file',
file: {
filename: 'demo.pdf',
file_data: 'https://example.com/demo.pdf'
}
}
]
}
],
stream: true,
max_tokens: 4096
})
});
응답 형식
Claude Opus 5 LLM 모델은 OpenAI 호환 완료 응답을 반환합니다. stream: true이면 응답은 Server-Sent Events이고, stream: false이면 응답은 단일 JSON 객체입니다.
성공 응답
data: {"id":"chatcmpl-...","object":"chat.completion.chunk","created":1710000000,"model":"claude-opus-5-file-analysis","choices":[{"index":0,"delta":{"role":"assistant"},"finish_reason":null}]}
data: {"id":"chatcmpl-...","object":"chat.completion.chunk","created":1710000000,"model":"claude-opus-5-file-analysis","choices":[{"index":0,"delta":{"content":"간단한 요약은 다음과 같습니다"},"finish_reason":null}]}
data: {"id":"chatcmpl-...","object":"chat.completion.chunk","created":1710000000,"model":"claude-opus-5-file-analysis","choices":[{"index":0,"delta":{},"finish_reason":"stop"}]}
data: {"id":"chatcmpl-...","object":"chat.completion.chunk","created":1710000000,"model":"claude-opus-5-file-analysis","choices":[],"usage":{"prompt_tokens":12,"completion_tokens":8,"total_tokens":20}}
data: [DONE]
오류 응답
event: error
data: {"error":{"message":"API 요청이 너무 빈번하여 속도 제한을 초과했습니다","type":"rate_limit_error","code":"1302","param":null}}
모범 사례
- 구조화된 메시지 사용: 컨텍스트를 하나의 프롬프트로 평면화하지 말고
messages[]를 통해 대화 기록을 전송하세요.
- 적절한 모델 변형 선택: 텍스트 전용 추론과 작성에는 텍스트-텍스트를 사용하고, 파일이나 이미지가 필요할 때는 파일 분석을 사용하세요.
- SSE 이벤트 처리: 스트리밍 표시를 위해
choices[0].delta.content를 추가하고 data: [DONE]을 성공적인 완료로 처리하세요.
- 지원되는 입력만 전송: 현재 클라이언트에서 텍스트 모델은 지원되지 않는 파일 및 이미지 파트를 무시합니다.