Skip to content
English

推理策略:显式 wire 格式与自然档位 ​

Support 按显式选择的协议格式生成推理参数,保留精确覆盖与自定义映射。

CompatibleModelProvider 的 config.reasoning 使用 level=off/low/medium/high,并显式选择 format。reasoning-effort 生成 reasoning_effort;thinking 与 enable-thinking 仅表达开关,不宣称 low/high 有强度差异;thinking-budget 的 low/medium/high 默认思考预算为 1024/4096/8192,可通过 budgets 覆写;custom 使用同步 map(level)。

requestBody 的显式字段优先。无论是 mapper 或 requestBody,都不能覆盖模型、消息、流及 Core 输出限额。thinking-budget 必须小于实际输出 token 限额,不通过提高 Core 额度补救冲突。格式由供应商声明决定,不能只因模型名称相似就使用;独立 Provider 仍可以实现同一 ChatProvider 合同。

由简到繁的同业务示例 ​

按明确 wire 格式生成思考预算 ​

配置 · Node.js

这里只装配,不发送网络请求。调用时输出 token 限额必须大于思考预算。

ts
import { Support } from '@jangts/agent-core';
const provider = new Support.CompatibleModelProvider({ config: {
  baseUrl: 'https://provider.example', apiKey: 'placeholder', model: 'configured-model',
  reasoning: { format: 'thinking-budget', level: 'high', budgets: { high: 6000 } },
} });
console.log(provider instanceof Support.CompatibleModelProvider);
js
import { Support } from '@jangts/agent-core';
const provider = new Support.CompatibleModelProvider({ config: {
        baseUrl: 'https://provider.example', apiKey: 'placeholder', model: 'configured-model',
        reasoning: { format: 'thinking-budget', level: 'high', budgets: { high: 6000 } },
    } });
console.log(provider instanceof Support.CompatibleModelProvider);

自定义供应商映射并保留原字段的精确覆盖 ​

扩展 · Node.js

ts
import { Support } from '@jangts/agent-core';
const provider = new Support.CompatibleModelProvider({ config: {
  baseUrl: 'https://provider.example', apiKey: 'placeholder', model: 'configured-model',
  reasoning: { format: 'custom', level: 'medium', map(level) { return { analysis_mode: level }; } },
  requestBody: { analysis_mode: 'app-defined' },
} });
console.log(provider instanceof Support.CompatibleModelProvider);
js
import { Support } from '@jangts/agent-core';
const provider = new Support.CompatibleModelProvider({ config: {
        baseUrl: 'https://provider.example', apiKey: 'placeholder', model: 'configured-model',
        reasoning: { format: 'custom', level: 'medium', map(level) { return { analysis_mode: level }; } },
        requestBody: { analysis_mode: 'app-defined' },
    } });
console.log(provider instanceof Support.CompatibleModelProvider);

策略与实现 ​

接口参考、使用示例与开发指南。