@aalis/plugin-llm-ollama 0.13.0 → 0.14.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 +157 -129
- package/dist/index.js.map +1 -1
- package/dist/locales/en.d.ts +56 -0
- package/dist/locales/en.d.ts.map +1 -0
- package/dist/locales/en.js +56 -0
- package/dist/locales/en.js.map +1 -0
- package/dist/texts.d.ts +111 -0
- package/dist/texts.d.ts.map +1 -0
- package/dist/texts.js +59 -0
- package/dist/texts.js.map +1 -0
- package/package.json +12 -10
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":"AAkBA,OAAO,EAAE,KAAK,cAAc,EAAkB,MAAM,oBAAoB,CAAC;AAEzE,OAAO,EAKL,KAAK,MAAM,EAKZ,MAAM,aAAa,CAAC;AA6FrB;;;GAGG;AACH,wBAAsB,cAAc,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAsB5F;;;;;;;;;AAslCD,wBASG"}
|
package/dist/index.js
CHANGED
|
@@ -1,10 +1,13 @@
|
|
|
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 { processService } from '@aalis/api-process';
|
|
3
3
|
import { config, definePlugin, events, lifecycle, logger, optional, provide, } from '@aalis/core';
|
|
4
4
|
import { configError, defineConfig, missingConfigError, parseConfig } from '@aalis/schema-config';
|
|
5
|
+
import { TextError, textClauses, textOf, toSource } from '@aalis/schema-i18n';
|
|
5
6
|
import { prepareLLMMessages, toLLMRole } from '@aalis/schema-message';
|
|
6
7
|
import { safeFetch } from '@aalis/util-network-guard';
|
|
7
8
|
import { truncateChars } from '@aalis/util-text-normalize';
|
|
9
|
+
import { Agent, errors } from 'undici';
|
|
10
|
+
import { t } from './texts.js';
|
|
8
11
|
// ===== 插件元数据 =====
|
|
9
12
|
/** 远程图片/音频下载硬上限(附件缓存默认 10MiB 且可配;此处是缓存失败回退直下时的兜底硬顶)。 */
|
|
10
13
|
const MAX_REMOTE_BINARY_BYTES = 20 * 1024 * 1024;
|
|
@@ -15,51 +18,45 @@ function bodyExcerpt(body) {
|
|
|
15
18
|
return truncateChars(body.replace(/\s+/g, ' ').trim(), ERROR_BODY_MAX_CHARS, '…');
|
|
16
19
|
}
|
|
17
20
|
/**
|
|
18
|
-
* 读配置时校验 baseUrl
|
|
19
|
-
*
|
|
21
|
+
* 读配置时校验 baseUrl,解析不了的、带查询串或片段的与带用户名或密码的抛配置错误。插件在 baseUrl 后面拼路径,带查询串或
|
|
22
|
+
* 片段时路径落进查询串或片段,请求地址是坏的;末尾只有一个 ? 时解析后查询串为空,拼出来照样是坏的,所以按原文判。带凭据
|
|
23
|
+
* 的 URL fetch 拒发,凭据还会随报错与条目名称(WebUI 的模型下拉)显示出来;解析不了的无从判断有没有凭据,请求同样发不
|
|
24
|
+
* 出去。消息不带 URL
|
|
20
25
|
*/
|
|
21
26
|
function checkBaseUrl(baseUrl) {
|
|
22
27
|
if (!URL.canParse(baseUrl)) {
|
|
23
|
-
throw configError('
|
|
28
|
+
throw configError(t('baseUrlInvalid'));
|
|
29
|
+
}
|
|
30
|
+
if (/[?#]/.test(baseUrl)) {
|
|
31
|
+
throw configError(t('baseUrlQuery'));
|
|
24
32
|
}
|
|
25
33
|
const { username, password } = new URL(baseUrl);
|
|
26
34
|
if (username || password) {
|
|
27
|
-
throw configError('
|
|
35
|
+
throw configError(t('baseUrlCredentials'));
|
|
28
36
|
}
|
|
29
37
|
}
|
|
30
38
|
/**
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
*/
|
|
34
|
-
function redactUrl(url) {
|
|
35
|
-
const parsed = new URL(url);
|
|
36
|
-
if (!parsed.search)
|
|
37
|
-
return url;
|
|
38
|
-
parsed.search = '';
|
|
39
|
-
return parsed.href;
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* 错误消息连同底层原因,写成一行。fetch 网络失败的消息固定是「fetch failed」,真实原因(DNS、拒绝连接、TLS)在
|
|
43
|
-
* cause 上;连 localhost 时两个地址族都失败,cause 是消息为空的 AggregateError,原因在它的子错误上
|
|
39
|
+
* 错误连同底层原因,写成一行(日志取 toSource)。fetch 网络失败的消息固定是「fetch failed」,真实原因(DNS、拒绝连接、TLS)
|
|
40
|
+
* 在 cause 上;连 localhost 时两个地址族都失败,cause 是消息为空的 AggregateError,原因在它的子错误上
|
|
44
41
|
*/
|
|
45
42
|
function describeError(err) {
|
|
46
43
|
const cause = err instanceof Error ? err.cause : undefined;
|
|
47
44
|
const reasons = cause instanceof AggregateError ? cause.errors : cause instanceof Error ? [cause] : [];
|
|
48
45
|
const detail = reasons.map(e => (e instanceof Error ? e.message : String(e))).join('; ');
|
|
49
|
-
return
|
|
46
|
+
return detail ? t('withCause', { error: textOf(err), detail }) : textOf(err);
|
|
50
47
|
}
|
|
51
48
|
/** 常见状态码的一句提示 */
|
|
52
49
|
function statusHint(status) {
|
|
53
50
|
if (status === 401 || status === 403)
|
|
54
|
-
return '
|
|
51
|
+
return t('hintAuth');
|
|
55
52
|
if (status === 402)
|
|
56
|
-
return '
|
|
53
|
+
return t('hintPayment');
|
|
57
54
|
if (status === 404)
|
|
58
|
-
return '
|
|
55
|
+
return t('hintNotFound');
|
|
59
56
|
if (status === 429)
|
|
60
|
-
return '
|
|
57
|
+
return t('hintRateLimit');
|
|
61
58
|
if (status >= 500)
|
|
62
|
-
return '
|
|
59
|
+
return t('hintUpstream');
|
|
63
60
|
return undefined;
|
|
64
61
|
}
|
|
65
62
|
/**
|
|
@@ -85,7 +82,10 @@ function upstreamMessage(body) {
|
|
|
85
82
|
function httpErrorMessage(provider, status, body) {
|
|
86
83
|
const hint = statusHint(status);
|
|
87
84
|
const message = upstreamMessage(body);
|
|
88
|
-
return
|
|
85
|
+
return textClauses([
|
|
86
|
+
hint ? t('apiErrorHint', { provider, status, hint }) : t('apiError', { provider, status }),
|
|
87
|
+
message ? t('upstreamMessage', { message }) : t('seeLogs'),
|
|
88
|
+
]);
|
|
89
89
|
}
|
|
90
90
|
/**
|
|
91
91
|
* 流式读取响应体并限额:Content-Length 头超限即拒;流式累计超限即断,返回 null。
|
|
@@ -119,68 +119,75 @@ export async function readBodyCapped(res, maxBytes) {
|
|
|
119
119
|
}
|
|
120
120
|
/** 报告了思考能力的模型允许的档位:开关型,翻成 think 开关 */
|
|
121
121
|
const THINKING_LEVELS = [
|
|
122
|
-
{ id: 'off', label: '
|
|
123
|
-
{ id: 'on', label: '
|
|
122
|
+
{ id: 'off', label: t('levelOff') },
|
|
123
|
+
{ id: 'on', label: t('levelOn') },
|
|
124
124
|
];
|
|
125
125
|
const configSchema = defineConfig({
|
|
126
126
|
baseUrl: {
|
|
127
127
|
type: 'string',
|
|
128
|
-
label: '
|
|
128
|
+
label: t('baseUrlLabel'),
|
|
129
129
|
default: 'http://localhost:11434',
|
|
130
130
|
onInvalid: 'error',
|
|
131
|
-
description: '
|
|
131
|
+
description: t('baseUrlDescription'),
|
|
132
132
|
},
|
|
133
133
|
customModels: {
|
|
134
134
|
type: 'textarea',
|
|
135
|
-
label: '
|
|
135
|
+
label: t('customModelsLabel'),
|
|
136
136
|
default: '',
|
|
137
|
-
description: '
|
|
137
|
+
description: t('customModelsDescription'),
|
|
138
138
|
},
|
|
139
139
|
discoverModels: {
|
|
140
140
|
type: 'boolean',
|
|
141
|
-
label: '
|
|
141
|
+
label: t('discoverModelsLabel'),
|
|
142
142
|
default: true,
|
|
143
|
-
description: '
|
|
143
|
+
description: t('discoverModelsDescription'),
|
|
144
144
|
},
|
|
145
145
|
modelCapabilities: {
|
|
146
146
|
type: 'textarea',
|
|
147
|
-
label: '
|
|
147
|
+
label: t('modelCapabilitiesLabel'),
|
|
148
148
|
default: '',
|
|
149
|
-
description: '
|
|
149
|
+
description: t('modelCapabilitiesDescription'),
|
|
150
150
|
},
|
|
151
151
|
providerCapabilities: {
|
|
152
152
|
type: 'string',
|
|
153
|
-
label: '
|
|
153
|
+
label: t('providerCapabilitiesLabel'),
|
|
154
154
|
default: '',
|
|
155
|
-
description: '
|
|
155
|
+
description: t('providerCapabilitiesDescription'),
|
|
156
156
|
},
|
|
157
157
|
timeout: {
|
|
158
158
|
type: 'number',
|
|
159
|
-
label: '
|
|
159
|
+
label: t('timeoutLabel'),
|
|
160
160
|
default: 120,
|
|
161
|
-
description: '
|
|
161
|
+
description: t('timeoutDescription'),
|
|
162
162
|
},
|
|
163
|
-
temperature: { type: 'number', label: '
|
|
163
|
+
temperature: { type: 'number', label: t('temperatureLabel'), default: 0.7, description: t('temperatureDescription') },
|
|
164
164
|
maxTokens: {
|
|
165
165
|
type: 'number',
|
|
166
|
-
label: '
|
|
166
|
+
label: t('maxTokensLabel'),
|
|
167
167
|
default: 4096,
|
|
168
|
-
|
|
168
|
+
min: 1,
|
|
169
|
+
integer: true,
|
|
170
|
+
onInvalid: 'error',
|
|
171
|
+
description: t('maxTokensDescription'),
|
|
172
|
+
},
|
|
173
|
+
contextLength: {
|
|
174
|
+
type: 'number',
|
|
175
|
+
label: t('contextLengthLabel'),
|
|
176
|
+
default: 8192,
|
|
177
|
+
description: t('contextLengthDescription'),
|
|
169
178
|
},
|
|
170
|
-
contextLength: { type: 'number', label: '上下文长度', default: 8192, description: '模型上下文窗口大小(num_ctx)' },
|
|
171
179
|
keepAlive: {
|
|
172
180
|
type: 'string',
|
|
173
|
-
label: '
|
|
181
|
+
label: t('keepAliveLabel'),
|
|
174
182
|
default: '5m',
|
|
175
|
-
description: '
|
|
183
|
+
description: t('keepAliveDescription'),
|
|
176
184
|
},
|
|
177
185
|
thinking: {
|
|
178
186
|
type: 'select',
|
|
179
|
-
label: '
|
|
187
|
+
label: t('thinkingLabel'),
|
|
180
188
|
default: 'on',
|
|
181
189
|
options: THINKING_LEVELS.map(level => ({ label: level.label, value: level.id })),
|
|
182
|
-
description: '
|
|
183
|
-
'没有思考能力的模型不发 think 参数。',
|
|
190
|
+
description: t('thinkingDescription'),
|
|
184
191
|
},
|
|
185
192
|
});
|
|
186
193
|
/**
|
|
@@ -253,10 +260,15 @@ class OllamaClient {
|
|
|
253
260
|
keepAlive;
|
|
254
261
|
logger;
|
|
255
262
|
proc;
|
|
263
|
+
/**
|
|
264
|
+
* 生成请求的连接池:不设等响应头与读响应体的时限(默认各 300 秒),timeout 是唯一的时限。dispatcher 是 Node 自带 fetch
|
|
265
|
+
* 认的扩展字段,DOM 的 RequestInit 里没有(测试的类型检查带 DOM),带它的选项按 RequestInit 断言
|
|
266
|
+
*/
|
|
267
|
+
dispatcher = new Agent({ headersTimeout: 0, bodyTimeout: 0 });
|
|
256
268
|
constructor(config, logger, proc) {
|
|
257
269
|
this.baseUrl = config.baseUrl.replace(/\/$/, '');
|
|
258
|
-
// schema 中 timeout 单位为「秒」,存储为毫秒;0
|
|
259
|
-
this.timeout =
|
|
270
|
+
// schema 中 timeout 单位为「秒」,存储为毫秒;0 或负数不限,超过定时器上限按上限计,报错里的秒数是生效的值(见 idleTimeout)
|
|
271
|
+
this.timeout = Math.min(config.timeout * 1000, IDLE_TIMEOUT_MAX_MS);
|
|
260
272
|
this.temperature = config.temperature;
|
|
261
273
|
this.maxTokens = config.maxTokens;
|
|
262
274
|
this.contextLength = config.contextLength;
|
|
@@ -264,24 +276,31 @@ class OllamaClient {
|
|
|
264
276
|
this.logger = logger;
|
|
265
277
|
this.proc = proc;
|
|
266
278
|
}
|
|
279
|
+
/** 停用时关掉生成请求的连接池,之后的请求被拒(报插件已停用或重载)。不等在飞的请求读完:它们是调用方的,等它们会让重载卡到回复写完 */
|
|
280
|
+
close() {
|
|
281
|
+
void this.dispatcher.close();
|
|
282
|
+
}
|
|
267
283
|
/** 对话请求的非 2xx 应答:截断后的响应体记 warn,抛出的错误见 httpErrorMessage */
|
|
268
284
|
apiError(status, body) {
|
|
269
285
|
this.logger.warn(`Ollama API 错误 (${status}): ${bodyExcerpt(body)}`);
|
|
270
|
-
return new
|
|
286
|
+
return new TextError(httpErrorMessage('Ollama', status, body));
|
|
271
287
|
}
|
|
272
288
|
/**
|
|
273
|
-
* 对话请求没拿到完整应答(fetch 或读响应体时抛出):原始错误连同原因记 warn
|
|
274
|
-
*
|
|
289
|
+
* 对话请求没拿到完整应答(fetch 或读响应体时抛出):原始错误连同原因记 warn,超时、连不上与连接池已关闭(插件停用或重载)
|
|
290
|
+
* 各换成一句说明,其它错误原样返回。调用方经 request.signal 中止时原样返回、不记日志,agent 按中止收尾
|
|
275
291
|
*/
|
|
276
292
|
requestError(err, request, startedAt) {
|
|
277
293
|
if (request.signal?.aborted)
|
|
278
294
|
return err;
|
|
279
|
-
this.logger.warn(`Ollama 请求失败 (耗时 ${Date.now() - startedAt}ms): ${describeError(err)}`);
|
|
295
|
+
this.logger.warn(`Ollama 请求失败 (耗时 ${Date.now() - startedAt}ms): ${toSource(describeError(err))}`);
|
|
280
296
|
if (err instanceof DOMException && err.name === 'TimeoutError') {
|
|
281
|
-
return new
|
|
297
|
+
return new TextError(t('requestTimeout', { seconds: this.timeout / 1000 }));
|
|
282
298
|
}
|
|
283
299
|
if (err instanceof TypeError && err.message === 'fetch failed') {
|
|
284
|
-
|
|
300
|
+
if (err.cause instanceof errors.ClientClosedError || err.cause instanceof errors.ClientDestroyedError) {
|
|
301
|
+
return new TextError(t('pluginClosed'));
|
|
302
|
+
}
|
|
303
|
+
return new TextError(t('unreachable'));
|
|
285
304
|
}
|
|
286
305
|
return err;
|
|
287
306
|
}
|
|
@@ -292,7 +311,7 @@ class OllamaClient {
|
|
|
292
311
|
}
|
|
293
312
|
catch {
|
|
294
313
|
this.logger.warn(`Ollama 应答不是 JSON (${status}): ${bodyExcerpt(text)}`);
|
|
295
|
-
throw new
|
|
314
|
+
throw new TextError(t('notJson', { status }));
|
|
296
315
|
}
|
|
297
316
|
}
|
|
298
317
|
/**
|
|
@@ -319,17 +338,17 @@ class OllamaClient {
|
|
|
319
338
|
data = JSON.parse(text);
|
|
320
339
|
}
|
|
321
340
|
catch {
|
|
322
|
-
throw new
|
|
341
|
+
throw new TextError(t('discoveryNotJson', { excerpt: bodyExcerpt(text) }));
|
|
323
342
|
}
|
|
324
343
|
const list = data?.models;
|
|
325
344
|
if (!Array.isArray(list) || !list.every(m => typeof m?.name === 'string')) {
|
|
326
|
-
throw new
|
|
345
|
+
throw new TextError(t('discoveryNotList', { excerpt: bodyExcerpt(JSON.stringify(data)) }));
|
|
327
346
|
}
|
|
328
347
|
return list.map(m => m.name);
|
|
329
348
|
}
|
|
330
349
|
catch (err) {
|
|
331
350
|
signal?.throwIfAborted();
|
|
332
|
-
throw new
|
|
351
|
+
throw new TextError(t('discoveryFailed', { url, error: describeError(err) }), { cause: err });
|
|
333
352
|
}
|
|
334
353
|
}
|
|
335
354
|
/**
|
|
@@ -388,9 +407,6 @@ class OllamaClient {
|
|
|
388
407
|
}
|
|
389
408
|
const { body, messages, tools } = await this.buildRequestBody(model, request, level, false);
|
|
390
409
|
this.logger.debug(`请求 Ollama${level ? ` (思考 ${level})` : ''}: ${body.model}, ${messages.length} 条消息, ${tools?.length ?? 0} 个工具`);
|
|
391
|
-
const signals = [AbortSignal.timeout(this.timeout)];
|
|
392
|
-
if (request.signal)
|
|
393
|
-
signals.push(request.signal);
|
|
394
410
|
const startedAt = Date.now();
|
|
395
411
|
let response;
|
|
396
412
|
let text;
|
|
@@ -399,7 +415,8 @@ class OllamaClient {
|
|
|
399
415
|
method: 'POST',
|
|
400
416
|
headers: { 'Content-Type': 'application/json' },
|
|
401
417
|
body: JSON.stringify(body),
|
|
402
|
-
signal:
|
|
418
|
+
signal: idleTimeout(this.timeout, request.signal).signal,
|
|
419
|
+
dispatcher: this.dispatcher,
|
|
403
420
|
});
|
|
404
421
|
text = await response.text();
|
|
405
422
|
}
|
|
@@ -409,14 +426,15 @@ class OllamaClient {
|
|
|
409
426
|
if (!response.ok)
|
|
410
427
|
throw this.apiError(response.status, text);
|
|
411
428
|
const data = this.parseJsonBody(response.status, text);
|
|
412
|
-
//
|
|
429
|
+
// 发了 think 时思考由 Ollama 管、走原生 thinking 字段,正文照原样;没发时才把正文里 <think> 标签之间的内容当思考
|
|
413
430
|
const nativeThinking = data.message.thinking || '';
|
|
414
431
|
const rawContent = data.message.content || '';
|
|
415
|
-
const { reasoning: tagReasoning, content: cleanContent } = extractThinkTags(rawContent);
|
|
432
|
+
const { reasoning: tagReasoning, content: cleanContent } = level === undefined ? extractThinkTags(rawContent) : { reasoning: '', content: rawContent };
|
|
416
433
|
const allReasoning = [nativeThinking, tagReasoning].filter(Boolean).join('');
|
|
417
434
|
const result = {
|
|
418
435
|
content: cleanContent || null,
|
|
419
436
|
reasoningContent: allReasoning || null,
|
|
437
|
+
finishReason: finishReasonOf(data.done_reason),
|
|
420
438
|
};
|
|
421
439
|
const toolCalls = finalizeToolCalls(data.message.tool_calls);
|
|
422
440
|
if (toolCalls)
|
|
@@ -441,14 +459,25 @@ class OllamaClient {
|
|
|
441
459
|
reasoningDelta: r.reasoningContent ?? '',
|
|
442
460
|
usage: r.usage,
|
|
443
461
|
done: true,
|
|
462
|
+
finishReason: r.finishReason,
|
|
444
463
|
};
|
|
445
464
|
return;
|
|
446
465
|
}
|
|
447
466
|
const { body, messages } = await this.buildRequestBody(model, request, level, true);
|
|
448
467
|
this.logger.debug(`流式请求 Ollama${level ? ` (思考 ${level})` : ''}: ${body.model}, ${messages.length} 条消息`);
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
468
|
+
// 交出一段期间不计时:调用方处理一段的时间不算停顿
|
|
469
|
+
const timer = idleTimeout(this.timeout, request.signal);
|
|
470
|
+
for await (const chunk of this.readStream(body, request, timer, level === undefined)) {
|
|
471
|
+
timer.pause();
|
|
472
|
+
yield chunk;
|
|
473
|
+
timer.resume();
|
|
474
|
+
}
|
|
475
|
+
}
|
|
476
|
+
/**
|
|
477
|
+
* 发出流式请求并逐段解析,timer 管这次请求的停顿超时。parseThinkTags 为真(这次没发 think)时把正文里 <think> 标签之间的
|
|
478
|
+
* 内容当思考交出,为假时正文照原样交出
|
|
479
|
+
*/
|
|
480
|
+
async *readStream(body, request, timer, parseThinkTags) {
|
|
452
481
|
const reqStart = Date.now();
|
|
453
482
|
const slowConnectTimer = setTimeout(() => {
|
|
454
483
|
this.logger.warn(`Ollama 连接慢:已等待 15s 仍未收到响应头 (url=${this.baseUrl}/api/chat)`);
|
|
@@ -459,7 +488,8 @@ class OllamaClient {
|
|
|
459
488
|
method: 'POST',
|
|
460
489
|
headers: { 'Content-Type': 'application/json' },
|
|
461
490
|
body: JSON.stringify(body),
|
|
462
|
-
signal:
|
|
491
|
+
signal: timer.signal,
|
|
492
|
+
dispatcher: this.dispatcher,
|
|
463
493
|
});
|
|
464
494
|
}
|
|
465
495
|
catch (err) {
|
|
@@ -475,7 +505,7 @@ class OllamaClient {
|
|
|
475
505
|
throw this.apiError(response.status, errorText);
|
|
476
506
|
}
|
|
477
507
|
if (!response.body) {
|
|
478
|
-
throw new
|
|
508
|
+
throw new TextError(t('emptyBody'));
|
|
479
509
|
}
|
|
480
510
|
const reader = response.body.getReader();
|
|
481
511
|
const decoder = new TextDecoder();
|
|
@@ -510,6 +540,9 @@ class OllamaClient {
|
|
|
510
540
|
continue;
|
|
511
541
|
try {
|
|
512
542
|
const data = JSON.parse(trimmed);
|
|
543
|
+
// 带生成内容的帧重新计时:正文(含按标签解析出的思考)、原生思考、工具调用
|
|
544
|
+
if (data.message?.content || data.message?.thinking || data.message?.tool_calls?.length)
|
|
545
|
+
timer.touch();
|
|
513
546
|
// 累积工具调用
|
|
514
547
|
if (data.message?.tool_calls) {
|
|
515
548
|
toolCallBuffers.push(...data.message.tool_calls);
|
|
@@ -536,7 +569,7 @@ class OllamaClient {
|
|
|
536
569
|
tagBuffer = '';
|
|
537
570
|
}
|
|
538
571
|
// 最后一个 chunk
|
|
539
|
-
const chunk = { done: true };
|
|
572
|
+
const chunk = { done: true, finishReason: finishReasonOf(data.done_reason) };
|
|
540
573
|
const toolCalls = finalizeToolCalls(toolCallBuffers);
|
|
541
574
|
if (toolCalls)
|
|
542
575
|
chunk.toolCalls = toolCalls;
|
|
@@ -552,11 +585,15 @@ class OllamaClient {
|
|
|
552
585
|
yield chunk;
|
|
553
586
|
return;
|
|
554
587
|
}
|
|
555
|
-
// 原生 thinking 字段(Ollama think API
|
|
588
|
+
// 原生 thinking 字段(Ollama think API)
|
|
556
589
|
if (data.message?.thinking) {
|
|
557
590
|
yield { reasoningDelta: data.message.thinking };
|
|
558
591
|
}
|
|
559
|
-
|
|
592
|
+
// 发了 think:思考由 Ollama 管,正文照原样交出
|
|
593
|
+
if (data.message?.content && !parseThinkTags) {
|
|
594
|
+
yield { contentDelta: data.message.content };
|
|
595
|
+
}
|
|
596
|
+
else if (data.message?.content) {
|
|
560
597
|
// 解析 <think> / </think> 标签,将内部内容路由为 reasoningDelta
|
|
561
598
|
let text = tagBuffer + data.message.content;
|
|
562
599
|
tagBuffer = '';
|
|
@@ -630,7 +667,7 @@ class OllamaClient {
|
|
|
630
667
|
clearTimeout(streamStallTimer);
|
|
631
668
|
// cancel 而非仅 releaseLock:中止/提前退出时要主动关闭响应体。releaseLock 只是放锁,
|
|
632
669
|
// 底层流仍开着——被打断的生成会让 undici 挂着半读的响应与套接字,直到请求超时兜底
|
|
633
|
-
//
|
|
670
|
+
// 才释放(本地慢生成时回合常被停下,这类残留一挂就是整个超时窗)。
|
|
634
671
|
// cancel 自带放锁。三条退出路径的语义:读尽 EOF(done:true)→ 流已 closed,cancel 是
|
|
635
672
|
// 真 no-op;收到终帧即 return(未读到 EOF)与消费方提前 break → cancel 中止残余响应体,
|
|
636
673
|
// 这正是本修复要的「立即交还套接字」,代价是该连接不回 keep-alive 池。
|
|
@@ -707,7 +744,7 @@ class OllamaClient {
|
|
|
707
744
|
if (valid.length === images.length)
|
|
708
745
|
return valid;
|
|
709
746
|
if (valid.length === 0 && requireImages) {
|
|
710
|
-
throw new
|
|
747
|
+
throw new TextError(t('imagesUnavailable', { count: images.length }));
|
|
711
748
|
}
|
|
712
749
|
this.logger.warn(`图片获取失败 ${images.length - valid.length}/${images.length} 张,按剩余的继续`);
|
|
713
750
|
return valid;
|
|
@@ -814,9 +851,6 @@ class OllamaClient {
|
|
|
814
851
|
if (audioCount > 0) {
|
|
815
852
|
this.logger.info(`[ollama-audio] 发送 ${audioCount} 段音频,合计 ${(totalAudioBytes / 1024).toFixed(1)}KB`);
|
|
816
853
|
}
|
|
817
|
-
const signals = [AbortSignal.timeout(this.timeout)];
|
|
818
|
-
if (request.signal)
|
|
819
|
-
signals.push(request.signal);
|
|
820
854
|
const httpT0 = Date.now();
|
|
821
855
|
let resp;
|
|
822
856
|
let respText;
|
|
@@ -825,7 +859,8 @@ class OllamaClient {
|
|
|
825
859
|
method: 'POST',
|
|
826
860
|
headers: { 'Content-Type': 'application/json' },
|
|
827
861
|
body: JSON.stringify(body),
|
|
828
|
-
signal:
|
|
862
|
+
signal: idleTimeout(this.timeout, request.signal).signal,
|
|
863
|
+
dispatcher: this.dispatcher,
|
|
829
864
|
});
|
|
830
865
|
respText = await resp.text();
|
|
831
866
|
}
|
|
@@ -834,30 +869,25 @@ class OllamaClient {
|
|
|
834
869
|
}
|
|
835
870
|
if (!resp.ok) {
|
|
836
871
|
this.logger.warn(`[ollama-audio] HTTP ${resp.status} 失败 ${Date.now() - httpT0}ms: ${bodyExcerpt(respText)}`);
|
|
837
|
-
|
|
838
|
-
// 诊断提示:ollama runner 把 input_audio 当 image 解码失败时报 "image: unknown format",
|
|
839
|
-
// 99% 是模型本身不支持 audio modality(如 Nemotron-3 是纯文本/纯推理,
|
|
840
|
-
// 多模态版 Nemotron-Nano-VL 也只有 vision)。提示用户换 gemma3n / qwen2.5-omni
|
|
841
|
-
// 等明确支持 audio 的多模态模型。
|
|
842
|
-
const lowerErr = respText.toLowerCase();
|
|
843
|
-
if (lowerErr.includes('image: unknown format') || lowerErr.includes('unknown format')) {
|
|
844
|
-
throw new Error(`${message}\n` +
|
|
845
|
-
`[诊断] 模型 "${model}" 很可能不支持 audio modality(ollama runner 把 input_audio 当 image 解码失败)。` +
|
|
846
|
-
`请改用明确支持音频的模型(如 gemma3n、qwen2.5-omni)。`);
|
|
847
|
-
}
|
|
848
|
-
throw new Error(message);
|
|
872
|
+
throw new TextError(httpErrorMessage('Ollama', resp.status, respText));
|
|
849
873
|
}
|
|
850
874
|
const data = this.parseJsonBody(resp.status, respText);
|
|
851
875
|
const rawContent = data.choices?.[0]?.message?.content ?? '';
|
|
852
|
-
const finishReason = data.choices?.[0]?.finish_reason
|
|
853
|
-
|
|
876
|
+
const finishReason = data.choices?.[0]?.finish_reason;
|
|
877
|
+
// 与 /api/chat 同一条规则:这次没管思考(level 为 undefined)时才把正文里 <think> 标签之间的内容当思考
|
|
878
|
+
const { reasoning, content } = level === undefined ? extractThinkTags(rawContent) : { reasoning: '', content: rawContent };
|
|
879
|
+
const text = content.trim();
|
|
854
880
|
if (audioCount > 0) {
|
|
855
|
-
this.logger.info(`[ollama-audio] ${model} HTTP ${Date.now() - httpT0}ms, finish=${finishReason}, ` +
|
|
881
|
+
this.logger.info(`[ollama-audio] ${model} HTTP ${Date.now() - httpT0}ms, finish=${finishReason ?? '?'}, ` +
|
|
856
882
|
`raw=${rawContent.length}字 trim=${text.length}字, ` +
|
|
857
883
|
`tokens prompt=${data.usage?.prompt_tokens ?? '?'} completion=${data.usage?.completion_tokens ?? '?'}` +
|
|
858
884
|
(rawContent.length > 0 ? `, 原文="${rawContent.replace(/\n/g, ' ')}"` : ' [模型返回空字符串]'));
|
|
859
885
|
}
|
|
860
|
-
const result = {
|
|
886
|
+
const result = {
|
|
887
|
+
content: text || null,
|
|
888
|
+
reasoningContent: reasoning || null,
|
|
889
|
+
finishReason: finishReasonOf(finishReason),
|
|
890
|
+
};
|
|
861
891
|
if (data.usage) {
|
|
862
892
|
result.usage = {
|
|
863
893
|
promptTokens: data.usage.prompt_tokens ?? 0,
|
|
@@ -868,32 +898,30 @@ class OllamaClient {
|
|
|
868
898
|
return result;
|
|
869
899
|
}
|
|
870
900
|
}
|
|
871
|
-
/** 去掉 base64 音频的 data: 前缀,返回纯 payload。 */
|
|
872
|
-
function stripAudioDataPrefix(s) {
|
|
873
|
-
const m = s.match(/^data:[^;]+;base64,(.+)$/);
|
|
874
|
-
return m ? m[1] : s;
|
|
875
|
-
}
|
|
876
901
|
/**
|
|
877
|
-
*
|
|
878
|
-
*
|
|
879
|
-
*
|
|
902
|
+
* data URL 的音频类型(audio/ 之后的部分)→ OpenAI 兼容接口 input_audio 的 format。只收 wav 与 mp3:Ollama 的兼容接口不看
|
|
903
|
+
* format、只把 data 按 base64 解码(ollama 仓的 openai/openai.go),之后按文件头认音频,只认 wav 与 mp3(llm/media.go 的
|
|
904
|
+
* AudioFormat;mlxrunner/model/audio/audio.go 的 Decode 只认 wav)
|
|
905
|
+
*/
|
|
906
|
+
const AUDIO_FORMATS = new Map([
|
|
907
|
+
['mpeg', 'mp3'],
|
|
908
|
+
['mp3', 'mp3'],
|
|
909
|
+
['wav', 'wav'],
|
|
910
|
+
['x-wav', 'wav'],
|
|
911
|
+
['wave', 'wav'],
|
|
912
|
+
]);
|
|
913
|
+
/**
|
|
914
|
+
* 把 `data:audio/<类型>[;参数];base64,…` 解析为 OpenAI input_audio 需要的 `{ data, format }`。format 只按写明的类型映射;
|
|
915
|
+
* 认不出的类型与不是 data URL 的(本地路径、链接、裸 base64)在发请求前报错:猜成 wav 时上游只回一句解码失败,看不出是格式的事
|
|
880
916
|
*/
|
|
881
917
|
function decodeAudioForOpenAI(payload) {
|
|
882
|
-
const m = payload.match(/^data:audio\/([
|
|
883
|
-
if (m)
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
: fmt === 'ogg' || fmt === 'oga' || fmt === 'opus'
|
|
890
|
-
? 'ogg'
|
|
891
|
-
: fmt === 'm4a' || fmt === 'mp4' || fmt === 'aac'
|
|
892
|
-
? 'm4a'
|
|
893
|
-
: 'wav';
|
|
894
|
-
return { data: m[2], format: norm };
|
|
895
|
-
}
|
|
896
|
-
return { data: stripAudioDataPrefix(payload), format: 'wav' };
|
|
918
|
+
const m = payload.match(/^data:audio\/([^;,]+)(?:;[^;,]+)*;base64,(.+)$/);
|
|
919
|
+
if (!m)
|
|
920
|
+
throw new TextError(t('audioDataUrlOnly'));
|
|
921
|
+
const format = AUDIO_FORMATS.get(m[1].toLowerCase());
|
|
922
|
+
if (!format)
|
|
923
|
+
throw new TextError(t('audioFormatUnsupported', { format: m[1] }));
|
|
924
|
+
return { data: m[2], format };
|
|
897
925
|
}
|
|
898
926
|
function safeParseJSON(str) {
|
|
899
927
|
try {
|
|
@@ -1106,11 +1134,11 @@ async function start({ config, logger, lifecycle, provide, events, proc }) {
|
|
|
1106
1134
|
const providerCapabilities = parseProviderCapabilities(cfg.providerCapabilities);
|
|
1107
1135
|
checkBaseUrl(cfg.baseUrl);
|
|
1108
1136
|
if (!cfg.discoverModels && customModels.length === 0) {
|
|
1109
|
-
throw missingConfigError('customModels', '
|
|
1137
|
+
throw missingConfigError('customModels', t('customModelsRequired'));
|
|
1110
1138
|
}
|
|
1111
1139
|
const client = new OllamaClient(cfg, logger.use, proc.use);
|
|
1140
|
+
lifecycle.use.onDispose(() => client.close(), '关闭生成请求的连接池');
|
|
1112
1141
|
const baseLabel = `Ollama (${cfg.baseUrl.replace(/^https?:\/\//, '')})`;
|
|
1113
|
-
const shownBaseUrl = redactUrl(cfg.baseUrl);
|
|
1114
1142
|
// 已注册 model entry 的句柄表:modelId → 该 entry 的退订
|
|
1115
1143
|
const registered = new Map();
|
|
1116
1144
|
// 同 provider 下所有 OllamaModelHandle 共享同一份 refresh。关闭模型发现时不提供:没有可重新发现的列表
|
|
@@ -1160,7 +1188,7 @@ async function start({ config, logger, lifecycle, provide, events, proc }) {
|
|
|
1160
1188
|
let discoveryError;
|
|
1161
1189
|
const remoteIds = cfg.discoverModels
|
|
1162
1190
|
? await client.fetchRemoteModelIds(lifecycle.use.signal).catch((err) => {
|
|
1163
|
-
discoveryError =
|
|
1191
|
+
discoveryError = textOf(err);
|
|
1164
1192
|
return [];
|
|
1165
1193
|
})
|
|
1166
1194
|
: [];
|
|
@@ -1170,11 +1198,11 @@ async function start({ config, logger, lifecycle, provide, events, proc }) {
|
|
|
1170
1198
|
// 提示写在原因之前:原因里可能带着一段响应体
|
|
1171
1199
|
if (initialIds.length === 0) {
|
|
1172
1200
|
throw configError(discoveryError
|
|
1173
|
-
?
|
|
1174
|
-
:
|
|
1201
|
+
? t('noModelsDiscoveryFailed', { error: discoveryError })
|
|
1202
|
+
: t('noModels', { baseUrl: cfg.baseUrl }));
|
|
1175
1203
|
}
|
|
1176
1204
|
if (discoveryError)
|
|
1177
|
-
logger.use.warn(`启动时只注册 customModels 里的模型;${discoveryError}`);
|
|
1205
|
+
logger.use.warn(`启动时只注册 customModels 里的模型;${toSource(discoveryError)}`);
|
|
1178
1206
|
// 并行查每个模型的真实能力(顺序保留→注册顺序稳定→优先级稳定);失败者回退家族表。
|
|
1179
1207
|
const detectedCaps = await Promise.all(initialIds.map(id => client.fetchModelCapabilities(id, lifecycle.use.signal)));
|
|
1180
1208
|
lifecycle.use.signal.throwIfAborted();
|
|
@@ -1182,13 +1210,13 @@ async function start({ config, logger, lifecycle, provide, events, proc }) {
|
|
|
1182
1210
|
registerOne(initialIds[i], detectedCaps[i]);
|
|
1183
1211
|
// 模型都被当作非对话模型跳过(如只装了嵌入模型)时同样抛配置错误。只有 /api/show 答复过才会跳过,所以是已连接
|
|
1184
1212
|
if (registered.size === 0) {
|
|
1185
|
-
throw configError(
|
|
1213
|
+
throw configError(t('noChatModels', { baseUrl: cfg.baseUrl, models: initialIds.join(', ') }));
|
|
1186
1214
|
}
|
|
1187
1215
|
logger.use.info(!cfg.discoverModels
|
|
1188
|
-
? `Ollama 未开启模型发现: ${
|
|
1216
|
+
? `Ollama 未开启模型发现: ${cfg.baseUrl},注册 customModels 里的 ${registered.size} 个 model entry`
|
|
1189
1217
|
: discoveryError
|
|
1190
|
-
? `Ollama 模型发现失败: ${
|
|
1191
|
-
: `Ollama 已连接: ${
|
|
1218
|
+
? `Ollama 模型发现失败: ${cfg.baseUrl},注册 customModels 里的 ${registered.size} 个 model entry`
|
|
1219
|
+
: `Ollama 已连接: ${cfg.baseUrl},注册 ${registered.size} 个 model entry`);
|
|
1192
1220
|
/**
|
|
1193
1221
|
* 重新发现并按差异增删条目(WebUI 触发,无需重启插件)。与初次注册一样随停用或停机中止:每次 await 之后自己查,
|
|
1194
1222
|
* 中止即抛出,不再增删条目。模型发现失败同样抛出(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,56 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
readonly baseUrlInvalid: "baseUrl is not a valid URL; write it as a full address, such as http://localhost:11434";
|
|
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@); this plugin does not support accessing Ollama with credentials";
|
|
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 baseUrlLabel: "Ollama URL";
|
|
18
|
+
readonly baseUrlDescription: "HTTP address of the local Ollama service";
|
|
19
|
+
readonly customModelsLabel: "Custom models";
|
|
20
|
+
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.";
|
|
21
|
+
readonly discoverModelsLabel: "Discover models";
|
|
22
|
+
readonly discoverModelsDescription: "Request /api/tags at startup to discover the installed models; the WebUI can refresh the model list. Turn it off when the service does not provide /api/tags: no discovery request is sent, only customModels are registered (then required), and refreshing is not supported.";
|
|
23
|
+
readonly modelCapabilitiesLabel: "Per-model capability overrides";
|
|
24
|
+
readonly modelCapabilitiesDescription: "Force a model's capabilities (highest priority, above /api/show detection and the built-in family table), combined with the adapter defaults.\nFormat: `<modelId>: <cap1>,<cap2>,...`, one per line. For example: nemotron3:33b: chat,vision,tool_calling";
|
|
25
|
+
readonly providerCapabilitiesLabel: "Adapter default capabilities (comma-separated)";
|
|
26
|
+
readonly providerCapabilitiesDescription: "Fallback default capabilities: only used when a model can neither be probed through Ollama /api/show nor found in the built-in family table. Capabilities are now detected automatically, so this is usually left empty (filling it in may mislabel models that lack those capabilities). For example: chat,tool_calling,streaming";
|
|
27
|
+
readonly timeoutLabel: "Idle timeout (s)";
|
|
28
|
+
readonly timeoutDescription: "How long without new output counts as a timeout (seconds). Output that keeps coming (thinking included) never times out; tool calls only arrive once Ollama has generated them in full, and the time spent generating them does not count as output; a non-streaming request (including requests with audio) must receive the whole reply within this time. Raise it for large models or long contexts that are slow to produce their first output, or for long tool arguments. 0 = no limit.";
|
|
29
|
+
readonly temperatureLabel: "Temperature";
|
|
30
|
+
readonly temperatureDescription: "0-2; higher is more random";
|
|
31
|
+
readonly maxTokensLabel: "Max tokens";
|
|
32
|
+
readonly maxTokensDescription: "Maximum tokens generated per reply (num_predict); must be a positive integer, otherwise the instance goes into error";
|
|
33
|
+
readonly contextLengthLabel: "Context length";
|
|
34
|
+
readonly contextLengthDescription: "Size of the model's context window (num_ctx)";
|
|
35
|
+
readonly keepAliveLabel: "Model keep-alive";
|
|
36
|
+
readonly keepAliveDescription: "How long the model stays in GPU memory, such as 5m, 1h, or 0 (unload immediately)";
|
|
37
|
+
readonly thinkingLabel: "Default thinking level";
|
|
38
|
+
readonly thinkingDescription: "The level used by models that report the thinking capability (or have thinking in the per-model capability overrides) when a request names no level; the session setting “Thinking” takes precedence. Models without the thinking capability are not sent the think parameter.";
|
|
39
|
+
readonly requestTimeout: "Ollama request timed out: no new output within {seconds} s; you can raise timeout in the config";
|
|
40
|
+
readonly pluginClosed: "The Ollama plugin was disabled or reloaded; this request was not sent";
|
|
41
|
+
readonly unreachable: "Ollama cannot reach the service: check baseUrl and the network; see the logs for details";
|
|
42
|
+
readonly notJson: "The Ollama response is not JSON ({status}); see the logs for details";
|
|
43
|
+
readonly discoveryNotJson: "the response is not JSON: {excerpt}";
|
|
44
|
+
readonly discoveryNotList: "the response is not a model list (it needs a models array whose items each have a string name): {excerpt}";
|
|
45
|
+
readonly discoveryFailed: "Model discovery failed for {url}: {error}";
|
|
46
|
+
readonly emptyBody: "The Ollama API returned an empty response body, so the stream cannot be read";
|
|
47
|
+
readonly imagesUnavailable: "Could not get any of the images ({count} in total); refusing to fall back to a text-only request";
|
|
48
|
+
readonly audioDataUrlOnly: "Ollama's compatible API only accepts audio as data:audio/<format>;base64, (the plugin does not read local paths or links)";
|
|
49
|
+
readonly audioFormatUnsupported: "Ollama's compatible API does not accept {format} audio";
|
|
50
|
+
readonly customModelsRequired: "required when discoverModels is off";
|
|
51
|
+
readonly noModelsDiscoveryFailed: "Could not get the Ollama model list, so there are no models to register: make sure Ollama is running and baseUrl is right, then reload this plugin, or list the models to use in customModels. Reason: {error}";
|
|
52
|
+
readonly noModels: "Ollama is connected at {baseUrl} but found no available models; download one with ollama pull first, or list the models to use in customModels";
|
|
53
|
+
readonly noChatModels: "Ollama is connected at {baseUrl} but has no usable chat model: none of {models} reports the chat capability (embedding models, for example); download a chat model with ollama pull first";
|
|
54
|
+
};
|
|
55
|
+
export default _default;
|
|
56
|
+
//# 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,56 @@
|
|
|
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 http://localhost:11434',
|
|
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@); this plugin does not support accessing Ollama with credentials',
|
|
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
|
+
baseUrlLabel: 'Ollama URL',
|
|
19
|
+
baseUrlDescription: 'HTTP address of the local Ollama service',
|
|
20
|
+
customModelsLabel: 'Custom models',
|
|
21
|
+
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.',
|
|
22
|
+
discoverModelsLabel: 'Discover models',
|
|
23
|
+
discoverModelsDescription: 'Request /api/tags at startup to discover the installed models; the WebUI can refresh the model list. Turn it off when the service does not provide /api/tags: no discovery request is sent, only customModels are registered (then required), and refreshing is not supported.',
|
|
24
|
+
modelCapabilitiesLabel: 'Per-model capability overrides',
|
|
25
|
+
modelCapabilitiesDescription: "Force a model's capabilities (highest priority, above /api/show detection and the built-in family table), combined with the adapter defaults.\nFormat: `<modelId>: <cap1>,<cap2>,...`, one per line. For example: nemotron3:33b: chat,vision,tool_calling",
|
|
26
|
+
providerCapabilitiesLabel: 'Adapter default capabilities (comma-separated)',
|
|
27
|
+
providerCapabilitiesDescription: 'Fallback default capabilities: only used when a model can neither be probed through Ollama /api/show nor found in the built-in family table. Capabilities are now detected automatically, so this is usually left empty (filling it in may mislabel models that lack those capabilities). For example: chat,tool_calling,streaming',
|
|
28
|
+
timeoutLabel: 'Idle timeout (s)',
|
|
29
|
+
timeoutDescription: 'How long without new output counts as a timeout (seconds). Output that keeps coming (thinking included) never times out; tool calls only arrive once Ollama has generated them in full, and the time spent generating them does not count as output; a non-streaming request (including requests with audio) must receive the whole reply within this time. Raise it for large models or long contexts that are slow to produce their first output, or for long tool arguments. 0 = no limit.',
|
|
30
|
+
temperatureLabel: 'Temperature',
|
|
31
|
+
temperatureDescription: '0-2; higher is more random',
|
|
32
|
+
maxTokensLabel: 'Max tokens',
|
|
33
|
+
maxTokensDescription: 'Maximum tokens generated per reply (num_predict); must be a positive integer, otherwise the instance goes into error',
|
|
34
|
+
contextLengthLabel: 'Context length',
|
|
35
|
+
contextLengthDescription: "Size of the model's context window (num_ctx)",
|
|
36
|
+
keepAliveLabel: 'Model keep-alive',
|
|
37
|
+
keepAliveDescription: 'How long the model stays in GPU memory, such as 5m, 1h, or 0 (unload immediately)',
|
|
38
|
+
thinkingLabel: 'Default thinking level',
|
|
39
|
+
thinkingDescription: 'The level used by models that report the thinking capability (or have thinking in the per-model capability overrides) when a request names no level; the session setting “Thinking” takes precedence. Models without the thinking capability are not sent the think parameter.',
|
|
40
|
+
requestTimeout: 'Ollama request timed out: no new output within {seconds} s; you can raise timeout in the config',
|
|
41
|
+
pluginClosed: 'The Ollama plugin was disabled or reloaded; this request was not sent',
|
|
42
|
+
unreachable: 'Ollama cannot reach the service: check baseUrl and the network; see the logs for details',
|
|
43
|
+
notJson: 'The Ollama response is not JSON ({status}); see the logs for details',
|
|
44
|
+
discoveryNotJson: 'the response is not JSON: {excerpt}',
|
|
45
|
+
discoveryNotList: 'the response is not a model list (it needs a models array whose items each have a string name): {excerpt}',
|
|
46
|
+
discoveryFailed: 'Model discovery failed for {url}: {error}',
|
|
47
|
+
emptyBody: 'The Ollama API returned an empty response body, so the stream cannot be read',
|
|
48
|
+
imagesUnavailable: 'Could not get any of the images ({count} in total); refusing to fall back to a text-only request',
|
|
49
|
+
audioDataUrlOnly: "Ollama's compatible API only accepts audio as data:audio/<format>;base64, (the plugin does not read local paths or links)",
|
|
50
|
+
audioFormatUnsupported: "Ollama's compatible API does not accept {format} audio",
|
|
51
|
+
customModelsRequired: 'required when discoverModels is off',
|
|
52
|
+
noModelsDiscoveryFailed: 'Could not get the Ollama model list, so there are no models to register: make sure Ollama is running and baseUrl is right, then reload this plugin, or list the models to use in customModels. Reason: {error}',
|
|
53
|
+
noModels: 'Ollama is connected at {baseUrl} but found no available models; download one with ollama pull first, or list the models to use in customModels',
|
|
54
|
+
noChatModels: 'Ollama is connected at {baseUrl} but has no usable chat model: none of {models} reports the chat capability (embedding models, for example); download a chat model with ollama pull first',
|
|
55
|
+
});
|
|
56
|
+
//# 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,wFAAwF;IACxG,YAAY,EACV,2GAA2G;IAC7G,kBAAkB,EAChB,6HAA6H;IAC/H,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,YAAY;IAC1B,kBAAkB,EAAE,0CAA0C;IAC9D,iBAAiB,EAAE,eAAe;IAClC,uBAAuB,EACrB,sLAAsL;IACxL,mBAAmB,EAAE,iBAAiB;IACtC,yBAAyB,EACvB,gRAAgR;IAClR,sBAAsB,EAAE,gCAAgC;IACxD,4BAA4B,EAC1B,2PAA2P;IAC7P,yBAAyB,EAAE,gDAAgD;IAC3E,+BAA+B,EAC7B,oUAAoU;IACtU,YAAY,EAAE,kBAAkB;IAChC,kBAAkB,EAChB,+dAA+d;IACje,gBAAgB,EAAE,aAAa;IAC/B,sBAAsB,EAAE,4BAA4B;IACpD,cAAc,EAAE,YAAY;IAC5B,oBAAoB,EAClB,sHAAsH;IACxH,kBAAkB,EAAE,gBAAgB;IACpC,wBAAwB,EAAE,8CAA8C;IACxE,cAAc,EAAE,kBAAkB;IAClC,oBAAoB,EAAE,mFAAmF;IACzG,aAAa,EAAE,wBAAwB;IACvC,mBAAmB,EACjB,gRAAgR;IAClR,cAAc,EAAE,iGAAiG;IACjH,YAAY,EAAE,uEAAuE;IACrF,WAAW,EAAE,0FAA0F;IACvG,OAAO,EAAE,sEAAsE;IAC/E,gBAAgB,EAAE,qCAAqC;IACvD,gBAAgB,EACd,2GAA2G;IAC7G,eAAe,EAAE,2CAA2C;IAC5D,SAAS,EAAE,8EAA8E;IACzF,iBAAiB,EAAE,kGAAkG;IACrH,gBAAgB,EACd,2HAA2H;IAC7H,sBAAsB,EAAE,wDAAwD;IAChF,oBAAoB,EAAE,qCAAqC;IAC3D,uBAAuB,EACrB,gNAAgN;IAClN,QAAQ,EACN,gJAAgJ;IAClJ,YAAY,EACV,2LAA2L;CAC9L,CAAC,CAAC"}
|
package/dist/texts.d.ts
ADDED
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
declare const SOURCE: {
|
|
2
|
+
readonly baseUrlInvalid: "baseUrl 不是有效的 URL,需写成完整地址,如 http://localhost:11434";
|
|
3
|
+
readonly baseUrlQuery: "baseUrl 不能带查询串或片段(? 或 # 之后的部分):插件在它后面拼接路径";
|
|
4
|
+
readonly baseUrlCredentials: "baseUrl 不能带用户名或密码(user:pass@),本插件不支持带凭据访问 Ollama";
|
|
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 baseUrlLabel: "Ollama 地址";
|
|
18
|
+
readonly baseUrlDescription: "本地 Ollama 服务的 HTTP 地址";
|
|
19
|
+
readonly customModelsLabel: "自定义模型";
|
|
20
|
+
readonly customModelsDescription: "手动添加的模型名称(每行一个或逗号分隔)。用于补充自动发现列表中未出现的模型。与自动发现重复时会提示去重。";
|
|
21
|
+
readonly discoverModelsLabel: "自动发现模型";
|
|
22
|
+
readonly discoverModelsDescription: "启动时请求 /api/tags 发现已安装的模型,WebUI 可刷新模型列表。服务不提供 /api/tags 时关闭:不发发现请求,只注册 customModels(此时必填),也不支持刷新。";
|
|
23
|
+
readonly modelCapabilitiesLabel: "单模型能力覆盖";
|
|
24
|
+
readonly modelCapabilitiesDescription: "强制覆盖某模型的能力(优先级最高,高于 /api/show 自动探测与家族表),与 adapter 默认能力取并集。\n格式:`<modelId>: <cap1>,<cap2>,...`,每行一条。如:nemotron3:33b: chat,vision,tool_calling";
|
|
25
|
+
readonly providerCapabilitiesLabel: "适配器默认能力(逗号分隔)";
|
|
26
|
+
readonly providerCapabilitiesDescription: "兜底默认能力:仅当某模型既无法从 Ollama /api/show 探测、又不在内置家族表时才使用。能力现已自动探测,通常留空即可(填了反而可能给不支持的模型乱标能力)。例:chat,tool_calling,streaming";
|
|
27
|
+
readonly timeoutLabel: "停顿超时(秒)";
|
|
28
|
+
readonly timeoutDescription: "多久收不到新的生成内容算超时(秒)。一直在输出(含思考内容)不算超时;工具调用要等 Ollama 生成完整才一次给出,生成期间不算输出;不流式的请求(含带音频的请求)要在这段时间内收到整份回复。大模型或长上下文出第一段内容慢、工具参数很长时,建议适当调大。0 = 不限制。";
|
|
29
|
+
readonly temperatureLabel: "温度";
|
|
30
|
+
readonly temperatureDescription: "0-2,越高越随机";
|
|
31
|
+
readonly maxTokensLabel: "最大 Token";
|
|
32
|
+
readonly maxTokensDescription: "单次回复最大生成 token 数(num_predict),须为正整数,否则实例转为出错";
|
|
33
|
+
readonly contextLengthLabel: "上下文长度";
|
|
34
|
+
readonly contextLengthDescription: "模型上下文窗口大小(num_ctx)";
|
|
35
|
+
readonly keepAliveLabel: "模型保活时间";
|
|
36
|
+
readonly keepAliveDescription: "模型在显存中保留的时间,如 5m、1h、0(立即卸载)";
|
|
37
|
+
readonly thinkingLabel: "默认思考档位";
|
|
38
|
+
readonly thinkingDescription: "报告了思考能力的模型(或单模型能力覆盖里写了 thinking 的)在请求没指定档位时用这一档,会话设置的「深度思考」压过它。没有思考能力的模型不发 think 参数。";
|
|
39
|
+
readonly requestTimeout: "Ollama 请求超时:{seconds} 秒内没有收到新的生成内容,可在配置里调大 timeout";
|
|
40
|
+
readonly pluginClosed: "Ollama 插件已停用或重载,这次请求没有发出";
|
|
41
|
+
readonly unreachable: "Ollama 连不上服务:检查 baseUrl 与网络,详情见日志";
|
|
42
|
+
readonly notJson: "Ollama 应答不是 JSON ({status});详情见日志";
|
|
43
|
+
readonly discoveryNotJson: "响应不是 JSON: {excerpt}";
|
|
44
|
+
readonly discoveryNotList: "响应不是模型列表(需要 models 数组,每项带字符串 name):{excerpt}";
|
|
45
|
+
readonly discoveryFailed: "模型发现失败 {url}: {error}";
|
|
46
|
+
readonly emptyBody: "Ollama API 返回了空的响应体,无法进行流式读取";
|
|
47
|
+
readonly imagesUnavailable: "图片全部获取失败(共 {count} 张),拒绝降级为纯文本请求";
|
|
48
|
+
readonly audioDataUrlOnly: "Ollama 兼容接口的音频只收 data:audio/<格式>;base64, 形式(插件不读本地路径与链接)";
|
|
49
|
+
readonly audioFormatUnsupported: "Ollama 兼容接口不接受 {format} 音频";
|
|
50
|
+
readonly customModelsRequired: "关闭 discoverModels 时必填";
|
|
51
|
+
readonly noModelsDiscoveryFailed: "取不到 Ollama 的模型列表,没有可注册的模型:确认 Ollama 在运行、baseUrl 写对后重载本插件,或在 customModels 里写明要用的模型。原因:{error}";
|
|
52
|
+
readonly noModels: "Ollama 已连接 {baseUrl},但未发现任何可用模型;先用 ollama pull 下载模型,或在 customModels 里写明要用的模型";
|
|
53
|
+
readonly noChatModels: "Ollama 已连接 {baseUrl},但没有可用的对话模型:{models} 都没有报告对话能力(如嵌入模型);先用 ollama pull 下载对话模型";
|
|
54
|
+
};
|
|
55
|
+
export type Source = typeof SOURCE;
|
|
56
|
+
export declare const t: import("@aalis/schema-i18n").TextFactory<{
|
|
57
|
+
readonly baseUrlInvalid: "baseUrl 不是有效的 URL,需写成完整地址,如 http://localhost:11434";
|
|
58
|
+
readonly baseUrlQuery: "baseUrl 不能带查询串或片段(? 或 # 之后的部分):插件在它后面拼接路径";
|
|
59
|
+
readonly baseUrlCredentials: "baseUrl 不能带用户名或密码(user:pass@),本插件不支持带凭据访问 Ollama";
|
|
60
|
+
readonly withCause: "{error} ← {detail}";
|
|
61
|
+
readonly hintAuth: "密钥无效或没有权限";
|
|
62
|
+
readonly hintPayment: "余额不足或需要付费";
|
|
63
|
+
readonly hintNotFound: "模型或地址不对";
|
|
64
|
+
readonly hintRateLimit: "请求过多或额度不足";
|
|
65
|
+
readonly hintUpstream: "上游服务故障";
|
|
66
|
+
readonly apiError: "{provider} API 错误 ({status})";
|
|
67
|
+
readonly apiErrorHint: "{provider} API 错误 ({status}):{hint}";
|
|
68
|
+
readonly upstreamMessage: "上游说明:{message}";
|
|
69
|
+
readonly seeLogs: "详情见日志";
|
|
70
|
+
readonly levelOff: "关";
|
|
71
|
+
readonly levelOn: "开";
|
|
72
|
+
readonly baseUrlLabel: "Ollama 地址";
|
|
73
|
+
readonly baseUrlDescription: "本地 Ollama 服务的 HTTP 地址";
|
|
74
|
+
readonly customModelsLabel: "自定义模型";
|
|
75
|
+
readonly customModelsDescription: "手动添加的模型名称(每行一个或逗号分隔)。用于补充自动发现列表中未出现的模型。与自动发现重复时会提示去重。";
|
|
76
|
+
readonly discoverModelsLabel: "自动发现模型";
|
|
77
|
+
readonly discoverModelsDescription: "启动时请求 /api/tags 发现已安装的模型,WebUI 可刷新模型列表。服务不提供 /api/tags 时关闭:不发发现请求,只注册 customModels(此时必填),也不支持刷新。";
|
|
78
|
+
readonly modelCapabilitiesLabel: "单模型能力覆盖";
|
|
79
|
+
readonly modelCapabilitiesDescription: "强制覆盖某模型的能力(优先级最高,高于 /api/show 自动探测与家族表),与 adapter 默认能力取并集。\n格式:`<modelId>: <cap1>,<cap2>,...`,每行一条。如:nemotron3:33b: chat,vision,tool_calling";
|
|
80
|
+
readonly providerCapabilitiesLabel: "适配器默认能力(逗号分隔)";
|
|
81
|
+
readonly providerCapabilitiesDescription: "兜底默认能力:仅当某模型既无法从 Ollama /api/show 探测、又不在内置家族表时才使用。能力现已自动探测,通常留空即可(填了反而可能给不支持的模型乱标能力)。例:chat,tool_calling,streaming";
|
|
82
|
+
readonly timeoutLabel: "停顿超时(秒)";
|
|
83
|
+
readonly timeoutDescription: "多久收不到新的生成内容算超时(秒)。一直在输出(含思考内容)不算超时;工具调用要等 Ollama 生成完整才一次给出,生成期间不算输出;不流式的请求(含带音频的请求)要在这段时间内收到整份回复。大模型或长上下文出第一段内容慢、工具参数很长时,建议适当调大。0 = 不限制。";
|
|
84
|
+
readonly temperatureLabel: "温度";
|
|
85
|
+
readonly temperatureDescription: "0-2,越高越随机";
|
|
86
|
+
readonly maxTokensLabel: "最大 Token";
|
|
87
|
+
readonly maxTokensDescription: "单次回复最大生成 token 数(num_predict),须为正整数,否则实例转为出错";
|
|
88
|
+
readonly contextLengthLabel: "上下文长度";
|
|
89
|
+
readonly contextLengthDescription: "模型上下文窗口大小(num_ctx)";
|
|
90
|
+
readonly keepAliveLabel: "模型保活时间";
|
|
91
|
+
readonly keepAliveDescription: "模型在显存中保留的时间,如 5m、1h、0(立即卸载)";
|
|
92
|
+
readonly thinkingLabel: "默认思考档位";
|
|
93
|
+
readonly thinkingDescription: "报告了思考能力的模型(或单模型能力覆盖里写了 thinking 的)在请求没指定档位时用这一档,会话设置的「深度思考」压过它。没有思考能力的模型不发 think 参数。";
|
|
94
|
+
readonly requestTimeout: "Ollama 请求超时:{seconds} 秒内没有收到新的生成内容,可在配置里调大 timeout";
|
|
95
|
+
readonly pluginClosed: "Ollama 插件已停用或重载,这次请求没有发出";
|
|
96
|
+
readonly unreachable: "Ollama 连不上服务:检查 baseUrl 与网络,详情见日志";
|
|
97
|
+
readonly notJson: "Ollama 应答不是 JSON ({status});详情见日志";
|
|
98
|
+
readonly discoveryNotJson: "响应不是 JSON: {excerpt}";
|
|
99
|
+
readonly discoveryNotList: "响应不是模型列表(需要 models 数组,每项带字符串 name):{excerpt}";
|
|
100
|
+
readonly discoveryFailed: "模型发现失败 {url}: {error}";
|
|
101
|
+
readonly emptyBody: "Ollama API 返回了空的响应体,无法进行流式读取";
|
|
102
|
+
readonly imagesUnavailable: "图片全部获取失败(共 {count} 张),拒绝降级为纯文本请求";
|
|
103
|
+
readonly audioDataUrlOnly: "Ollama 兼容接口的音频只收 data:audio/<格式>;base64, 形式(插件不读本地路径与链接)";
|
|
104
|
+
readonly audioFormatUnsupported: "Ollama 兼容接口不接受 {format} 音频";
|
|
105
|
+
readonly customModelsRequired: "关闭 discoverModels 时必填";
|
|
106
|
+
readonly noModelsDiscoveryFailed: "取不到 Ollama 的模型列表,没有可注册的模型:确认 Ollama 在运行、baseUrl 写对后重载本插件,或在 customModels 里写明要用的模型。原因:{error}";
|
|
107
|
+
readonly noModels: "Ollama 已连接 {baseUrl},但未发现任何可用模型;先用 ollama pull 下载模型,或在 customModels 里写明要用的模型";
|
|
108
|
+
readonly noChatModels: "Ollama 已连接 {baseUrl},但没有可用的对话模型:{models} 都没有报告对话能力(如嵌入模型);先用 ollama pull 下载对话模型";
|
|
109
|
+
}>;
|
|
110
|
+
export {};
|
|
111
|
+
//# 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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8DF,CAAC;AACX,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC;AAEnC,eAAO,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAsG,CAAC"}
|
package/dist/texts.js
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
// 本插件自己的原文字典:配置项、思考档位名与给人看的报错(经 agent 进会话、作插件失败原因)
|
|
2
|
+
import { defineTexts } from '@aalis/schema-i18n';
|
|
3
|
+
import en from './locales/en.js';
|
|
4
|
+
const SOURCE = {
|
|
5
|
+
baseUrlInvalid: 'baseUrl 不是有效的 URL,需写成完整地址,如 http://localhost:11434',
|
|
6
|
+
baseUrlQuery: 'baseUrl 不能带查询串或片段(? 或 # 之后的部分):插件在它后面拼接路径',
|
|
7
|
+
baseUrlCredentials: 'baseUrl 不能带用户名或密码(user:pass@),本插件不支持带凭据访问 Ollama',
|
|
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
|
+
baseUrlLabel: 'Ollama 地址',
|
|
21
|
+
baseUrlDescription: '本地 Ollama 服务的 HTTP 地址',
|
|
22
|
+
customModelsLabel: '自定义模型',
|
|
23
|
+
customModelsDescription: '手动添加的模型名称(每行一个或逗号分隔)。用于补充自动发现列表中未出现的模型。与自动发现重复时会提示去重。',
|
|
24
|
+
discoverModelsLabel: '自动发现模型',
|
|
25
|
+
discoverModelsDescription: '启动时请求 /api/tags 发现已安装的模型,WebUI 可刷新模型列表。服务不提供 /api/tags 时关闭:不发发现请求,只注册 customModels(此时必填),也不支持刷新。',
|
|
26
|
+
modelCapabilitiesLabel: '单模型能力覆盖',
|
|
27
|
+
modelCapabilitiesDescription: '强制覆盖某模型的能力(优先级最高,高于 /api/show 自动探测与家族表),与 adapter 默认能力取并集。\n格式:`<modelId>: <cap1>,<cap2>,...`,每行一条。如:nemotron3:33b: chat,vision,tool_calling',
|
|
28
|
+
providerCapabilitiesLabel: '适配器默认能力(逗号分隔)',
|
|
29
|
+
providerCapabilitiesDescription: '兜底默认能力:仅当某模型既无法从 Ollama /api/show 探测、又不在内置家族表时才使用。能力现已自动探测,通常留空即可(填了反而可能给不支持的模型乱标能力)。例:chat,tool_calling,streaming',
|
|
30
|
+
timeoutLabel: '停顿超时(秒)',
|
|
31
|
+
timeoutDescription: '多久收不到新的生成内容算超时(秒)。一直在输出(含思考内容)不算超时;工具调用要等 Ollama 生成完整才一次给出,生成期间不算输出;不流式的请求(含带音频的请求)要在这段时间内收到整份回复。大模型或长上下文出第一段内容慢、工具参数很长时,建议适当调大。0 = 不限制。',
|
|
32
|
+
temperatureLabel: '温度',
|
|
33
|
+
temperatureDescription: '0-2,越高越随机',
|
|
34
|
+
maxTokensLabel: '最大 Token',
|
|
35
|
+
maxTokensDescription: '单次回复最大生成 token 数(num_predict),须为正整数,否则实例转为出错',
|
|
36
|
+
contextLengthLabel: '上下文长度',
|
|
37
|
+
contextLengthDescription: '模型上下文窗口大小(num_ctx)',
|
|
38
|
+
keepAliveLabel: '模型保活时间',
|
|
39
|
+
keepAliveDescription: '模型在显存中保留的时间,如 5m、1h、0(立即卸载)',
|
|
40
|
+
thinkingLabel: '默认思考档位',
|
|
41
|
+
thinkingDescription: '报告了思考能力的模型(或单模型能力覆盖里写了 thinking 的)在请求没指定档位时用这一档,会话设置的「深度思考」压过它。没有思考能力的模型不发 think 参数。',
|
|
42
|
+
requestTimeout: 'Ollama 请求超时:{seconds} 秒内没有收到新的生成内容,可在配置里调大 timeout',
|
|
43
|
+
pluginClosed: 'Ollama 插件已停用或重载,这次请求没有发出',
|
|
44
|
+
unreachable: 'Ollama 连不上服务:检查 baseUrl 与网络,详情见日志',
|
|
45
|
+
notJson: 'Ollama 应答不是 JSON ({status});详情见日志',
|
|
46
|
+
discoveryNotJson: '响应不是 JSON: {excerpt}',
|
|
47
|
+
discoveryNotList: '响应不是模型列表(需要 models 数组,每项带字符串 name):{excerpt}',
|
|
48
|
+
discoveryFailed: '模型发现失败 {url}: {error}',
|
|
49
|
+
emptyBody: 'Ollama API 返回了空的响应体,无法进行流式读取',
|
|
50
|
+
imagesUnavailable: '图片全部获取失败(共 {count} 张),拒绝降级为纯文本请求',
|
|
51
|
+
audioDataUrlOnly: 'Ollama 兼容接口的音频只收 data:audio/<格式>;base64, 形式(插件不读本地路径与链接)',
|
|
52
|
+
audioFormatUnsupported: 'Ollama 兼容接口不接受 {format} 音频',
|
|
53
|
+
customModelsRequired: '关闭 discoverModels 时必填',
|
|
54
|
+
noModelsDiscoveryFailed: '取不到 Ollama 的模型列表,没有可注册的模型:确认 Ollama 在运行、baseUrl 写对后重载本插件,或在 customModels 里写明要用的模型。原因:{error}',
|
|
55
|
+
noModels: 'Ollama 已连接 {baseUrl},但未发现任何可用模型;先用 ollama pull 下载模型,或在 customModels 里写明要用的模型',
|
|
56
|
+
noChatModels: 'Ollama 已连接 {baseUrl},但没有可用的对话模型:{models} 都没有报告对话能力(如嵌入模型);先用 ollama pull 下载对话模型',
|
|
57
|
+
};
|
|
58
|
+
export const t = defineTexts({ ns: '@aalis/plugin-llm-ollama', language: 'zh-CN', source: SOURCE, locales: { en } });
|
|
59
|
+
//# 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,oDAAoD;IACpE,YAAY,EAAE,2CAA2C;IACzD,kBAAkB,EAAE,kDAAkD;IACtE,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,WAAW;IACzB,kBAAkB,EAAE,uBAAuB;IAC3C,iBAAiB,EAAE,OAAO;IAC1B,uBAAuB,EACrB,uDAAuD;IACzD,mBAAmB,EAAE,QAAQ;IAC7B,yBAAyB,EACvB,kGAAkG;IACpG,sBAAsB,EAAE,SAAS;IACjC,4BAA4B,EAC1B,8IAA8I;IAChJ,yBAAyB,EAAE,eAAe;IAC1C,+BAA+B,EAC7B,oHAAoH;IACtH,YAAY,EAAE,SAAS;IACvB,kBAAkB,EAChB,0IAA0I;IAC5I,gBAAgB,EAAE,IAAI;IACtB,sBAAsB,EAAE,WAAW;IACnC,cAAc,EAAE,UAAU;IAC1B,oBAAoB,EAAE,8CAA8C;IACpE,kBAAkB,EAAE,OAAO;IAC3B,wBAAwB,EAAE,oBAAoB;IAC9C,cAAc,EAAE,QAAQ;IACxB,oBAAoB,EAAE,6BAA6B;IACnD,aAAa,EAAE,QAAQ;IACvB,mBAAmB,EACjB,sFAAsF;IACxF,cAAc,EAAE,oDAAoD;IACpE,YAAY,EAAE,0BAA0B;IACxC,WAAW,EAAE,mCAAmC;IAChD,OAAO,EAAE,mCAAmC;IAC5C,gBAAgB,EAAE,sBAAsB;IACxC,gBAAgB,EAAE,8CAA8C;IAChE,eAAe,EAAE,uBAAuB;IACxC,SAAS,EAAE,8BAA8B;IACzC,iBAAiB,EAAE,kCAAkC;IACrD,gBAAgB,EAAE,0DAA0D;IAC5E,sBAAsB,EAAE,4BAA4B;IACpD,oBAAoB,EAAE,uBAAuB;IAC7C,uBAAuB,EACrB,8FAA8F;IAChG,QAAQ,EACN,8EAA8E;IAChF,YAAY,EACV,iFAAiF;CAC3E,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-ollama",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.14.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -24,21 +24,23 @@
|
|
|
24
24
|
"dist"
|
|
25
25
|
],
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@aalis/schema-config": ">=0.
|
|
28
|
-
"@aalis/api-llm": ">=0.
|
|
29
|
-
"@aalis/schema-
|
|
30
|
-
"@aalis/
|
|
31
|
-
"@aalis/
|
|
32
|
-
"@aalis/util-
|
|
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/api-process": ">=0.10.0 <1.0.0",
|
|
32
|
+
"@aalis/util-network-guard": ">=0.7.0 <1.0.0",
|
|
33
|
+
"@aalis/util-text-normalize": ">=0.6.0 <1.0.0",
|
|
34
|
+
"undici": "^6.0.0"
|
|
33
35
|
},
|
|
34
36
|
"devDependencies": {
|
|
35
37
|
"@types/node": "^22.0.0",
|
|
36
38
|
"typescript": "^5.7.0",
|
|
37
|
-
"@aalis/core": "0.
|
|
38
|
-
"@aalis/api-tools": "0.
|
|
39
|
+
"@aalis/core": "0.21.0",
|
|
40
|
+
"@aalis/api-tools": "0.12.0"
|
|
39
41
|
},
|
|
40
42
|
"peerDependencies": {
|
|
41
|
-
"@aalis/core": ">=0.
|
|
43
|
+
"@aalis/core": ">=0.21.0 <1.0.0"
|
|
42
44
|
},
|
|
43
45
|
"aalis": {
|
|
44
46
|
"service": {
|