Anthropic SDK
MarkdownClaude 등 모델용 Messages 형식입니다. Anthropic 공식 SDK와 이를 바탕으로 만든 프로그램에서 사용합니다.
전체 가이드
설치
pip install anthropicnpm install @anthropic-ai/sdk연결
기본 주소: https://api.ailoot.ai 제외할 경로: /v1 — SDK가 자동으로 추가할 경로: /v1/messages. 환경 변수: ANTHROPIC_BASE_URL 및 ANTHROPIC_API_KEY.
import anthropic
import os
client = anthropic.Anthropic(max_retries=0,
base_url="https://api.ailoot.ai", # /v1 제외: SDK가 /v1/messages를 자동으로 추가합니다
api_key=os.environ["AILOOT_API_KEY"],
)
msg = client.messages.create(
model="claude-sonnet-5-5",
max_tokens=1024,
messages=[{"role": "user", "content": "API가 무엇인지 두 문장으로 설명해 줘."}],
)
print(msg.content[0].text)import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic({ maxRetries: 0,
baseURL: "https://api.ailoot.ai", // /v1 제외
apiKey: process.env.AILOOT_API_KEY,
});
const msg = await client.messages.create({
model: "claude-sonnet-5-5",
max_tokens: 1024,
messages: [{ role: "user", content: "API가 무엇인지 두 문장으로 설명해 줘." }],
});
console.log(msg.content[0].type === "text" ? msg.content[0].text : msg.content);스트리밍 응답
with client.messages.stream(
model="claude-sonnet-5-5",
max_tokens=1024,
messages=[{"role": "user", "content": "짧은 이야기를 들려줘"}],
) as stream:
for text in stream.text_stream:
print(text, end="", flush=True)스트리밍 코드는 원본 API와 동일하게 동작하지만 유료 텍스트는 비용 계산 후 한 번에 전달되며 단어별로 전달되지 않습니다. 서비스용 줄 : ping 은 긴 응답에서 SDK가 자동으로 건너뜁니다.
사고(extended thinking)
msg = client.messages.create(
model="claude-opus-5-5",
max_tokens=16000,
messages=[{"role": "user", "content": "소수가 무한히 많다는 것을 증명해 줘"}],
)Claude 외의 모델
호출 경로: /v1/messages — GPT, DeepSeek, Qwen, Kimi, GLM, MiniMax, Grok, Gemini 등 776개 식별자도 이용할 수 있습니다. Anthropic 형식만 지원하는 클라이언트에 유용합니다.
msg = client.messages.create(
model="deepseek-v4-pro",
max_tokens=2048,
messages=[{"role": "user", "content": "Go로 병합 정렬 함수를 작성해 줘"}],
)궁금한 점이 남았나요? Request ID와 설명을 보내 주시면 해결을 도와드리겠습니다.지원팀에 문의