Kimi K3.1 Pro API 接口、参数 & 代码示例
moonshotai/kimi-k3.1-pro
Kimi K3.1 Pro 是月之暗面(Moonshot AI)于2026年10月24日正式发布的新一代旗舰开源大模型,属于全新的 K3.1 系列首款产品,也是 Kimi K3 的后训练升级版本。官方将其定位为“迄今能力最强的 3 万亿级参数模型”,并强调其在编程、3D 创作、金融研究及长程 Agent 任务上的显著提升。
- 模型 ID
- moonshotai/kimi-k3.1-pro
- 模型系列
- Kimi
- 更新日期
- 模型能力
- Coding Agent、3D 创作、深度思考
- 上下文长度
- 1024 K
- 模型价格(每 1000 tokens 输入)
- ¥ 0.015
- 模型价格(每 1000 tokens 输出)
- ¥ 0.07
- 模型价格(每 1000 tokens 缓存命中)
- ¥ 0.0015
- 模型价格(每 1000 tokens 缓存写入)
- ¥ 0.026
Kimi K3.1 Pro 模型介绍:
Kimi K3.1 Pro 是月之暗面(Moonshot AI)于2026年10月24日发布的新一代旗舰开源大模型。它的核心定位并非一个全新的基座模型,而是对Kimi K3进行“后训练增强”的版本,重点在于通过大规模强化学习(RL)来释放已有参数量的潜力,尤其在编程、智能体(Agent)和3D创作等专业领域实现了显著跃升。
📊 核心规格与架构
Kimi K3.1 Pro 延续了K3的混合专家(MoE)架构,具体规格如下:
| 特性 | 规格参数 |
|---|---|
| 模型定位 | K3.1系列首个模型,K3的后训练增强版 |
| 参数规模 | 总参数2.8万亿(官方也称“3万亿级”),激活参数约1,040亿 |
| 架构 | 混合专家(MoE),共896个专家网络,每次推理激活16个 |
| 上下文窗口 | 100万Token(约1500页A4纸) |
| 输入/输出 | 支持文本与图像输入,输出文本 |
| 开源状态 | 开源权重模型,完整权重计划于2026年11月4日前发布 |
| 高速版本 | 同步推出 Kimi K3.1 Pro Highspeed,智能水平相同,输出速度约为标准版的2-3倍 |
MoE架构是其成本控制的关键:虽然总参数庞大,但每次推理只激活一小部分专家,使得实际计算量远小于同等规模的“稠密模型”,从而控制了推理成本。
🎯 核心能力与专项突破
Kimi K3.1 Pro 的能力提升主要源于后训练阶段的大规模强化学习算力投入,使其在多个专业领域表现突出。
💻 编程与长程智能体(Agent) 这是K3.1 Pro提升最显著的方向。
- Terminal-Bench 4.0:在考察真实终端环境下编程智能体能力的基准中,K3.1 Pro得分65.7%,超过了GPT-6 Astra(58.2%),与Claude Opus 5.5(66.4%)仅有微弱差距。第三方机构Artificial Analysis的测量结果甚至更高,达到67.2%,而前代K3在该项上仅为12.6%。
- Kimi Code Bench 3.0 Long-horizon:在内部长程编码基准中,得分61.2%,较K3的55.95%有明显提升,重点考察多步执行与端到端问题解决能力。
- 标志性案例:在内部测试中,K3.1 Pro为模拟人体行走,通过自主分析实验结果、定位问题并迭代优化控制器,使仿真人体从“数秒内倒地”进步到能连续行走11.2秒,并自主修正了肩部肌肉力臂计算中的36处错误。
🎨 3D创作与空间推理 K3.1 Pro 具备较强的3D生成与工具调用能力。
- 在BenchCAD基准中,借助工具得分92.7%,接近Claude Opus 5.5(96.2%)和GPT-6 Astra(95.9%)的水平。
- 它能熟练使用 Unity、Unreal Engine、Godot 等游戏引擎,结合3D生成能力构建完整场景。例如,它曾端到端在Unreal Engine 5.8中构建了一座包含36个柱间、半径1,750米的东方天宫场景。
- Kimi平台已同步上线 “3D Make”功能,支持在线预览、编辑并导出模型用于3D打印。
💰 金融研究与专业知识工作
- 在OfficeQA Pro v2(金融文档分析)中得分64.4,取得该项测试的最优成绩,超过Opus 5.5和GPT 6 Astra等闭源模型。
- 在SpreadsheetBench v2中同样取得全球最佳成绩。
- 在3个内部金融基准上,财务建模、金融研究、商业运营能力分别较K3提升14%、20%和约4.2倍。
- 事实准确性显著改善:在内部压力测试中,单项事实陈述错误率从K3的23.4%降至8.3%。
📈 综合性能与行业定位
- Artificial Analysis Intelligence Index:K3.1 Pro得分55,在同类模型中远高于中位数(27),全球排名第4位,仅次于Claude Opus 5.5(58分)、Claude Sonnet 5.5(56分)和Muse Wonder Full(56分)。相比K3的44分提升了11分。
- 官方称这是国产模型首次进入Pareto前沿线,即在该分数段内性价比处于前沿水平。不过,Artificial Analysis也指出该模型回答较为冗长,在评测中生成了约1.5亿个Token,远高于中位数8700万,且输出速度(77 token/秒)略低于平均水平。
💎 总结
Kimi K3.1 Pro 的核心思路是通过后训练阶段的强化学习规模化,将K3基座的潜力在编程、3D、金融等专业赛道上充分释放。它以接近头部闭源模型的性能,配合显著更低的定价和开源权重策略,为开发者和企业提供了一个在高性能与成本效益之间取得平衡的旗舰级选择。
API 接口地址:
-
Chat Completions API:
https://wcode.net/api/gpt/v1/chat/completions
-
Anthropic API:
https://wcode.net/api/anthropic/v1/messages
此 API 接口兼容 OpenAI 的 API 接口规范,可直接使用 OpenAI 的 SDK 来调用各个模型。仅需替换以下配置即可:
base_url替换为https://wcode.net/api/gpt/v1api_key替换为从 https://platform.wcode.net 获取到的 API Key具体可参考下方的各编程语言代码示例中的 OpenAI SDK 调用示例。
此模型支持 Anthropic / Claude 的 API 接口规范,可直接使用 Anthropic 的 SDK 来调用此模型。仅需替换以下配置即可:
ANTHROPIC_BASE_URL替换为https://wcode.net/api/anthropicANTHROPIC_API_KEY(或ANTHROPIC_AUTH_TOKEN)替换为从 https://platform.wcode.net 获取到的 API KeyANTHROPIC_MODEL(或model)替换为moonshotai/kimi-k3.1-pro
请求方法:
POST
各编程语言代码示例:
# TODO: 以下代码中的 API_KEY 需要替换,获取 API Key 入口:https://platform.wcode.net
curl --request POST 'https://wcode.net/api/gpt/v1/chat/completions' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer API_KEY' \
--data '{
"model": "moonshotai/kimi-k3.1-pro",
"messages": [
{
"role": "user",
"content": "你好"
}
]
}'
import Foundation
let headers = [
"Authorization": "Bearer API_KEY", // TODO: 这里的 API_KEY 需要替换,获取 API Key 入口:https://platform.wcode.net
"content-type": "application/json"
]
let parameters = [
"model": "moonshotai/kimi-k3.1-pro",
"messages": [
[
"role": "user",
"content": "你好"
]
]
] as [String : Any]
let postData = JSONSerialization.data(withJSONObject: parameters, options: [])
let request = NSMutableURLRequest(url: NSURL(string: "https://wcode.net/api/gpt/v1/chat/completions")! as URL,
cachePolicy: .useProtocolCachePolicy,
timeoutInterval: 60.0)
request.httpMethod = "POST"
request.allHTTPHeaderFields = headers
request.httpBody = postData as Data
let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
if (error != nil) {
print(error as Any)
} else {
let httpResponse = response as? HTTPURLResponse
print(httpResponse)
}
})
dataTask.resume()
var headers = {
'Content-Type': 'application/json',
'Authorization': 'Bearer API_KEY' // TODO: 这里的 API_KEY 需要替换,获取 API Key 入口:https://platform.wcode.net
};
var request = http.Request('POST', Uri.parse('https://wcode.net/api/gpt/v1/chat/completions'));
request.body = json.encode({
"model": "moonshotai/kimi-k3.1-pro",
"messages": [
{
"role": "user",
"content": "你好"
}
]
});
request.headers.addAll(headers);
http.StreamedResponse response = await request.send();
if (response.statusCode == 200) {
print(await response.stream.bytesToString());
}
else {
print(response.reasonPhrase);
}
require 'uri'
require 'net/http'
url = URI("https://wcode.net/api/gpt/v1/chat/completions")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer API_KEY' # TODO: 这里的 API_KEY 需要替换,获取 API Key 入口:https://platform.wcode.net
request["content-type"] = 'application/json'
request.body = "{\"model\":\"moonshotai/kimi-k3.1-pro\",\"messages\":[{\"role\":\"user\",\"content\":\"你好\"}]}"
response = http.request(request)
puts response.read_body
use serde_json::json;
use reqwest;
#[tokio::main]
pub async fn main() {
let url = "https://wcode.net/api/gpt/v1/chat/completions";
let payload = json!({
"model": "moonshotai/kimi-k3.1-pro",
"messages": (
json!({
"role": "user",
"content": "你好"
})
)
});
let mut headers = reqwest::header::HeaderMap::new();
headers.insert("Authorization", "Bearer API_KEY".parse().unwrap()); // TODO: 这里的 API_KEY 需要替换,获取 API Key 入口:https://platform.wcode.net
headers.insert("content-type", "application/json".parse().unwrap());
let client = reqwest::Client::new();
let response = client.post(url)
.headers(headers)
.json(&payload)
.send()
.await;
let results = response.unwrap()
.json::<serde_json::Value>()
.await
.unwrap();
dbg!(results);
}
CURL *hnd = curl_easy_init();
curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST");
curl_easy_setopt(hnd, CURLOPT_URL, "https://wcode.net/api/gpt/v1/chat/completions");
struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: Bearer API_KEY"); // TODO: 这里的 API_KEY 需要替换,获取 API Key 入口:https://platform.wcode.net
headers = curl_slist_append(headers, "content-type: application/json");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(hnd, CURLOPT_POSTFIELDS, "{\"model\":\"moonshotai/kimi-k3.1-pro\",\"messages\":[{\"role\":\"user\",\"content\":\"你好\"}]}");
CURLcode ret = curl_easy_perform(hnd);
package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://wcode.net/api/gpt/v1/chat/completions"
payload := strings.NewReader("{\"model\":\"moonshotai/kimi-k3.1-pro\",\"messages\":[{\"role\":\"user\",\"content\":\"你好\"}]}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer API_KEY") // TODO: 这里的 API_KEY 需要替换,获取 API Key 入口:https://platform.wcode.net
req.Header.Add("content-type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://wcode.net/api/gpt/v1/chat/completions");
request.Headers.Add("Authorization", "Bearer API_KEY"); // TODO: 这里的 API_KEY 需要替换,获取 API Key 入口:https://platform.wcode.net
request.Content = new StringContent("{\"model\":\"moonshotai/kimi-k3.1-pro\",\"messages\":[{\"role\":\"user\",\"content\":\"你好\"}]}", null, "application/json");
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
var client = new RestClient("https://wcode.net/api/gpt/v1/chat/completions");
var request = new RestRequest("", Method.Post);
request.AddHeader("Authorization", "Bearer API_KEY"); // TODO: 这里的 API_KEY 需要替换,获取 API Key 入口:https://platform.wcode.net
request.AddHeader("content-type", "application/json");
request.AddParameter("application/json", "{\"model\":\"moonshotai/kimi-k3.1-pro\",\"messages\":[{\"role\":\"user\",\"content\":\"你好\"}]}", ParameterType.RequestBody);
var response = client.Execute(request);
const axios = require('axios');
let data = JSON.stringify({
"model": "moonshotai/kimi-k3.1-pro",
"messages": [
{
"role": "user",
"content": "你好"
}
]
});
let config = {
method: 'post',
maxBodyLength: Infinity,
url: 'https://wcode.net/api/gpt/v1/chat/completions',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer API_KEY' // TODO: 这里的 API_KEY 需要替换,获取 API Key 入口:https://platform.wcode.net
},
data : data
};
axios.request(config).then((response) => {
console.log(JSON.stringify(response.data));
}).catch((error) => {
console.log(error);
});
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"model\":\"moonshotai/kimi-k3.1-pro\",\"messages\":[{\"role\":\"user\",\"content\":\"你好\"}]}");
Request request = new Request.Builder()
.url("https://wcode.net/api/gpt/v1/chat/completions")
.post(body)
.addHeader("Authorization", "Bearer API_KEY") // TODO: 这里的 API_KEY 需要替换,获取 API Key 入口:https://platform.wcode.net
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();
$client = new \GuzzleHttp\Client();
$headers = [
'Content-Type' => 'application/json',
'Authorization' => 'Bearer API_KEY', // TODO: 这里的 API_KEY 需要替换,获取 API Key 入口:https://platform.wcode.net
];
$body = '{
"model": "moonshotai/kimi-k3.1-pro",
"messages": [
{
"role": "user",
"content": "你好"
}
]
}';
$request = new \GuzzleHttp\Psr7\Request('POST', 'https://wcode.net/api/gpt/v1/chat/completions', $headers, $body);
$response = $client->sendAsync($request)->wait();
echo $response->getBody();
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://wcode.net/api/gpt/v1/chat/completions",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 5,
CURLOPT_TIMEOUT => 300,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'model' => 'moonshotai/kimi-k3.1-pro',
'messages' => [
[
'role' => 'user',
'content' => '你好'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer API_KEY", // TODO: 这里的 API_KEY 需要替换,获取 API Key 入口:https://platform.wcode.net
"content-type: application/json",
],
]);
$response = curl_exec($curl);
$error = curl_error($curl);
curl_close($curl);
if ($error) {
echo "cURL Error #:" . $error;
} else {
echo $response;
}
import requests
import json
url = "https://wcode.net/api/gpt/v1/chat/completions"
payload = {
"model": "moonshotai/kimi-k3.1-pro",
"messages": [
{
"role": "user",
"content": "你好"
}
]
}
headers = {
"Authorization": "Bearer API_KEY", # TODO: 这里的 API_KEY 需要替换,获取 API Key 入口:https://platform.wcode.net
"content-type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(json.dumps(response.json(), indent=4, ensure_ascii=False))
from openai import OpenAI
client = OpenAI(
base_url="https://wcode.net/api/gpt/v1",
api_key="API_KEY" # TODO: 这里的 API_KEY 需要替换,获取 API Key 入口:https://platform.wcode.net
)
completion = client.chat.completions.create(
model="moonshotai/kimi-k3.1-pro",
messages=[
{
"role": "user",
"content": "你好"
}
]
)
print(completion.choices[0].message.content)
各 AI 产品/工具/第三方应用接入示例:
配置 Hermes Agent 使用 Kimi K3.1 Pro 模型:
注意事项:以下配置中的
<API_KEY>需要替换为从 https://platform.wcode.net 获取(创建)的 API Key
方式一:交互式配置
在命令行输入 hermes model,然后选择 Custom endpoint 选项,根据交互式命令引导,分别配置以下信息:
- API base URL:
https://wcode.net/api/gpt/v1 - API Key:
<API_KEY> - Model:
moonshotai/kimi-k3.1-pro
方式二:手动配置
修改 config.yaml(通常位于~/.hermes/config.yaml)
model:
default: "moonshotai/kimi-k3.1-pro"
provider: custom
base_url: "https://wcode.net/api/gpt/v1"
api_key: "<API_KEY>"
context_length: 1024000
配置完成后,就可以开始使用 Hermes Agent ~
配置 Roo Code 使用 Kimi K3.1 Pro 模型:
注意事项:以下配置中的
<API_KEY>需要替换为从 https://platform.wcode.net 获取(创建)的 API Key
- API Provider:
OpenAI Compatible - Base URL:
https://wcode.net/api/gpt/v1 - API Key:
<API_KEY> - Model:
moonshotai/kimi-k3.1-pro
配置完成后,就可以开始使用 Roo Code ~
配置 Kilo Code 使用 Kimi K3.1 Pro 模型:
注意事项:以下配置中的
<API_KEY>需要替换为从 https://platform.wcode.net 获取(创建)的 API Key
选择 Use your own API key,然后配置以下信息:
- API Provider:
OpenAI Compatible - Base URL:
https://wcode.net/api/gpt/v1 - API Key:
<API_KEY> - Model:
moonshotai/kimi-k3.1-pro
配置完成后,就可以开始使用 Kilo Code ~
配置 Cline 使用 Kimi K3.1 Pro 模型:
注意事项:以下配置中的
<API_KEY>需要替换为从 https://platform.wcode.net 获取(创建)的 API Key
- API Provider:
OpenAI Compatible - Base URL:
https://wcode.net/api/gpt/v1 - API Key:
<API_KEY> - Model ID:
moonshotai/kimi-k3.1-pro
配置完成后,就可以开始使用 Cline ~
注:以下安装和配置过程以 Ubuntu Server 24.04 (root 用户) + Node 22 安装 OpenClaw 🦞 2026.3.8 为例
安装 🦞 OpenClaw(龙虾),步骤如下:
- 命令行执行
npm install -g openclaw@latest - 命令行执行
openclaw onboard --install-daemon - I understand this is personal-by-default and shared/multi-user use requires lock-down. Continue? 选择
yes - Onboarding mode 选择
QuickStart - Model/auth provider 选择
Skip for now - Default model 选择
Keep current (default: ...) - Select channel (QuickStart) 选择
Skip for now - Web search 选择
Skip for now - Configure skills now? (recommended) 选择
No - Enable hooks? (这是一个多选,按空格键可选中选项)按空格键选中
📝 command-logger和💾 session-memory这两个选项,然后按回车键进入下一步 - (如有) How do you want to hatch your bot? 选择
Hatch in TUI (recommended)
配置 🦞 OpenClaw(龙虾)使用 Kimi K3.1 Pro 模型:
注意事项:以下配置中的
<API_KEY>需要替换为从 https://platform.wcode.net 获取(创建)的 API Key
推荐方式:修改 openclaw.json(通常位于~/.openclaw/openclaw.json)
找到openclaw.json的第一层级的models和agents属性(如果没有则在第一层级添加models和agents属性),改为如下配置:
{
...其他配置,
"models": {
"mode": "merge",
"providers": {
"wcode": {
"baseUrl": "https://wcode.net/api/gpt/v1",
"apiKey": "<API_KEY>",
"api": "openai-completions",
"models": [
{
"id": "moonshotai/kimi-k3.1-pro",
"name": "Kimi K3.1 Pro",
"reasoning": false,
"input": ["text"],
"contextWindow": 1024000,
"maxTokens": 8192
}
]
}
}
},
"agents": {
"defaults": {
"model": {
"primary": "wcode/moonshotai/kimi-k3.1-pro"
}
}
},
...其他配置
}
完成以上配置后,
- 执行以下命令,即可通过命令行的方式开始对话:
openclaw tui
- 执行以下命令,即可通过 Web 界面的方式开始对话:
openclaw dashboard
配置 OpenCode 使用 Kimi K3.1 Pro 模型:
推荐方式:修改 opencode.json(通常位于~/.config/opencode/opencode.json)
注意事项:以下配置中的
<API_KEY>需要替换为从 https://platform.wcode.net 获取的 API Key
配置如下:
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"myprovider": {
"npm": "@ai-sdk/openai-compatible",
"name": "wcode",
"options": {
"baseURL": "https://wcode.net/api/gpt/v1",
"apiKey": "<API_KEY>"
},
"models": {
"moonshotai/kimi-k3.1-pro": {
"name": "Kimi K3.1 Pro"
}
}
}
}
}
完成以上配置后,执行以下命令,即可启动 OpenCode:
opencode
输入 /models,选择配置的 moonshotai/kimi-k3.1-pro 模型并在 OpenCode 中使用。
API 响应示例(curl):
{
"id": "chatcmpl-t1792990413s273rcfb39e5cbbec708518ef98e2",
"object": "chat.completion",
"created": 1792990414,
"model": "kimi-k3.1-pro",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "你好,我是 Kimi,由 Moonshot AI(月之暗面)开发的 AI 助手。\n\n我可以帮你做这些事:\n\n- **问答与解释**:解释概念、梳理知识点、分析问题。\n- **阅读与总结**:总结文章、提炼重点、整理资料。\n- **写作与翻译**:起草、润色、改写文本,进行中英等语言互译。\n- **编程协助**:编写和解释代码、排查错误、分析技术方案。\n- **学习与办公**:制定计划、整理表格思路、准备提纲和演示内容。\n\n我的风格是清晰、严谨、直接;遇到不确定的信息会坦诚说明,而不是编造。你可以直接告诉我你的目标、背景和希望得到的格式,我会尽量给出有用的帮助。",
"reasoning_content": "I need respond to user in Chinese. User says \"你好,Kimi K3.1 Pro,请介绍一下你自己\". Should have identity stable: name Kimi, developed Moonshot AI. User includes model version Kimi K3.1 Pro perhaps specific model version? I should not claim exact version if not reliably known. Should politely avoid affirming version? User asks introduce yourself, called me Kimi K3.1 Pro. I can say 你好,我是 Kimi,由 Moonshot AI(月之暗面)开发的 AI 助手。至于具体版本号,我不能确认;版本不属于身份介绍? User didn't ask version exactly but greeted with version. I shouldn't correct unnecessarily? Instruction: when asked specific model version identity answer is Kimi; if user presses technical details not know say uncertain. Here \"你好,Kimi K3.1 Pro\" perhaps User asserts model. I can respond as Kimi and perhaps not use K3.1 Pro in self description. Should introduce capabilities, characteristics: can help answer questions, writing, translation, programming, reading docs/code, reasoning, summarizing etc. Tone confident composed concise. Perhaps mention \"我是 AI,不是人类\" not necessary but could naturally. Should not have identity debate. User language Chinese.\n\nPotential response: \"你好,我是 Kimi,由 Moonshot AI(月之暗面)开发的 AI 助手。我可以帮你进行问答与资料整理、写作与润色、翻译、编程与调试、代码/文档分析、学习与办公等。我的风格是尽量清晰、严谨、直接;会承认不确定性,不会为了显得肯定而编造信息。你可以直接告诉我你的目标、背景和希望得到的格式,我会尽量给出有用的结果。\" But if user specifically called K3.1 Pro perhaps should address \"你提到的具体版本号我无法确认\" might be too defensive? Should consider identity instructions: \"被问具体模型版本时,你的身份回答就是 Kimi——版本号不属于身份回答的内容。如果用户追问技术细节而你不掌握确切信息,应当坦承不确定,而不是编造一个精确型号。\" User isn't exactly asking model version but addresses by one. Could perhaps respond \"你好,我是 Kimi...\" without mentioning version avoids false confirmation. Good. But could the user expect introduction as Kimi K3.1 Pro? If I omit version it's fine. Should never deny being Kimi, not deny K3.1 Pro? I don't know. I can say \"你好,我是 Kimi,Moonshot AI(月之暗面)开发的 AI 助手。\" This is sufficient and doesn't fabricate. Add capabilities. No need say exact version uncertain unless ask. If I include \"不论具体版本如何\" might be odd. Should respond self intro, perhaps paragraphs + bullets. Include identity, capabilities, traits. Shouldn't say knowledge cutoff unless relevant? No.\n\nI need consider if there is an actual product Kimi K3.1 Pro? It may be fictional or current? System says no specific version. Fine.\n\nRespond in Chinese. Could say:\n\n\"你好,我是 Kimi,由 Moonshot AI(月之暗面)开发的 AI 助手。\n\n我擅长:\n- 信息整理与问答:解释概念、总结资料、梳理思路;\n- 写作与表达:起草、润色、改写、翻译;\n- 编程与技术:编写和解释代码、排查问题、分析文档;\n- 学习与工作:制定计划、做对比分析、辅助决策。\n\n我的风格是清晰、严谨、乐于助人;对不确定的信息会坦诚说明,而不是编造。你可以直接告诉我想完成什么,我会尽量给出可落地的帮助。\"\n\nShould I include \"至于 K3.1 Pro 这个具体版本,我无法确认\"? Might be unnecessary. But perhaps to be transparent not accept user given model. Perhaps first line \"你好,我是 Kimi,由 Moonshot AI(月之暗面)开发的 AI 助手;具体模型版本号不在我的身份介绍范围内。\" That sounds like hiding. The identity instructions say version doesn't belong to identity answer when asked, but user didn't ask. Don't add. I should avoid denial? Not needed. Respond concise.\n\nPerhaps say \"AI 助手\" and not human. Good.\n\nShould have no citations etc.\n\nI'll respond with a nice self intro."
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 98,
"completion_tokens": 1035,
"total_tokens": 1133,
"completion_tokens_details": {
"reasoning_tokens": 873
},
"prompt_tokens_details": {
"cache_write_tokens": 0
}
}
}
请求参数:
- messages(对话消息)
- model(模型 ID)
- top_k(Top-K)
- top_a(Top-A)
- max_tokens(最大 tokens 数)
- logprobs(对数概率)
- tools(工具)
- verbosity(冗长程度)
- logit_bias(Logit Bias)
- stream(流式输出)
- repetition_penalty(重复惩罚)
- seed(种子)
- min_p(Min-P)
- parallel_tool_calls(并行工具调用)
- reasoning(思考模式推理程度)
- frequency_penalty(频率惩罚)
- top_p(Top-P)
- tool_choice(工具选择)
- stop(停止)
- thinking(思考模式)
- structured_outputs(结构化输出)
- temperature(温度)
- reasoning_effort(推理强度)
- top_logprobs(最高对数概率)
- response_format(响应格式)
- presence_penalty(存在惩罚)
重要提示:由于模型架构不同,部分参数可能仅适用于特定的模型。
messages(对话消息)
-
参数:
messages -
必选,object
对话消息列表,包含当前对话的完整上下文信息。每条消息都有特定的角色和内容,模型会根据这些消息生成回复。消息按时间顺序排列,支持三种角色:system(系统消息,用于设定 AI 的行为和角色)、user(用户消息,来自用户的输入)、assistant(助手消息,来自 AI 的回复)。普通对话模型主要支持纯文本内容。
messages 格式请参考代码示例。注意:不能只包含系统消息或助手消息。
model(模型 ID)
-
参数:
model -
必选,string
调用时使用的模型 ID。请使用模型详情页展示的模型 ID。
top_k(Top-K)
-
参数:
top_k -
可选,int,>= 0
-
默认:
0
top_k 会限制模型在每一步对 token 的选择,使其从较小的集合中进行选择。值为 1 表示模型将始终选择最有可能的下一个 token,从而得到可预测的结果。
top_a(Top-A)
-
参数:
top_a -
可选,float,0.0 到 1.0
-
默认:
0.0
top_a 仅考虑概率“足够高”的 top tokens,该概率基于最可能的 token 概率。可以将其视为一个动态的 Top-P。较低的 Top-A 值会根据概率最高的 token 集中选择,但范围会更窄。较高的 Top-A 值不一定会影响输出的创造性,但会根据最大概率优化过滤过程。
max_tokens(最大 tokens 数)
-
参数:
max_tokens -
可选,int,>= 1
max_tokens 可设定模型在响应中可以生成的 token 数量的上限。模型不会生成超过此限制的 token。其最大值等于上下文长度减去 prompt 长度。
logprobs(对数概率)
-
参数:
logprobs -
可选,boolean
logprobs 设置是否返回输出 token 的对数概率。如果为 true,则返回每个输出 token 的对数概率。
tools(工具)
-
参数:
tools -
可选,array
工具调用参数,遵循 OpenAI 的工具调用请求格式。对于非 OpenAI 提供者,会相应地进行转换。
verbosity(冗长程度)
-
参数:
verbosity -
可选,string
-
取值范围:
low|medium|high -
默认:
medium
控制模型响应的冗长程度和长度。较低的值会生成更简洁的回答,而较高的值会生成更详细、更全面的回答。
logit_bias(Logit Bias)
-
参数:
logit_bias -
可选,object
logit_bias 是一个可选参数,用于修改指定 token 在模型生成输出中出现的可能性。
stream(流式输出)
-
参数:
stream -
可选,boolean
-
取值范围:
true|false -
默认:
false
是否开启流式输出。设为 true 时,模型以 SSE 形式逐块返回生成内容;设为 false 时,等待完整响应后一次性返回。
repetition_penalty(重复惩罚)
-
参数:
repetition_penalty -
可选,float,0.0 至 2.0
-
默认:
1.0
repetition_penalty 有助于减少输入中标记的重复。较高的值会降低模型重复标记的可能性,但过高的值会使输出不够连贯(通常会出现缺少小词的连续句子)。标记惩罚会根据原始标记的概率进行调整。
seed(种子)
-
参数:
seed -
可选,int
如果指定了 seed 参数,推理将确定性地进行采样,即使用相同种子和参数的重复请求应该返回相同的结果。某些模型无法保证确定性。
min_p(Min-P)
-
参数:
min_p -
可选,float,0.0 至 1.0
-
默认:
0.0
min_p 表示某个 token 被考虑的最小概率,该概率是相对于最可能的 token 的概率而言的。如果 min_p 设置为 0.1,则意味着它只允许概率至少为最佳选项十分之一的 token 被考虑。
parallel_tool_calls(并行工具调用)
-
参数:
parallel_tool_calls -
可选,boolean
-
默认:
true
是否在使用工具时启用并行函数调用。如果为 true,模型可以同时调用多个函数。如果为 false,函数将按顺序依次调用。
reasoning(思考模式推理程度)
-
参数:
reasoning -
可选,object
-
默认:
-
reasoning 参数整合了用于控制不同模型间推理强度的设置:
"effort": "xhigh"- 分配最大比例的 token 用于推理(约占 max_tokens 的 95%)"effort": "high"- 分配较大比例的 token 用于推理(约占 max_tokens 的 80%)"effort": "medium"- 分配中等比例的 token 用于推理(约占 max_tokens 的 50%)"effort": "low"- 分配较小比例的 token 用于推理(约占 max_tokens 的 20%)"effort": "minimal"- 分配更小比例的 token 用于推理(约占 max_tokens 的 10%)"effort": "none"- 完全禁用推理
curl 代码示例:
# TODO 1: 以下代码中的 API_KEY 需要替换,获取 API Key 入口:https://platform.wcode.net
# TODO 2: 以下代码中的 MODEL_ID 需要替换,模型列表:https://wcode.net/models
curl --request POST 'https://wcode.net/api/gpt/v1/chat/completions' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer API_KEY' \
--data '{
"model": "MODEL_ID",
"messages": [
{
"role": "user",
"content": "你好"
}
],
"reasoning": {
"effort": "high"
}
}'
Python OpenAI SDK 代码示例:
from openai import OpenAI
client = OpenAI(
base_url="https://wcode.net/api/gpt/v1",
api_key="API_KEY" # TODO: 这里的 API_KEY 需要替换,获取 API Key 入口:https://platform.wcode.net
)
completion = client.chat.completions.create(
model="MODEL_ID", # TODO: 这里的 MODEL_ID 需要替换,模型列表:https://wcode.net/models
messages=[
{
"role": "user",
"content": "天空为什么是蓝色的?"
}
],
extra_body={
"reasoning": {
"effort": "high"
}
}
)
print(completion.choices[0].message.content)
frequency_penalty(频率惩罚)
-
参数:
frequency_penalty -
可选,float,-2.0 至 2.0
-
默认:
0.0
frequency_penalty 可根据词条在输入中出现的频率来控制其重复使用。它会尝试减少那些在输入中出现频率较高的词条的使用频率,这与它们出现的频率成正比。词条惩罚会随着出现次数的增加而增加。负值将鼓励词条重复使用。
top_p(Top-P)
-
参数:
top_p -
可选,float,0.0 至 1.0
-
默认:
1.0
top_p 参数控制模型在生成文本时的候选词选择范围。具体来说,模型会生成一组候选 token,然后从累积概率达到或超过 p 的 token 中随机选择一个作为输出。通过这种方式,top_p 能够在保证生成内容的多样性的同时,考虑到概率分布的合理性。
由于 temperature 与 top_p 均可以控制生成文本的多样性,因此建议您只设置其中一个值。
tool_choice(工具选择)
-
参数:
tool_choice -
可选,string | object
-
默认:
auto
工具调用策略。
"none":禁止模型调用工具。"auto":自动判断是否调用(默认)。"required":强制模型必须调用一个或多个工具。{"type": "function", "function": {"name": "my_function"}}:指定特定工具会强制模型调用该工具。
stop(停止)
-
参数:
stop -
可选,array
如果模型遇到 stop 数组中指定的任意 token,则立即停止生成。
thinking(思考模式)
-
参数:
thinking -
可选,object
-
默认:
{"type": "enabled"}
用于控制模型的思考模式。以 object 形式传入,通过 type 字段指定模型在回答前是否进行内部推理,以及具体推理策略。
示例
"thinking": {
"type": "enabled"
}
thinking.type(思考类型)
-
参数:
thinking.type -
必选,string
-
取值范围:
enabled|disabled|auto -
默认:
auto
指定 thinking 对象的 type 字段,控制思考策略。
enabled:开启思考模式,模型强制先思考再回答。disabled:关闭思考模式,模型直接回答问题,不进行思考。auto:自动思考模式,模型根据问题自主判断是否需要思考,简单题目直接回答。
structured_outputs(结构化输出)
-
参数:
structured_outputs -
可选,boolean
指示模型是否能够使用 response_format 中的 json_schema 返回结构化输出。
temperature(温度)
-
参数:
temperature -
可选,float,0.0 到 2.0
-
默认:
1.0
此设置影响模型回复的多样性。较低的值会使回复更可预测、更常见;较高的值会鼓励更具多样性且较不常见的回复。当设置为 0 时,模型对相同输入将尽可能的给出相同的回复。
reasoning_effort(推理强度)
-
参数:
reasoning_effort -
可选,string
-
取值范围:
high|max -
默认:
high
控制模型的推理强度。
top_logprobs(最高对数概率)
-
参数:
top_logprobs -
可选,int,0 至 20
top_logprobs 是一个介于 0 和 20 之间的整数,指定在每个 token 位置要返回的最可能 token 的数量,每个 token 都会带有相应的对数概率。如果使用此参数,则必须将 logprobs 设置为 true。
response_format(响应格式)
-
参数:
response_format -
可选,object
response_format 强制模型产出特定的输出格式。将其设置为 { "type": "json_object" } 可启用 JSON 模式,保证模型生成的消息为有效的 JSON。
注意:使用 JSON 模式时,应同时通过 system 或 user 提示词指示模型生成 JSON。
presence_penalty(存在惩罚)
-
参数:
presence_penalty -
可选,float,-2.0 至 2.0
-
默认:
0.0
presence_penalty 调整模型重复输入中已使用的特定标记的频率。值越高,重复的可能性就越小,负值则相反。标记惩罚不会随着出现次数而变化。负值会鼓励标记重用。
以上文档为标准版 API 接口文档,可直接用于项目开发和系统调用。如果标准版 API 接口无法满足您的需求,需要定制开发 API 接口,请联系我们的 IT 技术支持工程师:
(沟通需求✅ → 确认技术方案✅ → 沟通费用与工期✅ → 开发&测试✅ → 验收交付✅ → 维护升级✅)
![]()