> ## Documentation Index
> Fetch the complete documentation index at: https://docs.capriole.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# OpenAI 및 Anthropic SDK로 Capriole AI 사용하기

> 공식 OpenAI 및 Anthropic SDK로 Python 또는 TypeScript에서 Capriole AI를 호출하고, 지원 프로토콜, latest 별칭, 올바른 Base URL을 사용하세요.

하나의 Capriole AI API key로 Python 또는 TypeScript용 공식 OpenAI 및 Anthropic SDK를 사용할 수 있습니다. OpenAI 클라이언트는 `/v1` Base URL로, Anthropic 클라이언트는 API 루트로 구성한 다음 각 SDK가 기대하는 프로토콜 네이티브 엔드포인트를 호출하세요.

개인 Premium은 월 USD 8이며, 500만 과금 API 토큰과 지원되는 Premium 모델 세트의 무제한 Browser Chat을 포함합니다. 같은 멤버십이 이 SDK를 통한 애플리케이션, 유지 중인 통합을 통한 코딩 에이전트, 브라우저의 일상 작업을 지원할 수 있습니다.

이 가이드는 두 언어에서 같은 두 요청 검사를 만듭니다. 각 예제는 OpenAI Responses 요청과 Anthropic Messages 요청을 보냅니다.

## 요청 경로 선택하기

| 클라이언트 호출                           | 프로토콜 및 엔드포인트                | Base URL                          | 시작 모델                 |
| ---------------------------------- | --------------------------- | --------------------------------- | --------------------- |
| `openai.responses.create()`        | `POST /v1/responses`        | `https://api.caprioletech.com/v1` | `openai-latest`       |
| `openai.chat.completions.create()` | `POST /v1/chat/completions` | `https://api.caprioletech.com/v1` | 호환 latest 별칭 또는 모델 ID |
| `anthropic.messages.create()`      | `POST /v1/messages`         | `https://api.caprioletech.com`    | `claude-latest`       |

Responses 네이티브 OpenAI 애플리케이션에는 Responses를 사용하세요. 기존 OpenAI 호환 애플리케이션이 해당 계약을 기대하면 Chat Completions를 사용하세요. Claude 네이티브 코드에는 Messages를 사용하세요.

## 시작하기 전에

