AGTCloud API Docs
가이드API 레퍼런스통합 및 리소스업데이트 및 도움말
SDK

Anthropic SDK

Anthropic 공식 Python 또는 TypeScript SDK로 AGTCloud Messages 호환 인터페이스를 호출합니다.

Anthropic 공식 SDK는 사용자 정의 Base URL로 AGTCloud의 Anthropic Messages 호환 진입점을 호출할 수 있습니다. 이 튜토리얼은 Python과 TypeScript의 설치, 비스트리밍 요청 및 스트리밍 출력 예시를 제공합니다.

이 페이지는 Messages 호출만 다룹니다. 배치 처리, 파일, 관리 인터페이스 및 기타 Anthropic 플랫폼 리소스의 사용 가능 여부는 AGTCloud API Reference를 기준으로 합니다.

준비 사항

시작하기 전에 다음 사항을 확인합니다.

  • API Keys 페이지에서 AGTCloud API Key를 생성합니다.
  • 모델 목록에서 Anthropic Messages를 지원하는 전체 모델 ID를 복사합니다.
  • Python 3.9+ 또는 Node.js 20+ 서버 실행 환경을 준비합니다.

이 페이지는 MODEL_ID와 your-api-key를 자리표시자로 사용합니다. 실제 API Key를 브라우저 프런트엔드, 모바일 설치 패키지 또는 공개 저장소에 저장하지 않습니다.

SDK 설치

python -m pip install anthropic

현재 안정 버전을 설치하고 프로젝트의 의존성 잠금 파일로 실제 사용 버전을 고정하는 것이 좋습니다.

API Key 설정

API Key를 서버 환경 변수에 저장합니다.

export AGTCLOUD_API_KEY="your-api-key"

예시 코드는 AGTCLOUD_API_KEY에서 자격 증명을 읽고 Anthropic SDK에 명시적으로 전달합니다. SDK가 x-api-key Header로 자격 증명을 보내고 Messages 요청에 필요한 anthropic-version Header를 자동으로 추가합니다.

클라이언트 생성 및 요청 전송

Base URL은 이 페이지에 표시된 API Origin을 사용하고 /v1 또는 /v1/messages를 추가하지 않습니다. SDK가 해당 주소 뒤에 Messages 경로를 추가합니다.

import os

from anthropic import Anthropic

api_key = os.environ["AGTCLOUD_API_KEY"]

client = Anthropic(
    api_key=api_key,
    base_url="https://api.agtcloud.cn",
)

message = client.messages.create(
    model="MODEL_ID",
    max_tokens=1024,
    messages=[
        {
            "role": "user",
            "content": "세 문장으로 자신을 소개해 주세요.",
        }
    ],
)

for block in message.content:
    if block.type == "text":
        print(block.text)

Anthropic Messages의 content는 콘텐츠 블록 배열입니다. 텍스트를 읽을 때 블록 유형을 확인하고 응답에 항상 텍스트 블록 하나만 있다고 가정하지 않습니다. 도구 호출, 이미지 및 기타 콘텐츠 유형은 다른 블록 구조를 사용합니다.

스트리밍 출력

import os

from anthropic import Anthropic

client = Anthropic(
    api_key=os.environ["AGTCLOUD_API_KEY"],
    base_url="https://api.agtcloud.cn",
)

with client.messages.stream(
    model="MODEL_ID",
    max_tokens=1024,
    messages=[
        {
            "role": "user",
            "content": "벡터 검색이 무엇인지 간단히 설명해 주세요.",
        }
    ],
) as stream:
    for text in stream.text_stream:
        print(text, end="", flush=True)

스트리밍 Messages는 SSE 이벤트로 반환됩니다. 운영 환경에서는 연결 중단, 타임아웃, 요청 제한 및 스트림이 끝나기 전에 전체 내용을 받지 못하는 상황도 처리해야 합니다.

자주 묻는 질문

증상확인 항목
401 또는 403AGTCLOUD_API_KEY가 로드되었고 불필요한 공백이 없으며 자격 증명이 여전히 유효한지 확인합니다
404 또는 비정상 경로base_url / baseURL에는 https://api.agtcloud.cn만 입력하고 /v1 또는 전체 엔드포인트를 추가하지 않습니다
모델 사용 불가MODEL_ID를 현재 API Key에 표시되며 Anthropic Messages를 지원하는 모델 ID로 교체합니다
요청 필드 미지원대상 모델 기능을 확인하고 Anthropic Messages Reference의 필드 정의를 참고합니다
TypeScript가 브라우저 실행 거부Anthropic SDK는 기본적으로 서버 환경용이며 제한을 우회하기 위해 API Key를 브라우저에 노출하지 않습니다
스트리밍 내용이 비어 있음이벤트 유형을 확인하고 코드가 text_delta 또는 SDK의 텍스트 스트림 보조 인터페이스를 읽는지 확인합니다

이 튜토리얼은 x-api-key를 사용합니다

AGTCloud API Key를 SDK의 api_key / apiKey 매개변수에 전달하고 SDK가 Messages 프로토콜에 따라 x-api-key를 보내도록 합니다. 같은 호출에 다른 인증 Header를 직접 추가하지 않습니다.

다음 단계

이 페이지의 내용