Getting started
LLM API 使用指南
这是一个私有的 AI 模型接口:一个地址、一把 key,就能使用 Claude、GPT 与 GLM 的最新对话模型。本页教你在一台全新的 Mac 上完成配置,全程复制粘贴即可,不需要技术背景。API key 请向管理员索取。
Option A · 推荐
用 Hermes
Hermes 是一个在终端里对话的 AI 助手,安装和配置最快,共三步。
粘贴执行,等待安装完成(几分钟)。装完后关掉终端窗口,重新开一个。
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash把下面的命令一起粘贴执行。配置按协议分组:Claude 使用 fengzee-claude(Anthropic Messages),GPT 与 GLM 使用 fengzee-llm(OpenAI Chat Completions)。默认模型按当前目录的推荐项设置;以后切换模型时,请同时选择对应的 provider。
hermes config set providers.fengzee-claude.base_url https://llm.fengzee.me
hermes config set providers.fengzee-claude.api_key YOUR_API_KEY
hermes config set providers.fengzee-claude.api_mode anthropic_messages
hermes config set providers.fengzee-claude.discover_models true
hermes config set providers.fengzee-llm.base_url https://llm.fengzee.me/v1
hermes config set providers.fengzee-llm.api_key YOUR_API_KEY
hermes config set providers.fengzee-llm.api_mode chat_completions
hermes config set providers.fengzee-llm.discover_models true
hermes config set model.provider fengzee-claude
hermes config set model.default claude-opus-5-5输入 hermes 回车,直接打字对话。如果首次启动出现设置向导,直接退出即可,接口已在第 2 步配好。
hermesOption B
用 DeepSeek Harness
DeepSeek Harness 在浏览器里提供对话界面,适合不想待在终端里的人。共四步,第一步是装 Node.js 运行环境。
打开 nodejs.org,点绿色下载按钮(LTS 版本),下载后双击安装包,一路「继续」装完。
粘贴执行,等待完成(几分钟,视网络情况)。
mkdir -p ~/dsh && cd ~/dsh && npm install @deepseek-ai/dsh@0.2.0-rc.2以下配置用于 DeepSeek Harness 0.2 新安装。Claude 使用 fengzee-claude(anthropic-messages),baseURL 为 https://llm.fengzee.me;GPT 与 GLM 使用 fengzee-llm(openai-completions),baseURL 为 https://llm.fengzee.me/v1。模型与推荐项按当前目录生成。已有配置请合并相应 provider,保留其他设置。
展开配置
mkdir -p ~/.dsh/profiles/web
cat > ~/.dsh/profiles/web/package.json <<'EOF'
{"name":"dsh-profile-web","version":"0.0.0","private":true,"dependencies":{},"dsh":{"profile":{"bundles":["@deepseek-ai/dsh-base","@deepseek-ai/dsh-web-app"],"patchReload":"live"}}}
EOF
cat > ~/.dsh/profiles/web/cordis.patch.yml <<'EOF'
- id: agent-default-model
config:
provider: fengzee-claude
model: claude-opus-5-5
reasoningEffort: high
- id: llm-pi-ai
config:
providers:
fengzee-claude:
apiKeyEnv: FENGZEE_LLM_API_KEY
api: anthropic-messages
baseURL: https://llm.fengzee.me
reasoning: high
compat:
forceAdaptiveThinking: true
allowEmptySignature: false
supportsLongCacheRetention: true
supportsCacheControlOnTools: true
defaultContextWindow: 1000000
defaultMaxTokens: 128000
defaultInput: [text, image]
streamIdleTimeoutMs: 1800000
models:
- id: claude-opus-5-5
name: Claude Opus 5.5
input:
- text
- image
reasoningEfforts:
low: low
medium: medium
high: high
xhigh: xhigh
max: max
- id: claude-sonnet-5-5
name: Claude Sonnet 5.5
input:
- text
- image
reasoningEfforts:
low: low
medium: medium
high: high
xhigh: xhigh
max: max
- id: claude-haiku-5-5
name: Claude Haiku 5.5
contextWindow: 1000000
maxTokens: 128000
input:
- text
- image
reasoningEfforts:
low: low
medium: medium
high: high
xhigh: xhigh
max: max
- id: claude-fable-5-1
name: Claude Fable 5.1
input:
- text
- image
reasoningEfforts:
low: low
medium: medium
high: high
xhigh: xhigh
max: max
fengzee-llm:
apiKeyEnv: FENGZEE_LLM_API_KEY
api: openai-completions
baseURL: https://llm.fengzee.me/v1
reasoning: high
compat:
supportsDeveloperRole: false
defaultContextWindow: 1000000
defaultMaxTokens: 128000
defaultInput: [text, image]
streamIdleTimeoutMs: 1800000
models:
- id: gpt-6-astra
name: GPT 6 Astra
input:
- text
- image
reasoningEfforts:
low: low
medium: medium
high: high
xhigh: xhigh
max: max
- id: gpt-6.1-sol
name: GPT 6.1 Sol
input:
- text
- image
reasoningEfforts:
low: low
medium: medium
high: high
xhigh: xhigh
max: max
- id: gpt-6-sol
name: GPT 6 Sol
input:
- text
- image
reasoningEfforts:
low: low
medium: medium
high: high
xhigh: xhigh
max: max
- id: gpt-6-luna
name: GPT 6 Luna
input:
- text
- image
reasoningEfforts:
low: low
medium: medium
high: high
xhigh: xhigh
max: max
- id: gpt-5.6-sol
name: GPT 5.6 Sol
input:
- text
- image
reasoningEfforts:
off: none
low: low
medium: medium
high: high
xhigh: xhigh
max: max
- id: gpt-5.6-terra
name: GPT 5.6 Terra
input:
- text
- image
reasoningEfforts:
off: none
low: low
medium: medium
high: high
xhigh: xhigh
max: max
- id: gpt-5.6-luna
name: GPT 5.6 Luna
input:
- text
- image
reasoningEfforts:
off: none
low: low
medium: medium
high: high
xhigh: xhigh
max: max
- id: glm-5.3
name: GLM 5.3
input:
- text
reasoningEfforts:
minimal: minimal
low: low
medium: medium
high: high
xhigh: xhigh
max: max
- id: glm-5.3-flash
name: GLM 5.3 Flash
input:
- text
- image
reasoningEfforts:
minimal: minimal
low: low
medium: medium
high: high
xhigh: xhigh
max: max
EOF
cat > ~/.dsh/.credentials.yaml <<'EOF'
version: 1
refs:
FENGZEE_LLM_API_KEY: YOUR_API_KEY
EOF
chmod 600 ~/.dsh/.credentials.yaml执行后浏览器会自动打开 http://127.0.0.1:3080,在网页里对话。以后每次使用都执行这一条。
cd ~ && ~/dsh/node_modules/.bin/dsh webOption C
已经在用别的 AI 工具?
如果你的电脑上已经有任何能执行任务的 AI 助手(Claude Code、Codex、Cursor 等),把下面这段话直接发给它,它会替你完成接入。
请帮我把这台电脑上的 AI 工具接入一个私有 LLM API:
- 服务地址:https://llm.fengzee.me
- Claude:Anthropic Messages,POST /v1/messages;Anthropic 客户端的 baseURL 为 https://llm.fengzee.me,版本头为 anthropic-version: 2023-06-01
- GPT 与 GLM:OpenAI Chat Completions,POST /v1/chat/completions;OpenAI 客户端的 baseURL 为 https://llm.fengzee.me/v1
- 按上述协议分别配置 provider;DeepSeek Harness 的 api 分别为 anthropic-messages 与 openai-completions
- API key:YOUR_API_KEY(Authorization: Bearer 或 X-Api-Key 鉴权)
- 可用模型列表:GET https://llm.fengzee.me/v1/models(按当前 key 权限过滤)
- 提供的模型:claude-opus-5-5、claude-sonnet-5-5、claude-haiku-5-5、claude-fable-5-1、gpt-6-astra、gpt-6.1-sol、gpt-6-sol、gpt-6-luna、gpt-5.6-sol、gpt-5.6-terra、gpt-5.6-luna、glm-5.3、glm-5.3-flash
- 推荐默认模型:claude-opus-5-5
- 对话模型请求由服务端 CPA 发出,订阅额度在服务端读取;本机离线时继续运行
- 错误处理:HTTP 502(upstream_unavailable)为上游暂不可达,HTTP 504 为超时;HTTP 403(upstream_paused)为提供方暂停,不要自动重试,按提示的恢复时间再使用
请完成配置,按所选模型的协议发送一条测试消息,然后告诉我以后怎么切换模型和对应的 provider。Reference
通用接入信息
请按模型选择客户端协议:Claude 使用 Anthropic Messages(POST /v1/messages),GPT 与 GLM 使用 OpenAI Chat Completions(POST /v1/chat/completions),两者都支持流式响应。Anthropic 客户端的 baseURL 使用站点根地址,OpenAI 客户端使用下方带 /v1 的地址。鉴权头二选一即可。
第一条命令按当前推荐模型的协议生成,返回回答即可确认连通;第二条列出当前 key 可用的模型。若返回 upstream_paused,请等待提示的恢复时间,或选择其他未暂停的提供方。
curl https://llm.fengzee.me/v1/messages \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-H "anthropic-version: 2023-06-01" \
-d '{"model":"claude-opus-5-5","max_tokens":1024,"messages":[{"content":"你好","role":"user"}]}'curl https://llm.fengzee.me/v1/models -H "Authorization: Bearer YOUR_API_KEY"