활성 Premium 또는 자격 있는 Team 접근, [Capriole AI API key](https://capriole.ai?view=api), Python 또는 Node.js 20 이상이 필요합니다. Capriole이 새로 만든 키를 보여 줄 때 복사하세요. 전체 시크릿은 다시 표시되지 않습니다.

<Steps>
  <Step title="환경을 만들고 두 SDK 설치하기">
    macOS 또는 Linux에서 가상 환경을 만들고 활성화한 다음 공식 패키지를 설치하세요.

    ```bash theme={null}
    python -m venv .venv
    source .venv/bin/activate
    python -m pip install openai anthropic
    ```

    Windows PowerShell에서는 같은 환경을 다음으로 활성화하세요.

    ```powershell theme={null}
    python -m venv .venv
    .venv\Scripts\Activate.ps1
    python -m pip install openai anthropic
    ```

    남은 단계 동안 환경을 활성화해 두세요. 설치 명령이 끝나면 두 패키지를 사용할 수 있고 의존성 오류가 없어야 합니다.
  </Step>

  <Step title="Capriole API key 설정하기">
    ```bash theme={null}
    export CAPRIOLE_AI_API_KEY="YOUR_CAPRIOLE_AI_API_KEY"
    ```

    아래 프로그램은 환경에서 키를 읽습니다. 시크릿을 소스 코드에 두지 않습니다.
  </Step>

  <Step title="SDK 예제 만들기">
    이 파일을 `capriole_sdk_example.py`로 저장하세요.

    ```python theme={null}
    import os

    from anthropic import Anthropic
    from openai import OpenAI


    api_key = os.environ["CAPRIOLE_AI_API_KEY"]

    openai_client = OpenAI(
        api_key=api_key,
        base_url="https://api.caprioletech.com/v1",
    )

    openai_response = openai_client.responses.create(
        model="openai-latest",
        input="Reply with OPENAI_OK and no other text.",
    )
    print(openai_response.output_text)

    anthropic_client = Anthropic(
        auth_token=api_key,
        base_url="https://api.caprioletech.com",
    )

    anthropic_response = anthropic_client.messages.create(
        model="claude-latest",
        max_tokens=32,
        messages=[
            {
                "role": "user",
                "content": "Reply with ANTHROPIC_OK and no other text.",
            }
        ],
    )
    print(anthropic_response.content[0].text)
    ```

    `auth_token`은 의도된 설정입니다. Anthropic SDK가 Capriole API key를 Bearer 토큰으로 보내게 합니다.
  </Step>

  <Step title="프로그램 실행하기">
    ```bash theme={null}
    python capriole_sdk_example.py
    ```

    성공 실행은 보통 요청한 마커인 비어 있지 않은 모델 응답 두 개를 출력합니다.

    ```text theme={null}
    OPENAI_OK
    ANTHROPIC_OK
    ```

    모델이 정확한 출력 프롬프트를 항상 따르지는 않습니다. 문구가 달라도 비어 있지 않은 응답 두 개면 두 SDK 경로가 모델 출력을 반환했음을 확인합니다.
  </Step>
</Steps>

## TypeScript로 같은 검사 실행하기

Node.js 20 이상을 사용하세요. 새 프로젝트에 공식 SDK와 TypeScript runner를 설치하세요.

```bash theme={null}
npm init -y
npm install openai @anthropic-ai/sdk
npm install --save-dev typescript tsx @types/node
```

프로그램을 실행할 셸에 같은 API key를 설정하세요.

```bash theme={null}
export CAPRIOLE_AI_API_KEY="YOUR_CAPRIOLE_AI_API_KEY"
```

다음 파일을 `capriole-sdk-example.ts`로 저장하세요.

```typescript theme={null}
import Anthropic from "@anthropic-ai/sdk";
import OpenAI from "openai";

const apiKey = process.env.CAPRIOLE_AI_API_KEY;

if (!apiKey) {
  throw new Error("CAPRIOLE_AI_API_KEY is not set");
}

const openai = new OpenAI({
  apiKey,
  baseURL: "https://api.caprioletech.com/v1",
});

const openaiResponse = await openai.responses.create({
  model: "openai-latest",
  input: "Reply with OPENAI_OK and no other text.",
});

console.log(openaiResponse.output_text);

const anthropic = new Anthropic({
  authToken: apiKey,
  baseURL: "https://api.caprioletech.com",
});

const anthropicResponse = await anthropic.messages.create({
  model: "claude-latest",
  max_tokens: 32,
  messages: [
    {
      role: "user",
      content: "Reply with ANTHROPIC_OK and no other text.",
    },
  ],
});

for (const block of anthropicResponse.content) {
  if (block.type === "text") {
    console.log(block.text);
  }
}
```

다음으로 실행하세요.

```bash theme={null}
npx tsx capriole-sdk-example.ts
```

비어 있지 않은 응답 두 개를 받아야 합니다. TypeScript 생성자는 `baseURL`을, Python 생성자는 `base_url`을 사용합니다. Anthropic 예제는 `authToken` 또는 `auth_token`을 사용해 SDK가 Capriole에 Bearer 인증을 보내게 합니다.

## 앱이 Chat Completions를 기대할 때 사용하기

같은 OpenAI 클라이언트가 Chat Completions 호환 엔드포인트를 호출할 수 있습니다.

```python theme={null}
completion = openai_client.chat.completions.create(
    model="google-latest",
    messages=[
        {
            "role": "user",
            "content": "Reply with CHAT_COMPLETIONS_OK and no other text.",
        }
    ],
)

print(completion.choices[0].message.content)
```

`google-latest`를 `responses.create()`로 옮기지 마세요. Responses 경로는 지원되는 OpenAI Responses 모델 세트를 받고, Chat Completions는 더 넓은 공개 호환 카탈로그를 받습니다.

## 흔한 SDK 오류 해결하기

| 오류                              | 원인                                                 | 해결                                                         |
| ------------------------------- | -------------------------------------------------- | ---------------------------------------------------------- |
| `KeyError: CAPRIOLE_AI_API_KEY` | 환경 변수가 없음                                          | Python을 실행하는 셸에서 키를 내보내기                                   |
| `401 Missing Bearer token`      | SDK가 잘못된 인증 옵션을 사용함                                | OpenAI는 `api_key`, Anthropic은 `auth_token` 사용              |
| `404 Not Found`                 | 클라이언트 Base URL의 `/v1` 경계가 잘못됨                      | OpenAI는 `/v1` 베이스, Anthropic은 API 루트 사용                    |
| 지원되지 않는 모델                      | 선택한 별칭이 해당 엔드포인트에 속하지 않음                           | Responses에는 `openai-latest`, Messages에는 `claude-latest` 사용 |
| 토큰 수 사전 검사 실패                   | 선택한 Claude 업스트림이 Anthropic token counting을 지원하지 않음 | `/v1/messages/count_tokens` 지원을 업스트림 의존으로 취급               |
| `403` 할당량 오류                    | 멤버십 또는 API 잔액이 요청을 승인할 수 없음                        | 활성 멤버십과 남은 과금 토큰 잔액 검토                                     |

## 결과 경계 이해하기

Capriole은 SDK가 요청한 프로토콜을 유지합니다. Responses 출력은 Responses 출력으로 남고, Anthropic Messages 출력은 Messages 출력으로 남습니다. 한 계정과 잔액이 두 경로 뒤에 있지만, 응답 스키마가 서로 바꿔 쓸 수 있게 되지는 않습니다.

[다중 프로토콜 API 글](/ko/articles/unified-model-api)이 그 아키텍처를 설명합니다. 엔드포인트 필드는 [Responses 레퍼런스](/ko/api-reference/endpoint/responses), [Chat Completions 레퍼런스](/ko/api-reference/endpoint/chat-completions), [Messages 레퍼런스](/ko/api-reference/endpoint/messages)를 사용하세요. [API 빠른 시작](/ko/quickstart)은 원시 첫 요청의 가장 짧은 경로입니다.

프로토콜, 별칭 또는 클라이언트 경로가 지원으로 문서화되기 전에 필요한 증거는 [Capriole이 다중 모델 API 호환성을 테스트하는 방법](/ko/articles/unified-model-api#호환성을-테스트하는-방법)을 읽으세요.

API 호출은 과금 토큰으로 측정됩니다. 워크로드를 추정하기 전에 [과금 토큰 계산 방식](/ko/articles/charged-tokens)을 읽으세요.

## 공식 SDK 참고

* OpenAI: [Python SDK](https://github.com/openai/openai-python)
* Anthropic: [Python SDK](https://github.com/anthropics/anthropic-sdk-python)
* OpenAI: [TypeScript and JavaScript SDK](https://github.com/openai/openai-node)
* Anthropic: [TypeScript SDK](https://github.com/anthropics/anthropic-sdk-typescript)

[제한된 무료 Browser Chat에서 GPT-5.6 Thinking, Claude Fable 5 또는 Gemini 3.1 Pro를 써 보세요](https://capriole.ai). Python 또는 TypeScript에서 포함된 API 잔액을 쓰려면 Premium으로 업그레이드하세요.

**사실 확인 날짜** 2026-08-11.
