TokenPan 接入教程

核心思路

TokenPan 与 Anthropic 官方 API 完全兼容,只需将 base_url 替换为 https://yyken.com/v1,其余参数、响应格式均无需改动。

获取 API Key

登录 yyken.com 控制台,进入 API Keys 页面,点击「新建 Key」即可生成。

步骤操作
1. 注册账号访问 yyken.com/register 完成注册
2. 充值余额支持支付宝 / 微信支付,最低充值 ¥10,余额永久有效
3. 创建 Key在「API Keys」页面点击「新建 Key」,复制保存(仅显示一次)

注意

API Key 请妥善保管,不要提交到 Git 仓库或暴露在前端代码中。

Python 接入

使用官方 anthropic Python SDK,仅需在初始化时传入 base_url

安装 SDK

bash
pip install anthropic

发送第一条消息

python
import anthropic

client = anthropic.Anthropic(
    api_key="your-api-key",          # 替换为你的 TokenPan API Key
    base_url="https://yyken.com/v1", # TokenPan 代理地址
)

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

print(message.content[0].text)

使用环境变量(推荐)

bash
export ANTHROPIC_API_KEY="your-api-key"
export ANTHROPIC_BASE_URL="https://yyken.com/v1"
python
import anthropic

# SDK 自动读取环境变量,无需手动传参
client = anthropic.Anthropic()

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

Node.js 接入

安装 SDK

bash
npm install @anthropic-ai/sdk

发送消息

javascript
import Anthropic from '@anthropic-ai/sdk';

const client = new Anthropic({
  apiKey: 'your-api-key',           // 替换为你的 TokenPan API Key
  baseURL: 'https://yyken.com/v1',  // TokenPan 代理地址
});

const message = await client.messages.create({
  model: 'claude-sonnet-4-6',
  max_tokens: 1024,
  messages: [{ role: 'user', content: '你好,Claude!' }],
});

console.log(message.content[0].text);

提示

CommonJS 项目使用 const Anthropic = require('@anthropic-ai/sdk').default;

cURL 接入

无需安装任何依赖,直接通过 HTTP 请求调用。

bash
curl https://yyken.com/v1/messages \
  -H "x-api-key: your-api-key" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{
    "model": "claude-sonnet-4-6",
    "max_tokens": 1024,
    "messages": [{"role": "user", "content": "你好,Claude!"}]
  }'

响应示例

json
{
  "id": "msg_01XFDUDYJgAACzvnptvVoYEL",
  "type": "message",
  "role": "assistant",
  "content": [{ "type": "text", "text": "你好!有什么我可以帮助你的吗?" }],
  "model": "claude-sonnet-4-6",
  "stop_reason": "end_turn",
  "usage": { "input_tokens": 10, "output_tokens": 15 }
}

OpenAI SDK 兼容模式

TokenPan 支持 OpenAI Chat Completions 格式,已有 OpenAI 项目无需重写代码,直接替换 base_urlapi_key 即可。

python
from openai import OpenAI

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

response = client.chat.completions.create(
    model="claude-sonnet-4-6",
    messages=[{"role": "user", "content": "你好,Claude!"}]
)

print(response.choices[0].message.content)
javascript
import OpenAI from 'openai';

const client = new OpenAI({
  apiKey: 'your-api-key',
  baseURL: 'https://yyken.com/v1',
});

const response = await client.chat.completions.create({
  model: 'claude-sonnet-4-6',
  messages: [{ role: 'user', content: '你好,Claude!' }],
});

console.log(response.choices[0].message.content);

注意

OpenAI 兼容模式不支持 Claude 专属参数(如 top_kmetadata)。如需完整功能,请使用 Anthropic 原生 SDK。

流式输出(Streaming)

设置 stream=True 即可逐 token 实时接收响应,适合聊天界面等实时场景。

python
import anthropic

client = anthropic.Anthropic(
    api_key="your-api-key",
    base_url="https://yyken.com/v1",
)

