tea-rags 1.14.1 → 1.14.2
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.
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Ollama embedding provider errors.
|
|
3
|
+
*
|
|
4
|
+
* Hints are platform-aware: macOS suggests Ollama.app (required for GPU),
|
|
5
|
+
* Linux/Windows suggest CLI commands.
|
|
3
6
|
*/
|
|
4
7
|
import { EmbeddingError } from "../errors.js";
|
|
5
8
|
export declare class OllamaUnavailableError extends EmbeddingError {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../../src/core/adapters/embeddings/ollama/errors.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../../src/core/adapters/embeddings/ollama/errors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAiB9C,qBAAa,sBAAuB,SAAQ,cAAc;IACxD,oGAAoG;IACpG,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;gBAErB,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,EAAE,MAAM;IAY/D,wEAAwE;IACxE,MAAM,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,sBAAsB;CAqBpG;AA0BD,qBAAa,uBAAwB,SAAQ,cAAc;gBAC7C,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;CAQvC"}
|
|
@@ -1,15 +1,28 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Ollama embedding provider errors.
|
|
3
|
+
*
|
|
4
|
+
* Hints are platform-aware: macOS suggests Ollama.app (required for GPU),
|
|
5
|
+
* Linux/Windows suggest CLI commands.
|
|
3
6
|
*/
|
|
4
7
|
import { EmbeddingError } from "../errors.js";
|
|
8
|
+
function getOllamaCommands() {
|
|
9
|
+
if (process.platform === "darwin") {
|
|
10
|
+
return { start: "open -a Ollama", stop: `osascript -e 'quit app "Ollama"'` };
|
|
11
|
+
}
|
|
12
|
+
if (process.platform === "win32") {
|
|
13
|
+
return { start: "ollama serve", stop: "taskkill /IM ollama.exe /F" };
|
|
14
|
+
}
|
|
15
|
+
return { start: "ollama serve", stop: "pkill ollama" };
|
|
16
|
+
}
|
|
5
17
|
export class OllamaUnavailableError extends EmbeddingError {
|
|
6
18
|
/** HTTP response status from Ollama API (e.g. 429 for rate limit). Undefined for network errors. */
|
|
7
19
|
responseStatus;
|
|
8
20
|
constructor(url, cause, responseStatus) {
|
|
21
|
+
const cmd = getOllamaCommands();
|
|
9
22
|
super({
|
|
10
23
|
code: "INFRA_OLLAMA_UNAVAILABLE",
|
|
11
24
|
message: `Ollama is not reachable at ${url}`,
|
|
12
|
-
hint: `Start Ollama:
|
|
25
|
+
hint: `Start Ollama: ${cmd.start}, or verify OLLAMA_URL=${url}`,
|
|
13
26
|
httpStatus: 503,
|
|
14
27
|
cause,
|
|
15
28
|
});
|
|
@@ -18,9 +31,16 @@ export class OllamaUnavailableError extends EmbeddingError {
|
|
|
18
31
|
/** Create error when both primary and fallback URLs are unreachable. */
|
|
19
32
|
static withFallback(primaryUrl, fallbackUrl, cause) {
|
|
20
33
|
const hasLocal = isLocalUrl(primaryUrl) || isLocalUrl(fallbackUrl);
|
|
21
|
-
const
|
|
22
|
-
|
|
23
|
-
|
|
34
|
+
const cmd = getOllamaCommands();
|
|
35
|
+
let hint;
|
|
36
|
+
if (hasLocal) {
|
|
37
|
+
hint =
|
|
38
|
+
`Start Ollama: ${cmd.start} — or check connectivity to ${primaryUrl} and ${fallbackUrl}. ` +
|
|
39
|
+
`If Ollama is stuck: ${cmd.stop}`;
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
hint = `Check network connectivity to ${primaryUrl} and ${fallbackUrl}`;
|
|
43
|
+
}
|
|
24
44
|
const error = new OllamaUnavailableError(primaryUrl, cause);
|
|
25
45
|
// Override message and hint via the base class fields
|
|
26
46
|
Object.defineProperty(error, "message", {
|
|
@@ -33,7 +53,25 @@ export class OllamaUnavailableError extends EmbeddingError {
|
|
|
33
53
|
function isLocalUrl(url) {
|
|
34
54
|
try {
|
|
35
55
|
const { hostname } = new URL(url);
|
|
36
|
-
|
|
56
|
+
if (hostname === "localhost")
|
|
57
|
+
return true;
|
|
58
|
+
// Check numeric IP ranges
|
|
59
|
+
const parts = hostname.split(".").map(Number);
|
|
60
|
+
if (parts.length !== 4 || parts.some((p) => isNaN(p)))
|
|
61
|
+
return false;
|
|
62
|
+
// 127.0.0.0/8 — loopback
|
|
63
|
+
if (parts[0] === 127)
|
|
64
|
+
return true;
|
|
65
|
+
// 10.0.0.0/8 — private
|
|
66
|
+
if (parts[0] === 10)
|
|
67
|
+
return true;
|
|
68
|
+
// 172.16.0.0/12 — private (172.16.x.x – 172.31.x.x)
|
|
69
|
+
if (parts[0] === 172 && parts[1] >= 16 && parts[1] <= 31)
|
|
70
|
+
return true;
|
|
71
|
+
// 192.168.0.0/16 — private
|
|
72
|
+
if (parts[0] === 192 && parts[1] === 168)
|
|
73
|
+
return true;
|
|
74
|
+
return false;
|
|
37
75
|
}
|
|
38
76
|
catch {
|
|
39
77
|
return false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../../src/core/adapters/embeddings/ollama/errors.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../../src/core/adapters/embeddings/ollama/errors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAO9C,SAAS,iBAAiB;IACxB,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAClC,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,IAAI,EAAE,kCAAkC,EAAE,CAAC;IAC/E,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACjC,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,4BAA4B,EAAE,CAAC;IACvE,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC;AACzD,CAAC;AAED,MAAM,OAAO,sBAAuB,SAAQ,cAAc;IACxD,oGAAoG;IAC3F,cAAc,CAAU;IAEjC,YAAY,GAAW,EAAE,KAAa,EAAE,cAAuB;QAC7D,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;QAChC,KAAK,CAAC;YACJ,IAAI,EAAE,0BAA0B;YAChC,OAAO,EAAE,8BAA8B,GAAG,EAAE;YAC5C,IAAI,EAAE,iBAAiB,GAAG,CAAC,KAAK,0BAA0B,GAAG,EAAE;YAC/D,UAAU,EAAE,GAAG;YACf,KAAK;SACN,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACvC,CAAC;IAED,wEAAwE;IACxE,MAAM,CAAC,YAAY,CAAC,UAAkB,EAAE,WAAmB,EAAE,KAAa;QACxE,MAAM,QAAQ,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,WAAW,CAAC,CAAC;QACnE,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;QAEhC,IAAI,IAAY,CAAC;QACjB,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI;gBACF,iBAAiB,GAAG,CAAC,KAAK,+BAA+B,UAAU,QAAQ,WAAW,IAAI;oBAC1F,uBAAuB,GAAG,CAAC,IAAI,EAAE,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,IAAI,GAAG,iCAAiC,UAAU,QAAQ,WAAW,EAAE,CAAC;QAC1E,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,sBAAsB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAC5D,sDAAsD;QACtD,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE;YACtC,KAAK,EAAE,8BAA8B,UAAU,iBAAiB,WAAW,aAAa;SACzF,CAAC,CAAC;QACH,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACtD,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AAED,SAAS,UAAU,CAAC,GAAW;IAC7B,IAAI,CAAC;QACH,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,QAAQ,KAAK,WAAW;YAAE,OAAO,IAAI,CAAC;QAE1C,0BAA0B;QAC1B,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC9C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;QAEpE,yBAAyB;QACzB,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC;QAClC,uBAAuB;QACvB,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE;YAAE,OAAO,IAAI,CAAC;QACjC,oDAAoD;QACpD,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;YAAE,OAAO,IAAI,CAAC;QACtE,2BAA2B;QAC3B,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC;QAEtD,OAAO,KAAK,CAAC;IACf,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,MAAM,OAAO,uBAAwB,SAAQ,cAAc;IACzD,YAAY,KAAa,EAAE,GAAW;QACpC,KAAK,CAAC;YACJ,IAAI,EAAE,4BAA4B;YAClC,OAAO,EAAE,iBAAiB,KAAK,yBAAyB,GAAG,EAAE;YAC7D,IAAI,EAAE,+BAA+B,KAAK,EAAE;YAC5C,UAAU,EAAE,GAAG;SAChB,CAAC,CAAC;IACL,CAAC;CACF"}
|