Crusoe

Crusoe

이 문서에서는 pydantic-ai에서 CrusoeModel을 설치하고 설정하는 방법을 알려드려요. Crusoe의 Serverless Inference를 사용하려면 먼저 API 키를 생성하고, 환경 변수로 설정한 뒤 모델을 이름으로 사용하거나 직접 초기화하면 돼요. 커스텀 Providerhttpx2.AsyncClient를 넘겨서 구성을 더 세밀하게 조정할 수도 있어요.

출처: 문서

본문

Install

CrusoeModel을 사용하려면 pydantic-ai를 설치하거나, crusoe 옵션 그룹과 함께 pydantic-ai-slim을 설치해야 해요:

Terminal

pip install "pydantic-ai-slim[crusoe]"

Terminal

uv add "pydantic-ai-slim[crusoe]"

Configuration

Crusoe Serverless Inference를 사용하려면 Crusoe Cloud 콘솔로 이동해서 Models를 선택하고 Get API Key를 클릭하세요.

사용 가능한 모델 목록은 Crusoe Serverless Inference 문서를 참고하세요.

Environment variable

API 키를 확보했다면 환경 변수로 설정할 수 있어요:

Terminal

export CRUSOE_API_KEY='your-api-key'

그 다음 이름으로 CrusoeModel을 사용할 수 있어요:

from pydantic_ai import Agent

agent = Agent('crusoe:zai/GLM-5.2')
...

또는 모델 이름만으로 모델을 직접 초기화할 수도 있어요:

from pydantic_ai import Agent
from pydantic_ai.models.crusoe import CrusoeModel

model = CrusoeModel('zai/GLM-5.2')
agent = Agent(model)
...

Model names

Crusoe는 여러 연구소의 오픈 웨이트 모델을 하나의 엔드포인트 뒤에서 서빙하며, 모델 이름에는 연구소가 접두사로 붙어요 — zai/GLM-5.2, deepseek-ai/DeepSeek-V4-Pro, meta-llama/Llama-3.3-70B-Instruct, openai/gpt-oss-120b. 이 접두사가 모델 프로필을 선택하는 데 쓰이므로, 모델 ID만으로 넘기지 말고 이름에 접두사를 계속 포함하세요.

Structured output

Crusoe는 모든 모델에 guided decoding으로 서빙하므로, NativeOutput이 카탈로그 전체에서 동작해요 — 자체 제공자를 통해 접근할 때 네이티브 구조화 출력을 지원하지 않는 모델 계열에도 적용돼요.

provider argument

provider 인자를 통해 커스텀 Provider를 제공할 수 있어요:

from pydantic_ai import Agent
from pydantic_ai.models.crusoe import CrusoeModel
from pydantic_ai.providers.crusoe import CrusoeProvider

model = CrusoeModel('zai/GLM-5.2', provider=CrusoeProvider(api_key='your-api-key'))
agent = Agent(model)
...

커스텀 httpx2.AsyncClient를 사용해 CrusoeProvider를 맞춤 구성할 수도 있어요:

from httpx2 import AsyncClient

from pydantic_ai import Agent
from pydantic_ai.models.crusoe import CrusoeModel
from pydantic_ai.providers.crusoe import CrusoeProvider

custom_http_client = AsyncClient(timeout=30)
model = CrusoeModel(
    'zai/GLM-5.2',
    provider=CrusoeProvider(api_key='your-api-key', http_client=custom_http_client),
)
agent = Agent(model)
...

더 알아보기 (Learn more)