> Discover all available pages from the documentation index: https://mastra.zisheng.pro/zh-TW/llms.txt # ![Anthropic 標誌](https://models.dev/logos/anthropic.svg)Anthropic 透過 Mastra 的模型路由器存取 13 個 Anthropic 模型。系統會自動使用 `ANTHROPIC_API_KEY` 環境變數完成身分驗證。 如需進一步了解,請參閱[Anthropic 文件](https://docs.anthropic.com/en/docs/about-claude/models)。 ```bash ANTHROPIC_API_KEY=your-api-key ``` ```typescript import { Agent } from '@mastra/core/agent' const agent = new Agent({ id: 'my-agent', name: 'My Agent', instructions: 'You are a helpful assistant', model: 'anthropic/claude-fable-5', }) // Generate a response const response = await agent.generate('Hello!') // Stream a response const stream = await agent.stream('Tell me a story') for await (const chunk of stream) { console.log(chunk) } ``` ## 模型 | Model | Context | Tools | Reasoning | Image | Audio | Video | Input $/1M | Output $/1M | | -------------------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- | | `anthropic/claude-fable-5` | 1.0M | | | | | | $10 | $50 | | `anthropic/claude-haiku-4-5` | 200K | | | | | | $1 | $5 | | `anthropic/claude-haiku-4-5-20251001` | 200K | | | | | | $1 | $5 | | `anthropic/claude-opus-4-5` | 200K | | | | | | $5 | $25 | | `anthropic/claude-opus-4-5-20251101` | 200K | | | | | | $5 | $25 | | `anthropic/claude-opus-4-6` | 1.0M | | | | | | $5 | $25 | | `anthropic/claude-opus-4-7` | 1.0M | | | | | | $5 | $25 | | `anthropic/claude-opus-4-8` | 1.0M | | | | | | $5 | $25 | | `anthropic/claude-opus-5` | 1.0M | | | | | | $5 | $25 | | `anthropic/claude-sonnet-4-5` | 1.0M | | | | | | $3 | $15 | | `anthropic/claude-sonnet-4-5-20250929` | 1.0M | | | | | | $3 | $15 | | `anthropic/claude-sonnet-4-6` | 1.0M | | | | | | $3 | $15 | | `anthropic/claude-sonnet-5` | 1.0M | | | | | | $2 | $10 | ## 進階設定 ### 自訂標頭 ```typescript const agent = new Agent({ id: 'custom-agent', name: 'custom-agent', model: { id: 'anthropic/claude-fable-5', apiKey: process.env.ANTHROPIC_API_KEY, headers: { 'X-Custom-Header': 'value', }, }, }) ``` ### 動態選擇模型 ```typescript const agent = new Agent({ id: 'dynamic-agent', name: 'Dynamic Agent', model: ({ requestContext }) => { const useAdvanced = requestContext.task === 'complex' return useAdvanced ? 'anthropic/claude-sonnet-5' : 'anthropic/claude-fable-5' }, }) ``` ## Provider 選項 Anthropic 透過 `providerOptions` 參數支援以下 Provider 特有選項: ```typescript const response = await agent.generate('Hello!', { providerOptions: { anthropic: { // See available options in the table below }, }, }) ``` ### 可用選項 **sendReasoning** (`boolean | undefined`) **structuredOutputMode** (`"outputFormat" | "jsonTool" | "auto" | undefined`) **thinking** (`{ type: "adaptive"; display?: "omitted" | "summarized" | undefined; } | { type: "enabled"; budgetTokens?: number | undefined; } | { type: "disabled"; } | undefined`) **disableParallelToolUse** (`boolean | undefined`) **cacheControl** (`{ type: "ephemeral"; ttl?: "5m" | "1h" | undefined; } | undefined`) **metadata** (`{ userId?: string | undefined; } | undefined`) **mcpServers** (`{ type: "url"; name: string; url: string; authorizationToken?: string | null | undefined; toolConfiguration?: { enabled?: boolean | null | undefined; allowedTools?: string[] | null | undefined; } | null | undefined; }[] | undefined`) **container** (`{ id?: string | undefined; skills?: { type: "anthropic" | "custom"; skillId: string; version?: string | undefined; }[] | undefined; } | undefined`) **toolStreaming** (`boolean | undefined`) **effort** (`"low" | "medium" | "high" | "xhigh" | "max" | undefined`) **taskBudget** (`{ type: "tokens"; total: number; remaining?: number | undefined; } | undefined`) **speed** (`"fast" | "standard" | undefined`) **inferenceGeo** (`"us" | "global" | undefined`) **fallbacks** (`"default" | { model: string; max_tokens?: number | undefined; thinking?: Record | undefined; output_config?: Record | undefined; speed?: "fast" | "standard" | undefined; }[] | undefined`) **anthropicBeta** (`string[] | undefined`) **contextManagement** (`{ edits: ({ type: "clear_tool_uses_20250919"; trigger?: { type: "input_tokens"; value: number; } | { type: "tool_uses"; value: number; } | undefined; keep?: { type: "tool_uses"; value: number; } | undefined; clearAtLeast?: { ...; } | undefined; clearToolInputs?: boolean | undefined; excludeTools?: string[] | undefin...`) ## 直接安裝 Provider 你也可以直接將此 Provider 安裝為獨立套件,用它取代 Mastra 模型路由字串。詳情請參閱[套件文件](https://www.npmjs.com/package/@ai-sdk/anthropic)。 **npm**: ```bash npm install @ai-sdk/anthropic ``` **pnpm**: ```bash pnpm add @ai-sdk/anthropic ``` **Yarn**: ```bash yarn add @ai-sdk/anthropic ``` **Bun**: ```bash bun add @ai-sdk/anthropic ``` 如需此 Provider 的詳細說明,請參閱 [AI SDK Anthropic Provider 文件](https://ai-sdk.dev/providers/ai-sdk-providers/anthropic)。