메시지 생성
CometAPI를 통해 Anthropic 메시지 API를 사용하여 adaptive thinking, 프롬프트 캐싱, 도구 사용, 웹 검색, 스트리밍, effort control과 함께 Claude 모델을 호출합니다.
x-api-key와 Authorization: Bearer 헤더를 모두 지원합니다. 공식 Anthropic SDK는 기본적으로 x-api-key를 사용합니다.빠른 시작
CometAPI와 함께 공식 Anthropic SDK를 사용하려면 base URL을 설정하세요:adaptive thinking 제어
output_config.effort와 함께 adaptive thinking을 사용하면 Claude가 응답에 얼마나 많은 작업을 적용할지 제어할 수 있습니다. 최신 Claude 모델은 레거시 수동 thinking 형식인 thinking={"type": "enabled", "budget_tokens": ...}를 거부합니다.
프롬프트 캐시
후속 요청의 지연 시간과 비용을 줄이기 위해, 큰 system 프롬프트 또는 대화 접두사를 캐시하세요. 캐시해야 하는 content 블록에cache_control을 추가합니다:
usage 필드에 보고됩니다:
cache_creation_input_tokens— 캐시에 기록된 토큰(Token) 수(더 높은 요금으로 청구)cache_read_input_tokens— 캐시에서 읽은 토큰(Token) 수(할인된 요금으로 청구)
응답 스트리밍
Server-Sent Events (SSE)를 사용해 응답을 스트리밍하려면stream: true로 설정하세요. 이벤트는 다음 순서로 도착합니다:
message_start— 메시지 메타데이터와 초기 usage를 포함content_block_start— 각 content 블록의 시작을 표시content_block_delta— 점진적으로 전달되는 텍스트 청크(text_delta)content_block_stop— 각 content 블록의 끝을 표시message_delta— 최종stop_reason및 전체usagemessage_stop— 스트림의 끝을 알림
노력 수준 제어
Claude가 응답을 생성할 때 얼마나 많은 노력을 들일지 제어하려면output_config.effort를 사용하세요:
서버 도구 사용
Claude는 Anthropic의 인프라에서 실행되는 서버 측 도구를 지원합니다:- Web Fetch
- Web Search
응답 예시
CometAPI의 Anthropic 엔드포인트에서 반환되는 일반적인 응답 예시입니다:OpenAI 호환 엔드포인트와 비교
인증
Your CometAPI key passed via the x-api-key header. Authorization: Bearer $COMETAPI_KEY is also supported.
헤더
The Anthropic API version to use. Defaults to 2023-06-01.
"2023-06-01"
Comma-separated list of beta features to enable. Examples: max-tokens-3-5-sonnet-2024-07-15, pdfs-2024-09-25, output-128k-2025-02-19.
본문
The Claude model to use. See the Models page for available Claude model IDs.
"claude-sonnet-5"
The conversation messages. Must alternate between user and assistant roles. Each message's content can be a string or an array of content blocks (text, image, document, tool_use, tool_result). There is a limit of 100,000 messages per request.
The maximum number of tokens to generate. The model may stop before reaching this limit. When using thinking, the thinking tokens count towards this limit.
x >= 11024
System prompt providing context and instructions to Claude. Can be a plain string or an array of content blocks (useful for prompt caching).
Model-dependent sampling control. Many newer Claude models reject non-default temperature values on the Messages API. Omit this field unless you have verified that the selected model accepts it; if the model returns an unsupported or deprecated-parameter error, remove the field instead of substituting another sampling value.
0 <= x <= 11
Model-dependent nucleus sampling control. Many newer Claude models reject non-default top_p values on the Messages API. Omit this field unless you have verified support for the selected model. Do not set temperature and top_p together.
0 <= x <= 11
Model-dependent top-k sampling control. Many newer Claude models reject non-default top_k values on the Messages API. Omit this field unless you have verified support for the selected model.
x >= 00
If true, stream the response incrementally using Server-Sent Events (SSE). Events include message_start, content_block_start, content_block_delta, content_block_stop, message_delta, and message_stop.
Custom strings that cause the model to stop generating when encountered. The stop sequence is not included in the response.
Controls Claude thinking when the selected model supports a configurable thinking mode. For newer adaptive-thinking models, use {"type":"adaptive"} with output_config.effort, or omit thinking when adaptive thinking is already the model default. Manual {"type":"enabled","budget_tokens":...} is supported only by older models and is rejected by newer Claude models.
Tools the model may use. Supports client-defined functions, web search (web_search_20250305), web fetch (web_fetch_20250910), code execution (code_execution_20250522), and more.
Controls how the model uses tools.
Request metadata for tracking and analytics.
Configuration for response effort and output format. Field support depends on the selected Claude model.
The service tier to use. auto tries priority capacity first, standard_only uses only standard capacity.
auto, standard_only 응답
Successful response. When stream is true, the response is a stream of SSE events.
Unique identifier for this message (e.g., msg_01XFDUDYJgAACzvnptvVoYEL).
Always message.
message Always assistant.
assistant The response content blocks. May include text, thinking, tool_use, and other block types.
The specific model version that generated this response, such as claude-sonnet-5.
Why the model stopped generating. refusal can be returned as a successful HTTP response when the model declines a request.
end_turn, max_tokens, stop_sequence, tool_use, pause_turn, refusal The stop sequence that caused the model to stop, if applicable.
Token usage statistics.