SDK

Anthropic Node

使用 Anthropic Node SDK 调用 Claude-compatible Messages 路由。

安装

npm install @anthropic-ai/sdk
export UOUODUO_API_KEY="sk-xxx..."

客户端配置

import Anthropic from "@anthropic-ai/sdk";

const anthropic = new Anthropic({
  apiKey: process.env.UOUODUO_API_KEY,
  baseURL: "https://api.example.com/v1",
});

Messages

const message = await anthropic.messages.create({
  model: "claude-3-5-sonnet-latest",
  max_tokens: 800,
  system: "你是一个严谨的代码审阅助手。",
  messages: [
    { role: "user", content: "把这份上线 checklist 压缩成三点。" },
  ],
});

console.log(message.content);

Streaming

const stream = await anthropic.messages.stream({
  model: "claude-3-5-sonnet-latest",
  max_tokens: 800,
  messages: [{ role: "user", content: "解释 SSE event 顺序。" }],
});

for await (const event of stream) {
  if (event.type === "content_block_delta" && event.delta.type === "text_delta") {
    process.stdout.write(event.delta.text);
  }
}

错误处理

try {
  await anthropic.messages.create({
    model: "claude-3-5-sonnet-latest",
    max_tokens: 800,
    messages: [{ role: "user", content: "hello" }],
  });
} catch (error) {
  console.error(error);
  throw error;
}

生产建议

  • 使用专门的 Claude-compatible key,方便过滤日志。
  • 对 streaming 做中途断流重试,避免半截答案进入业务数据。
  • 如果客户端无法自动列出模型,手动填写 `/models` 页面展示的模型 ID。