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

# 프레임워크 및 통합

> 인기 있는 AI 프레임워크와 SDK에서 ARouter 사용 — base_url과 api_key만 변경하면 코드 변경 없이 사용 가능합니다.

ARouter는 OpenAI Chat Completions API를 지원하는 모든 라이브러리나 프레임워크와 호환됩니다. 이 페이지에서는 가장 인기 있는 통합 방법을 다룹니다.

## 공식 SDK

ARouter는 일반적인 언어를 위한 최고 수준의 SDK를 제공합니다:

<CardGroup cols={2}>
  <Card title="Python SDK" icon="python" href="/ko/sdks/python">
    pip install arouter
  </Card>

  <Card title="Node.js / TypeScript SDK" icon="js" href="/ko/sdks/node">
    npm install arouter
  </Card>

  <Card title="Go SDK" icon="golang" href="/ko/sdks/go">
    go get github.com/arouter-ai/arouter-go
  </Card>

  <Card title="cURL" icon="terminal" href="/ko/sdks/curl">
    직접 HTTP 예시
  </Card>
</CardGroup>

## OpenAI SDK (모든 언어)

ARouter는 OpenAI 호환이므로 공식 OpenAI SDK가 바로 작동합니다. `base_url`과 `api_key`만 변경하세요:

<Tabs>
  <Tab title="Python">
    ```python theme={null}
    from openai import OpenAI

    client = OpenAI(
        api_key="your-arouter-key",
        base_url="https://api.arouter.ai/v1"
    )

    response = client.chat.completions.create(
        model="openai/gpt-5.4",
        messages=[{"role": "user", "content": "Hello!"}]
    )
    ```
  </Tab>

  <Tab title="Node.js">
    ```typescript theme={null}
    import OpenAI from "openai";

    const client = new OpenAI({
      apiKey: "your-arouter-key",
      baseURL: "https://api.arouter.ai/v1",
    });

    const response = await client.chat.completions.create({
      model: "openai/gpt-5.4",
      messages: [{ role: "user", content: "Hello!" }],
    });
    ```
  </Tab>
</Tabs>

## LangChain

ARouter는 LangChain의 `ChatOpenAI` 클래스와 함께 사용할 수 있습니다:

<Tabs>
  <Tab title="Python">
    ```python theme={null}
    from langchain_openai import ChatOpenAI

    llm = ChatOpenAI(
        model="anthropic/claude-sonnet-4-6",
        openai_api_key="your-arouter-key",
        openai_api_base="https://api.arouter.ai/v1",
    )

    response = llm.invoke("양자 컴퓨팅을 한 단락으로 설명해주세요.")
    print(response.content)
    ```
  </Tab>

  <Tab title="Node.js">
    ```typescript theme={null}
    import { ChatOpenAI } from "@langchain/openai";

    const llm = new ChatOpenAI({
      modelName: "google/gemini-2.5-pro",
      openAIApiKey: "your-arouter-key",
      configuration: {
        baseURL: "https://api.arouter.ai/v1",
      },
    });

    const response = await llm.invoke("양자 컴퓨팅을 한 단락으로 설명해주세요.");
    console.log(response.content);
    ```
  </Tab>
</Tabs>

## Vercel AI SDK

Vercel AI SDK 애플리케이션의 백엔드로 ARouter를 사용합니다:

```typescript theme={null}
import { createOpenAI } from "@ai-sdk/openai";
import { generateText } from "ai";

const arouter = createOpenAI({
  apiKey: "your-arouter-key",
  baseURL: "https://api.arouter.ai/v1",
});

const { text } = await generateText({
  model: arouter("anthropic/claude-sonnet-4-6"),
  prompt: "바다에 관한 짧은 시를 써주세요.",
});

console.log(text);
```

## PydanticAI

```python theme={null}
from pydantic_ai import Agent
from pydantic_ai.models.openai import OpenAIModel
from openai import AsyncOpenAI

client = AsyncOpenAI(
    api_key="your-arouter-key",
    base_url="https://api.arouter.ai/v1",
)

model = OpenAIModel("openai/gpt-5.4", openai_client=client)
agent = Agent(model)

result = await agent.run("파인만 강의의 핵심 아이디어를 요약해주세요.")
print(result.data)
```

## Anthropic SDK (네이티브)

ARouter는 네이티브 Anthropic 호환 엔드포인트도 제공합니다. OpenAI 래퍼 없이 공식 Anthropic SDK를 사용하세요:

```python theme={null}
import anthropic

client = anthropic.Anthropic(
    api_key="your-arouter-key",
    base_url="https://api.arouter.ai/anthropic",
)

message = client.messages.create(
    model="claude-sonnet-4-6",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Hello, Claude!"}],
)
print(message.content[0].text)
```

전체 참조는 [Anthropic 네이티브 API](/ko/api-reference/anthropic/create-message)를 확인하세요.

## Google Gemini SDK (네이티브)

ARouter는 공식 Google Generative AI SDK를 위한 Gemini 호환 엔드포인트를 제공합니다:

```python theme={null}
import google.generativeai as genai

genai.configure(
    api_key="your-arouter-key",
    client_options={"api_endpoint": "https://api.arouter.ai/gemini"}
)

model = genai.GenerativeModel("gemini-2.5-pro")
response = model.generate_content("상대성 이론을 쉽게 설명해주세요.")
print(response.text)
```

전체 참조는 [Gemini 네이티브 API](/ko/api-reference/gemini/generate-content)를 확인하세요.

## 기타 프레임워크

OpenAI 호환 어댑터가 있는 모든 프레임워크가 ARouter와 함께 작동합니다. 일반적인 예시:

| 프레임워크               | 통합 방법                                               |
| ------------------- | --------------------------------------------------- |
| **AutoGen**         | `model_client` base URL 설정                          |
| **CrewAI**          | ARouter base URL과 함께 `OpenAICompatibleModel` 사용     |
| **LlamaIndex**      | 커스텀 base URL을 가진 `OpenAI` LLM 클래스                   |
| **Haystack**        | ARouter API key와 base URL을 가진 `OpenAIChatGenerator` |
| **Semantic Kernel** | 커스텀 엔드포인트를 가진 `OpenAIChatCompletion`                |

여기에 나열되지 않은 프레임워크의 경우 `base_url` / `api_base` 구성을 지원하는지 확인하세요 — 지원한다면 ARouter와 함께 작동합니다.
