@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 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 llama3.2
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("llama3.2"),
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 for compatible models, and text embeddings through `ollama.embeddingModel(modelId)`. It does not expose provider-hosted tools, remote MCP, audio, files, or shared reasoning controls. Exact capabilities still depend on the locally installed Ollama model.
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> | string;
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;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAiBL,KAAK,uBAAuB,EAM5B,KAAK,eAAe,EAErB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,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,GAAG,MAAM,CAAC;IACnD,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,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;AA4YD,eAAO,MAAM,YAAY,GAAI,UAAS,qBAA0B,KAAG,uBAAuB,GAAG,eAwB5F,CAAC"}
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: JSON.stringify(part.toolCall.input)
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 ?? []).map((call, index) => ({
243
+ ...((Array.isArray(message?.tool_calls) ? message.tool_calls : []).map((call, index) => ({
99
244
  type: "tool-call",
100
245
  toolCall: {
101
- id: call.id ?? `${call.function?.name ?? "tool"}-${index}`,
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: JSON.parse(call.function?.arguments ?? "{}")
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
- return readJsonWithLimit(response, {
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
- yield JSON.parse(line);
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
- yield JSON.parse(finalLine);
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 = 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
- if (input.reasoning) {
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: { "content-type": "application/json" },
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
- if (input.reasoning) {
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: { "content-type": "application/json" },
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 = 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(`${this.baseURL}/api/embed`, {
511
+ const response = await withRetry(() => this.fetcher(apiEndpoint(this.baseURL, "embed"), {
326
512
  method: "POST",
327
- headers: { "content-type": "application/json" },
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":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,KAAK,CAAC;AAEnC,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,kBAAkB,EAIlB,iBAAiB,EACjB,wBAAwB,EACxB,uBAAuB,EACvB,eAAe,EACf,qBAAqB,EACrB,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,EACjB,SAAS,EACT,iBAAiB,EASlB,MAAM,iBAAiB,CAAC;AAiBzB,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,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,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,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;YACxB,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;SAC/C;KACF,CAAC,CAAC,CAAC;IAEN,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,OAAO,EAAE,IAAI;QACb,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,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,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,KAAa,EAAE,EAAE,CAAC,CAAC;YACjE,IAAI,EAAE,WAAoB;YAC1B,QAAQ,EAAE;gBACR,EAAE,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,MAAM,IAAI,KAAK,EAAE;gBAC1D,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,MAAM;gBACnC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,IAAI,IAAI,CAAC;aACpD;SACF,CAAC,CAAC,IAAI,EAAE,CAAC;KACX;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,OAAO,iBAAiB,CAAM,QAAQ,EAAE;QACtC,QAAQ,EAAE,GAAG,GAAG,IAAI,GAAG,IAAI;QAC3B,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,QAAQ,CAAC,GAAG,IAAI,SAAS;KACpC,CAAC,CAAC;AACL,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,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACzB,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,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC9B,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;IANV,QAAQ,GAAG,QAAQ,CAAC;IACpB,YAAY,GAAG,YAAY,CAAC;IAErC,YACW,OAAe,EACP,OAAe,EACf,OAAgC;QAFxC,YAAO,GAAP,OAAO,CAAQ;QACP,YAAO,GAAP,OAAO,CAAQ;QACf,YAAO,GAAP,OAAO,CAAyB;IAChD,CAAC;IAEI,aAAa,CAAC,KAAyB,EAAE,MAAe;QAC9D,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,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,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;gBACpB,MAAM,IAAI,uBAAuB,CAAC,iDAAiD,CAAC,CAAC;YACvF,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,SAAS,CAC9B,GAAG,EAAE,CACH,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,WAAW,EAAE;gBACvC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,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,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;gBACpB,MAAM,IAAI,uBAAuB,CAAC,iDAAiD,CAAC,CAAC;YACvF,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,SAAS,CAC9B,GAAG,EAAE,CACH,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,WAAW,EAAE;gBACvC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,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;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;IANV,QAAQ,GAAG,QAAQ,CAAC;IACpB,YAAY,GAAG,YAAY,CAAC;IAErC,YACW,OAAe,EACP,OAAe,EACf,OAAgC;QAFxC,YAAO,GAAP,OAAO,CAAQ;QACP,YAAO,GAAP,OAAO,CAAQ;QACf,YAAO,GAAP,OAAO,CAAyB;IAChD,CAAC;IAEJ,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,GAAG,IAAI,CAAC,OAAO,YAAY,EAAE;gBACxC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,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,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,CAAC,IAAI,mBAAmB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC;QAC9E,cAAc,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,oBAAoB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC;KACjF,CAAC,CAAC;AACL,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zhivex-ai/ollama",
3
- "version": "0.3.15",
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.2",
44
+ "@zhivex-ai/core": "^1.2.0",
45
45
  "zod": "^4.4.3"
46
46
  }
47
47
  }