@zhivex-ai/ollama 0.3.15 → 0.4.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/README.md +42 -4
- package/dist/index.d.ts +8 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +222 -27
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -13,7 +13,7 @@ bun add @zhivex-ai/sdk @zhivex-ai/ollama
|
|
|
13
13
|
Start Ollama and pull the model before running the example:
|
|
14
14
|
|
|
15
15
|
```bash
|
|
16
|
-
ollama pull
|
|
16
|
+
ollama pull qwen3
|
|
17
17
|
```
|
|
18
18
|
|
|
19
19
|
```ts
|
|
@@ -25,14 +25,52 @@ const ollama = createOllama({
|
|
|
25
25
|
});
|
|
26
26
|
|
|
27
27
|
const result = await generateText({
|
|
28
|
-
model: ollama("
|
|
29
|
-
prompt: "Explain why local inference is useful."
|
|
28
|
+
model: ollama("qwen3"),
|
|
29
|
+
prompt: "Explain why local inference is useful.",
|
|
30
|
+
reasoning: {
|
|
31
|
+
effort: "medium"
|
|
32
|
+
}
|
|
30
33
|
});
|
|
31
34
|
|
|
32
35
|
console.log(result.text);
|
|
33
36
|
```
|
|
34
37
|
|
|
35
|
-
The adapter supports streaming, callable tools, JSON/structured output, image input
|
|
38
|
+
The adapter supports streaming, callable and parallel tools, JSON/structured output, image input, thinking, and text embeddings through `ollama.embeddingModel(modelId)`. Exact capabilities depend on the selected local or cloud model.
|
|
39
|
+
|
|
40
|
+
Tool-call arguments use Ollama's native JSON-object shape in both responses and follow-up assistant history. Legacy responses that encode arguments as JSON strings remain accepted. Streaming `{ "error": ... }` records are surfaced as provider errors even when the HTTP response already started with status 200.
|
|
41
|
+
|
|
42
|
+
The adapter targets `/api/chat`. Chat-native `logprobs` and `top_logprobs` are supported and validated; `/api/generate`-only `raw` and `template` options are rejected explicitly.
|
|
43
|
+
|
|
44
|
+
## Thinking and tool loops
|
|
45
|
+
|
|
46
|
+
The shared reasoning contract maps `effort: "none"` to `think: false`. Recognized Qwen 3/3.5, DeepSeek R1/v3.1, and Gemma 4 models preserve the native `low`, `medium`, `high`, and `max` levels. GPT-OSS accepts only `low`, `medium`, or `high` and cannot disable thinking.
|
|
47
|
+
|
|
48
|
+
Returned `message.thinking` content is preserved as Ollama `provider-data`, including streamed deltas, and is sent back with assistant tool calls during multi-step loops. `budgetTokens`, reasoning `mode`/`context`, and hiding thinking while an explicit effort is active are rejected instead of being silently ignored.
|
|
49
|
+
|
|
50
|
+
Use either the shared `reasoning` option or native `providerOptions.think`, not both. Shared reasoning is advertised only for recognized thinking-model families; custom or newly released models can use `providerOptions.think` as the explicit escape hatch.
|
|
51
|
+
|
|
52
|
+
## Ollama Cloud
|
|
53
|
+
|
|
54
|
+
The local daemon requires no API key. For direct Ollama Cloud access, use the official Cloud base URL and a key:
|
|
55
|
+
|
|
56
|
+
```ts
|
|
57
|
+
const ollamaCloud = createOllama({
|
|
58
|
+
baseURL: "https://ollama.com/api",
|
|
59
|
+
apiKey: process.env.OLLAMA_API_KEY
|
|
60
|
+
});
|
|
61
|
+
|
|
62
|
+
const result = await generateText({
|
|
63
|
+
model: ollamaCloud("gpt-oss:120b"),
|
|
64
|
+
prompt: "Summarize this design.",
|
|
65
|
+
reasoning: { effort: "high" }
|
|
66
|
+
});
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
`baseURL` may be the host root or end in `/api`; the adapter avoids duplicating the path. Direct `ollama.com` requests normally authenticate with `apiKey`, `OLLAMA_API_KEY`, or an explicit `Authorization` header. Custom headers can be provided through `createOllama({ headers })`, and an authenticated custom `fetch` remains supported for gateways that sign requests themselves.
|
|
70
|
+
|
|
71
|
+
Ollama Cloud does not currently support structured outputs or expose embedding models, so direct Cloud model instances advertise those capabilities as unavailable; model IDs tagged `cloud` or `*-cloud` also disable structured-output metadata. A signed-in local Ollama daemon can still proxy cloud models without passing a Cloud key to this SDK and can embed through locally installed models.
|
|
72
|
+
|
|
73
|
+
The adapter does not expose provider-hosted tools, Ollama's separate web-search/web-fetch APIs, remote MCP, audio, or files.
|
|
36
74
|
|
|
37
75
|
`createOllama()` reads `OLLAMA_HOST` and otherwise defaults to `http://localhost:11434`. An explicit `baseURL` takes precedence.
|
|
38
76
|
|
package/dist/index.d.ts
CHANGED
|
@@ -1,13 +1,20 @@
|
|
|
1
1
|
import { type CallableProviderAdapter, type ProviderAdapter } from "@zhivex-ai/core";
|
|
2
2
|
export interface OllamaProviderOptions {
|
|
3
3
|
baseURL?: string;
|
|
4
|
+
apiKey?: string;
|
|
5
|
+
headers?: HeadersInit;
|
|
4
6
|
fetch?: typeof globalThis.fetch;
|
|
5
7
|
allowUnsafeEndpoints?: boolean;
|
|
6
8
|
}
|
|
7
9
|
export interface OllamaLanguageModelOptions {
|
|
8
|
-
format?: "json" | Record<string, unknown
|
|
10
|
+
format?: "json" | Record<string, unknown>;
|
|
9
11
|
keep_alive?: string | number;
|
|
12
|
+
think?: boolean | "low" | "medium" | "high" | "max";
|
|
13
|
+
logprobs?: boolean;
|
|
14
|
+
top_logprobs?: number;
|
|
15
|
+
/** @deprecated Ollama exposes `raw` only on `/api/generate`; this adapter uses `/api/chat`. */
|
|
10
16
|
raw?: boolean;
|
|
17
|
+
/** @deprecated Ollama exposes `template` only on `/api/generate`; this adapter uses `/api/chat`. */
|
|
11
18
|
template?: string;
|
|
12
19
|
options?: Record<string, unknown>;
|
|
13
20
|
[key: string]: unknown;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAoBL,KAAK,uBAAuB,EAO5B,KAAK,eAAe,EAErB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IAChC,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC;AAED,MAAM,WAAW,0BAA0B;IACzC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,KAAK,CAAC,EAAE,OAAO,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK,CAAC;IACpD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,+FAA+F;IAC/F,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,oGAAoG;IACpG,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAonBD,eAAO,MAAM,YAAY,GAAI,UAAS,qBAA0B,KAAG,uBAAuB,GAAG,eAoC5F,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { toJSONSchema } from "zod";
|
|
2
|
-
import { ConfigurationError, assertTrustedEndpoint, isLoopbackHostname, ProviderHTTPError, isCallableToolDefinition, UnsupportedFeatureError, ValidationError, createProviderAdapter, normalizeFinishReason, readErrorBodyWithLimit, readJsonWithLimit, withRetry, withTimeoutSignal } from "@zhivex-ai/core";
|
|
2
|
+
import { ConfigurationError, ParseError, assertTrustedEndpoint, isLoopbackHostname, ProviderHTTPError, isCallableToolDefinition, UnsupportedFeatureError, ValidationError, createProviderAdapter, normalizeFinishReason, providerDataPart, readErrorBodyWithLimit, readJsonWithLimit, serializeJsonValue, withRetry, withTimeoutSignal } from "@zhivex-ai/core";
|
|
3
3
|
const capabilities = {
|
|
4
4
|
streaming: true,
|
|
5
5
|
tools: true,
|
|
@@ -26,6 +26,144 @@ const capabilities = {
|
|
|
26
26
|
toolsets: false
|
|
27
27
|
}
|
|
28
28
|
};
|
|
29
|
+
const embeddingCapabilities = {
|
|
30
|
+
...capabilities,
|
|
31
|
+
streaming: false,
|
|
32
|
+
tools: false,
|
|
33
|
+
structuredOutput: false,
|
|
34
|
+
jsonMode: false,
|
|
35
|
+
parallelToolCalls: false,
|
|
36
|
+
vision: false,
|
|
37
|
+
embeddings: true
|
|
38
|
+
};
|
|
39
|
+
const isJsonObject = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
|
|
40
|
+
const parseToolArguments = (value) => {
|
|
41
|
+
let parsed = value === undefined ? {} : value;
|
|
42
|
+
if (typeof parsed === "string") {
|
|
43
|
+
try {
|
|
44
|
+
parsed = JSON.parse(parsed);
|
|
45
|
+
}
|
|
46
|
+
catch (error) {
|
|
47
|
+
throw new ParseError("Ollama tool call arguments contained invalid JSON.", { cause: error });
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
if (!isJsonObject(parsed)) {
|
|
51
|
+
throw new ValidationError("Ollama tool call arguments must be a JSON object.");
|
|
52
|
+
}
|
|
53
|
+
try {
|
|
54
|
+
return serializeJsonValue(parsed);
|
|
55
|
+
}
|
|
56
|
+
catch (error) {
|
|
57
|
+
throw new ValidationError("Ollama tool call arguments must be JSON-compatible.", { cause: error });
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
const thinkingFromMessage = (message) => message.parts
|
|
61
|
+
.filter((part) => {
|
|
62
|
+
if (part.type !== "provider-data" || part.provider !== "ollama") {
|
|
63
|
+
return false;
|
|
64
|
+
}
|
|
65
|
+
if (!isJsonObject(part.data)) {
|
|
66
|
+
return false;
|
|
67
|
+
}
|
|
68
|
+
const data = part.data;
|
|
69
|
+
return data.type === "thinking" && typeof data.thinking === "string";
|
|
70
|
+
})
|
|
71
|
+
.map((part) => part.type === "provider-data" && isJsonObject(part.data) ? String(part.data.thinking) : "")
|
|
72
|
+
.join("");
|
|
73
|
+
const isGptOssModel = (modelId) => /(?:^|[/:-])gpt-oss(?=$|[/:-])/i.test(modelId);
|
|
74
|
+
const isKnownThinkingModel = (modelId) => /(?:^|[/:-])(?:qwen3(?:\.5)?|gpt-oss|deepseek-(?:r1|v3\.1)|gemma4)(?=$|[/:-])/i.test(modelId);
|
|
75
|
+
const isCloudModel = (modelId) => /(?:^|:)(?:cloud|[^:]+-cloud)$/i.test(modelId);
|
|
76
|
+
const capabilitiesForModel = (modelId, directCloud) => ({
|
|
77
|
+
...capabilities,
|
|
78
|
+
embeddings: directCloud ? false : capabilities.embeddings,
|
|
79
|
+
structuredOutput: directCloud || isCloudModel(modelId) ? false : capabilities.structuredOutput,
|
|
80
|
+
jsonMode: directCloud || isCloudModel(modelId) ? false : capabilities.jsonMode,
|
|
81
|
+
reasoning: isKnownThinkingModel(modelId),
|
|
82
|
+
reasoningEfforts: isKnownThinkingModel(modelId)
|
|
83
|
+
? isGptOssModel(modelId)
|
|
84
|
+
? ["low", "medium", "high"]
|
|
85
|
+
: ["none", "low", "medium", "high", "max"]
|
|
86
|
+
: undefined
|
|
87
|
+
});
|
|
88
|
+
const apiEndpoint = (baseURL, endpoint) => {
|
|
89
|
+
const url = new URL(baseURL);
|
|
90
|
+
const path = url.pathname.replace(/\/+$/, "");
|
|
91
|
+
url.pathname = `${path.endsWith("/api") ? path : `${path}/api`}/${endpoint}`.replace(/\/{2,}/g, "/");
|
|
92
|
+
url.search = "";
|
|
93
|
+
url.hash = "";
|
|
94
|
+
return url.toString();
|
|
95
|
+
};
|
|
96
|
+
const jsonHeaders = (configuredHeaders, apiKey) => {
|
|
97
|
+
const headers = new Headers(configuredHeaders);
|
|
98
|
+
headers.set("content-type", "application/json");
|
|
99
|
+
if (apiKey) {
|
|
100
|
+
headers.set("authorization", `Bearer ${apiKey}`);
|
|
101
|
+
}
|
|
102
|
+
return headers;
|
|
103
|
+
};
|
|
104
|
+
const providerErrorFromPayload = (payload, fallbackStatus, streaming) => {
|
|
105
|
+
const status = typeof payload.status === "number" && payload.status >= 400 && payload.status <= 599
|
|
106
|
+
? payload.status
|
|
107
|
+
: fallbackStatus >= 400 && fallbackStatus <= 599
|
|
108
|
+
? fallbackStatus
|
|
109
|
+
: 500;
|
|
110
|
+
return new ProviderHTTPError(streaming ? "Ollama streaming request failed." : "Ollama request failed.", status, { responseBody: JSON.stringify(payload) });
|
|
111
|
+
};
|
|
112
|
+
const validateNativeThink = (value) => {
|
|
113
|
+
if (value !== undefined &&
|
|
114
|
+
typeof value !== "boolean" &&
|
|
115
|
+
value !== "low" &&
|
|
116
|
+
value !== "medium" &&
|
|
117
|
+
value !== "high" &&
|
|
118
|
+
value !== "max") {
|
|
119
|
+
throw new ValidationError('Ollama "think" must be a boolean or "low", "medium", "high", or "max".');
|
|
120
|
+
}
|
|
121
|
+
};
|
|
122
|
+
const mapReasoning = (modelId, input) => {
|
|
123
|
+
const reasoning = input.reasoning;
|
|
124
|
+
const nativeThink = input.providerOptions?.think;
|
|
125
|
+
validateNativeThink(nativeThink);
|
|
126
|
+
if (!reasoning) {
|
|
127
|
+
if (isGptOssModel(modelId) && (typeof nativeThink === "boolean" || nativeThink === "max")) {
|
|
128
|
+
throw new UnsupportedFeatureError('Ollama GPT-OSS models require "think" to be "low", "medium", or "high".');
|
|
129
|
+
}
|
|
130
|
+
return nativeThink;
|
|
131
|
+
}
|
|
132
|
+
if (nativeThink !== undefined) {
|
|
133
|
+
throw new ValidationError('Do not combine shared "reasoning" with Ollama "providerOptions.think".');
|
|
134
|
+
}
|
|
135
|
+
if (!isKnownThinkingModel(modelId)) {
|
|
136
|
+
throw new UnsupportedFeatureError(`Provider "ollama" model "${modelId}" is not a recognized thinking model; use "providerOptions.think" for custom models.`);
|
|
137
|
+
}
|
|
138
|
+
if (reasoning.budgetTokens !== undefined) {
|
|
139
|
+
throw new UnsupportedFeatureError('Provider "ollama" does not support "reasoning.budgetTokens".');
|
|
140
|
+
}
|
|
141
|
+
if (reasoning.mode !== undefined || reasoning.context !== undefined) {
|
|
142
|
+
throw new UnsupportedFeatureError('Provider "ollama" does not support "reasoning.mode" or "reasoning.context".');
|
|
143
|
+
}
|
|
144
|
+
const effort = reasoning.effort;
|
|
145
|
+
if (effort === "minimal" || effort === "xhigh") {
|
|
146
|
+
throw new UnsupportedFeatureError(`Provider "ollama" does not support reasoning effort "${effort}".`);
|
|
147
|
+
}
|
|
148
|
+
if (effort === "none" && reasoning.includeThoughts) {
|
|
149
|
+
throw new UnsupportedFeatureError('Provider "ollama" cannot include thinking when reasoning effort is "none".');
|
|
150
|
+
}
|
|
151
|
+
if (effort && effort !== "none" && reasoning.includeThoughts === false) {
|
|
152
|
+
throw new UnsupportedFeatureError('Provider "ollama" cannot hide thinking while an explicit reasoning effort is enabled.');
|
|
153
|
+
}
|
|
154
|
+
const think = effort === "none"
|
|
155
|
+
? false
|
|
156
|
+
: effort
|
|
157
|
+
? effort
|
|
158
|
+
: reasoning.includeThoughts;
|
|
159
|
+
if (think === undefined) {
|
|
160
|
+
throw new ValidationError('The Ollama "reasoning" config must include "effort" or "includeThoughts".');
|
|
161
|
+
}
|
|
162
|
+
if (isGptOssModel(modelId) && (typeof think === "boolean" || think === "max")) {
|
|
163
|
+
throw new UnsupportedFeatureError('Ollama GPT-OSS models require reasoning effort "low", "medium", or "high".');
|
|
164
|
+
}
|
|
165
|
+
return think;
|
|
166
|
+
};
|
|
29
167
|
const parseDataUrl = (value) => {
|
|
30
168
|
const match = value.match(/^data:(image\/[a-zA-Z0-9.+-]+);base64,(.+)$/);
|
|
31
169
|
if (!match) {
|
|
@@ -39,6 +177,7 @@ const mapMessages = (messages) => messages.map((message) => {
|
|
|
39
177
|
return {
|
|
40
178
|
role: "tool",
|
|
41
179
|
tool_name: toolResult?.type === "tool-result" ? toolResult.toolResult.toolName : undefined,
|
|
180
|
+
tool_call_id: toolResult?.type === "tool-result" ? toolResult.toolResult.toolCallId : undefined,
|
|
42
181
|
content: toolResult?.type === "tool-result"
|
|
43
182
|
? JSON.stringify(toolResult.toolResult.isError ? toolResult.toolResult.error : toolResult.toolResult.output)
|
|
44
183
|
: ""
|
|
@@ -57,13 +196,16 @@ const mapMessages = (messages) => messages.map((message) => {
|
|
|
57
196
|
id: part.toolCall.id ?? `${part.toolCall.name}-${index}`,
|
|
58
197
|
type: "function",
|
|
59
198
|
function: {
|
|
199
|
+
index,
|
|
60
200
|
name: part.toolCall.name,
|
|
61
|
-
arguments:
|
|
201
|
+
arguments: parseToolArguments(part.toolCall.input)
|
|
62
202
|
}
|
|
63
203
|
}));
|
|
204
|
+
const thinking = message.role === "assistant" ? thinkingFromMessage(message) : "";
|
|
64
205
|
return {
|
|
65
206
|
role: message.role,
|
|
66
207
|
content: text,
|
|
208
|
+
...(thinking ? { thinking } : {}),
|
|
67
209
|
...(images.length ? { images } : {}),
|
|
68
210
|
...(toolCalls.length ? { tool_calls: toolCalls } : {})
|
|
69
211
|
};
|
|
@@ -94,15 +236,19 @@ const mapFormat = (input) => {
|
|
|
94
236
|
const parseAssistantMessage = (message) => ({
|
|
95
237
|
role: "assistant",
|
|
96
238
|
parts: [
|
|
239
|
+
...(typeof message?.thinking === "string" && message.thinking
|
|
240
|
+
? [providerDataPart("ollama", { type: "thinking", thinking: message.thinking })]
|
|
241
|
+
: []),
|
|
97
242
|
...(typeof message?.content === "string" && message.content ? [{ type: "text", text: message.content }] : []),
|
|
98
|
-
...((message?.tool_calls
|
|
243
|
+
...((Array.isArray(message?.tool_calls) ? message.tool_calls : []).map((call, index) => ({
|
|
99
244
|
type: "tool-call",
|
|
100
245
|
toolCall: {
|
|
101
|
-
id: call.id ??
|
|
246
|
+
id: call.id ??
|
|
247
|
+
`${call.function?.name ?? "tool"}-${typeof call.function?.index === "number" ? call.function.index : index}`,
|
|
102
248
|
name: call.function?.name ?? "tool",
|
|
103
|
-
input:
|
|
249
|
+
input: parseToolArguments(call.function?.arguments)
|
|
104
250
|
}
|
|
105
|
-
}))
|
|
251
|
+
})))
|
|
106
252
|
]
|
|
107
253
|
});
|
|
108
254
|
const parseJson = async (response) => {
|
|
@@ -112,11 +258,15 @@ const parseJson = async (response) => {
|
|
|
112
258
|
responseBody: body
|
|
113
259
|
});
|
|
114
260
|
}
|
|
115
|
-
|
|
261
|
+
const json = await readJsonWithLimit(response, {
|
|
116
262
|
maxBytes: 128 * 1024 * 1024,
|
|
117
263
|
provider: "ollama",
|
|
118
264
|
endpoint: response.url || undefined
|
|
119
265
|
});
|
|
266
|
+
if (isJsonObject(json) && typeof json.error === "string") {
|
|
267
|
+
throw providerErrorFromPayload(json, response.status, false);
|
|
268
|
+
}
|
|
269
|
+
return json;
|
|
120
270
|
};
|
|
121
271
|
const parseJsonLines = async function* (response) {
|
|
122
272
|
if (!response.ok) {
|
|
@@ -147,7 +297,12 @@ const parseJsonLines = async function* (response) {
|
|
|
147
297
|
const line = buffer.slice(0, newlineIndex).trim();
|
|
148
298
|
buffer = buffer.slice(newlineIndex + 1);
|
|
149
299
|
if (line) {
|
|
150
|
-
|
|
300
|
+
const json = JSON.parse(line);
|
|
301
|
+
if (isJsonObject(json) && typeof json.error === "string") {
|
|
302
|
+
await reader.cancel("Ollama streaming request failed.").catch(() => { });
|
|
303
|
+
throw providerErrorFromPayload(json, response.status, true);
|
|
304
|
+
}
|
|
305
|
+
yield json;
|
|
151
306
|
}
|
|
152
307
|
newlineIndex = buffer.indexOf("\n");
|
|
153
308
|
}
|
|
@@ -155,7 +310,11 @@ const parseJsonLines = async function* (response) {
|
|
|
155
310
|
buffer += decoder.decode();
|
|
156
311
|
const finalLine = buffer.trim();
|
|
157
312
|
if (finalLine) {
|
|
158
|
-
|
|
313
|
+
const json = JSON.parse(finalLine);
|
|
314
|
+
if (isJsonObject(json) && typeof json.error === "string") {
|
|
315
|
+
throw providerErrorFromPayload(json, response.status, true);
|
|
316
|
+
}
|
|
317
|
+
yield json;
|
|
159
318
|
}
|
|
160
319
|
}
|
|
161
320
|
catch (error) {
|
|
@@ -184,21 +343,39 @@ const normalizeOllamaError = (error) => {
|
|
|
184
343
|
class OllamaLanguageModel {
|
|
185
344
|
modelId;
|
|
186
345
|
baseURL;
|
|
346
|
+
apiKey;
|
|
347
|
+
configuredHeaders;
|
|
187
348
|
fetcher;
|
|
188
349
|
provider = "ollama";
|
|
189
|
-
capabilities
|
|
190
|
-
constructor(modelId, baseURL, fetcher) {
|
|
350
|
+
capabilities;
|
|
351
|
+
constructor(modelId, baseURL, apiKey, configuredHeaders, fetcher, directCloud) {
|
|
191
352
|
this.modelId = modelId;
|
|
192
353
|
this.baseURL = baseURL;
|
|
354
|
+
this.apiKey = apiKey;
|
|
355
|
+
this.configuredHeaders = configuredHeaders;
|
|
193
356
|
this.fetcher = fetcher;
|
|
357
|
+
this.capabilities = capabilitiesForModel(modelId, directCloud);
|
|
194
358
|
}
|
|
195
359
|
toRequestBody(input, stream) {
|
|
360
|
+
if (input.providerOptions?.raw !== undefined || input.providerOptions?.template !== undefined) {
|
|
361
|
+
throw new UnsupportedFeatureError('Ollama "raw" and "template" options belong to `/api/generate`; this adapter uses `/api/chat`.');
|
|
362
|
+
}
|
|
363
|
+
const providerFormat = input.providerOptions?.format;
|
|
364
|
+
if (typeof providerFormat === "string" && providerFormat !== "json") {
|
|
365
|
+
throw new ValidationError('Ollama chat "format" must be "json" or a JSON Schema object.');
|
|
366
|
+
}
|
|
367
|
+
const topLogprobs = input.providerOptions?.top_logprobs;
|
|
368
|
+
if (topLogprobs !== undefined &&
|
|
369
|
+
(typeof topLogprobs !== "number" || !Number.isInteger(topLogprobs) || topLogprobs < 0 || topLogprobs > 20)) {
|
|
370
|
+
throw new ValidationError('Ollama "top_logprobs" must be an integer between 0 and 20.');
|
|
371
|
+
}
|
|
196
372
|
return {
|
|
197
373
|
...input.providerOptions,
|
|
198
374
|
model: this.modelId,
|
|
199
375
|
messages: mapMessages(input.messages),
|
|
200
376
|
tools: mapTools(input.tools),
|
|
201
377
|
format: mapFormat(input) ?? input.providerOptions?.format,
|
|
378
|
+
think: mapReasoning(this.modelId, input),
|
|
202
379
|
options: {
|
|
203
380
|
...(typeof input.providerOptions?.options === "object" && input.providerOptions?.options
|
|
204
381
|
? input.providerOptions.options
|
|
@@ -212,12 +389,9 @@ class OllamaLanguageModel {
|
|
|
212
389
|
async generate(input) {
|
|
213
390
|
const { signal, cleanup } = withTimeoutSignal(input);
|
|
214
391
|
try {
|
|
215
|
-
|
|
216
|
-
throw new UnsupportedFeatureError('Provider "ollama" does not support "reasoning".');
|
|
217
|
-
}
|
|
218
|
-
const response = await withRetry(() => this.fetcher(`${this.baseURL}/api/chat`, {
|
|
392
|
+
const response = await withRetry(() => this.fetcher(apiEndpoint(this.baseURL, "chat"), {
|
|
219
393
|
method: "POST",
|
|
220
|
-
headers:
|
|
394
|
+
headers: jsonHeaders(this.configuredHeaders, this.apiKey),
|
|
221
395
|
signal,
|
|
222
396
|
body: JSON.stringify(this.toRequestBody(input, false))
|
|
223
397
|
}), input);
|
|
@@ -250,12 +424,9 @@ class OllamaLanguageModel {
|
|
|
250
424
|
async stream(input) {
|
|
251
425
|
const { signal, cleanup } = withTimeoutSignal(input);
|
|
252
426
|
try {
|
|
253
|
-
|
|
254
|
-
throw new UnsupportedFeatureError('Provider "ollama" does not support "reasoning".');
|
|
255
|
-
}
|
|
256
|
-
const response = await withRetry(() => this.fetcher(`${this.baseURL}/api/chat`, {
|
|
427
|
+
const response = await withRetry(() => this.fetcher(apiEndpoint(this.baseURL, "chat"), {
|
|
257
428
|
method: "POST",
|
|
258
|
-
headers:
|
|
429
|
+
headers: jsonHeaders(this.configuredHeaders, this.apiKey),
|
|
259
430
|
signal,
|
|
260
431
|
body: JSON.stringify(this.toRequestBody(input, true))
|
|
261
432
|
}), input);
|
|
@@ -276,6 +447,13 @@ class OllamaLanguageModel {
|
|
|
276
447
|
toolCall: part.toolCall
|
|
277
448
|
};
|
|
278
449
|
}
|
|
450
|
+
if (part.type === "provider-data") {
|
|
451
|
+
yield {
|
|
452
|
+
type: "provider-data",
|
|
453
|
+
provider: part.provider,
|
|
454
|
+
data: part.data
|
|
455
|
+
};
|
|
456
|
+
}
|
|
279
457
|
}
|
|
280
458
|
if (json.done) {
|
|
281
459
|
yield {
|
|
@@ -305,13 +483,21 @@ class OllamaLanguageModel {
|
|
|
305
483
|
class OllamaEmbeddingModel {
|
|
306
484
|
modelId;
|
|
307
485
|
baseURL;
|
|
486
|
+
apiKey;
|
|
487
|
+
configuredHeaders;
|
|
308
488
|
fetcher;
|
|
309
489
|
provider = "ollama";
|
|
310
|
-
capabilities
|
|
311
|
-
constructor(modelId, baseURL, fetcher) {
|
|
490
|
+
capabilities;
|
|
491
|
+
constructor(modelId, baseURL, apiKey, configuredHeaders, fetcher, directCloud) {
|
|
312
492
|
this.modelId = modelId;
|
|
313
493
|
this.baseURL = baseURL;
|
|
494
|
+
this.apiKey = apiKey;
|
|
495
|
+
this.configuredHeaders = configuredHeaders;
|
|
314
496
|
this.fetcher = fetcher;
|
|
497
|
+
this.capabilities = {
|
|
498
|
+
...embeddingCapabilities,
|
|
499
|
+
embeddings: !directCloud
|
|
500
|
+
};
|
|
315
501
|
}
|
|
316
502
|
async embed(input) {
|
|
317
503
|
const { signal, cleanup } = withTimeoutSignal(input);
|
|
@@ -322,9 +508,9 @@ class OllamaEmbeddingModel {
|
|
|
322
508
|
return value;
|
|
323
509
|
});
|
|
324
510
|
try {
|
|
325
|
-
const response = await withRetry(() => this.fetcher(
|
|
511
|
+
const response = await withRetry(() => this.fetcher(apiEndpoint(this.baseURL, "embed"), {
|
|
326
512
|
method: "POST",
|
|
327
|
-
headers:
|
|
513
|
+
headers: jsonHeaders(this.configuredHeaders, this.apiKey),
|
|
328
514
|
signal,
|
|
329
515
|
body: JSON.stringify({
|
|
330
516
|
model: this.modelId,
|
|
@@ -366,11 +552,20 @@ export const createOllama = (options = {}) => {
|
|
|
366
552
|
allowLoopback: true,
|
|
367
553
|
allowUnsafe: options.allowUnsafeEndpoints
|
|
368
554
|
}).toString().replace(/\/+$/, "");
|
|
555
|
+
if (options.apiKey !== undefined && !options.apiKey.trim()) {
|
|
556
|
+
throw new ConfigurationError("Ollama apiKey must be a non-empty string when provided.");
|
|
557
|
+
}
|
|
558
|
+
const directCloud = candidate.hostname === "ollama.com";
|
|
559
|
+
const configuredHeaders = new Headers(options.headers);
|
|
560
|
+
const cloudEnvironmentKey = directCloud && !configuredHeaders.has("authorization")
|
|
561
|
+
? process.env.OLLAMA_API_KEY?.trim() || undefined
|
|
562
|
+
: undefined;
|
|
563
|
+
const apiKey = options.apiKey?.trim() ?? cloudEnvironmentKey;
|
|
369
564
|
const fetcher = options.fetch ?? globalThis.fetch;
|
|
370
565
|
return createProviderAdapter({
|
|
371
566
|
name: "ollama",
|
|
372
|
-
languageModel: (modelId) => new OllamaLanguageModel(modelId, baseURL, fetcher),
|
|
373
|
-
embeddingModel: (modelId) => new OllamaEmbeddingModel(modelId, baseURL, fetcher)
|
|
567
|
+
languageModel: (modelId) => new OllamaLanguageModel(modelId, baseURL, apiKey, configuredHeaders, fetcher, directCloud),
|
|
568
|
+
embeddingModel: (modelId) => new OllamaEmbeddingModel(modelId, baseURL, apiKey, configuredHeaders, fetcher, directCloud)
|
|
374
569
|
});
|
|
375
570
|
};
|
|
376
571
|
//# sourceMappingURL=index.js.map
|
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":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,KAAK,CAAC;AAEnC,OAAO,EACL,kBAAkB,EAClB,UAAU,EACV,qBAAqB,EACrB,kBAAkB,EAIlB,iBAAiB,EACjB,wBAAwB,EACxB,uBAAuB,EACvB,eAAe,EACf,qBAAqB,EACrB,qBAAqB,EACrB,gBAAgB,EAChB,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EAClB,SAAS,EACT,iBAAiB,EAUlB,MAAM,iBAAiB,CAAC;AAwBzB,MAAM,YAAY,GAAsB;IACtC,SAAS,EAAE,IAAI;IACf,KAAK,EAAE,IAAI;IACX,gBAAgB,EAAE,IAAI;IACtB,QAAQ,EAAE,IAAI;IACd,UAAU,EAAE,KAAK;IACjB,iBAAiB,EAAE,IAAI;IACvB,MAAM,EAAE,IAAI;IACZ,KAAK,EAAE,KAAK;IACZ,UAAU,EAAE,KAAK;IACjB,WAAW,EAAE,KAAK;IAClB,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,KAAK;IAChB,SAAS,EAAE,KAAK;IAChB,iBAAiB,EAAE;QACjB,WAAW,EAAE,QAAQ;QACrB,cAAc,EAAE,KAAK;QACrB,gBAAgB,EAAE,KAAK;QACvB,eAAe,EAAE,KAAK;QACtB,gBAAgB,EAAE,KAAK;QACvB,SAAS,EAAE,KAAK;QAChB,WAAW,EAAE,KAAK;QAClB,aAAa,EAAE,KAAK;QACpB,QAAQ,EAAE,KAAK;KAChB;CACF,CAAC;AAEF,MAAM,qBAAqB,GAAsB;IAC/C,GAAG,YAAY;IACf,SAAS,EAAE,KAAK;IAChB,KAAK,EAAE,KAAK;IACZ,gBAAgB,EAAE,KAAK;IACvB,QAAQ,EAAE,KAAK;IACf,iBAAiB,EAAE,KAAK;IACxB,MAAM,EAAE,KAAK;IACb,UAAU,EAAE,IAAI;CACjB,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,KAAc,EAAoC,EAAE,CACxE,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAEvE,MAAM,kBAAkB,GAAG,CAAC,KAAc,EAA6B,EAAE;IACvE,IAAI,MAAM,GAAY,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;IACvD,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAY,CAAC;QACzC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,UAAU,CAAC,oDAAoD,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/F,CAAC;IACH,CAAC;IAED,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,eAAe,CAAC,mDAAmD,CAAC,CAAC;IACjF,CAAC;IAED,IAAI,CAAC;QACH,OAAO,kBAAkB,CAAC,MAAM,CAA8B,CAAC;IACjE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,eAAe,CAAC,qDAAqD,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IACrG,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,OAAqB,EAAE,EAAE,CACpD,OAAO,CAAC,KAAK;KACV,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;IACf,IAAI,IAAI,CAAC,IAAI,KAAK,eAAe,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAChE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IACvB,OAAO,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC;AACvE,CAAC,CAAC;KACD,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACZ,IAAI,CAAC,IAAI,KAAK,eAAe,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAC3F;KACA,IAAI,CAAC,EAAE,CAAC,CAAC;AAEd,MAAM,aAAa,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,gCAAgC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAE1F,MAAM,oBAAoB,GAAG,CAAC,OAAe,EAAE,EAAE,CAC/C,+EAA+E,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAEhG,MAAM,YAAY,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,gCAAgC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAEzF,MAAM,oBAAoB,GAAG,CAAC,OAAe,EAAE,WAAoB,EAAqB,EAAE,CAAC,CAAC;IAC1F,GAAG,YAAY;IACf,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,UAAU;IACzD,gBAAgB,EAAE,WAAW,IAAI,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,gBAAgB;IAC9F,QAAQ,EAAE,WAAW,IAAI,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ;IAC9E,SAAS,EAAE,oBAAoB,CAAC,OAAO,CAAC;IACxC,gBAAgB,EAAE,oBAAoB,CAAC,OAAO,CAAC;QAC7C,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC;YACtB,CAAC,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC;YAC3B,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC;QAC5C,CAAC,CAAC,SAAS;CACd,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG,CAAC,OAAe,EAAE,QAA0B,EAAE,EAAE;IAClE,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC9C,GAAG,CAAC,QAAQ,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,MAAM,IAAI,QAAQ,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IACrG,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC;IAChB,GAAG,CAAC,IAAI,GAAG,EAAE,CAAC;IACd,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;AACxB,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,iBAA0B,EAAE,MAA0B,EAAE,EAAE;IAC7E,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC/C,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;IAChD,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,MAAM,EAAE,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,wBAAwB,GAAG,CAAC,OAAgC,EAAE,cAAsB,EAAE,SAAkB,EAAE,EAAE;IAChH,MAAM,MAAM,GACV,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,IAAI,GAAG,IAAI,OAAO,CAAC,MAAM,IAAI,GAAG;QAClF,CAAC,CAAC,OAAO,CAAC,MAAM;QAChB,CAAC,CAAC,cAAc,IAAI,GAAG,IAAI,cAAc,IAAI,GAAG;YAC9C,CAAC,CAAC,cAAc;YAChB,CAAC,CAAC,GAAG,CAAC;IACZ,OAAO,IAAI,iBAAiB,CAC1B,SAAS,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC,CAAC,wBAAwB,EACzE,MAAM,EACN,EAAE,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAC1C,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,KAAc,EAAE,EAAE;IAC7C,IACE,KAAK,KAAK,SAAS;QACnB,OAAO,KAAK,KAAK,SAAS;QAC1B,KAAK,KAAK,KAAK;QACf,KAAK,KAAK,QAAQ;QAClB,KAAK,KAAK,MAAM;QAChB,KAAK,KAAK,KAAK,EACf,CAAC;QACD,MAAM,IAAI,eAAe,CAAC,wEAAwE,CAAC,CAAC;IACtG,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,OAAe,EAAE,KAAyB,EAAE,EAAE;IAClE,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;IAClC,MAAM,WAAW,GAAG,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC;IACjD,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAEjC,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,IAAI,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,KAAK,CAAC,EAAE,CAAC;YAC1F,MAAM,IAAI,uBAAuB,CAC/B,yEAAyE,CAC1E,CAAC;QACJ,CAAC;QACD,OAAO,WAAsE,CAAC;IAChF,CAAC;IACD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,MAAM,IAAI,eAAe,CAAC,wEAAwE,CAAC,CAAC;IACtG,CAAC;IACD,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,uBAAuB,CAC/B,4BAA4B,OAAO,sFAAsF,CAC1H,CAAC;IACJ,CAAC;IACD,IAAI,SAAS,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACzC,MAAM,IAAI,uBAAuB,CAAC,8DAA8D,CAAC,CAAC;IACpG,CAAC;IACD,IAAI,SAAS,CAAC,IAAI,KAAK,SAAS,IAAI,SAAS,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACpE,MAAM,IAAI,uBAAuB,CAAC,6EAA6E,CAAC,CAAC;IACnH,CAAC;IAED,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;IAChC,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;QAC/C,MAAM,IAAI,uBAAuB,CAAC,wDAAwD,MAAM,IAAI,CAAC,CAAC;IACxG,CAAC;IACD,IAAI,MAAM,KAAK,MAAM,IAAI,SAAS,CAAC,eAAe,EAAE,CAAC;QACnD,MAAM,IAAI,uBAAuB,CAC/B,4EAA4E,CAC7E,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,IAAI,MAAM,KAAK,MAAM,IAAI,SAAS,CAAC,eAAe,KAAK,KAAK,EAAE,CAAC;QACvE,MAAM,IAAI,uBAAuB,CAC/B,uFAAuF,CACxF,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GACT,MAAM,KAAK,MAAM;QACf,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,MAAM;YACN,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC;IAClC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,MAAM,IAAI,eAAe,CAAC,2EAA2E,CAAC,CAAC;IACzG,CAAC;IACD,IAAI,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,KAAK,CAAC,EAAE,CAAC;QAC9E,MAAM,IAAI,uBAAuB,CAC/B,4EAA4E,CAC7E,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,KAAa,EAAE,EAAE;IACrC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACzE,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,eAAe,CAAC,oDAAoD,CAAC,CAAC;IAClF,CAAC;IACD,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,QAAwB,EAAE,EAAE,CAC/C,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;IACvB,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC5B,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC;QAC7E,OAAO;YACL,IAAI,EAAE,MAAM;YACZ,SAAS,EAAE,UAAU,EAAE,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;YAC1F,YAAY,EAAE,UAAU,EAAE,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;YAC/F,OAAO,EACL,UAAU,EAAE,IAAI,KAAK,aAAa;gBAChC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC;gBAC5G,CAAC,CAAC,EAAE;SACT,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK;SACvB,MAAM,CAAC,CAAC,IAAI,EAAoE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC;SACxG,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;SACxB,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK;SACzB,MAAM,CAAC,CAAC,IAAI,EAAqE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC;SAC1G,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3C,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK;SAC5B,MAAM,CAAC,CAAC,IAAI,EAAyE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC;SAClH,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QACrB,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,KAAK,EAAE;QACxD,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,KAAK;YACL,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;YACxB,SAAS,EAAE,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;SACnD;KACF,CAAC,CAAC,CAAC;IACN,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAElF,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,OAAO,EAAE,IAAI;QACb,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACvD,CAAC;AACJ,CAAC,CAAC,CAAC;AAEL,MAAM,QAAQ,GAAG,CAAC,KAAkC,EAAE,EAAE,CACtD,KAAK;IACH,CAAC,CAAC,CAAC,GAAG,EAAE;QACJ,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC7C,MAAM,aAAa,GAAG,eAAe,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC;QACvE,IAAI,aAAa,CAAC,MAAM,KAAK,eAAe,CAAC,MAAM,EAAE,CAAC;YACpD,MAAM,IAAI,uBAAuB,CAAC,kDAAkD,CAAC,CAAC;QACxF,CAAC;QAED,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAClC,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE;gBACR,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,UAAU,EAAE,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC;aACtC;SACF,CAAC,CAAC,CAAC;IACN,CAAC,CAAC,EAAE;IACN,CAAC,CAAC,SAAS,CAAC;AAEhB,MAAM,SAAS,GAAG,CAAC,KAAyB,EAAE,EAAE;IAC9C,IAAI,KAAK,CAAC,gBAAgB,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC9C,OAAO,YAAY,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACrD,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAAC,OAAY,EAAE,EAAE,CAAC,CAAC;IAC/C,IAAI,EAAE,WAAoB;IAC1B,KAAK,EAAE;QACL,GAAG,CAAC,OAAO,OAAO,EAAE,QAAQ,KAAK,QAAQ,IAAI,OAAO,CAAC,QAAQ;YAC3D,CAAC,CAAC,CAAC,gBAAgB,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;YAChF,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,OAAO,OAAO,EAAE,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtH,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,KAAa,EAAE,EAAE,CAAC,CAAC;YACpG,IAAI,EAAE,WAAoB;YAC1B,QAAQ,EAAE;gBACR,EAAE,EACA,IAAI,CAAC,EAAE;oBACP,GAAG,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,MAAM,IAC9B,OAAO,IAAI,CAAC,QAAQ,EAAE,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,KACnE,EAAE;gBACJ,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,MAAM;gBACnC,KAAK,EAAE,kBAAkB,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC;aACpD;SACF,CAAC,CAAC,CAAC;KACL;CACF,CAAC,CAAC;AAEH,MAAM,SAAS,GAAG,KAAK,EAAE,QAAkB,EAAE,EAAE;IAC7C,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,GAAG,MAAM,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QACpD,MAAM,IAAI,iBAAiB,CAAC,qCAAqC,QAAQ,CAAC,MAAM,GAAG,EAAE,QAAQ,CAAC,MAAM,EAAE;YACpG,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;IACL,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,iBAAiB,CAAM,QAAQ,EAAE;QAClD,QAAQ,EAAE,GAAG,GAAG,IAAI,GAAG,IAAI;QAC3B,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,QAAQ,CAAC,GAAG,IAAI,SAAS;KACpC,CAAC,CAAC;IACH,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QACzD,MAAM,wBAAwB,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,KAAK,SAAS,CAAC,EAAE,QAAkB;IACxD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,GAAG,MAAM,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QACpD,MAAM,IAAI,iBAAiB,CAAC,qCAAqC,QAAQ,CAAC,MAAM,GAAG,EAAE,QAAQ,CAAC,MAAM,EAAE;YACpG,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnB,MAAM,IAAI,eAAe,CAAC,mDAAmD,CAAC,CAAC;IACjF,CAAC;IAED,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;IACzC,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;IAClC,IAAI,MAAM,GAAG,EAAE,CAAC;IAEhB,IAAI,CAAC;QACH,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YAE5C,IAAI,IAAI,EAAE,CAAC;gBACT,MAAM;YACR,CAAC;YAED,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;YAClD,IAAI,MAAM,CAAC,MAAM,GAAG,IAAI,GAAG,IAAI,EAAE,CAAC;gBAChC,MAAM,MAAM,CAAC,MAAM,CAAC,+CAA+C,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBACrF,MAAM,IAAI,eAAe,CAAC,6DAA6D,CAAC,CAAC;YAC3F,CAAC;YAED,IAAI,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACxC,OAAO,YAAY,KAAK,CAAC,CAAC,EAAE,CAAC;gBAC3B,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,IAAI,EAAE,CAAC;gBAClD,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;gBAExC,IAAI,IAAI,EAAE,CAAC;oBACT,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAY,CAAC;oBACzC,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;wBACzD,MAAM,MAAM,CAAC,MAAM,CAAC,kCAAkC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;wBACxE,MAAM,wBAAwB,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;oBAC9D,CAAC;oBACD,MAAM,IAAI,CAAC;gBACb,CAAC;gBAED,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACtC,CAAC;QACH,CAAC;QAED,MAAM,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QAC3B,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAY,CAAC;YAC9C,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACzD,MAAM,wBAAwB,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAC9D,CAAC;YACD,MAAM,IAAI,CAAC;QACb,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,WAAW,EAAE,CAAC;YACjC,MAAM,IAAI,eAAe,CAAC,mDAAmD,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QACnG,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;YAAS,CAAC;QACT,MAAM,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,KAAc,EAAE,EAAE;IAC9C,IAAI,KAAK,YAAY,iBAAiB,EAAE,CAAC;QACvC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB,CAAC;IAClF,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QAC3F,OAAO,IAAI,eAAe,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;QAChG,OAAO,IAAI,kBAAkB,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;AAC7D,CAAC,CAAC;AAEF,MAAM,mBAAmB;IAKZ;IACQ;IACA;IACA;IACA;IARV,QAAQ,GAAG,QAAQ,CAAC;IACpB,YAAY,CAAoB;IAEzC,YACW,OAAe,EACP,OAAe,EACf,MAA0B,EAC1B,iBAA0B,EAC1B,OAAgC,EACjD,WAAoB;QALX,YAAO,GAAP,OAAO,CAAQ;QACP,YAAO,GAAP,OAAO,CAAQ;QACf,WAAM,GAAN,MAAM,CAAoB;QAC1B,sBAAiB,GAAjB,iBAAiB,CAAS;QAC1B,YAAO,GAAP,OAAO,CAAyB;QAGjD,IAAI,CAAC,YAAY,GAAG,oBAAoB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACjE,CAAC;IAEO,aAAa,CAAC,KAAyB,EAAE,MAAe;QAC9D,IAAI,KAAK,CAAC,eAAe,EAAE,GAAG,KAAK,SAAS,IAAI,KAAK,CAAC,eAAe,EAAE,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC9F,MAAM,IAAI,uBAAuB,CAC/B,+FAA+F,CAChG,CAAC;QACJ,CAAC;QACD,MAAM,cAAc,GAAG,KAAK,CAAC,eAAe,EAAE,MAAM,CAAC;QACrD,IAAI,OAAO,cAAc,KAAK,QAAQ,IAAI,cAAc,KAAK,MAAM,EAAE,CAAC;YACpE,MAAM,IAAI,eAAe,CAAC,8DAA8D,CAAC,CAAC;QAC5F,CAAC;QACD,MAAM,WAAW,GAAG,KAAK,CAAC,eAAe,EAAE,YAAY,CAAC;QACxD,IACE,WAAW,KAAK,SAAS;YACzB,CAAC,OAAO,WAAW,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,WAAW,GAAG,CAAC,IAAI,WAAW,GAAG,EAAE,CAAC,EAC1G,CAAC;YACD,MAAM,IAAI,eAAe,CAAC,4DAA4D,CAAC,CAAC;QAC1F,CAAC;QAED,OAAO;YACL,GAAG,KAAK,CAAC,eAAe;YACxB,KAAK,EAAE,IAAI,CAAC,OAAO;YACnB,QAAQ,EAAE,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC;YACrC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC;YAC5B,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,eAAe,EAAE,MAAM;YACzD,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC;YACxC,OAAO,EAAE;gBACP,GAAG,CAAC,OAAO,KAAK,CAAC,eAAe,EAAE,OAAO,KAAK,QAAQ,IAAI,KAAK,CAAC,eAAe,EAAE,OAAO;oBACtF,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,OAAO;oBAC/B,CAAC,CAAC,EAAE,CAAC;gBACP,WAAW,EAAE,KAAK,CAAC,SAAS;gBAC5B,WAAW,EAAE,KAAK,CAAC,WAAW;aAC/B;YACD,MAAM;SACP,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAAyB;QACtC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAErD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,SAAS,CAC9B,GAAG,EAAE,CACH,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE;gBAC9C,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,MAAM,CAAC;gBACzD,MAAM;gBACN,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;aACvD,CAAC,EACJ,KAAK,CACN,CAAC;YAEF,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC;YACvC,MAAM,gBAAgB,GAAG,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC7D,MAAM,IAAI,GAAG,gBAAgB,CAAC,KAAK;iBAChC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC;iBACtC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;iBACxB,IAAI,CAAC,EAAE,CAAC,CAAC;YAEZ,OAAO;gBACL,QAAQ,EAAE,CAAC,gBAAgB,CAAC;gBAC5B,IAAI;gBACJ,YAAY,EAAE,qBAAqB,CAAC,IAAI,CAAC,WAAW,CAAC;gBACrD,oBAAoB,EAAE,IAAI,CAAC,WAAW;gBACtC,KAAK,EAAE;oBACL,WAAW,EAAE,IAAI,CAAC,iBAAiB;oBACnC,YAAY,EAAE,IAAI,CAAC,UAAU;oBAC7B,WAAW,EAAE,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC;iBACpE;gBACD,WAAW,EAAE,IAAI;aAClB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,oBAAoB,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC;gBAAS,CAAC;YACT,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAyB;QACpC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAErD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,SAAS,CAC9B,GAAG,EAAE,CACH,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE;gBAC9C,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,MAAM,CAAC;gBACzD,MAAM;gBACN,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;aACtD,CAAC,EACJ,KAAK,CACN,CAAC;YAEF,OAAO,CAAC,KAAK,SAAS,CAAC;gBACrB,IAAI,CAAC;oBACH,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;wBAClD,MAAM,gBAAgB,GAAG,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;wBAE7D,KAAK,MAAM,IAAI,IAAI,gBAAgB,CAAC,KAAK,EAAE,CAAC;4BAC1C,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gCACtC,MAAM;oCACJ,IAAI,EAAE,YAAY;oCAClB,SAAS,EAAE,IAAI,CAAC,IAAI;iCACC,CAAC;4BAC1B,CAAC;4BAED,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gCAC9B,MAAM;oCACJ,IAAI,EAAE,WAAW;oCACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;iCACF,CAAC;4BAC1B,CAAC;4BAED,IAAI,IAAI,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;gCAClC,MAAM;oCACJ,IAAI,EAAE,eAAe;oCACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;oCACvB,IAAI,EAAE,IAAI,CAAC,IAAI;iCACM,CAAC;4BAC1B,CAAC;wBACH,CAAC;wBAED,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;4BACd,MAAM;gCACJ,IAAI,EAAE,QAAQ;gCACd,YAAY,EAAE,qBAAqB,CAAC,IAAI,CAAC,WAAW,CAAC;gCACrD,oBAAoB,EAAE,IAAI,CAAC,WAAW;gCACtC,KAAK,EAAE;oCACL,WAAW,EAAE,IAAI,CAAC,iBAAiB;oCACnC,YAAY,EAAE,IAAI,CAAC,UAAU;oCAC7B,WAAW,EAAE,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC;iCACpE;6BACoB,CAAC;wBAC1B,CAAC;oBACH,CAAC;gBACH,CAAC;wBAAS,CAAC;oBACT,OAAO,EAAE,CAAC;gBACZ,CAAC;YACH,CAAC,CAAC,EAAE,CAAC;QACP,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,EAAE,CAAC;YACV,MAAM,oBAAoB,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;CACF;AAED,MAAM,oBAAoB;IAKb;IACQ;IACA;IACA;IACA;IARV,QAAQ,GAAG,QAAQ,CAAC;IACpB,YAAY,CAAoB;IAEzC,YACW,OAAe,EACP,OAAe,EACf,MAA0B,EAC1B,iBAA0B,EAC1B,OAAgC,EACjD,WAAoB;QALX,YAAO,GAAP,OAAO,CAAQ;QACP,YAAO,GAAP,OAAO,CAAQ;QACf,WAAM,GAAN,MAAM,CAAoB;QAC1B,sBAAiB,GAAjB,iBAAiB,CAAS;QAC1B,YAAO,GAAP,OAAO,CAAyB;QAGjD,IAAI,CAAC,YAAY,GAAG;YAClB,GAAG,qBAAqB;YACxB,UAAU,EAAE,CAAC,WAAW;SACzB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,KAAmH;QAC7H,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACrD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACxC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,MAAM,IAAI,uBAAuB,CAAC,iEAAiE,CAAC,CAAC;YACvG,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,SAAS,CAC9B,GAAG,EAAE,CACH,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;gBAC/C,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,MAAM,CAAC;gBACzD,MAAM;gBACN,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,KAAK,EAAE,IAAI,CAAC,OAAO;oBACnB,KAAK,EAAE,MAAM;iBACd,CAAC;aACH,CAAC,EACJ,KAAK,CACN,CAAC;YAEF,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC;YACvC,OAAO;gBACL,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,EAAE;gBACjC,KAAK,EAAE;oBACL,WAAW,EAAE,IAAI,CAAC,iBAAiB;oBACnC,WAAW,EAAE,IAAI,CAAC,iBAAiB;iBACpC;gBACD,WAAW,EAAE,IAAI;aAClB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,oBAAoB,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC;gBAAS,CAAC;YACT,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;CACF;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,UAAiC,EAAE,EAA6C,EAAE;IAC7G,MAAM,iBAAiB,GAAG,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,wBAAwB,CAAC;IACjG,IAAI,SAAc,CAAC;IACnB,IAAI,CAAC;QACH,SAAS,GAAG,IAAI,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACzC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,kBAAkB,CAAC,yCAAyC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAC5F,CAAC;IACD,MAAM,OAAO,GAAG,qBAAqB,CAAC,iBAAiB,EAAE;QACvD,KAAK,EAAE,gBAAgB;QACvB,SAAS,EACP,OAAO,CAAC,oBAAoB,IAAI,SAAS,CAAC,QAAQ,KAAK,QAAQ,IAAI,kBAAkB,CAAC,SAAS,CAAC,QAAQ,CAAC;YACvG,CAAC,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC;YACnB,CAAC,CAAC,CAAC,OAAO,CAAC;QACf,aAAa,EAAE,IAAI;QACnB,WAAW,EAAE,OAAO,CAAC,oBAAoB;KAC1C,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAClC,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;QAC3D,MAAM,IAAI,kBAAkB,CAAC,yDAAyD,CAAC,CAAC;IAC1F,CAAC;IACD,MAAM,WAAW,GAAG,SAAS,CAAC,QAAQ,KAAK,YAAY,CAAC;IACxD,MAAM,iBAAiB,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACvD,MAAM,mBAAmB,GACvB,WAAW,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,eAAe,CAAC;QACpD,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,EAAE,IAAI,SAAS;QACjD,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,mBAAmB,CAAC;IAC7D,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC;IAElD,OAAO,qBAAqB,CAAC;QAC3B,IAAI,EAAE,QAAQ;QACd,aAAa,EAAE,CAAC,OAAO,EAAE,EAAE,CACzB,IAAI,mBAAmB,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,OAAO,EAAE,WAAW,CAAC;QAC5F,cAAc,EAAE,CAAC,OAAO,EAAE,EAAE,CAC1B,IAAI,oBAAoB,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,OAAO,EAAE,WAAW,CAAC;KAC9F,CAAC,CAAC;AACL,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zhivex-ai/ollama",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "Ollama adapter for Zhivex AI SDK.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"access": "public"
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"@zhivex-ai/core": "^1.0
|
|
44
|
+
"@zhivex-ai/core": "^1.2.0",
|
|
45
45
|
"zod": "^4.4.3"
|
|
46
46
|
}
|
|
47
47
|
}
|