GenerationOptions
KIT · interface · 类型合同
Per-call options of MockGPT.generate.
导入
ts
import type { GenerationOptions } from '@jangts/agent-core/mock';1
js
/** @typedef {import('@jangts/agent-core/mock').GenerationOptions} GenerationOptions */1
其他公开入口:@jangts/agent-core/mock。
定义
ts
interface GenerationOptions1
字段结构
| 字段 | 类型 | 必需 | 说明 |
|---|---|---|---|
signal | AbortSignal | undefined | 可省略 | Cancels the call before or during generation; rejection reason is preserved as-is. |
使用示例
- MockGPT:直接生成与 Provider 注入:直接取得字符串或 JSON;需要检验模型通信时,将同一个实例注入 Provider。
直接生成原生 JSON
入门 · Node.js
ts
import { MockGPT } from '@jangts/agent-core/mock';
const mock = new MockGPT({ rules: [{ prompt: '服务状态', generator: { online: true, source: 'fixture' } }] });
const value = await mock.generate({ model: 'demo', messages: [{ role: 'user', content: '服务状态' }] });
console.log(value); // { online: true, source: 'fixture' }
console.log(mock.counts, mock.records);1
2
3
4
5
2
3
4
5
js
import { MockGPT } from '@jangts/agent-core/mock';
const mock = new MockGPT({ rules: [{ prompt: '服务状态', generator: { online: true, source: 'fixture' } }] });
const value = await mock.generate({ model: 'demo', messages: [{ role: 'user', content: '服务状态' }] });
console.log(value); // { online: true, source: 'fixture' }
console.log(mock.counts, mock.records);1
2
3
4
5
2
3
4
5
同一实例注入真实 Core 模型边界
配置 · Node.js
ts
import { ModelRunner, Support } from '@jangts/agent-core';
import { MockGPT, responses } from '@jangts/agent-core/mock';
const mock = new MockGPT({ rules: [{ prompt: '服务状态', generator: responses.text('服务在线。', { chunkSize: 2, wireChunkSize: 3 }) }] });
const provider = new Support.CompatibleModelProvider({
config: { baseUrl: 'https://mock.local/v1', apiKey: 'offline-example', model: 'demo' },
ports: { request: mock.fetch },
});
const result = await new ModelRunner({ provider, maxCalls: 1 }).invoke('服务状态');
console.log(result.value, result.invocation.status);1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
js
import { ModelRunner, Support } from '@jangts/agent-core';
import { MockGPT, responses } from '@jangts/agent-core/mock';
const mock = new MockGPT({ rules: [{ prompt: '服务状态', generator: responses.text('服务在线。', { chunkSize: 2, wireChunkSize: 3 }) }] });
const provider = new Support.CompatibleModelProvider({
config: { baseUrl: 'https://mock.local/v1', apiKey: 'offline-example', model: 'demo' },
ports: { request: mock.fetch },
});
const result = await new ModelRunner({ provider, maxCalls: 1 }).invoke('服务状态');
console.log(result.value, result.invocation.status);1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9