with client.messages.stream(
    model="claude-sonnet-4-6",
    max_tokens=1024,
    messages=[{"role": "user", "content": "写一首关于春天的诗"}],
) as stream:
    for text in stream.text_stream:
        print(text, end="", flush=True)
javascript
import Anthropic from '@anthropic-ai/sdk';

const client = new Anthropic({
  apiKey: 'your-api-key',
  baseURL: 'https://yyken.com/v1',
});

const stream = await client.messages.stream({
  model: 'claude-sonnet-4-6',
  max_tokens: 1024,
  messages: [{ role: 'user', content: '写一首关于春天的诗' }],
});

for await (const chunk of stream) {
  if (chunk.type === 'content_block_delta') {
    process.stdout.write(chunk.delta.text);
  }
}

模型列表

model 参数中填写以下 ID 即可调用对应模型。

模型 ID系列特点输入 $/1M输出 $/1M
claude-opus-4-7Opus最强推理,复杂任务首选$ 4.25$ 21.25
claude-opus-4-6Opus旗舰级能力,稳定可靠$ 4.25$ 21.25
claude-sonnet-4-6Sonnet性能与成本最佳平衡,推荐$ 2.55$ 12.75
claude-haiku-4-5-20251001Haiku极速响应,高并发低成本$ 0.85$ 4.25

价格说明

以上为 TokenPan 优惠价(官方定价 × 85折)。充值即用,余额永久有效。

图片理解(Vision)

Claude 支持在消息中传入图片,进行内容识别、OCR、图表分析等任务。

python
import anthropic

client = anthropic.Anthropic(
    api_key="your-api-key",
    base_url="https://yyken.com/v1",
)

message = client.messages.create(
    model="claude-sonnet-4-6",
    max_tokens=1024,
    messages=[{
        "role": "user",
        "content": [
            {
                "type": "image",
                "source": {
                    "type": "url",
                    "url": "https://example.com/image.jpg",
                },
            },
            {"type": "text", "text": "请描述这张图片的内容"},
        ],
    }],
)
print(message.content[0].text)

System Prompt

通过 system 参数设置模型的角色、行为规范和背景知识。

python
import anthropic

client = anthropic.Anthropic(
    api_key="your-api-key",
    base_url="https://yyken.com/v1",
)

message = client.messages.create(
    model="claude-sonnet-4-6",
    max_tokens=1024,
    system="你是一位专业的 Python 工程师,回答简洁、准确,代码示例优先。",
    messages=[
        {"role": "user", "content": "如何用 Python 读取 CSV 文件?"}
    ]
)
print(message.content[0].text)

速率限制处理

遇到 429 错误时,建议使用指数退避重试:

python
import time, anthropic

client = anthropic.Anthropic(
    api_key="your-api-key",
    base_url="https://yyken.com/v1",
)

def call_with_retry(messages, retries=3):
    for i in range(retries):
        try:
            return client.messages.create(
                model="claude-sonnet-4-6",
                max_tokens=1024,
                messages=messages,
            )
        except anthropic.RateLimitError:
            if i == retries - 1:
                raise
            time.sleep(2 ** i)  # 1s → 2s → 4s

认证错误(401)

错误信息原因 & 解决方法
invalid x-api-keyKey 复制有误或含空格;确认使用 TokenPan Key 而非官方 Key
insufficient_balance账户余额不足,前往控制台充值后实时生效
authentication_errorPython SDK 用 api_key,cURL 用 x-api-key Header

兼容性说明

功能支持状态备注
Messages API✅ 支持完全兼容
流式输出(SSE)✅ 支持完全兼容
图片 / Vision✅ 支持URL 和 Base64 均可
Tool Use / Function Calling✅ 支持完全兼容
OpenAI Chat Completions 格式✅ 支持兼容模式
Batch API⚠ 部分支持联系客服开通
Files API🚧 暂不支持规划中