// Quick Start

使用文件

透過環境變數設定 API 位址和金鑰,無需修改程式碼即可接入 PioModel。

01API 端點

Anthropic SDK(Claude Code 等)
https://api.piomodel.com
OpenAI SDK / HTTP
https://api.piomodel.com/v1
KEY
在主控台「API Key 管理」建立金鑰,格式為 sk-your-api-key。請求時作為 Authorization: Bearer sk-... 傳入。

02環境變數設定

Windows 設定

僅當前終端視窗有效,關閉後失效。適合暫時測試。

# PowerShell (valid for current session only)
$env:ANTHROPIC_BASE_URL = "https://api.piomodel.com"
$env:ANTHROPIC_AUTH_TOKEN = "sk-your-api-key"

macOS / Linux 設定

僅當前終端視窗有效,關閉後失效。適合暫時測試。

# bash / zsh (valid for current session only)
export ANTHROPIC_BASE_URL="https://api.piomodel.com"
export ANTHROPIC_AUTH_TOKEN="sk-your-api-key"

03工具串接

主流 AI 程式設計工具都能直連 PioModel,設定好環境變數或下面的配置即可。

Claude Code CLI

Anthropic 官方命令列工具,透過環境變數連線 PioModel,無需改動程式碼。

前往「API Key 管理」頁面一鍵下載設定腳本 →
# bash / zsh (valid for current session only)
export ANTHROPIC_BASE_URL="https://api.piomodel.com"
export ANTHROPIC_AUTH_TOKEN="sk-your-api-key"

設定完成後啟動:

claude

Codex CLI

OpenAI 官方 Codex 命令列工具,走 /v1/responses 介面。注意 base_url 必須包含 /v1。

編輯 ~/.codex/config.toml:

model_provider = "piomodel"
model = "gpt-5.3-codex"
model_reasoning_effort = "high"
disable_response_storage = true
preferred_auth_method = "apikey"

[model_providers.piomodel]
name = "piomodel"
base_url = "https://api.piomodel.com/v1"
wire_api = "responses"
env_key = "PIOMODEL_API_KEY"

然後將 API Key 設定到環境變數:

# bash / zsh
export PIOMODEL_API_KEY="sk-your-api-key"

設定完成後啟動:

codex

Cursor / Windsurf

在設定裡覆寫 OpenAI 介接位址與金鑰即可。

{
  "openai.baseUrl": "https://api.piomodel.com/v1",
  "openai.apiKey": "sk-your-api-key"
}

Cline(VS Code)

在 Cline 裡選擇 OpenAI Compatible 提供者,填入位址、金鑰與模型名稱。

Provider   : OpenAI Compatible
Base URL   : https://api.piomodel.com/v1
API Key    : sk-your-api-key
Model      : claude-sonnet-4-5-20250929

04呼叫範例

from anthropic import Anthropic

# Automatically reads ANTHROPIC_BASE_URL / ANTHROPIC_AUTH_TOKEN from env
client = Anthropic()

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

安裝: pip install anthropic / openai · npm install openai

05串流回應

請求體加入 stream: true 即可啟用 SSE 串流輸出,適合聊天介面即時渲染。

from anthropic import Anthropic

client = Anthropic()

with client.messages.stream(
    model="claude-sonnet-4-5-20250929",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Write a haiku about Go."}],
) as stream:
    for text in stream.text_stream:
        print(text, end="", flush=True)

06格式自動轉換

PioModel 在閘道端進行 Anthropic Messages ↔ OpenAI Chat 雙向透明轉換。這代表:同一個模型,你既能用 Anthropic 風格呼叫,也能用 OpenAI 風格呼叫——一套程式碼,任意模型。

兩種風格的主要欄位對應關係:

Anthropic 風格OpenAI 風格說明
systemmessages[role=system]系統提示的位置不同,閘道會自動搬運
max_tokens(必填)max_tokens(可选)省略時閘道會依模型上限處理
content 分块数组content 字符串文字/圖片區塊與字串互相轉換
stop_reasonfinish_reason結束原因欄位名稱對應
TIP
已有 OpenAI 程式碼想改呼叫 Claude?只需改 base_url 與 model 兩處即可,訊息結構不必異動。

07多模態

圖片生成使用同一個閘道與金鑰,依用量計費。

img = client.images.generate(
    model="gpt-image-2",
    prompt="夜幕下的城市天际线,电影感",
    size="1024x1024",
)
print(img.data[0].url)

08函式呼叫

用 OpenAI 風格的 tools 定義可呼叫函式,模型會在需要時回傳 tool_calls,由你的程式碼執行後回填結果。

tools = [{
  "type": "function",
  "function": {
    "name": "get_weather",
    "description": "查询某城市天气",
    "parameters": {
      "type": "object",
      "properties": {"city": {"type": "string"}},
      "required": ["city"],
    },
  },
}]

resp = client.chat.completions.create(
    model="claude-sonnet-4-5-20250929",
    messages=[{"role": "user", "content": "上海今天天气怎么样?"}],
    tools=tools,
)
print(resp.choices[0].message.tool_calls)

09錯誤處理

/v1/* 路徑遵循 OpenAI 錯誤格式,錯誤 JSON 包含 type / code / message。

{
  "error": {
    "type": "invalid_request_error",
    "code": "insufficient_quota",
    "message": "余额不足"
  }
}

常見錯誤碼

HTTP說明
401API Key 無效或未提供
402餘額不足,請前往儲值
429觸發限流或每日配額耗盡
503上游渠道全部不可用(熔斷中)
查看全部模型與價格 →