Documentation Index
Fetch the complete documentation index at: https://ahvn.top/llms.txt
Use this file to discover all available pages before exploring further.
hb.LLM 是 HeavenBase 的 Python LLM 客户端,覆盖聊天、流式输出、Embedding、图像生成、Mock 和网关路由。它会从 heavenbase.llm 配置中解析 preset、model、provider 和 gateway,然后在调用时生成具体运行时参数。
默认配置是 preset="system"、provider="openrouter"、gateway="openai"。
解析模型
preset:命名快捷方式,例如system、chat、reason、coder、embed、imagen、mock、custom。model:规范模型名或别名,例如ds-flash、sonnet、gpt、gpt-image-mini。provider:模型由谁提供。内置生产模型默认使用openrouter。gateway:请求如何发送。默认openai网关使用 OpenAI Python SDK 访问 OpenAI-compatible endpoint。
内置 Preset
Preset 使用可持久化的模型别名,便于用户配置保持简洁。| Preset | 模型别名 | 默认 Thinking | 说明 |
|---|---|---|---|
system | ds-flash | 关闭 | 轻量系统调用默认模型。 |
tiny | gemma | 关闭 | 低延迟小模型。 |
chat | ds-flash | 关闭 | 通用非思考聊天模型。 |
chat-pro | ds-pro | 关闭 | 更强的默认非思考聊天模型。 |
reason | ds-pro | 开启 | 面向困难任务的推理 preset。 |
reason-pro | gpt | 开启 | 使用默认 GPT 别名的高能力推理 preset。 |
worker | ds-flash | 关闭 | 后台确定性工具调用 preset。 |
coder | sonnet | 开启 | 面向多步实现的编码 preset。 |
coder-pro | opus | 开启 | 面向深度实现和评审的最高端编码 preset。 |
embed | gpt-embedding-small | 不适用 | 默认 embedding preset。 |
embed-local | embeddinggemma | 不适用 | 本地 embedding preset。 |
imagen | gpt-image-mini | 不适用 | 默认图像生成 preset。 |
mock | mock | 离线 | 测试和 demo 使用的确定性 mock。 |
custom | custom | 运行时提供 | 运行时传入的 OpenAI-compatible provider。 |
reason、reason-pro、coder、coder-pro 会通过统一的 think 参数默认开启思考;system、tiny、chat、chat-pro、worker 默认关闭。调用时 HeavenBase 会对 OpenAI-compatible gateways(openai、portkey、bifrost、litellm)统一写入 gateway-level extra_body.reasoning;本地服务需要的 provider-specific 参数可以通过 extra_body 显式传入。
内置模型
在线内置模型以 OpenRouter 为默认 provider,并且identifiers 中 OpenRouter 标识排在第一位。embeddinggemma 这类本地-only 条目只保留本地 provider。
| 规范模型 | 别名 |
|---|---|
deepseek-v4-flash | ds-flash, deepseek-flash, deepseek-chat |
deepseek-reasoner | ds-flash-thinking, deepseek-flash-thinking |
deepseek-v4-pro | ds, ds-pro, dsv4, dsv4-pro, deepseek, deepseek-v4, deepseek-pro |
gpt-5.4-nano | gpt-nano, 5.4-nano |
gpt-5.5 | gpt, 5.5 |
gpt-5.5-pro | gpt-pro, 5.5-pro |
claude-haiku-4.5 | haiku, haiku-4.5 |
claude-sonnet-4.6 | sonnet, sonnet-4.6 |
claude-opus-4.7 | opus, opus-4.7 |
gemini-3.1-flash-lite | gemini-flash-lite, gemini-lite |
gemini-3-flash-preview | gemini-flash |
gemini-3.1-pro-preview | gemini-pro |
kimi-k2.6 | kimi, k2.6 |
glm-5.1 | glm |
gemma-4-26b-a4b-it | gemma4, gemma4-26b, gemma4-26b-a4b, gemma4-26b-a4b-it, gemma, gemma-26b, gemma-26b-a4b, gemma-26b-a4b-it |
qwen3.6-flash | qwen3.6, qwen3.6-flash, qwen3.6-35b, qwen3.6-35b-a3b, qwen, qwen-flash, qwen-35b, qwen-35b-a3b |
embeddinggemma | embeddinggemma-300m |
text-embedding-3-small | gpt-embedding, gpt-embedding-small, text-embedding-small |
gpt-5-image-mini | gpt-image-mini, image-mini |
gpt-5.4-image-2 | gpt-image, gpt-image-2, image-2 |
mock 和 custom 是工具型模型条目,分别用于离线测试和运行时传入的 OpenAI-compatible provider。内置 provider 配置包括 OpenRouter、OpenAI、Anthropic、Gemini、Grok、DeepSeek、Moonshot、Z.ai、Minimax、DashScope、Ollama、LM Studio、vLLM、mock 和 custom。
图像输入
chat、stream 和 imagen 都支持统一的 images= 参数。HeavenBase 会把输入归一化为 LLMImage,在聊天请求里追加为 OpenAI-compatible image_url 内容块,在图像生成请求里作为 reference images 传入。
images= 接受 LLMImage、URL、data URL、base64 字符串、本地文件路径、bytes-like 对象、二进制文件对象、provider-style dict、Pillow image 和 numpy-compatible ndarray。
临时网关限制
HeavenBase 会对已知上游暂不支持的组合抛出明确异常:gateway="portkey" + provider="openrouter" 的 embedding 路径会等待 Portkey Gateway 支持落地;Bifrost image generation 会等待上游 image 支持修复。Portkey + OpenRouter image generation 当前 live 测试返回空 image payload,可用 scripts/repro_portkey_openrouter_image.py 复现并提交给 Portkey Gateway。
Include 投影
include 参数用于选择返回字段。常用字段包括:
text:最终可见回答文本。think:provider 单独暴露的 reasoning/thinking 文本。content:用<think>包裹think后再接text。message:OpenAI 格式 assistant response dict,包含role、content和可选tool_calls;它不是完整历史。delta:本次推理新增的 OpenAI 格式消息列表,通常是[message];未来接入工具执行后,tool result messages 会追加在 assistant message 后面。messages:完整对话历史,也就是归一化后的输入 messages 加上delta。tool_calls:assistant response 里的标准 OpenAItool_calls。usage:本次调用的 provider usage counters,常见键包括prompt_tokens、completion_tokens、total_tokens;streaming usage chunk 会合并数值字段。raw:原始 provider payload。elapsed:HeavenBase 测得的请求耗时秒数。created_at:本地响应创建时间戳。structured:可解析时的结构化 JSON/object 输出,否则为None。
stream include 里包含 delta 或 messages 时,内容 chunk 仍会渐进返回;流结束时还会有一个最终 metadata chunk,其中 text/think 为空,delta 含完整 assistant message。
Hash key 与客户端复用
每个解析后的LLMSpec 都可以生成稳定 hash key:
hash_key() 包含解析后的模型、provider、gateway mode、请求默认值和运行时参数。client_key() 只包含 SDK client 构造相关字段:gateway、API key、base URL、headers、timeout 和 retry。
openai、portkey、bifrost 这些 OpenAI-compatible adapter 会用 client_key() 做内存缓存,因此重复创建的 LLM 实例和重复调用不会反复创建 SDK client。LiteLLM 在这一层不创建 SDK client 对象,但模块导入和 runtime key 路径与同一套解析模型兼容。

