> ## 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="/zh-Hant/sdks/python">
    pip install arouter
  </Card>

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

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

  <Card title="cURL" icon="terminal" href="/zh-Hant/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

將 ARouter 用作 Vercel AI SDK 應用程式的後端：

```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](/zh-Hant/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](/zh-Hant/api-reference/gemini/generate-content)。

## 其他框架

任何具有 OpenAI 相容適配器的框架都可以與 ARouter 配合使用。常見範例：

| 框架                  | 整合方式                                                 |
| ------------------- | ---------------------------------------------------- |
| **AutoGen**         | 設定 `model_client` base URL                           |
| **CrewAI**          | 使用 `OpenAICompatibleModel` 配合 ARouter base URL       |
| **LlamaIndex**      | 帶自訂 base URL 的 `OpenAI` LLM 類別                       |
| **Haystack**        | 帶 ARouter API key 和 base URL 的 `OpenAIChatGenerator` |
| **Semantic Kernel** | 帶自訂端點的 `OpenAIChatCompletion`                        |

對於此處未列出的框架，檢查其是否支援 `base_url` / `api_base` 設定——如果支援，ARouter 即可與之配合使用。
