文本生成是 KHB 算力平台的核心能力,支持多种大语言模型的对话、创作和知识问答。
1. 模型核心能力
1.1 基础功能
- 文本生成:根据上下文生成连贯的自然语言文本,支持多种文体和风格。
- 语义理解:深入解析用户意图,支持多轮对话管理,确保对话的连贯性和准确性。
- 知识问答:覆盖广泛的知识领域,包括科学、技术、文化、历史等,提供准确的知识解答。
- 代码辅助:支持多种主流编程语言(如 Python、Java、C++ 等)的代码生成、解释和调试。
1.2 进阶能力
- 长文本处理:支持 4k 至 64k tokens 的上下文窗口,适用于长篇文档生成和复杂对话场景。
- 指令跟随:精确理解复杂任务指令,如”用 Markdown 表格对比 A/B 方案”。
- 风格控制:通过系统提示词调整输出风格,支持学术、口语、诗歌等多种风格。
- 多模态支持:除了文本生成,还支持图像描述、语音转文字等多模态任务。
2. 接口调用规范
2.1 基础请求结构
您可以通过 OpenAI SDK 进行端到端接口请求:
from openai import OpenAI
client = OpenAI(
api_key="YOUR_KEY",
base_url="https://khb.net.cn/v1"
)
response = client.chat.completions.create(
model="deepseek-ai/DeepSeek-V3.2",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Write a haiku about recursion in programming."}
],
temperature=0.7,
max_tokens=1024,
stream=True
)
# 逐步接收并处理响应
for chunk in response:
if not chunk.choices:
continue
if chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)
if chunk.choices[0].delta.reasoning_content:
print(chunk.choices[0].delta.reasoning_content, end="", flush=True)
多模态消息结构
from openai import OpenAI
client = OpenAI(
api_key="YOUR_KEY",
base_url="https://khb.net.cn/v1"
)
response = client.chat.completions.create(
model="Pro/moonshotai/Kimi-K2.6",
messages=[
{
"role": "user",
"content": [
{
"type": "image_url",
"image_url": {
"url": "https://example.png"
}
},
{
"type": "text",
"text": "What's in this image?"
}
]
}
],
temperature=0.7,
max_tokens=1024,
stream=True
)
for chunk in response:
if not chunk.choices:
continue
if chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)
if chunk.choices[0].delta.reasoning_content:
print(chunk.choices[0].delta.reasoning_content, end="", flush=True)
JSON 模式
import json
from openai import OpenAI
client = OpenAI(
api_key="您的 APIKEY", # 从 https://account.khb.com/account/ak 获取
base_url="https://khb.net.cn/v1"
)
response = client.chat.completions.create(
model="Pro/zai-org/GLM-5.1",
messages=[
{"role": "system", "content": "You are a helpful assistant designed to output JSON."},
{"role": "user", "content": "2020 年世界奥运会乒乓球男子和女子单打冠军分别是谁? "
"Please respond in the format {"男子冠军": ..., "女子冠军": ...}"}
],
response_format={"type": "json_object"}
)
print(response.choices[0].message.content)
2.2 消息体结构说明
| 消息类型 | 功能描述 | 示例内容 |
|---|---|---|
| system | 模型指令,设定 AI 角色,描述模型应一般如何行为和响应 | “你是有 10 年经验的儿科医生” |
| user | 用户输入,将最终用户的消息传递给模型 | “幼儿持续低烧应如何处理?” |
| assistant | 模型生成的历史回复,为模型提供示例,说明它应该如何回应当前请求 | “建议先测量体温…” |
你想让模型遵循分层指令时,消息角色可以帮助你获得更好的输出。但它们并不是确定性的,所以使用的最佳方式是尝试不同的方法,看看哪种方法能给你带来好的结果。
3. 模型系列选型指南
可以进入 模型广场,根据左侧的筛选功能,筛选支持不同功能的语言模型,根据模型的介绍,了解模型具体的价格、模型参数大小、模型上下文支持的最大长度及模型价格等内容。
支持在 Playground 进行体验(Playground 只进行模型体验,暂时没有历史记录功能,如果您想要保存历史的对话记录内容,请自己保存会话内容),想要了解更多使用方式,可以参考 API 文档。
4. 核心参数详解
4.1 创造性控制
# 温度参数 (0.0~2.0)
temperature=0.5 # 平衡创造性与可靠性
# 核采样 (top_p)
top_p=0.9 # 仅考虑概率累积 90% 的词集
4.2 输出限制
max_tokens=1000 # 单次请求最大生成长度
stop=["\n##", "<|end|>"] # 终止序列,在返回中遇到数组中对应的字符串,就会停止输出
frequency_penalty=0.5 # 抑制重复用词 (-2.0~2.0)
stream=True # 控制输出是否是流式输出
4.3 常见场景问题
Q1. 模型输出乱码
部分模型在不设置参数的情况下,容易出现乱码,遇到上述情况,可以尝试设置 temperature、top_k、top_p、frequency_penalty 这些参数。
payload = {
"model": "Qwen/Qwen2.5-Math-72B-Instruct",
"messages": [
{"role": "user", "content": "1+1=?"}
],
"max_tokens": 200,
"temperature": 0.7,
"top_k": 50,
"top_p": 0.7,
"frequency_penalty": 0
}
Q2. 关于 max_tokens 说明
max_tokens 与上下文长度相等,由于部分模型推理服务尚在更新中,请不要在请求时将 max_tokens 设置为最大值(上下文长度),建议留出 10k 左右作为输入内容的空间。
Q3. 关于 context_length 说明
不同的 LLM 模型,context_length 是有差别的,具体可以在模型广场上搜索对应的模型,查看模型具体信息。
Q4. 模型输出截断问题
可以从以下几方面进行排查:
- max_tokens 设置:max_token 设置到合适值,输出大于 max_token 的情况下,会被截断。
- 设置流式输出请求:非流式请求时候,输出内容比较长的情况下,容易出现 504 超时。
- 设置客户端超时时间:把客户端超时时间设置大一些,防止未输出完成,达到客户端超时时间被截断。
5. 错误码处理
| 错误码 | 常见原因 | 解决方案 |
|---|---|---|
| 400 | 参数格式错误 | |
| 401 | API Key 没有正确设置 | 检查 API Key |
| 403 | 权限不够 | 最常见的原因是该模型需要实名认证,其他情况参考报错信息 |
| 429 | 请求频率超限 | 实施指数退避重试机制 |
| 503/504 | 模型过载 | 切换备用模型节点 |
6. 追踪标识 (x-khb-trace-id)
响应头 (Response Headers) 中包含的 x-khb-trace-id 字段,用于追踪请求的唯一标识符,便于日志查询和问题排查。
- 该字段为全局唯一的字符串,通常以 UUID 格式生成
- 客户端可在调试或排查问题时,将
x-khb-trace-id提供给 KHB 工程师,以便快速定位请求链路中的日志信息 - 此字段由服务端自动生成并返回,客户端无需主动设置
7. 计费与配额管理
7.1 计费公式
总费用 = (输入 tokens × 输入单价) + (输出 tokens × 输出单价)
7.2 支持模型列表及单价
支持的模型及具体价格可以进入模型广场下的模型详情页查看。
8. 应用案例
8.1 技术文档生成
from openai import OpenAI
client = OpenAI(
api_key="YOUR_KEY",
base_url="https://khb.net.cn/v1"
)
response = client.chat.completions.create(
model="Qwen/Qwen3.6-27B",
messages=[{
"role": "user",
"content": "编写 Python 异步爬虫教程,包含代码示例和注意事项"
}],
temperature=0.7,
max_tokens=4096
)
8.2 数据分析报告
from openai import OpenAI
client = OpenAI(
api_key="YOUR_KEY",
base_url="https://khb.net.cn/v1"
)
response = client.chat.completions.create(
model="Qwen/QVQ-72B-Preview",
messages=[
{"role": "system", "content": "你是数据分析专家,用 Markdown 输出结果"},
{"role": "user", "content": "分析 2023 年新能源汽车销售数据趋势"}
],
temperature=0.7,
max_tokens=4096
)
