@aalis/plugin-llm-openai 0.15.0 → 0.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +133 -110
- package/dist/index.js.map +1 -1
- package/dist/locales/en.d.ts +59 -0
- package/dist/locales/en.d.ts.map +1 -0
- package/dist/locales/en.js +59 -0
- package/dist/locales/en.js.map +1 -0
- package/dist/texts.d.ts +117 -0
- package/dist/texts.d.ts.map +1 -0
- package/dist/texts.js +62 -0
- package/dist/texts.js.map +1 -0
- package/package.json +10 -8
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAmBA,OAAO,EAA8C,KAAK,MAAM,EAA8B,MAAM,aAAa,CAAC;;;;;;;;AAg1BlH,wBASG"}
|
package/dist/index.js
CHANGED
|
@@ -1,17 +1,12 @@
|
|
|
1
|
-
import { LLMCapabilities, llm, metered, requestedThinking } from '@aalis/api-llm';
|
|
1
|
+
import { finishReasonOf, IDLE_TIMEOUT_MAX_MS, idleTimeout, LLMCapabilities, llm, metered, requestedThinking, } from '@aalis/api-llm';
|
|
2
2
|
import { config, definePlugin, events, lifecycle, logger, provide } from '@aalis/core';
|
|
3
3
|
import { configError, defineConfig, missingConfigError, parseConfig } from '@aalis/schema-config';
|
|
4
|
+
import { TextError, textClauses, textOf, toSource } from '@aalis/schema-i18n';
|
|
4
5
|
import { prepareLLMMessages, toLLMRole } from '@aalis/schema-message';
|
|
5
6
|
import { truncateChars } from '@aalis/util-text-normalize';
|
|
7
|
+
import { Agent, errors } from 'undici';
|
|
8
|
+
import { t } from './texts.js';
|
|
6
9
|
// ===== 插件元数据 =====
|
|
7
|
-
/** 已知的内容审查错误关键词 */
|
|
8
|
-
const CONTENT_FILTER_PATTERNS = [
|
|
9
|
-
'content exists risk',
|
|
10
|
-
'content_filter',
|
|
11
|
-
'content_policy',
|
|
12
|
-
'sensitive content',
|
|
13
|
-
'risk control',
|
|
14
|
-
];
|
|
15
10
|
/** 错误信息与日志里附带的摘录上限(字符)。网关的 HTML 错误页可达数十 KB;截断按代理对安全,不留孤代理 */
|
|
16
11
|
const ERROR_BODY_MAX_CHARS = 500;
|
|
17
12
|
/** 错误信息与日志里附带的摘录:空白(含 HTML 错误页的换行)折叠成一个空格后截断,不把换行带进错误信息与日志 */
|
|
@@ -19,51 +14,45 @@ function bodyExcerpt(body) {
|
|
|
19
14
|
return truncateChars(body.replace(/\s+/g, ' ').trim(), ERROR_BODY_MAX_CHARS, '…');
|
|
20
15
|
}
|
|
21
16
|
/**
|
|
22
|
-
* 读配置时校验 baseUrl
|
|
23
|
-
*
|
|
17
|
+
* 读配置时校验 baseUrl,解析不了的、带查询串或片段的与带用户名或密码的抛配置错误。插件在 baseUrl 后面拼路径,带查询串或
|
|
18
|
+
* 片段时路径落进查询串或片段,请求地址是坏的;末尾只有一个 ? 时解析后查询串为空,拼出来照样是坏的,所以按原文判。带凭据
|
|
19
|
+
* 的 URL fetch 拒发,凭据还会随报错与条目名称(WebUI 的模型下拉)显示出来;解析不了的无从判断有没有凭据,请求同样发不
|
|
20
|
+
* 出去。消息不带 URL
|
|
24
21
|
*/
|
|
25
22
|
function checkBaseUrl(baseUrl) {
|
|
26
23
|
if (!URL.canParse(baseUrl)) {
|
|
27
|
-
throw configError('
|
|
24
|
+
throw configError(t('baseUrlInvalid'));
|
|
25
|
+
}
|
|
26
|
+
if (/[?#]/.test(baseUrl)) {
|
|
27
|
+
throw configError(t('baseUrlQuery'));
|
|
28
28
|
}
|
|
29
29
|
const { username, password } = new URL(baseUrl);
|
|
30
30
|
if (username || password) {
|
|
31
|
-
throw configError('
|
|
31
|
+
throw configError(t('baseUrlCredentials'));
|
|
32
32
|
}
|
|
33
33
|
}
|
|
34
34
|
/**
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
*/
|
|
38
|
-
function redactUrl(url) {
|
|
39
|
-
const parsed = new URL(url);
|
|
40
|
-
if (!parsed.search)
|
|
41
|
-
return url;
|
|
42
|
-
parsed.search = '';
|
|
43
|
-
return parsed.href;
|
|
44
|
-
}
|
|
45
|
-
/**
|
|
46
|
-
* 错误消息连同底层原因,写成一行。fetch 网络失败的消息固定是「fetch failed」,真实原因(DNS、拒绝连接、TLS)在
|
|
47
|
-
* cause 上;连 localhost 时两个地址族都失败,cause 是消息为空的 AggregateError,原因在它的子错误上
|
|
35
|
+
* 错误连同底层原因,写成一行(日志取 toSource)。fetch 网络失败的消息固定是「fetch failed」,真实原因(DNS、拒绝连接、TLS)
|
|
36
|
+
* 在 cause 上;连 localhost 时两个地址族都失败,cause 是消息为空的 AggregateError,原因在它的子错误上
|
|
48
37
|
*/
|
|
49
38
|
function describeError(err) {
|
|
50
39
|
const cause = err instanceof Error ? err.cause : undefined;
|
|
51
40
|
const reasons = cause instanceof AggregateError ? cause.errors : cause instanceof Error ? [cause] : [];
|
|
52
41
|
const detail = reasons.map(e => (e instanceof Error ? e.message : String(e))).join('; ');
|
|
53
|
-
return
|
|
42
|
+
return detail ? t('withCause', { error: textOf(err), detail }) : textOf(err);
|
|
54
43
|
}
|
|
55
44
|
/** 常见状态码的一句提示 */
|
|
56
45
|
function statusHint(status) {
|
|
57
46
|
if (status === 401 || status === 403)
|
|
58
|
-
return '
|
|
47
|
+
return t('hintAuth');
|
|
59
48
|
if (status === 402)
|
|
60
|
-
return '
|
|
49
|
+
return t('hintPayment');
|
|
61
50
|
if (status === 404)
|
|
62
|
-
return '
|
|
51
|
+
return t('hintNotFound');
|
|
63
52
|
if (status === 429)
|
|
64
|
-
return '
|
|
53
|
+
return t('hintRateLimit');
|
|
65
54
|
if (status >= 500)
|
|
66
|
-
return '
|
|
55
|
+
return t('hintUpstream');
|
|
67
56
|
return undefined;
|
|
68
57
|
}
|
|
69
58
|
/**
|
|
@@ -89,20 +78,15 @@ function upstreamMessage(body) {
|
|
|
89
78
|
function httpErrorMessage(provider, status, body) {
|
|
90
79
|
const hint = statusHint(status);
|
|
91
80
|
const message = upstreamMessage(body);
|
|
92
|
-
return
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
const lower = body.toLowerCase();
|
|
97
|
-
if (status === 400 && CONTENT_FILTER_PATTERNS.some(p => lower.includes(p))) {
|
|
98
|
-
return `${provider} 拒绝了此次请求(内容安全策略),请尝试换一个话题或缩短上下文`;
|
|
99
|
-
}
|
|
100
|
-
return httpErrorMessage(provider, status, body);
|
|
81
|
+
return textClauses([
|
|
82
|
+
hint ? t('apiErrorHint', { provider, status, hint }) : t('apiError', { provider, status }),
|
|
83
|
+
message ? t('upstreamMessage', { message }) : t('seeLogs'),
|
|
84
|
+
]);
|
|
101
85
|
}
|
|
102
86
|
const LOW_TO_HIGH = [
|
|
103
|
-
{ id: 'low', label: '
|
|
104
|
-
{ id: 'medium', label: '
|
|
105
|
-
{ id: 'high', label: '
|
|
87
|
+
{ id: 'low', label: t('levelLow') },
|
|
88
|
+
{ id: 'medium', label: t('levelMedium') },
|
|
89
|
+
{ id: 'high', label: t('levelHigh') },
|
|
106
90
|
];
|
|
107
91
|
/**
|
|
108
92
|
* reasoning_effort 写法下模型的档位,按模型族给:gpt-5.1 起(gpt-5.<n>)多一档关(none),不带字段时就是关;gpt-5 本身
|
|
@@ -113,9 +97,9 @@ function effortLevels(model) {
|
|
|
113
97
|
if (/^o1-(mini|preview)/.test(lower))
|
|
114
98
|
return undefined;
|
|
115
99
|
if (/^gpt-5\.\d/.test(lower))
|
|
116
|
-
return { levels: [{ id: 'none', label: '
|
|
100
|
+
return { levels: [{ id: 'none', label: t('levelOff') }, ...LOW_TO_HIGH], default: 'none' };
|
|
117
101
|
if (lower.startsWith('gpt-5')) {
|
|
118
|
-
return { levels: [{ id: 'minimal', label: '
|
|
102
|
+
return { levels: [{ id: 'minimal', label: t('levelMinimal') }, ...LOW_TO_HIGH], default: 'medium' };
|
|
119
103
|
}
|
|
120
104
|
return { levels: LOW_TO_HIGH, default: 'medium' };
|
|
121
105
|
}
|
|
@@ -131,8 +115,8 @@ const THINKING_STYLES = {
|
|
|
131
115
|
thinking: {
|
|
132
116
|
levels: () => ({
|
|
133
117
|
levels: [
|
|
134
|
-
{ id: 'off', label: '
|
|
135
|
-
{ id: 'on', label: '
|
|
118
|
+
{ id: 'off', label: t('levelOff') },
|
|
119
|
+
{ id: 'on', label: t('levelOn') },
|
|
136
120
|
],
|
|
137
121
|
default: 'on',
|
|
138
122
|
}),
|
|
@@ -145,60 +129,70 @@ const configSchema = defineConfig({
|
|
|
145
129
|
label: 'API Key',
|
|
146
130
|
secret: true,
|
|
147
131
|
onInvalid: 'error',
|
|
148
|
-
description: '
|
|
132
|
+
description: t('apiKeyDescription'),
|
|
149
133
|
},
|
|
150
134
|
baseUrl: {
|
|
151
135
|
type: 'string',
|
|
152
|
-
label: '
|
|
136
|
+
label: t('baseUrlLabel'),
|
|
153
137
|
default: 'https://api.openai.com/v1',
|
|
154
138
|
onInvalid: 'error',
|
|
155
|
-
description: '
|
|
156
|
-
'可替换为任何兼容服务(如 Gemini 的 https://generativelanguage.googleapis.com/v1beta/openai)。',
|
|
139
|
+
description: t('baseUrlDescription'),
|
|
157
140
|
},
|
|
158
141
|
customModels: {
|
|
159
142
|
type: 'textarea',
|
|
160
|
-
label: '
|
|
143
|
+
label: t('customModelsLabel'),
|
|
161
144
|
default: '',
|
|
162
|
-
description: '
|
|
145
|
+
description: t('customModelsDescription'),
|
|
163
146
|
},
|
|
164
147
|
discoverModels: {
|
|
165
148
|
type: 'boolean',
|
|
166
|
-
label: '
|
|
149
|
+
label: t('discoverModelsLabel'),
|
|
167
150
|
default: true,
|
|
168
|
-
description: '
|
|
151
|
+
description: t('discoverModelsDescription'),
|
|
169
152
|
},
|
|
170
153
|
modelCapabilities: {
|
|
171
154
|
type: 'textarea',
|
|
172
|
-
label: '
|
|
155
|
+
label: t('modelCapabilitiesLabel'),
|
|
173
156
|
default: '',
|
|
174
|
-
description: '
|
|
157
|
+
description: t('modelCapabilitiesDescription'),
|
|
175
158
|
},
|
|
176
159
|
providerCapabilities: {
|
|
177
160
|
type: 'string',
|
|
178
|
-
label: '
|
|
161
|
+
label: t('providerCapabilitiesLabel'),
|
|
179
162
|
default: '',
|
|
180
|
-
description: '
|
|
163
|
+
description: t('providerCapabilitiesDescription'),
|
|
181
164
|
},
|
|
182
165
|
timeout: {
|
|
183
166
|
type: 'number',
|
|
184
|
-
label: '
|
|
167
|
+
label: t('timeoutLabel'),
|
|
185
168
|
default: 120,
|
|
186
|
-
description: '
|
|
169
|
+
description: t('timeoutDescription'),
|
|
170
|
+
},
|
|
171
|
+
temperature: { type: 'number', label: t('temperatureLabel'), default: 0.7, description: t('temperatureDescription') },
|
|
172
|
+
maxTokens: {
|
|
173
|
+
type: 'number',
|
|
174
|
+
label: t('maxTokensLabel'),
|
|
175
|
+
default: 4096,
|
|
176
|
+
min: 1,
|
|
177
|
+
integer: true,
|
|
178
|
+
onInvalid: 'error',
|
|
179
|
+
description: t('maxTokensDescription'),
|
|
180
|
+
},
|
|
181
|
+
contextLength: {
|
|
182
|
+
type: 'number',
|
|
183
|
+
label: t('contextLengthLabel'),
|
|
184
|
+
default: 128000,
|
|
185
|
+
description: t('contextLengthDescription'),
|
|
187
186
|
},
|
|
188
|
-
temperature: { type: 'number', label: '温度', default: 0.7, description: '0-2,越高越随机' },
|
|
189
|
-
maxTokens: { type: 'number', label: '最大 Token', default: 4096, description: '单次回复最大生成 token 数' },
|
|
190
|
-
contextLength: { type: 'number', label: '上下文长度', default: 128000, description: '模型上下文窗口大小' },
|
|
191
187
|
thinkingParam: {
|
|
192
188
|
type: 'select',
|
|
193
|
-
label: '
|
|
189
|
+
label: t('thinkingParamLabel'),
|
|
194
190
|
default: 'reasoning_effort',
|
|
195
191
|
options: [
|
|
196
|
-
{ label: '
|
|
197
|
-
{ label: '
|
|
192
|
+
{ label: t('thinkingParamEffort'), value: 'reasoning_effort' },
|
|
193
|
+
{ label: t('thinkingParamThinking'), value: 'thinking' },
|
|
198
194
|
],
|
|
199
|
-
description: '
|
|
200
|
-
'请求指定了档位才发对应字段,没指定时不发、按端点自己的默认。' +
|
|
201
|
-
'端点不认所选字段时会拒收指定了档位的请求,这时换一种写法,或在单模型能力覆盖里去掉这个模型的 thinking。',
|
|
195
|
+
description: t('thinkingParamDescription'),
|
|
202
196
|
},
|
|
203
197
|
});
|
|
204
198
|
/**
|
|
@@ -217,16 +211,25 @@ class OpenAIClient {
|
|
|
217
211
|
maxTokens;
|
|
218
212
|
thinkingFields;
|
|
219
213
|
logger;
|
|
214
|
+
/**
|
|
215
|
+
* 生成请求的连接池:不设等响应头与读响应体的时限(默认各 300 秒),timeout 是唯一的时限。dispatcher 是 Node 自带 fetch
|
|
216
|
+
* 认的扩展字段,DOM 的 RequestInit 里没有(测试的类型检查带 DOM),带它的选项按 RequestInit 断言
|
|
217
|
+
*/
|
|
218
|
+
dispatcher = new Agent({ headersTimeout: 0, bodyTimeout: 0 });
|
|
220
219
|
constructor(cfg, logger) {
|
|
221
220
|
this.apiKey = cfg.apiKey;
|
|
222
221
|
this.baseUrl = cfg.baseUrl.replace(/\/+$/, '');
|
|
223
|
-
// schema 中 timeout 单位为「秒」,存储为毫秒;0
|
|
224
|
-
this.timeout =
|
|
222
|
+
// schema 中 timeout 单位为「秒」,存储为毫秒;0 或负数不限,超过定时器上限按上限计,报错里的秒数是生效的值(见 idleTimeout)
|
|
223
|
+
this.timeout = Math.min(cfg.timeout * 1000, IDLE_TIMEOUT_MAX_MS);
|
|
225
224
|
this.temperature = cfg.temperature;
|
|
226
225
|
this.maxTokens = cfg.maxTokens;
|
|
227
226
|
this.thinkingFields = THINKING_STYLES[cfg.thinkingParam].fields;
|
|
228
227
|
this.logger = logger;
|
|
229
228
|
}
|
|
229
|
+
/** 停用时关掉生成请求的连接池,之后的请求被拒(报插件已停用或重载)。不等在飞的请求读完:它们是调用方的,等它们会让重载卡到回复写完 */
|
|
230
|
+
close() {
|
|
231
|
+
void this.dispatcher.close();
|
|
232
|
+
}
|
|
230
233
|
/** 构造请求头(无 apiKey 时不发 Authorization) */
|
|
231
234
|
get headers() {
|
|
232
235
|
const h = { 'Content-Type': 'application/json' };
|
|
@@ -234,24 +237,27 @@ class OpenAIClient {
|
|
|
234
237
|
h.Authorization = `Bearer ${this.apiKey}`;
|
|
235
238
|
return h;
|
|
236
239
|
}
|
|
237
|
-
/** 对话请求的非 2xx 应答:截断后的响应体记 warn,抛出的错误见
|
|
240
|
+
/** 对话请求的非 2xx 应答:截断后的响应体记 warn,抛出的错误见 httpErrorMessage */
|
|
238
241
|
apiError(status, body) {
|
|
239
242
|
this.logger.warn(`LLM API 错误 (${status}): ${bodyExcerpt(body)}`);
|
|
240
|
-
return new
|
|
243
|
+
return new TextError(httpErrorMessage('LLM', status, body));
|
|
241
244
|
}
|
|
242
245
|
/**
|
|
243
|
-
* 对话请求没拿到完整应答(fetch 或读响应体时抛出):原始错误连同原因记 warn
|
|
244
|
-
*
|
|
246
|
+
* 对话请求没拿到完整应答(fetch 或读响应体时抛出):原始错误连同原因记 warn,超时、连不上与连接池已关闭(插件停用或重载)
|
|
247
|
+
* 各换成一句说明,其它错误原样返回。调用方经 request.signal 中止时原样返回、不记日志,agent 按中止收尾
|
|
245
248
|
*/
|
|
246
249
|
requestError(err, request, startedAt) {
|
|
247
250
|
if (request.signal?.aborted)
|
|
248
251
|
return err;
|
|
249
|
-
this.logger.warn(`LLM 请求失败 (耗时 ${Date.now() - startedAt}ms): ${describeError(err)}`);
|
|
252
|
+
this.logger.warn(`LLM 请求失败 (耗时 ${Date.now() - startedAt}ms): ${toSource(describeError(err))}`);
|
|
250
253
|
if (err instanceof DOMException && err.name === 'TimeoutError') {
|
|
251
|
-
return new
|
|
254
|
+
return new TextError(t('requestTimeout', { seconds: this.timeout / 1000 }));
|
|
252
255
|
}
|
|
253
256
|
if (err instanceof TypeError && err.message === 'fetch failed') {
|
|
254
|
-
|
|
257
|
+
if (err.cause instanceof errors.ClientClosedError || err.cause instanceof errors.ClientDestroyedError) {
|
|
258
|
+
return new TextError(t('pluginClosed'));
|
|
259
|
+
}
|
|
260
|
+
return new TextError(t('unreachable'));
|
|
255
261
|
}
|
|
256
262
|
return err;
|
|
257
263
|
}
|
|
@@ -262,7 +268,7 @@ class OpenAIClient {
|
|
|
262
268
|
}
|
|
263
269
|
catch {
|
|
264
270
|
this.logger.warn(`LLM 应答不是 JSON (${status}): ${bodyExcerpt(text)}`);
|
|
265
|
-
throw new
|
|
271
|
+
throw new TextError(t('notJson', { status }));
|
|
266
272
|
}
|
|
267
273
|
}
|
|
268
274
|
/**
|
|
@@ -290,17 +296,17 @@ class OpenAIClient {
|
|
|
290
296
|
data = JSON.parse(text);
|
|
291
297
|
}
|
|
292
298
|
catch {
|
|
293
|
-
throw new
|
|
299
|
+
throw new TextError(t('discoveryNotJson', { excerpt: bodyExcerpt(text) }));
|
|
294
300
|
}
|
|
295
301
|
const list = data?.data;
|
|
296
302
|
if (!Array.isArray(list) || !list.every(m => typeof m?.id === 'string')) {
|
|
297
|
-
throw new
|
|
303
|
+
throw new TextError(t('discoveryNotList', { excerpt: bodyExcerpt(JSON.stringify(data)) }));
|
|
298
304
|
}
|
|
299
305
|
return list.map(m => m.id);
|
|
300
306
|
}
|
|
301
307
|
catch (err) {
|
|
302
308
|
signal?.throwIfAborted();
|
|
303
|
-
throw new
|
|
309
|
+
throw new TextError(t('discoveryFailed', { url, error: describeError(err) }), { cause: err });
|
|
304
310
|
}
|
|
305
311
|
}
|
|
306
312
|
/** level 是请求带的思考档位,没带时不发字段 */
|
|
@@ -322,9 +328,6 @@ class OpenAIClient {
|
|
|
322
328
|
body.tools = tools;
|
|
323
329
|
}
|
|
324
330
|
this.logger.debug(`请求 LLM: ${body.model}, ${messages.length} 条消息, ${tools?.length ?? 0} 个工具`);
|
|
325
|
-
const signals = [AbortSignal.timeout(this.timeout)];
|
|
326
|
-
if (request.signal)
|
|
327
|
-
signals.push(request.signal);
|
|
328
331
|
const startedAt = Date.now();
|
|
329
332
|
let response;
|
|
330
333
|
let text;
|
|
@@ -333,7 +336,8 @@ class OpenAIClient {
|
|
|
333
336
|
method: 'POST',
|
|
334
337
|
headers: this.headers,
|
|
335
338
|
body: JSON.stringify(body),
|
|
336
|
-
signal:
|
|
339
|
+
signal: idleTimeout(this.timeout, request.signal).signal,
|
|
340
|
+
dispatcher: this.dispatcher,
|
|
337
341
|
});
|
|
338
342
|
text = await response.text();
|
|
339
343
|
}
|
|
@@ -345,10 +349,11 @@ class OpenAIClient {
|
|
|
345
349
|
const data = this.parseJsonBody(response.status, text);
|
|
346
350
|
const choice = data.choices[0];
|
|
347
351
|
if (!choice) {
|
|
348
|
-
throw new
|
|
352
|
+
throw new TextError(t('emptyChoices'));
|
|
349
353
|
}
|
|
350
354
|
const result = {
|
|
351
355
|
content: choice.message.content,
|
|
356
|
+
finishReason: finishReasonOf(choice.finish_reason),
|
|
352
357
|
};
|
|
353
358
|
if (choice.message.tool_calls && choice.message.tool_calls.length > 0) {
|
|
354
359
|
result.toolCalls = choice.message.tool_calls.map(tc => ({
|
|
@@ -390,9 +395,16 @@ class OpenAIClient {
|
|
|
390
395
|
body.tools = tools;
|
|
391
396
|
}
|
|
392
397
|
this.logger.debug(`流式请求 LLM: ${body.model}, ${messages.length} 条消息`);
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
398
|
+
// 交出一段期间不计时:调用方处理一段的时间不算停顿
|
|
399
|
+
const timer = idleTimeout(this.timeout, request.signal);
|
|
400
|
+
for await (const chunk of this.readStream(body, request, timer)) {
|
|
401
|
+
timer.pause();
|
|
402
|
+
yield chunk;
|
|
403
|
+
timer.resume();
|
|
404
|
+
}
|
|
405
|
+
}
|
|
406
|
+
/** 发出流式请求并逐段解析,timer 管这次请求的停顿超时 */
|
|
407
|
+
async *readStream(body, request, timer) {
|
|
396
408
|
const reqStart = Date.now();
|
|
397
409
|
const slowConnectTimer = setTimeout(() => {
|
|
398
410
|
this.logger.warn(`LLM 连接慢:已等待 15s 仍未收到响应头 (url=${this.baseUrl}/chat/completions)`);
|
|
@@ -403,7 +415,8 @@ class OpenAIClient {
|
|
|
403
415
|
method: 'POST',
|
|
404
416
|
headers: this.headers,
|
|
405
417
|
body: JSON.stringify(body),
|
|
406
|
-
signal:
|
|
418
|
+
signal: timer.signal,
|
|
419
|
+
dispatcher: this.dispatcher,
|
|
407
420
|
});
|
|
408
421
|
}
|
|
409
422
|
catch (err) {
|
|
@@ -419,8 +432,9 @@ class OpenAIClient {
|
|
|
419
432
|
throw this.apiError(response.status, errorText);
|
|
420
433
|
}
|
|
421
434
|
const toolCallBuffers = new Map();
|
|
435
|
+
let finishReason;
|
|
422
436
|
if (!response.body) {
|
|
423
|
-
throw new
|
|
437
|
+
throw new TextError(t('emptyBody'));
|
|
424
438
|
}
|
|
425
439
|
const reader = response.body.getReader();
|
|
426
440
|
const decoder = new TextDecoder();
|
|
@@ -456,14 +470,17 @@ class OpenAIClient {
|
|
|
456
470
|
for (const [, tc] of [...toolCallBuffers.entries()].sort((a, b) => a[0] - b[0])) {
|
|
457
471
|
toolCalls.push({ id: tc.id, type: 'function', function: { name: tc.name, arguments: tc.args } });
|
|
458
472
|
}
|
|
459
|
-
yield { done: true, toolCalls: toolCalls.length > 0 ? toolCalls : undefined };
|
|
473
|
+
yield { done: true, toolCalls: toolCalls.length > 0 ? toolCalls : undefined, finishReason };
|
|
460
474
|
return;
|
|
461
475
|
}
|
|
462
476
|
try {
|
|
463
477
|
const data = JSON.parse(payload);
|
|
464
478
|
const chunk = {};
|
|
465
|
-
// usage
|
|
466
|
-
//
|
|
479
|
+
// usage 与结束原因必须在 delta 守卫**之前**取:OpenAI 的 include_usage 形态把 usage 挂在 `choices: []` 的
|
|
480
|
+
// 收尾帧上,兼容端点的结束原因可能在不带 delta 的末帧上,等到守卫之后再取整帧已被跳过。
|
|
481
|
+
const reason = finishReasonOf(data.choices?.[0]?.finish_reason);
|
|
482
|
+
if (reason)
|
|
483
|
+
finishReason = reason;
|
|
467
484
|
if (data.usage) {
|
|
468
485
|
chunk.usage = {
|
|
469
486
|
promptTokens: data.usage.prompt_tokens,
|
|
@@ -478,12 +495,17 @@ class OpenAIClient {
|
|
|
478
495
|
yield chunk; // 纯 usage 收尾帧照样上报
|
|
479
496
|
continue;
|
|
480
497
|
}
|
|
498
|
+
// 带生成内容的增量重新计时:思考本插件不交出,照样算(兼容端点写在 reasoning_content 或 reasoning)
|
|
499
|
+
if (delta.content || delta.reasoning_content || delta.reasoning)
|
|
500
|
+
timer.touch();
|
|
481
501
|
if (delta.content)
|
|
482
502
|
chunk.contentDelta = delta.content;
|
|
483
503
|
// 累积工具调用;同一帧里有几个调用,进度就各报一次
|
|
484
504
|
const progress = [];
|
|
485
505
|
if (delta.tool_calls) {
|
|
486
506
|
for (const tc of delta.tool_calls) {
|
|
507
|
+
if (tc.function?.name || tc.function?.arguments)
|
|
508
|
+
timer.touch();
|
|
487
509
|
const idx = tc.index ?? 0;
|
|
488
510
|
if (tc.id) {
|
|
489
511
|
toolCallBuffers.set(idx, { id: tc.id, name: tc.function?.name ?? '', args: '' });
|
|
@@ -517,7 +539,7 @@ class OpenAIClient {
|
|
|
517
539
|
clearTimeout(streamStallTimer);
|
|
518
540
|
// cancel 而非仅 releaseLock:中止/提前退出时要主动关闭响应体。releaseLock 只是放锁,
|
|
519
541
|
// 底层流仍开着——被打断的生成会让 undici 挂着半读的响应与套接字,直到请求超时兜底
|
|
520
|
-
//
|
|
542
|
+
// 才释放(本地慢生成时回合常被停下,这类残留一挂就是整个超时窗)。
|
|
521
543
|
// cancel 自带放锁。三条退出路径的语义:读尽 EOF(done:true)→ 流已 closed,cancel 是
|
|
522
544
|
// 真 no-op;收到终帧即 return(未读到 EOF)与消费方提前 break → cancel 中止残余响应体,
|
|
523
545
|
// 这正是本修复要的「立即交还套接字」,代价是该连接不回 keep-alive 池。
|
|
@@ -528,7 +550,7 @@ class OpenAIClient {
|
|
|
528
550
|
for (const [, tc] of [...toolCallBuffers.entries()].sort((a, b) => a[0] - b[0])) {
|
|
529
551
|
toolCalls.push({ id: tc.id, type: 'function', function: { name: tc.name, arguments: tc.args } });
|
|
530
552
|
}
|
|
531
|
-
yield { done: true, toolCalls: toolCalls.length > 0 ? toolCalls : undefined };
|
|
553
|
+
yield { done: true, toolCalls: toolCalls.length > 0 ? toolCalls : undefined, finishReason };
|
|
532
554
|
}
|
|
533
555
|
toAPIMessage(msg) {
|
|
534
556
|
// 调用方已经 prepareLLMMessages 处理过:role 已是 WellKnownRole,
|
|
@@ -741,17 +763,18 @@ async function registerModels({ config, logger, lifecycle, provide, events }) {
|
|
|
741
763
|
const modelCapabilities = parseModelCapabilities(cfg.modelCapabilities);
|
|
742
764
|
const providerCapabilities = parseProviderCapabilities(cfg.providerCapabilities);
|
|
743
765
|
checkBaseUrl(cfg.baseUrl);
|
|
744
|
-
//
|
|
766
|
+
// 官方端点不收不带 key 的请求:留空时激活就报缺 apiKey,不等第一次调用才回 401;兼容端点(本地服务等)可以不要 key,
|
|
767
|
+
// 所以只按 host 认官方(按前缀匹配会误伤 api.openai.com.cn 这类镜像域名)
|
|
745
768
|
const isOfficialOpenAI = new URL(cfg.baseUrl).hostname === 'api.openai.com';
|
|
746
769
|
if (!cfg.apiKey && isOfficialOpenAI) {
|
|
747
|
-
throw missingConfigError('apiKey', '
|
|
770
|
+
throw missingConfigError('apiKey', t('apiKeyRequired'));
|
|
748
771
|
}
|
|
749
772
|
if (!cfg.discoverModels && customModels.length === 0) {
|
|
750
|
-
throw missingConfigError('customModels', '
|
|
773
|
+
throw missingConfigError('customModels', t('customModelsRequired'));
|
|
751
774
|
}
|
|
752
775
|
const client = new OpenAIClient(cfg, logger.use);
|
|
776
|
+
lifecycle.use.onDispose(() => client.close(), '关闭生成请求的连接池');
|
|
753
777
|
const baseLabel = `OpenAI (${cfg.baseUrl.replace(/^https?:\/\//, '')})`;
|
|
754
|
-
const shownBaseUrl = redactUrl(cfg.baseUrl);
|
|
755
778
|
// 已注册 model entry 的句柄表:modelId → dispose(来自 provide 返回值)
|
|
756
779
|
const registered = new Map();
|
|
757
780
|
// 关闭模型发现时不提供 refresh:没有可重新发现的列表
|
|
@@ -795,7 +818,7 @@ async function registerModels({ config, logger, lifecycle, provide, events }) {
|
|
|
795
818
|
let discoveryError;
|
|
796
819
|
const remoteIds = cfg.discoverModels
|
|
797
820
|
? await client.fetchRemoteModelIds(lifecycle.use.signal).catch((err) => {
|
|
798
|
-
discoveryError =
|
|
821
|
+
discoveryError = textOf(err);
|
|
799
822
|
return [];
|
|
800
823
|
})
|
|
801
824
|
: [];
|
|
@@ -805,18 +828,18 @@ async function registerModels({ config, logger, lifecycle, provide, events }) {
|
|
|
805
828
|
// 提示写在原因之前:原因里可能带着一段响应体
|
|
806
829
|
if (initialIds.length === 0) {
|
|
807
830
|
throw configError(discoveryError
|
|
808
|
-
?
|
|
809
|
-
:
|
|
831
|
+
? t('noModelsDiscoveryFailed', { error: discoveryError })
|
|
832
|
+
: t('noModels', { baseUrl: cfg.baseUrl }));
|
|
810
833
|
}
|
|
811
834
|
if (discoveryError)
|
|
812
|
-
logger.use.warn(`启动时只注册 customModels 里的模型;${discoveryError}`);
|
|
835
|
+
logger.use.warn(`启动时只注册 customModels 里的模型;${toSource(discoveryError)}`);
|
|
813
836
|
for (const modelId of initialIds)
|
|
814
837
|
registerOne(modelId);
|
|
815
838
|
logger.use.info(!cfg.discoverModels
|
|
816
|
-
? `未开启模型发现: ${
|
|
839
|
+
? `未开启模型发现: ${cfg.baseUrl},注册 customModels 里的 ${initialIds.length} 个 model entry`
|
|
817
840
|
: discoveryError
|
|
818
|
-
? `模型发现失败: ${
|
|
819
|
-
: `已连接: ${
|
|
841
|
+
? `模型发现失败: ${cfg.baseUrl},注册 customModels 里的 ${initialIds.length} 个 model entry`
|
|
842
|
+
: `已连接: ${cfg.baseUrl},注册 ${initialIds.length} 个 model entry`);
|
|
820
843
|
/**
|
|
821
844
|
* 重新发现并按差异增删条目(WebUI 触发)。与初次注册一样随停用或停机中止:中止即抛出,不再增删条目。
|
|
822
845
|
* 发现失败同样抛出(WebUI 据此报错)、不增删条目:按空列表处理会把自动发现的条目全部注销
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
readonly baseUrlInvalid: "baseUrl is not a valid URL; write it as a full address, such as https://api.openai.com/v1";
|
|
3
|
+
readonly baseUrlQuery: "baseUrl cannot contain a query string or fragment (anything after ? or #): the plugin appends paths to it";
|
|
4
|
+
readonly baseUrlCredentials: "baseUrl cannot contain a user name or password (user:pass@); put the key in apiKey";
|
|
5
|
+
readonly withCause: "{error} ← {detail}";
|
|
6
|
+
readonly hintAuth: "invalid key or no permission";
|
|
7
|
+
readonly hintPayment: "insufficient balance or payment required";
|
|
8
|
+
readonly hintNotFound: "wrong model or address";
|
|
9
|
+
readonly hintRateLimit: "too many requests or quota exhausted";
|
|
10
|
+
readonly hintUpstream: "upstream service failure";
|
|
11
|
+
readonly apiError: "{provider} API error ({status})";
|
|
12
|
+
readonly apiErrorHint: "{provider} API error ({status}): {hint}";
|
|
13
|
+
readonly upstreamMessage: "upstream message: {message}";
|
|
14
|
+
readonly seeLogs: "see the logs for details";
|
|
15
|
+
readonly levelOff: "Off";
|
|
16
|
+
readonly levelOn: "On";
|
|
17
|
+
readonly levelMinimal: "Minimal";
|
|
18
|
+
readonly levelLow: "Low";
|
|
19
|
+
readonly levelMedium: "Medium";
|
|
20
|
+
readonly levelHigh: "High";
|
|
21
|
+
readonly apiKeyDescription: "OpenAI API key (may be left empty for local services)";
|
|
22
|
+
readonly baseUrlLabel: "API URL";
|
|
23
|
+
readonly baseUrlDescription: "Full prefix of the API endpoint (including the version segment, such as https://api.openai.com/v1); the plugin only appends /chat/completions and /models to it. Any compatible service can be used instead (such as Gemini at https://generativelanguage.googleapis.com/v1beta/openai).";
|
|
24
|
+
readonly customModelsLabel: "Custom models";
|
|
25
|
+
readonly customModelsDescription: "Model names added by hand (one per line or comma-separated), for models missing from the discovered list. Names that duplicate discovered models are flagged so you can remove them.";
|
|
26
|
+
readonly discoverModelsLabel: "Discover models";
|
|
27
|
+
readonly discoverModelsDescription: "Request /models at startup to discover the available models; the WebUI can refresh the model list. Turn it off when the gateway does not provide /models: no discovery request is sent, only customModels are registered (then required), and refreshing is not supported.";
|
|
28
|
+
readonly modelCapabilitiesLabel: "Per-model capability overrides";
|
|
29
|
+
readonly modelCapabilitiesDescription: "Set a model's capabilities line by line. A line for a model **overrides** the plugin's heuristics and is still combined with the adapter defaults.\nFormat: `<modelId>: <cap1>,<cap2>,...`, one per line. For example: gpt-4o: chat,tool_calling,vision,streaming\nAvailable capabilities: chat / tool_calling / vision / streaming / thinking and so on.";
|
|
30
|
+
readonly providerCapabilitiesLabel: "Adapter default capabilities (comma-separated)";
|
|
31
|
+
readonly providerCapabilitiesDescription: "Capabilities added to every model of this adapter. A model's capabilities = these ∪ its per-model capabilities. For example: chat,tool_calling,streaming";
|
|
32
|
+
readonly timeoutLabel: "Idle timeout (s)";
|
|
33
|
+
readonly timeoutDescription: "How long without new output counts as a timeout (seconds). Output that keeps coming never times out; a non-streaming request must receive the whole reply within this time. Raise it when the model thinks without streaming its thinking (such as the official OpenAI reasoning models) or the input is long. 0 = no limit.";
|
|
34
|
+
readonly temperatureLabel: "Temperature";
|
|
35
|
+
readonly temperatureDescription: "0-2; higher is more random";
|
|
36
|
+
readonly maxTokensLabel: "Max tokens";
|
|
37
|
+
readonly maxTokensDescription: "Maximum tokens generated per reply; must be a positive integer, otherwise the instance goes into error";
|
|
38
|
+
readonly contextLengthLabel: "Context length";
|
|
39
|
+
readonly contextLengthDescription: "Size of the model's context window";
|
|
40
|
+
readonly thinkingParamLabel: "Thinking level format";
|
|
41
|
+
readonly thinkingParamEffort: "reasoning_effort: levels by model family (official OpenAI and most compatible endpoints)";
|
|
42
|
+
readonly thinkingParamThinking: "thinking.type: off and on (DeepSeek-style endpoints or relays)";
|
|
43
|
+
readonly thinkingParamDescription: "Models that can think (the o series and gpt-5 series in the built-in table, except gpt-5-chat, or those with thinking in the per-model capability overrides) offer thinking levels in this format. The field is only sent when a request names a level; otherwise nothing is sent and the endpoint uses its own default. An endpoint that does not recognize the chosen field rejects requests that name a level; then switch to the other format, or remove thinking for that model in the per-model capability overrides.";
|
|
44
|
+
readonly requestTimeout: "LLM request timed out: no new output within {seconds} s; you can raise timeout in the config";
|
|
45
|
+
readonly pluginClosed: "The LLM plugin was disabled or reloaded; this request was not sent";
|
|
46
|
+
readonly unreachable: "LLM cannot reach the service: check baseUrl and the network; see the logs for details";
|
|
47
|
+
readonly notJson: "The LLM response is not JSON ({status}); see the logs for details";
|
|
48
|
+
readonly discoveryNotJson: "the response is not JSON: {excerpt}";
|
|
49
|
+
readonly discoveryNotList: "the response is not a model list (it needs a data array whose items each have a string id): {excerpt}";
|
|
50
|
+
readonly discoveryFailed: "Model discovery failed for {url}: {error}";
|
|
51
|
+
readonly emptyChoices: "LLM returned empty choices";
|
|
52
|
+
readonly emptyBody: "The LLM API returned an empty response body, so the stream cannot be read";
|
|
53
|
+
readonly apiKeyRequired: "required when using the official OpenAI API";
|
|
54
|
+
readonly customModelsRequired: "required when discoverModels is off";
|
|
55
|
+
readonly noModelsDiscoveryFailed: "Could not get the model list, so there are no models to register: check apiKey, baseUrl and the network, then reload this plugin, or list the models to use in customModels. Reason: {error}";
|
|
56
|
+
readonly noModels: "Connected to {baseUrl} but found no available models; you can list the models to use in customModels";
|
|
57
|
+
};
|
|
58
|
+
export default _default;
|
|
59
|
+
//# sourceMappingURL=en.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"en.d.ts","sourceRoot":"","sources":["../../src/locales/en.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,wBAmEG"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { defineLocale } from '@aalis/schema-i18n';
|
|
2
|
+
export default defineLocale()({
|
|
3
|
+
baseUrlInvalid: 'baseUrl is not a valid URL; write it as a full address, such as https://api.openai.com/v1',
|
|
4
|
+
baseUrlQuery: 'baseUrl cannot contain a query string or fragment (anything after ? or #): the plugin appends paths to it',
|
|
5
|
+
baseUrlCredentials: 'baseUrl cannot contain a user name or password (user:pass@); put the key in apiKey',
|
|
6
|
+
withCause: '{error} ← {detail}',
|
|
7
|
+
hintAuth: 'invalid key or no permission',
|
|
8
|
+
hintPayment: 'insufficient balance or payment required',
|
|
9
|
+
hintNotFound: 'wrong model or address',
|
|
10
|
+
hintRateLimit: 'too many requests or quota exhausted',
|
|
11
|
+
hintUpstream: 'upstream service failure',
|
|
12
|
+
apiError: '{provider} API error ({status})',
|
|
13
|
+
apiErrorHint: '{provider} API error ({status}): {hint}',
|
|
14
|
+
upstreamMessage: 'upstream message: {message}',
|
|
15
|
+
seeLogs: 'see the logs for details',
|
|
16
|
+
levelOff: 'Off',
|
|
17
|
+
levelOn: 'On',
|
|
18
|
+
levelMinimal: 'Minimal',
|
|
19
|
+
levelLow: 'Low',
|
|
20
|
+
levelMedium: 'Medium',
|
|
21
|
+
levelHigh: 'High',
|
|
22
|
+
apiKeyDescription: 'OpenAI API key (may be left empty for local services)',
|
|
23
|
+
baseUrlLabel: 'API URL',
|
|
24
|
+
baseUrlDescription: 'Full prefix of the API endpoint (including the version segment, such as https://api.openai.com/v1); the plugin only appends /chat/completions and /models to it. Any compatible service can be used instead (such as Gemini at https://generativelanguage.googleapis.com/v1beta/openai).',
|
|
25
|
+
customModelsLabel: 'Custom models',
|
|
26
|
+
customModelsDescription: 'Model names added by hand (one per line or comma-separated), for models missing from the discovered list. Names that duplicate discovered models are flagged so you can remove them.',
|
|
27
|
+
discoverModelsLabel: 'Discover models',
|
|
28
|
+
discoverModelsDescription: 'Request /models at startup to discover the available models; the WebUI can refresh the model list. Turn it off when the gateway does not provide /models: no discovery request is sent, only customModels are registered (then required), and refreshing is not supported.',
|
|
29
|
+
modelCapabilitiesLabel: 'Per-model capability overrides',
|
|
30
|
+
modelCapabilitiesDescription: "Set a model's capabilities line by line. A line for a model **overrides** the plugin's heuristics and is still combined with the adapter defaults.\nFormat: `<modelId>: <cap1>,<cap2>,...`, one per line. For example: gpt-4o: chat,tool_calling,vision,streaming\nAvailable capabilities: chat / tool_calling / vision / streaming / thinking and so on.",
|
|
31
|
+
providerCapabilitiesLabel: 'Adapter default capabilities (comma-separated)',
|
|
32
|
+
providerCapabilitiesDescription: "Capabilities added to every model of this adapter. A model's capabilities = these ∪ its per-model capabilities. For example: chat,tool_calling,streaming",
|
|
33
|
+
timeoutLabel: 'Idle timeout (s)',
|
|
34
|
+
timeoutDescription: 'How long without new output counts as a timeout (seconds). Output that keeps coming never times out; a non-streaming request must receive the whole reply within this time. Raise it when the model thinks without streaming its thinking (such as the official OpenAI reasoning models) or the input is long. 0 = no limit.',
|
|
35
|
+
temperatureLabel: 'Temperature',
|
|
36
|
+
temperatureDescription: '0-2; higher is more random',
|
|
37
|
+
maxTokensLabel: 'Max tokens',
|
|
38
|
+
maxTokensDescription: 'Maximum tokens generated per reply; must be a positive integer, otherwise the instance goes into error',
|
|
39
|
+
contextLengthLabel: 'Context length',
|
|
40
|
+
contextLengthDescription: "Size of the model's context window",
|
|
41
|
+
thinkingParamLabel: 'Thinking level format',
|
|
42
|
+
thinkingParamEffort: 'reasoning_effort: levels by model family (official OpenAI and most compatible endpoints)',
|
|
43
|
+
thinkingParamThinking: 'thinking.type: off and on (DeepSeek-style endpoints or relays)',
|
|
44
|
+
thinkingParamDescription: 'Models that can think (the o series and gpt-5 series in the built-in table, except gpt-5-chat, or those with thinking in the per-model capability overrides) offer thinking levels in this format. The field is only sent when a request names a level; otherwise nothing is sent and the endpoint uses its own default. An endpoint that does not recognize the chosen field rejects requests that name a level; then switch to the other format, or remove thinking for that model in the per-model capability overrides.',
|
|
45
|
+
requestTimeout: 'LLM request timed out: no new output within {seconds} s; you can raise timeout in the config',
|
|
46
|
+
pluginClosed: 'The LLM plugin was disabled or reloaded; this request was not sent',
|
|
47
|
+
unreachable: 'LLM cannot reach the service: check baseUrl and the network; see the logs for details',
|
|
48
|
+
notJson: 'The LLM response is not JSON ({status}); see the logs for details',
|
|
49
|
+
discoveryNotJson: 'the response is not JSON: {excerpt}',
|
|
50
|
+
discoveryNotList: 'the response is not a model list (it needs a data array whose items each have a string id): {excerpt}',
|
|
51
|
+
discoveryFailed: 'Model discovery failed for {url}: {error}',
|
|
52
|
+
emptyChoices: 'LLM returned empty choices',
|
|
53
|
+
emptyBody: 'The LLM API returned an empty response body, so the stream cannot be read',
|
|
54
|
+
apiKeyRequired: 'required when using the official OpenAI API',
|
|
55
|
+
customModelsRequired: 'required when discoverModels is off',
|
|
56
|
+
noModelsDiscoveryFailed: 'Could not get the model list, so there are no models to register: check apiKey, baseUrl and the network, then reload this plugin, or list the models to use in customModels. Reason: {error}',
|
|
57
|
+
noModels: 'Connected to {baseUrl} but found no available models; you can list the models to use in customModels',
|
|
58
|
+
});
|
|
59
|
+
//# sourceMappingURL=en.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"en.js","sourceRoot":"","sources":["../../src/locales/en.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,eAAe,YAAY,EAAU,CAAC;IACpC,cAAc,EAAE,2FAA2F;IAC3G,YAAY,EACV,2GAA2G;IAC7G,kBAAkB,EAAE,oFAAoF;IACxG,SAAS,EAAE,oBAAoB;IAC/B,QAAQ,EAAE,8BAA8B;IACxC,WAAW,EAAE,0CAA0C;IACvD,YAAY,EAAE,wBAAwB;IACtC,aAAa,EAAE,sCAAsC;IACrD,YAAY,EAAE,0BAA0B;IACxC,QAAQ,EAAE,iCAAiC;IAC3C,YAAY,EAAE,yCAAyC;IACvD,eAAe,EAAE,6BAA6B;IAC9C,OAAO,EAAE,0BAA0B;IACnC,QAAQ,EAAE,KAAK;IACf,OAAO,EAAE,IAAI;IACb,YAAY,EAAE,SAAS;IACvB,QAAQ,EAAE,KAAK;IACf,WAAW,EAAE,QAAQ;IACrB,SAAS,EAAE,MAAM;IACjB,iBAAiB,EAAE,uDAAuD;IAC1E,YAAY,EAAE,SAAS;IACvB,kBAAkB,EAChB,0RAA0R;IAC5R,iBAAiB,EAAE,eAAe;IAClC,uBAAuB,EACrB,sLAAsL;IACxL,mBAAmB,EAAE,iBAAiB;IACtC,yBAAyB,EACvB,4QAA4Q;IAC9Q,sBAAsB,EAAE,gCAAgC;IACxD,4BAA4B,EAC1B,2VAA2V;IAC7V,yBAAyB,EAAE,gDAAgD;IAC3E,+BAA+B,EAC7B,0JAA0J;IAC5J,YAAY,EAAE,kBAAkB;IAChC,kBAAkB,EAChB,8TAA8T;IAChU,gBAAgB,EAAE,aAAa;IAC/B,sBAAsB,EAAE,4BAA4B;IACpD,cAAc,EAAE,YAAY;IAC5B,oBAAoB,EAClB,wGAAwG;IAC1G,kBAAkB,EAAE,gBAAgB;IACpC,wBAAwB,EAAE,oCAAoC;IAC9D,kBAAkB,EAAE,uBAAuB;IAC3C,mBAAmB,EAAE,0FAA0F;IAC/G,qBAAqB,EAAE,gEAAgE;IACvF,wBAAwB,EACtB,6fAA6f;IAC/f,cAAc,EAAE,8FAA8F;IAC9G,YAAY,EAAE,oEAAoE;IAClF,WAAW,EAAE,uFAAuF;IACpG,OAAO,EAAE,mEAAmE;IAC5E,gBAAgB,EAAE,qCAAqC;IACvD,gBAAgB,EACd,uGAAuG;IACzG,eAAe,EAAE,2CAA2C;IAC5D,YAAY,EAAE,4BAA4B;IAC1C,SAAS,EAAE,2EAA2E;IACtF,cAAc,EAAE,6CAA6C;IAC7D,oBAAoB,EAAE,qCAAqC;IAC3D,uBAAuB,EACrB,8LAA8L;IAChM,QAAQ,EAAE,sGAAsG;CACjH,CAAC,CAAC"}
|
package/dist/texts.d.ts
ADDED
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
declare const SOURCE: {
|
|
2
|
+
readonly baseUrlInvalid: "baseUrl 不是有效的 URL,需写成完整地址,如 https://api.openai.com/v1";
|
|
3
|
+
readonly baseUrlQuery: "baseUrl 不能带查询串或片段(? 或 # 之后的部分):插件在它后面拼接路径";
|
|
4
|
+
readonly baseUrlCredentials: "baseUrl 不能带用户名或密码(user:pass@),密钥请填在 apiKey";
|
|
5
|
+
readonly withCause: "{error} ← {detail}";
|
|
6
|
+
readonly hintAuth: "密钥无效或没有权限";
|
|
7
|
+
readonly hintPayment: "余额不足或需要付费";
|
|
8
|
+
readonly hintNotFound: "模型或地址不对";
|
|
9
|
+
readonly hintRateLimit: "请求过多或额度不足";
|
|
10
|
+
readonly hintUpstream: "上游服务故障";
|
|
11
|
+
readonly apiError: "{provider} API 错误 ({status})";
|
|
12
|
+
readonly apiErrorHint: "{provider} API 错误 ({status}):{hint}";
|
|
13
|
+
readonly upstreamMessage: "上游说明:{message}";
|
|
14
|
+
readonly seeLogs: "详情见日志";
|
|
15
|
+
readonly levelOff: "关";
|
|
16
|
+
readonly levelOn: "开";
|
|
17
|
+
readonly levelMinimal: "最低";
|
|
18
|
+
readonly levelLow: "低";
|
|
19
|
+
readonly levelMedium: "中";
|
|
20
|
+
readonly levelHigh: "高";
|
|
21
|
+
readonly apiKeyDescription: "OpenAI API 密钥(本地服务可留空)";
|
|
22
|
+
readonly baseUrlLabel: "API 地址";
|
|
23
|
+
readonly baseUrlDescription: "API 端点完整前缀(含版本段,如 https://api.openai.com/v1);插件只在其后拼 /chat/completions 与 /models。可替换为任何兼容服务(如 Gemini 的 https://generativelanguage.googleapis.com/v1beta/openai)。";
|
|
24
|
+
readonly customModelsLabel: "自定义模型";
|
|
25
|
+
readonly customModelsDescription: "手动添加的模型名称(每行一个或逗号分隔)。用于补充自动发现列表中未出现的模型。与自动发现重复时会提示去重。";
|
|
26
|
+
readonly discoverModelsLabel: "自动发现模型";
|
|
27
|
+
readonly discoverModelsDescription: "启动时请求 /models 发现可用模型,WebUI 可刷新模型列表。网关不提供 /models 时关闭:不发发现请求,只注册 customModels(此时必填),也不支持刷新。";
|
|
28
|
+
readonly modelCapabilitiesLabel: "单模型能力覆盖";
|
|
29
|
+
readonly modelCapabilitiesDescription: "按行指定某个模型的能力集。有该模型的表项时**覆盖**插件启发式推断,与 adapter 默认能力仍取并集。\n格式:`<modelId>: <cap1>,<cap2>,...`,每行一条。如:gpt-4o: chat,tool_calling,vision,streaming\n可用能力:chat / tool_calling / vision / streaming / thinking 等。";
|
|
30
|
+
readonly providerCapabilitiesLabel: "适配器默认能力(逗号分隔)";
|
|
31
|
+
readonly providerCapabilitiesDescription: "为本适配器下所有模型额外补充的能力。最终某模型的能力 = 此处能力 ∪ 模型级别能力。例:chat,tool_calling,streaming";
|
|
32
|
+
readonly timeoutLabel: "停顿超时(秒)";
|
|
33
|
+
readonly timeoutDescription: "多久收不到新的生成内容算超时(秒)。一直在输出不算超时;不流式的请求要在这段时间内收到整份回复。模型思考时不发出思考内容(如 OpenAI 官方的推理模型)或输入很长时,建议适当调大。0 = 不限制。";
|
|
34
|
+
readonly temperatureLabel: "温度";
|
|
35
|
+
readonly temperatureDescription: "0-2,越高越随机";
|
|
36
|
+
readonly maxTokensLabel: "最大 Token";
|
|
37
|
+
readonly maxTokensDescription: "单次回复最大生成 token 数,须为正整数,否则实例转为出错";
|
|
38
|
+
readonly contextLengthLabel: "上下文长度";
|
|
39
|
+
readonly contextLengthDescription: "模型上下文窗口大小";
|
|
40
|
+
readonly thinkingParamLabel: "思考档位的写法";
|
|
41
|
+
readonly thinkingParamEffort: "reasoning_effort:档位按模型族(OpenAI 官方与多数兼容端点)";
|
|
42
|
+
readonly thinkingParamThinking: "thinking.type:关、开(DeepSeek 风格的端点或中转)";
|
|
43
|
+
readonly thinkingParamDescription: "能思考的模型(内置表里的 o 系列与 gpt-5 系列,gpt-5-chat 除外,或单模型能力覆盖里写了 thinking 的)按这种写法提供深度思考的档位。请求指定了档位才发对应字段,没指定时不发、按端点自己的默认。端点不认所选字段时会拒收指定了档位的请求,这时换一种写法,或在单模型能力覆盖里去掉这个模型的 thinking。";
|
|
44
|
+
readonly requestTimeout: "LLM 请求超时:{seconds} 秒内没有收到新的生成内容,可在配置里调大 timeout";
|
|
45
|
+
readonly pluginClosed: "LLM 插件已停用或重载,这次请求没有发出";
|
|
46
|
+
readonly unreachable: "LLM 连不上服务:检查 baseUrl 与网络,详情见日志";
|
|
47
|
+
readonly notJson: "LLM 应答不是 JSON ({status});详情见日志";
|
|
48
|
+
readonly discoveryNotJson: "响应不是 JSON: {excerpt}";
|
|
49
|
+
readonly discoveryNotList: "响应不是模型列表(需要 data 数组,每项带字符串 id):{excerpt}";
|
|
50
|
+
readonly discoveryFailed: "模型发现失败 {url}: {error}";
|
|
51
|
+
readonly emptyChoices: "LLM 返回了空的 choices";
|
|
52
|
+
readonly emptyBody: "LLM API 返回了空的响应体,无法进行流式读取";
|
|
53
|
+
readonly apiKeyRequired: "使用 OpenAI 官方 API 时必填";
|
|
54
|
+
readonly customModelsRequired: "关闭 discoverModels 时必填";
|
|
55
|
+
readonly noModelsDiscoveryFailed: "取不到模型列表,没有可注册的模型:检查 apiKey、baseUrl 与网络后重载本插件,或在 customModels 里写明要用的模型。原因:{error}";
|
|
56
|
+
readonly noModels: "已连接 {baseUrl},但未发现任何可用模型;可在 customModels 里写明要用的模型";
|
|
57
|
+
};
|
|
58
|
+
export type Source = typeof SOURCE;
|
|
59
|
+
export declare const t: import("@aalis/schema-i18n").TextFactory<{
|
|
60
|
+
readonly baseUrlInvalid: "baseUrl 不是有效的 URL,需写成完整地址,如 https://api.openai.com/v1";
|
|
61
|
+
readonly baseUrlQuery: "baseUrl 不能带查询串或片段(? 或 # 之后的部分):插件在它后面拼接路径";
|
|
62
|
+
readonly baseUrlCredentials: "baseUrl 不能带用户名或密码(user:pass@),密钥请填在 apiKey";
|
|
63
|
+
readonly withCause: "{error} ← {detail}";
|
|
64
|
+
readonly hintAuth: "密钥无效或没有权限";
|
|
65
|
+
readonly hintPayment: "余额不足或需要付费";
|
|
66
|
+
readonly hintNotFound: "模型或地址不对";
|
|
67
|
+
readonly hintRateLimit: "请求过多或额度不足";
|
|
68
|
+
readonly hintUpstream: "上游服务故障";
|
|
69
|
+
readonly apiError: "{provider} API 错误 ({status})";
|
|
70
|
+
readonly apiErrorHint: "{provider} API 错误 ({status}):{hint}";
|
|
71
|
+
readonly upstreamMessage: "上游说明:{message}";
|
|
72
|
+
readonly seeLogs: "详情见日志";
|
|
73
|
+
readonly levelOff: "关";
|
|
74
|
+
readonly levelOn: "开";
|
|
75
|
+
readonly levelMinimal: "最低";
|
|
76
|
+
readonly levelLow: "低";
|
|
77
|
+
readonly levelMedium: "中";
|
|
78
|
+
readonly levelHigh: "高";
|
|
79
|
+
readonly apiKeyDescription: "OpenAI API 密钥(本地服务可留空)";
|
|
80
|
+
readonly baseUrlLabel: "API 地址";
|
|
81
|
+
readonly baseUrlDescription: "API 端点完整前缀(含版本段,如 https://api.openai.com/v1);插件只在其后拼 /chat/completions 与 /models。可替换为任何兼容服务(如 Gemini 的 https://generativelanguage.googleapis.com/v1beta/openai)。";
|
|
82
|
+
readonly customModelsLabel: "自定义模型";
|
|
83
|
+
readonly customModelsDescription: "手动添加的模型名称(每行一个或逗号分隔)。用于补充自动发现列表中未出现的模型。与自动发现重复时会提示去重。";
|
|
84
|
+
readonly discoverModelsLabel: "自动发现模型";
|
|
85
|
+
readonly discoverModelsDescription: "启动时请求 /models 发现可用模型,WebUI 可刷新模型列表。网关不提供 /models 时关闭:不发发现请求,只注册 customModels(此时必填),也不支持刷新。";
|
|
86
|
+
readonly modelCapabilitiesLabel: "单模型能力覆盖";
|
|
87
|
+
readonly modelCapabilitiesDescription: "按行指定某个模型的能力集。有该模型的表项时**覆盖**插件启发式推断,与 adapter 默认能力仍取并集。\n格式:`<modelId>: <cap1>,<cap2>,...`,每行一条。如:gpt-4o: chat,tool_calling,vision,streaming\n可用能力:chat / tool_calling / vision / streaming / thinking 等。";
|
|
88
|
+
readonly providerCapabilitiesLabel: "适配器默认能力(逗号分隔)";
|
|
89
|
+
readonly providerCapabilitiesDescription: "为本适配器下所有模型额外补充的能力。最终某模型的能力 = 此处能力 ∪ 模型级别能力。例:chat,tool_calling,streaming";
|
|
90
|
+
readonly timeoutLabel: "停顿超时(秒)";
|
|
91
|
+
readonly timeoutDescription: "多久收不到新的生成内容算超时(秒)。一直在输出不算超时;不流式的请求要在这段时间内收到整份回复。模型思考时不发出思考内容(如 OpenAI 官方的推理模型)或输入很长时,建议适当调大。0 = 不限制。";
|
|
92
|
+
readonly temperatureLabel: "温度";
|
|
93
|
+
readonly temperatureDescription: "0-2,越高越随机";
|
|
94
|
+
readonly maxTokensLabel: "最大 Token";
|
|
95
|
+
readonly maxTokensDescription: "单次回复最大生成 token 数,须为正整数,否则实例转为出错";
|
|
96
|
+
readonly contextLengthLabel: "上下文长度";
|
|
97
|
+
readonly contextLengthDescription: "模型上下文窗口大小";
|
|
98
|
+
readonly thinkingParamLabel: "思考档位的写法";
|
|
99
|
+
readonly thinkingParamEffort: "reasoning_effort:档位按模型族(OpenAI 官方与多数兼容端点)";
|
|
100
|
+
readonly thinkingParamThinking: "thinking.type:关、开(DeepSeek 风格的端点或中转)";
|
|
101
|
+
readonly thinkingParamDescription: "能思考的模型(内置表里的 o 系列与 gpt-5 系列,gpt-5-chat 除外,或单模型能力覆盖里写了 thinking 的)按这种写法提供深度思考的档位。请求指定了档位才发对应字段,没指定时不发、按端点自己的默认。端点不认所选字段时会拒收指定了档位的请求,这时换一种写法,或在单模型能力覆盖里去掉这个模型的 thinking。";
|
|
102
|
+
readonly requestTimeout: "LLM 请求超时:{seconds} 秒内没有收到新的生成内容,可在配置里调大 timeout";
|
|
103
|
+
readonly pluginClosed: "LLM 插件已停用或重载,这次请求没有发出";
|
|
104
|
+
readonly unreachable: "LLM 连不上服务:检查 baseUrl 与网络,详情见日志";
|
|
105
|
+
readonly notJson: "LLM 应答不是 JSON ({status});详情见日志";
|
|
106
|
+
readonly discoveryNotJson: "响应不是 JSON: {excerpt}";
|
|
107
|
+
readonly discoveryNotList: "响应不是模型列表(需要 data 数组,每项带字符串 id):{excerpt}";
|
|
108
|
+
readonly discoveryFailed: "模型发现失败 {url}: {error}";
|
|
109
|
+
readonly emptyChoices: "LLM 返回了空的 choices";
|
|
110
|
+
readonly emptyBody: "LLM API 返回了空的响应体,无法进行流式读取";
|
|
111
|
+
readonly apiKeyRequired: "使用 OpenAI 官方 API 时必填";
|
|
112
|
+
readonly customModelsRequired: "关闭 discoverModels 时必填";
|
|
113
|
+
readonly noModelsDiscoveryFailed: "取不到模型列表,没有可注册的模型:检查 apiKey、baseUrl 与网络后重载本插件,或在 customModels 里写明要用的模型。原因:{error}";
|
|
114
|
+
readonly noModels: "已连接 {baseUrl},但未发现任何可用模型;可在 customModels 里写明要用的模型";
|
|
115
|
+
}>;
|
|
116
|
+
export {};
|
|
117
|
+
//# sourceMappingURL=texts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"texts.d.ts","sourceRoot":"","sources":["../src/texts.ts"],"names":[],"mappings":"AAIA,QAAA,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgEF,CAAC;AACX,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC;AAEnC,eAAO,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAsG,CAAC"}
|
package/dist/texts.js
ADDED
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
// 本插件自己的原文字典:配置项、思考档位名与给人看的报错(经 agent 进会话、作插件失败原因)
|
|
2
|
+
import { defineTexts } from '@aalis/schema-i18n';
|
|
3
|
+
import en from './locales/en.js';
|
|
4
|
+
const SOURCE = {
|
|
5
|
+
baseUrlInvalid: 'baseUrl 不是有效的 URL,需写成完整地址,如 https://api.openai.com/v1',
|
|
6
|
+
baseUrlQuery: 'baseUrl 不能带查询串或片段(? 或 # 之后的部分):插件在它后面拼接路径',
|
|
7
|
+
baseUrlCredentials: 'baseUrl 不能带用户名或密码(user:pass@),密钥请填在 apiKey',
|
|
8
|
+
withCause: '{error} ← {detail}',
|
|
9
|
+
hintAuth: '密钥无效或没有权限',
|
|
10
|
+
hintPayment: '余额不足或需要付费',
|
|
11
|
+
hintNotFound: '模型或地址不对',
|
|
12
|
+
hintRateLimit: '请求过多或额度不足',
|
|
13
|
+
hintUpstream: '上游服务故障',
|
|
14
|
+
apiError: '{provider} API 错误 ({status})',
|
|
15
|
+
apiErrorHint: '{provider} API 错误 ({status}):{hint}',
|
|
16
|
+
upstreamMessage: '上游说明:{message}',
|
|
17
|
+
seeLogs: '详情见日志',
|
|
18
|
+
levelOff: '关',
|
|
19
|
+
levelOn: '开',
|
|
20
|
+
levelMinimal: '最低',
|
|
21
|
+
levelLow: '低',
|
|
22
|
+
levelMedium: '中',
|
|
23
|
+
levelHigh: '高',
|
|
24
|
+
apiKeyDescription: 'OpenAI API 密钥(本地服务可留空)',
|
|
25
|
+
baseUrlLabel: 'API 地址',
|
|
26
|
+
baseUrlDescription: 'API 端点完整前缀(含版本段,如 https://api.openai.com/v1);插件只在其后拼 /chat/completions 与 /models。可替换为任何兼容服务(如 Gemini 的 https://generativelanguage.googleapis.com/v1beta/openai)。',
|
|
27
|
+
customModelsLabel: '自定义模型',
|
|
28
|
+
customModelsDescription: '手动添加的模型名称(每行一个或逗号分隔)。用于补充自动发现列表中未出现的模型。与自动发现重复时会提示去重。',
|
|
29
|
+
discoverModelsLabel: '自动发现模型',
|
|
30
|
+
discoverModelsDescription: '启动时请求 /models 发现可用模型,WebUI 可刷新模型列表。网关不提供 /models 时关闭:不发发现请求,只注册 customModels(此时必填),也不支持刷新。',
|
|
31
|
+
modelCapabilitiesLabel: '单模型能力覆盖',
|
|
32
|
+
modelCapabilitiesDescription: '按行指定某个模型的能力集。有该模型的表项时**覆盖**插件启发式推断,与 adapter 默认能力仍取并集。\n格式:`<modelId>: <cap1>,<cap2>,...`,每行一条。如:gpt-4o: chat,tool_calling,vision,streaming\n可用能力:chat / tool_calling / vision / streaming / thinking 等。',
|
|
33
|
+
providerCapabilitiesLabel: '适配器默认能力(逗号分隔)',
|
|
34
|
+
providerCapabilitiesDescription: '为本适配器下所有模型额外补充的能力。最终某模型的能力 = 此处能力 ∪ 模型级别能力。例:chat,tool_calling,streaming',
|
|
35
|
+
timeoutLabel: '停顿超时(秒)',
|
|
36
|
+
timeoutDescription: '多久收不到新的生成内容算超时(秒)。一直在输出不算超时;不流式的请求要在这段时间内收到整份回复。模型思考时不发出思考内容(如 OpenAI 官方的推理模型)或输入很长时,建议适当调大。0 = 不限制。',
|
|
37
|
+
temperatureLabel: '温度',
|
|
38
|
+
temperatureDescription: '0-2,越高越随机',
|
|
39
|
+
maxTokensLabel: '最大 Token',
|
|
40
|
+
maxTokensDescription: '单次回复最大生成 token 数,须为正整数,否则实例转为出错',
|
|
41
|
+
contextLengthLabel: '上下文长度',
|
|
42
|
+
contextLengthDescription: '模型上下文窗口大小',
|
|
43
|
+
thinkingParamLabel: '思考档位的写法',
|
|
44
|
+
thinkingParamEffort: 'reasoning_effort:档位按模型族(OpenAI 官方与多数兼容端点)',
|
|
45
|
+
thinkingParamThinking: 'thinking.type:关、开(DeepSeek 风格的端点或中转)',
|
|
46
|
+
thinkingParamDescription: '能思考的模型(内置表里的 o 系列与 gpt-5 系列,gpt-5-chat 除外,或单模型能力覆盖里写了 thinking 的)按这种写法提供深度思考的档位。请求指定了档位才发对应字段,没指定时不发、按端点自己的默认。端点不认所选字段时会拒收指定了档位的请求,这时换一种写法,或在单模型能力覆盖里去掉这个模型的 thinking。',
|
|
47
|
+
requestTimeout: 'LLM 请求超时:{seconds} 秒内没有收到新的生成内容,可在配置里调大 timeout',
|
|
48
|
+
pluginClosed: 'LLM 插件已停用或重载,这次请求没有发出',
|
|
49
|
+
unreachable: 'LLM 连不上服务:检查 baseUrl 与网络,详情见日志',
|
|
50
|
+
notJson: 'LLM 应答不是 JSON ({status});详情见日志',
|
|
51
|
+
discoveryNotJson: '响应不是 JSON: {excerpt}',
|
|
52
|
+
discoveryNotList: '响应不是模型列表(需要 data 数组,每项带字符串 id):{excerpt}',
|
|
53
|
+
discoveryFailed: '模型发现失败 {url}: {error}',
|
|
54
|
+
emptyChoices: 'LLM 返回了空的 choices',
|
|
55
|
+
emptyBody: 'LLM API 返回了空的响应体,无法进行流式读取',
|
|
56
|
+
apiKeyRequired: '使用 OpenAI 官方 API 时必填',
|
|
57
|
+
customModelsRequired: '关闭 discoverModels 时必填',
|
|
58
|
+
noModelsDiscoveryFailed: '取不到模型列表,没有可注册的模型:检查 apiKey、baseUrl 与网络后重载本插件,或在 customModels 里写明要用的模型。原因:{error}',
|
|
59
|
+
noModels: '已连接 {baseUrl},但未发现任何可用模型;可在 customModels 里写明要用的模型',
|
|
60
|
+
};
|
|
61
|
+
export const t = defineTexts({ ns: '@aalis/plugin-llm-openai', language: 'zh-CN', source: SOURCE, locales: { en } });
|
|
62
|
+
//# sourceMappingURL=texts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"texts.js","sourceRoot":"","sources":["../src/texts.ts"],"names":[],"mappings":"AAAA,mDAAmD;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAEjC,MAAM,MAAM,GAAG;IACb,cAAc,EAAE,uDAAuD;IACvE,YAAY,EAAE,2CAA2C;IACzD,kBAAkB,EAAE,4CAA4C;IAChE,SAAS,EAAE,oBAAoB;IAC/B,QAAQ,EAAE,WAAW;IACrB,WAAW,EAAE,WAAW;IACxB,YAAY,EAAE,SAAS;IACvB,aAAa,EAAE,WAAW;IAC1B,YAAY,EAAE,QAAQ;IACtB,QAAQ,EAAE,8BAA8B;IACxC,YAAY,EAAE,qCAAqC;IACnD,eAAe,EAAE,gBAAgB;IACjC,OAAO,EAAE,OAAO;IAChB,QAAQ,EAAE,GAAG;IACb,OAAO,EAAE,GAAG;IACZ,YAAY,EAAE,IAAI;IAClB,QAAQ,EAAE,GAAG;IACb,WAAW,EAAE,GAAG;IAChB,SAAS,EAAE,GAAG;IACd,iBAAiB,EAAE,wBAAwB;IAC3C,YAAY,EAAE,QAAQ;IACtB,kBAAkB,EAChB,kKAAkK;IACpK,iBAAiB,EAAE,OAAO;IAC1B,uBAAuB,EACrB,uDAAuD;IACzD,mBAAmB,EAAE,QAAQ;IAC7B,yBAAyB,EACvB,4FAA4F;IAC9F,sBAAsB,EAAE,SAAS;IACjC,4BAA4B,EAC1B,0MAA0M;IAC5M,yBAAyB,EAAE,eAAe;IAC1C,+BAA+B,EAC7B,0EAA0E;IAC5E,YAAY,EAAE,SAAS;IACvB,kBAAkB,EAChB,sGAAsG;IACxG,gBAAgB,EAAE,IAAI;IACtB,sBAAsB,EAAE,WAAW;IACnC,cAAc,EAAE,UAAU;IAC1B,oBAAoB,EAAE,iCAAiC;IACvD,kBAAkB,EAAE,OAAO;IAC3B,wBAAwB,EAAE,WAAW;IACrC,kBAAkB,EAAE,SAAS;IAC7B,mBAAmB,EAAE,2CAA2C;IAChE,qBAAqB,EAAE,sCAAsC;IAC7D,wBAAwB,EACtB,wKAAwK;IAC1K,cAAc,EAAE,iDAAiD;IACjE,YAAY,EAAE,uBAAuB;IACrC,WAAW,EAAE,gCAAgC;IAC7C,OAAO,EAAE,gCAAgC;IACzC,gBAAgB,EAAE,sBAAsB;IACxC,gBAAgB,EAAE,0CAA0C;IAC5D,eAAe,EAAE,uBAAuB;IACxC,YAAY,EAAE,mBAAmB;IACjC,SAAS,EAAE,2BAA2B;IACtC,cAAc,EAAE,sBAAsB;IACtC,oBAAoB,EAAE,uBAAuB;IAC7C,uBAAuB,EACrB,kFAAkF;IACpF,QAAQ,EAAE,mDAAmD;CACrD,CAAC;AAGX,MAAM,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,EAAE,EAAE,EAAE,0BAA0B,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aalis/plugin-llm-openai",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.16.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -24,19 +24,21 @@
|
|
|
24
24
|
"dist"
|
|
25
25
|
],
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@aalis/schema-config": ">=0.
|
|
28
|
-
"@aalis/api-llm": ">=0.
|
|
29
|
-
"@aalis/schema-
|
|
30
|
-
"@aalis/
|
|
27
|
+
"@aalis/schema-config": ">=0.16.0 <1.0.0",
|
|
28
|
+
"@aalis/api-llm": ">=0.15.0 <1.0.0",
|
|
29
|
+
"@aalis/schema-i18n": ">=0.1.0 <1.0.0",
|
|
30
|
+
"@aalis/schema-message": ">=0.11.0 <1.0.0",
|
|
31
|
+
"@aalis/util-text-normalize": ">=0.6.0 <1.0.0",
|
|
32
|
+
"undici": "^6.0.0"
|
|
31
33
|
},
|
|
32
34
|
"devDependencies": {
|
|
33
35
|
"@types/node": "^22.0.0",
|
|
34
36
|
"typescript": "^5.7.0",
|
|
35
|
-
"@aalis/core": "0.
|
|
36
|
-
"@aalis/api-tools": "0.
|
|
37
|
+
"@aalis/core": "0.21.0",
|
|
38
|
+
"@aalis/api-tools": "0.12.0"
|
|
37
39
|
},
|
|
38
40
|
"peerDependencies": {
|
|
39
|
-
"@aalis/core": ">=0.
|
|
41
|
+
"@aalis/core": ">=0.21.0 <1.0.0"
|
|
40
42
|
},
|
|
41
43
|
"aalis": {
|
|
42
44
|
"service": {
|