@ai-sdk/huggingface 0.0.8 → 0.0.10

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/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # @ai-sdk/huggingface
2
2
 
3
+ ## 0.0.10
4
+
5
+ ### Patch Changes
6
+
7
+ - 1319c14: extract reasoning content
8
+
9
+ ## 0.0.9
10
+
11
+ ### Patch Changes
12
+
13
+ - Updated dependencies [056c471]
14
+ - @ai-sdk/provider-utils@3.0.17
15
+ - @ai-sdk/openai-compatible@1.0.27
16
+
3
17
  ## 0.0.8
4
18
 
5
19
  ### Patch Changes
package/dist/index.js CHANGED
@@ -306,7 +306,14 @@ var HuggingFaceResponsesLanguageModel = class {
306
306
  metadata: huggingfaceOptions == null ? void 0 : huggingfaceOptions.metadata,
307
307
  instructions: huggingfaceOptions == null ? void 0 : huggingfaceOptions.instructions,
308
308
  ...preparedTools && { tools: preparedTools },
309
- ...preparedToolChoice && { tool_choice: preparedToolChoice }
309
+ ...preparedToolChoice && { tool_choice: preparedToolChoice },
310
+ ...(huggingfaceOptions == null ? void 0 : huggingfaceOptions.reasoningEffort) != null && {
311
+ reasoning: {
312
+ ...(huggingfaceOptions == null ? void 0 : huggingfaceOptions.reasoningEffort) != null && {
313
+ effort: huggingfaceOptions.reasoningEffort
314
+ }
315
+ }
316
+ }
310
317
  };
311
318
  return { args: baseArgs, warnings };
312
319
  }
@@ -375,6 +382,20 @@ var HuggingFaceResponsesLanguageModel = class {
375
382
  }
376
383
  break;
377
384
  }
385
+ case "reasoning": {
386
+ for (const contentPart of part.content) {
387
+ content.push({
388
+ type: "reasoning",
389
+ text: contentPart.text,
390
+ providerMetadata: {
391
+ huggingface: {
392
+ itemId: part.id
393
+ }
394
+ }
395
+ });
396
+ }
397
+ break;
398
+ }
378
399
  case "mcp_call": {
379
400
  content.push({
380
401
  type: "tool-call",
@@ -529,6 +550,16 @@ var HuggingFaceResponsesLanguageModel = class {
529
550
  id: value.item.call_id,
530
551
  toolName: value.item.name
531
552
  });
553
+ } else if (value.item.type === "reasoning") {
554
+ controller.enqueue({
555
+ type: "reasoning-start",
556
+ id: value.item.id,
557
+ providerMetadata: {
558
+ huggingface: {
559
+ itemId: value.item.id
560
+ }
561
+ }
562
+ });
532
563
  }
533
564
  return;
534
565
  }
@@ -572,6 +603,21 @@ var HuggingFaceResponsesLanguageModel = class {
572
603
  }
573
604
  return;
574
605
  }
606
+ if (isReasoningDeltaChunk(value)) {
607
+ controller.enqueue({
608
+ type: "reasoning-delta",
609
+ id: value.item_id,
610
+ delta: value.delta
611
+ });
612
+ return;
613
+ }
614
+ if (isReasoningEndChunk(value)) {
615
+ controller.enqueue({
616
+ type: "reasoning-end",
617
+ id: value.item_id
618
+ });
619
+ return;
620
+ }
575
621
  if (isTextDeltaChunk(value)) {
576
622
  controller.enqueue({
577
623
  type: "text-delta",
@@ -603,8 +649,65 @@ var HuggingFaceResponsesLanguageModel = class {
603
649
  var huggingfaceResponsesProviderOptionsSchema = import_v42.z.object({
604
650
  metadata: import_v42.z.record(import_v42.z.string(), import_v42.z.string()).optional(),
605
651
  instructions: import_v42.z.string().optional(),
606
- strictJsonSchema: import_v42.z.boolean().optional()
652
+ strictJsonSchema: import_v42.z.boolean().optional(),
653
+ reasoningEffort: import_v42.z.string().optional()
607
654
  });
655
+ var huggingfaceResponsesOutputSchema = import_v42.z.discriminatedUnion("type", [
656
+ import_v42.z.object({
657
+ type: import_v42.z.literal("message"),
658
+ id: import_v42.z.string(),
659
+ role: import_v42.z.string().optional(),
660
+ status: import_v42.z.string().optional(),
661
+ content: import_v42.z.array(
662
+ import_v42.z.object({
663
+ type: import_v42.z.literal("output_text"),
664
+ text: import_v42.z.string(),
665
+ annotations: import_v42.z.array(import_v42.z.any()).optional()
666
+ })
667
+ )
668
+ }),
669
+ import_v42.z.object({
670
+ type: import_v42.z.literal("reasoning"),
671
+ id: import_v42.z.string(),
672
+ status: import_v42.z.string().optional(),
673
+ content: import_v42.z.array(
674
+ import_v42.z.object({
675
+ type: import_v42.z.literal("reasoning_text"),
676
+ text: import_v42.z.string()
677
+ })
678
+ ),
679
+ summary: import_v42.z.array(
680
+ import_v42.z.object({
681
+ type: import_v42.z.literal("reasoning_summary"),
682
+ text: import_v42.z.string()
683
+ }).optional()
684
+ ).optional()
685
+ }),
686
+ import_v42.z.object({
687
+ type: import_v42.z.literal("function_call"),
688
+ id: import_v42.z.string(),
689
+ call_id: import_v42.z.string(),
690
+ name: import_v42.z.string(),
691
+ arguments: import_v42.z.string(),
692
+ output: import_v42.z.string().optional(),
693
+ status: import_v42.z.string().optional()
694
+ }),
695
+ import_v42.z.object({
696
+ type: import_v42.z.literal("mcp_call"),
697
+ id: import_v42.z.string(),
698
+ name: import_v42.z.string(),
699
+ arguments: import_v42.z.string(),
700
+ output: import_v42.z.string().optional(),
701
+ status: import_v42.z.string().optional()
702
+ }),
703
+ import_v42.z.object({
704
+ type: import_v42.z.literal("mcp_list_tools"),
705
+ id: import_v42.z.string(),
706
+ server_label: import_v42.z.string(),
707
+ tools: import_v42.z.array(import_v42.z.any()).optional(),
708
+ status: import_v42.z.string().optional()
709
+ })
710
+ ]);
608
711
  var huggingfaceResponsesResponseSchema = import_v42.z.object({
609
712
  id: import_v42.z.string(),
610
713
  model: import_v42.z.string(),
@@ -633,7 +736,7 @@ var huggingfaceResponsesResponseSchema = import_v42.z.object({
633
736
  }).optional(),
634
737
  total_tokens: import_v42.z.number()
635
738
  }).nullable().optional(),
636
- output: import_v42.z.array(import_v42.z.any()),
739
+ output: import_v42.z.array(huggingfaceResponsesOutputSchema),
637
740
  output_text: import_v42.z.string().nullable().optional()
638
741
  });
639
742
  var responseOutputItemAddedSchema = import_v42.z.object({
@@ -647,6 +750,13 @@ var responseOutputItemAddedSchema = import_v42.z.object({
647
750
  status: import_v42.z.string().optional(),
648
751
  content: import_v42.z.array(import_v42.z.any()).optional()
649
752
  }),
753
+ import_v42.z.object({
754
+ type: import_v42.z.literal("reasoning"),
755
+ id: import_v42.z.string(),
756
+ status: import_v42.z.string().optional(),
757
+ content: import_v42.z.array(import_v42.z.any()).optional(),
758
+ summary: import_v42.z.array(import_v42.z.any()).optional()
759
+ }),
650
760
  import_v42.z.object({
651
761
  type: import_v42.z.literal("mcp_list_tools"),
652
762
  id: import_v42.z.string(),
@@ -710,6 +820,13 @@ var responseOutputItemDoneSchema = import_v42.z.object({
710
820
  arguments: import_v42.z.string(),
711
821
  output: import_v42.z.string().optional(),
712
822
  error: import_v42.z.string().optional()
823
+ }),
824
+ import_v42.z.object({
825
+ type: import_v42.z.literal("reasoning"),
826
+ id: import_v42.z.string(),
827
+ status: import_v42.z.string().optional(),
828
+ content: import_v42.z.array(import_v42.z.any()).optional(),
829
+ summary: import_v42.z.array(import_v42.z.any()).optional()
713
830
  })
714
831
  ]),
715
832
  sequence_number: import_v42.z.number()
@@ -722,6 +839,22 @@ var textDeltaChunkSchema = import_v42.z.object({
722
839
  delta: import_v42.z.string(),
723
840
  sequence_number: import_v42.z.number()
724
841
  });
842
+ var reasoningTextDeltaChunkSchema = import_v42.z.object({
843
+ type: import_v42.z.literal("response.reasoning_text.delta"),
844
+ item_id: import_v42.z.string(),
845
+ output_index: import_v42.z.number(),
846
+ content_index: import_v42.z.number(),
847
+ delta: import_v42.z.string(),
848
+ sequence_number: import_v42.z.number()
849
+ });
850
+ var reasoningTextEndChunkSchema = import_v42.z.object({
851
+ type: import_v42.z.literal("response.reasoning_text.done"),
852
+ item_id: import_v42.z.string(),
853
+ output_index: import_v42.z.number(),
854
+ content_index: import_v42.z.number(),
855
+ text: import_v42.z.string(),
856
+ sequence_number: import_v42.z.number()
857
+ });
725
858
  var responseCompletedChunkSchema = import_v42.z.object({
726
859
  type: import_v42.z.literal("response.completed"),
727
860
  response: huggingfaceResponsesResponseSchema,
@@ -740,6 +873,8 @@ var responseCreatedChunkSchema = import_v42.z.object({
740
873
  var huggingfaceResponsesChunkSchema = import_v42.z.union([
741
874
  responseOutputItemAddedSchema,
742
875
  responseOutputItemDoneSchema,
876
+ reasoningTextDeltaChunkSchema,
877
+ reasoningTextEndChunkSchema,
743
878
  textDeltaChunkSchema,
744
879
  responseCompletedChunkSchema,
745
880
  responseCreatedChunkSchema,
@@ -755,6 +890,12 @@ function isResponseOutputItemDoneChunk(chunk) {
755
890
  function isTextDeltaChunk(chunk) {
756
891
  return chunk.type === "response.output_text.delta";
757
892
  }
893
+ function isReasoningDeltaChunk(chunk) {
894
+ return chunk.type === "response.reasoning_text.delta";
895
+ }
896
+ function isReasoningEndChunk(chunk) {
897
+ return chunk.type === "response.reasoning_text.done";
898
+ }
758
899
  function isResponseCompletedChunk(chunk) {
759
900
  return chunk.type === "response.completed";
760
901
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/huggingface-provider.ts","../src/responses/huggingface-responses-language-model.ts","../src/huggingface-error.ts","../src/responses/convert-to-huggingface-responses-messages.ts","../src/responses/map-huggingface-responses-finish-reason.ts","../src/responses/huggingface-responses-prepare-tools.ts"],"sourcesContent":["export { createHuggingFace, huggingface } from './huggingface-provider';\nexport type {\n HuggingFaceProvider,\n HuggingFaceProviderSettings,\n} from './huggingface-provider';\nexport type {\n HuggingFaceResponsesModelId,\n HuggingFaceResponsesSettings,\n} from './responses/huggingface-responses-settings';\nexport type { OpenAICompatibleErrorData as HuggingFaceErrorData } from '@ai-sdk/openai-compatible';\n","import {\n LanguageModelV2,\n NoSuchModelError,\n ProviderV2,\n} from '@ai-sdk/provider';\nimport {\n FetchFunction,\n generateId,\n loadApiKey,\n withoutTrailingSlash,\n} from '@ai-sdk/provider-utils';\nimport { HuggingFaceResponsesLanguageModel } from './responses/huggingface-responses-language-model';\nimport { HuggingFaceResponsesModelId } from './responses/huggingface-responses-settings';\n\nexport interface HuggingFaceProviderSettings {\n /**\nHugging Face API key.\n*/\n apiKey?: string;\n /**\nBase URL for the API calls.\n*/\n baseURL?: string;\n /**\nCustom headers to include in the requests.\n*/\n headers?: Record<string, string>;\n /**\nCustom fetch implementation. You can use it as a middleware to intercept requests,\nor to provide a custom fetch implementation for e.g. testing.\n*/\n fetch?: FetchFunction;\n\n generateId?: () => string;\n}\n\nexport interface HuggingFaceProvider extends ProviderV2 {\n /**\nCreates a Hugging Face responses model for text generation.\n*/\n (modelId: HuggingFaceResponsesModelId): LanguageModelV2;\n\n /**\nCreates a Hugging Face responses model for text generation.\n*/\n languageModel(modelId: HuggingFaceResponsesModelId): LanguageModelV2;\n\n /**\nCreates a Hugging Face responses model for text generation.\n*/\n responses(modelId: HuggingFaceResponsesModelId): LanguageModelV2;\n}\n\n/**\nCreate a Hugging Face provider instance.\n */\nexport function createHuggingFace(\n options: HuggingFaceProviderSettings = {},\n): HuggingFaceProvider {\n const baseURL =\n withoutTrailingSlash(options.baseURL) ?? 'https://router.huggingface.co/v1';\n\n const getHeaders = () => ({\n Authorization: `Bearer ${loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: 'HUGGINGFACE_API_KEY',\n description: 'Hugging Face',\n })}`,\n ...options.headers,\n });\n\n const createResponsesModel = (modelId: HuggingFaceResponsesModelId) => {\n return new HuggingFaceResponsesLanguageModel(modelId, {\n provider: 'huggingface.responses',\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch,\n generateId: options.generateId ?? generateId,\n });\n };\n\n const provider = (modelId: HuggingFaceResponsesModelId) =>\n createResponsesModel(modelId);\n\n provider.languageModel = createResponsesModel;\n provider.responses = createResponsesModel;\n\n provider.textEmbeddingModel = (modelId: string) => {\n throw new NoSuchModelError({\n modelId,\n modelType: 'textEmbeddingModel',\n message:\n 'Hugging Face Responses API does not support text embeddings. Use the Hugging Face Inference API directly for embeddings.',\n });\n };\n\n provider.imageModel = (modelId: string) => {\n throw new NoSuchModelError({\n modelId,\n modelType: 'imageModel',\n message:\n 'Hugging Face Responses API does not support image generation. Use the Hugging Face Inference API directly for image models.',\n });\n };\n\n return provider;\n}\n\n/**\nDefault Hugging Face provider instance.\n */\nexport const huggingface = createHuggingFace();\n","import {\n APICallError,\n LanguageModelV2,\n LanguageModelV2CallWarning,\n LanguageModelV2Content,\n LanguageModelV2FinishReason,\n LanguageModelV2StreamPart,\n LanguageModelV2Usage,\n} from '@ai-sdk/provider';\nimport {\n combineHeaders,\n createEventSourceResponseHandler,\n createJsonResponseHandler,\n generateId,\n parseProviderOptions,\n ParseResult,\n postJsonToApi,\n} from '@ai-sdk/provider-utils';\nimport { z } from 'zod/v4';\nimport { HuggingFaceConfig } from '../huggingface-config';\nimport { huggingfaceFailedResponseHandler } from '../huggingface-error';\nimport { convertToHuggingFaceResponsesMessages } from './convert-to-huggingface-responses-messages';\nimport { mapHuggingFaceResponsesFinishReason } from './map-huggingface-responses-finish-reason';\nimport { HuggingFaceResponsesModelId } from './huggingface-responses-settings';\nimport { prepareResponsesTools } from './huggingface-responses-prepare-tools';\n\nexport class HuggingFaceResponsesLanguageModel implements LanguageModelV2 {\n readonly specificationVersion = 'v2';\n\n readonly modelId: HuggingFaceResponsesModelId;\n\n private readonly config: HuggingFaceConfig;\n\n constructor(modelId: HuggingFaceResponsesModelId, config: HuggingFaceConfig) {\n this.modelId = modelId;\n this.config = config;\n }\n\n readonly supportedUrls: Record<string, RegExp[]> = {\n 'image/*': [/^https?:\\/\\/.*$/],\n };\n\n get provider(): string {\n return this.config.provider;\n }\n\n private async getArgs({\n maxOutputTokens,\n temperature,\n stopSequences,\n topP,\n topK,\n presencePenalty,\n frequencyPenalty,\n seed,\n prompt,\n providerOptions,\n tools,\n toolChoice,\n responseFormat,\n }: Parameters<LanguageModelV2['doGenerate']>[0]) {\n const warnings: LanguageModelV2CallWarning[] = [];\n\n if (topK != null) {\n warnings.push({ type: 'unsupported-setting', setting: 'topK' });\n }\n\n if (seed != null) {\n warnings.push({ type: 'unsupported-setting', setting: 'seed' });\n }\n\n if (presencePenalty != null) {\n warnings.push({\n type: 'unsupported-setting',\n setting: 'presencePenalty',\n });\n }\n\n if (frequencyPenalty != null) {\n warnings.push({\n type: 'unsupported-setting',\n setting: 'frequencyPenalty',\n });\n }\n\n if (stopSequences != null) {\n warnings.push({ type: 'unsupported-setting', setting: 'stopSequences' });\n }\n\n const { input, warnings: messageWarnings } =\n await convertToHuggingFaceResponsesMessages({\n prompt,\n });\n\n warnings.push(...messageWarnings);\n\n const huggingfaceOptions = await parseProviderOptions({\n provider: 'huggingface',\n providerOptions,\n schema: huggingfaceResponsesProviderOptionsSchema,\n });\n\n const {\n tools: preparedTools,\n toolChoice: preparedToolChoice,\n toolWarnings,\n } = prepareResponsesTools({\n tools,\n toolChoice,\n });\n\n warnings.push(...toolWarnings);\n\n const baseArgs = {\n model: this.modelId,\n input,\n temperature,\n top_p: topP,\n max_output_tokens: maxOutputTokens,\n\n // HuggingFace Responses API uses text.format for structured output\n ...(responseFormat?.type === 'json' &&\n responseFormat.schema && {\n text: {\n format: {\n type: 'json_schema',\n strict: huggingfaceOptions?.strictJsonSchema ?? false,\n name: responseFormat.name ?? 'response',\n description: responseFormat.description,\n schema: responseFormat.schema,\n },\n },\n }),\n\n metadata: huggingfaceOptions?.metadata,\n instructions: huggingfaceOptions?.instructions,\n\n ...(preparedTools && { tools: preparedTools }),\n ...(preparedToolChoice && { tool_choice: preparedToolChoice }),\n };\n\n return { args: baseArgs, warnings };\n }\n\n async doGenerate(\n options: Parameters<LanguageModelV2['doGenerate']>[0],\n ): Promise<Awaited<ReturnType<LanguageModelV2['doGenerate']>>> {\n const { args, warnings } = await this.getArgs(options);\n\n const body = {\n ...args,\n stream: false,\n };\n\n const url = this.config.url({\n path: '/responses',\n modelId: this.modelId,\n });\n\n const {\n value: response,\n responseHeaders,\n rawValue: rawResponse,\n } = await postJsonToApi({\n url,\n headers: combineHeaders(this.config.headers(), options.headers),\n body,\n failedResponseHandler: huggingfaceFailedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler(\n huggingfaceResponsesResponseSchema,\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch,\n });\n\n if (response.error) {\n throw new APICallError({\n message: response.error.message,\n url,\n requestBodyValues: body,\n statusCode: 400,\n responseHeaders,\n responseBody: rawResponse as string,\n isRetryable: false,\n });\n }\n\n const content: Array<LanguageModelV2Content> = [];\n\n // Process output array\n for (const part of response.output) {\n switch (part.type) {\n case 'message': {\n for (const contentPart of part.content) {\n content.push({\n type: 'text',\n text: contentPart.text,\n providerMetadata: {\n huggingface: {\n itemId: part.id,\n },\n },\n });\n\n if (contentPart.annotations) {\n for (const annotation of contentPart.annotations) {\n content.push({\n type: 'source',\n sourceType: 'url',\n id: this.config.generateId?.() ?? generateId(),\n url: annotation.url,\n title: annotation.title,\n });\n }\n }\n }\n break;\n }\n\n case 'mcp_call': {\n content.push({\n type: 'tool-call',\n toolCallId: part.id,\n toolName: part.name,\n input: part.arguments,\n providerExecuted: true,\n });\n\n if (part.output) {\n content.push({\n type: 'tool-result',\n toolCallId: part.id,\n toolName: part.name,\n result: part.output,\n providerExecuted: true,\n });\n }\n break;\n }\n\n case 'mcp_list_tools': {\n content.push({\n type: 'tool-call',\n toolCallId: part.id,\n toolName: 'list_tools',\n input: JSON.stringify({ server_label: part.server_label }),\n providerExecuted: true,\n });\n\n if (part.tools) {\n content.push({\n type: 'tool-result',\n toolCallId: part.id,\n toolName: 'list_tools',\n result: { tools: part.tools },\n providerExecuted: true,\n });\n }\n break;\n }\n\n case 'function_call': {\n content.push({\n type: 'tool-call',\n toolCallId: part.call_id,\n toolName: part.name,\n input: part.arguments,\n });\n\n if (part.output) {\n content.push({\n type: 'tool-result',\n toolCallId: part.call_id,\n toolName: part.name,\n result: part.output,\n });\n }\n break;\n }\n\n default: {\n break;\n }\n }\n }\n\n return {\n content,\n finishReason: mapHuggingFaceResponsesFinishReason(\n response.incomplete_details?.reason ?? 'stop',\n ),\n usage: {\n inputTokens: response.usage?.input_tokens ?? 0,\n outputTokens: response.usage?.output_tokens ?? 0,\n totalTokens:\n response.usage?.total_tokens ??\n (response.usage?.input_tokens ?? 0) +\n (response.usage?.output_tokens ?? 0),\n },\n request: { body },\n response: {\n id: response.id,\n timestamp: new Date(response.created_at * 1000),\n modelId: response.model,\n headers: responseHeaders,\n body: rawResponse,\n },\n providerMetadata: {\n huggingface: {\n responseId: response.id,\n },\n },\n warnings,\n };\n }\n\n async doStream(\n options: Parameters<LanguageModelV2['doStream']>[0],\n ): Promise<Awaited<ReturnType<LanguageModelV2['doStream']>>> {\n const { args, warnings } = await this.getArgs(options);\n\n const body = {\n ...args,\n stream: true,\n };\n\n const { value: response, responseHeaders } = await postJsonToApi({\n url: this.config.url({\n path: '/responses',\n modelId: this.modelId,\n }),\n headers: combineHeaders(this.config.headers(), options.headers),\n body,\n failedResponseHandler: huggingfaceFailedResponseHandler,\n successfulResponseHandler: createEventSourceResponseHandler(\n huggingfaceResponsesChunkSchema,\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch,\n });\n\n let finishReason: LanguageModelV2FinishReason = 'unknown';\n let responseId: string | null = null;\n const usage: LanguageModelV2Usage = {\n inputTokens: undefined,\n outputTokens: undefined,\n totalTokens: undefined,\n };\n\n return {\n stream: response.pipeThrough(\n new TransformStream<\n ParseResult<z.infer<typeof huggingfaceResponsesChunkSchema>>,\n LanguageModelV2StreamPart\n >({\n start(controller) {\n controller.enqueue({ type: 'stream-start', warnings });\n },\n\n transform(chunk, controller) {\n if (!chunk.success) {\n finishReason = 'error';\n controller.enqueue({ type: 'error', error: chunk.error });\n return;\n }\n\n const value = chunk.value;\n\n if (isResponseCreatedChunk(value)) {\n responseId = value.response.id;\n controller.enqueue({\n type: 'response-metadata',\n id: value.response.id,\n timestamp: new Date(value.response.created_at * 1000),\n modelId: value.response.model,\n });\n return;\n }\n\n if (isResponseOutputItemAddedChunk(value)) {\n if (\n value.item.type === 'message' &&\n value.item.role === 'assistant'\n ) {\n controller.enqueue({\n type: 'text-start',\n id: value.item.id,\n providerMetadata: {\n huggingface: {\n itemId: value.item.id,\n },\n },\n });\n } else if (value.item.type === 'function_call') {\n controller.enqueue({\n type: 'tool-input-start',\n id: value.item.call_id,\n toolName: value.item.name,\n });\n }\n return;\n }\n\n if (isResponseOutputItemDoneChunk(value)) {\n if (\n value.item.type === 'message' &&\n value.item.role === 'assistant'\n ) {\n controller.enqueue({\n type: 'text-end',\n id: value.item.id,\n });\n } else if (value.item.type === 'function_call') {\n controller.enqueue({\n type: 'tool-input-end',\n id: value.item.call_id,\n });\n\n controller.enqueue({\n type: 'tool-call',\n toolCallId: value.item.call_id,\n toolName: value.item.name,\n input: value.item.arguments,\n });\n\n if (value.item.output) {\n controller.enqueue({\n type: 'tool-result',\n toolCallId: value.item.call_id,\n toolName: value.item.name,\n result: value.item.output,\n });\n }\n }\n return;\n }\n\n if (isResponseCompletedChunk(value)) {\n responseId = value.response.id;\n finishReason = mapHuggingFaceResponsesFinishReason(\n value.response.incomplete_details?.reason ?? 'stop',\n );\n if (value.response.usage) {\n usage.inputTokens = value.response.usage.input_tokens;\n usage.outputTokens = value.response.usage.output_tokens;\n usage.totalTokens =\n value.response.usage.total_tokens ??\n value.response.usage.input_tokens +\n value.response.usage.output_tokens;\n }\n return;\n }\n\n if (isTextDeltaChunk(value)) {\n controller.enqueue({\n type: 'text-delta',\n id: value.item_id,\n delta: value.delta,\n });\n return;\n }\n },\n\n flush(controller) {\n controller.enqueue({\n type: 'finish',\n finishReason,\n usage,\n providerMetadata: {\n huggingface: {\n responseId,\n },\n },\n });\n },\n }),\n ),\n request: { body },\n response: { headers: responseHeaders },\n };\n }\n}\n\nconst huggingfaceResponsesProviderOptionsSchema = z.object({\n metadata: z.record(z.string(), z.string()).optional(),\n instructions: z.string().optional(),\n strictJsonSchema: z.boolean().optional(),\n});\n\nconst huggingfaceResponsesResponseSchema = z.object({\n id: z.string(),\n model: z.string(),\n object: z.string(),\n created_at: z.number(),\n status: z.string(),\n error: z.any().nullable(),\n instructions: z.any().nullable(),\n max_output_tokens: z.any().nullable(),\n metadata: z.any().nullable(),\n tool_choice: z.any(),\n tools: z.array(z.any()),\n temperature: z.number(),\n top_p: z.number(),\n incomplete_details: z\n .object({\n reason: z.string(),\n })\n .nullable()\n .optional(),\n usage: z\n .object({\n input_tokens: z.number(),\n input_tokens_details: z\n .object({\n cached_tokens: z.number(),\n })\n .optional(),\n output_tokens: z.number(),\n output_tokens_details: z\n .object({\n reasoning_tokens: z.number(),\n })\n .optional(),\n total_tokens: z.number(),\n })\n .nullable()\n .optional(),\n output: z.array(z.any()),\n output_text: z.string().nullable().optional(),\n});\n\nconst responseOutputItemAddedSchema = z.object({\n type: z.literal('response.output_item.added'),\n output_index: z.number(),\n item: z.discriminatedUnion('type', [\n z.object({\n type: z.literal('message'),\n id: z.string(),\n role: z.string().optional(),\n status: z.string().optional(),\n content: z.array(z.any()).optional(),\n }),\n z.object({\n type: z.literal('mcp_list_tools'),\n id: z.string(),\n server_label: z.string(),\n tools: z.array(z.any()).optional(),\n error: z.string().optional(),\n }),\n z.object({\n type: z.literal('mcp_call'),\n id: z.string(),\n server_label: z.string(),\n name: z.string(),\n arguments: z.string(),\n output: z.string().optional(),\n error: z.string().optional(),\n }),\n z.object({\n type: z.literal('function_call'),\n id: z.string(),\n call_id: z.string(),\n name: z.string(),\n arguments: z.string(),\n output: z.string().optional(),\n error: z.string().optional(),\n }),\n ]),\n sequence_number: z.number(),\n});\n\nconst responseOutputItemDoneSchema = z.object({\n type: z.literal('response.output_item.done'),\n output_index: z.number(),\n item: z.discriminatedUnion('type', [\n z.object({\n type: z.literal('message'),\n id: z.string(),\n role: z.string().optional(),\n status: z.string().optional(),\n content: z.array(z.any()).optional(),\n }),\n z.object({\n type: z.literal('mcp_list_tools'),\n id: z.string(),\n server_label: z.string(),\n tools: z.array(z.any()).optional(),\n error: z.string().optional(),\n }),\n z.object({\n type: z.literal('mcp_call'),\n id: z.string(),\n server_label: z.string(),\n name: z.string(),\n arguments: z.string(),\n output: z.string().optional(),\n error: z.string().optional(),\n }),\n z.object({\n type: z.literal('function_call'),\n id: z.string(),\n call_id: z.string(),\n name: z.string(),\n arguments: z.string(),\n output: z.string().optional(),\n error: z.string().optional(),\n }),\n ]),\n sequence_number: z.number(),\n});\n\nconst textDeltaChunkSchema = z.object({\n type: z.literal('response.output_text.delta'),\n item_id: z.string(),\n output_index: z.number(),\n content_index: z.number(),\n delta: z.string(),\n sequence_number: z.number(),\n});\n\nconst responseCompletedChunkSchema = z.object({\n type: z.literal('response.completed'),\n response: huggingfaceResponsesResponseSchema,\n sequence_number: z.number(),\n});\n\nconst responseCreatedChunkSchema = z.object({\n type: z.literal('response.created'),\n response: z.object({\n id: z.string(),\n object: z.string(),\n created_at: z.number(),\n status: z.string(),\n model: z.string(),\n }),\n});\n\nconst huggingfaceResponsesChunkSchema = z.union([\n responseOutputItemAddedSchema,\n responseOutputItemDoneSchema,\n textDeltaChunkSchema,\n responseCompletedChunkSchema,\n responseCreatedChunkSchema,\n z.object({ type: z.string() }).loose(), // fallback for unknown chunks\n]);\n\nfunction isResponseOutputItemAddedChunk(\n chunk: z.infer<typeof huggingfaceResponsesChunkSchema>,\n): chunk is z.infer<typeof responseOutputItemAddedSchema> {\n return chunk.type === 'response.output_item.added';\n}\n\nfunction isResponseOutputItemDoneChunk(\n chunk: z.infer<typeof huggingfaceResponsesChunkSchema>,\n): chunk is z.infer<typeof responseOutputItemDoneSchema> {\n return chunk.type === 'response.output_item.done';\n}\n\nfunction isTextDeltaChunk(\n chunk: z.infer<typeof huggingfaceResponsesChunkSchema>,\n): chunk is z.infer<typeof textDeltaChunkSchema> {\n return chunk.type === 'response.output_text.delta';\n}\n\nfunction isResponseCompletedChunk(\n chunk: z.infer<typeof huggingfaceResponsesChunkSchema>,\n): chunk is z.infer<typeof responseCompletedChunkSchema> {\n return chunk.type === 'response.completed';\n}\n\nfunction isResponseCreatedChunk(\n chunk: z.infer<typeof huggingfaceResponsesChunkSchema>,\n): chunk is z.infer<typeof responseCreatedChunkSchema> {\n return chunk.type === 'response.created';\n}\n","import { createJsonErrorResponseHandler } from '@ai-sdk/provider-utils';\nimport { z } from 'zod/v4';\n\nconst huggingfaceErrorDataSchema = z.object({\n error: z.object({\n message: z.string(),\n type: z.string().optional(),\n code: z.string().optional(),\n }),\n});\n\nexport type HuggingFaceErrorData = z.infer<typeof huggingfaceErrorDataSchema>;\n\nexport const huggingfaceFailedResponseHandler = createJsonErrorResponseHandler({\n errorSchema: huggingfaceErrorDataSchema,\n errorToMessage: data => data.error.message,\n});\n","import {\n LanguageModelV2CallWarning,\n LanguageModelV2Prompt,\n UnsupportedFunctionalityError,\n} from '@ai-sdk/provider';\n\nexport async function convertToHuggingFaceResponsesMessages({\n prompt,\n}: {\n prompt: LanguageModelV2Prompt;\n}): Promise<{\n input: string | Array<any>;\n warnings: Array<LanguageModelV2CallWarning>;\n}> {\n const messages: Array<any> = [];\n const warnings: Array<LanguageModelV2CallWarning> = [];\n\n for (const { role, content } of prompt) {\n switch (role) {\n case 'system': {\n messages.push({ role: 'system', content });\n break;\n }\n\n case 'user': {\n messages.push({\n role: 'user',\n content: content.map(part => {\n switch (part.type) {\n case 'text': {\n return { type: 'input_text', text: part.text };\n }\n case 'file': {\n if (part.mediaType.startsWith('image/')) {\n const mediaType =\n part.mediaType === 'image/*'\n ? 'image/jpeg'\n : part.mediaType;\n\n return {\n type: 'input_image',\n image_url:\n part.data instanceof URL\n ? part.data.toString()\n : `data:${mediaType};base64,${part.data}`,\n };\n } else {\n throw new UnsupportedFunctionalityError({\n functionality: `file part media type ${part.mediaType}`,\n });\n }\n }\n default: {\n const _exhaustiveCheck: never = part;\n throw new Error(`Unsupported part type: ${_exhaustiveCheck}`);\n }\n }\n }),\n });\n\n break;\n }\n\n case 'assistant': {\n for (const part of content) {\n switch (part.type) {\n case 'text': {\n messages.push({\n role: 'assistant',\n content: [{ type: 'output_text', text: part.text }],\n });\n break;\n }\n case 'tool-call': {\n // tool calls are handled by the responses API\n break;\n }\n\n case 'tool-result': {\n // tool results are handled by the responses API\n break;\n }\n\n case 'reasoning': {\n // include reasoning content in the message text\n messages.push({\n role: 'assistant',\n content: [{ type: 'output_text', text: part.text }],\n });\n break;\n }\n }\n }\n\n break;\n }\n\n case 'tool': {\n warnings.push({\n type: 'unsupported-setting',\n setting: 'tool messages',\n });\n break;\n }\n\n default: {\n const _exhaustiveCheck: never = role;\n throw new Error(`Unsupported role: ${_exhaustiveCheck}`);\n }\n }\n }\n\n return { input: messages, warnings };\n}\n","import { LanguageModelV2FinishReason } from '@ai-sdk/provider';\n\nexport function mapHuggingFaceResponsesFinishReason(\n finishReason: string | null | undefined,\n): LanguageModelV2FinishReason {\n switch (finishReason) {\n case 'stop':\n return 'stop';\n case 'length':\n return 'length';\n case 'content_filter':\n return 'content-filter';\n case 'tool_calls':\n return 'tool-calls';\n case 'error':\n return 'error';\n default:\n return 'unknown';\n }\n}\n","import {\n LanguageModelV2CallOptions,\n LanguageModelV2CallWarning,\n} from '@ai-sdk/provider';\n\nexport type HuggingFaceResponsesTool = {\n type: 'function';\n name: string;\n description?: string;\n parameters: unknown;\n};\n\nexport type HuggingFaceResponsesToolChoice =\n | 'auto'\n | 'required'\n | { type: 'function'; function: { name: string } };\n\nexport function prepareResponsesTools({\n tools,\n toolChoice,\n}: {\n tools: LanguageModelV2CallOptions['tools'];\n toolChoice?: LanguageModelV2CallOptions['toolChoice'];\n}): {\n tools?: HuggingFaceResponsesTool[];\n toolChoice?: HuggingFaceResponsesToolChoice;\n toolWarnings: LanguageModelV2CallWarning[];\n} {\n // when the tools array is empty, change it to undefined to prevent errors:\n tools = tools?.length ? tools : undefined;\n\n const toolWarnings: LanguageModelV2CallWarning[] = [];\n\n if (tools == null) {\n return { tools: undefined, toolChoice: undefined, toolWarnings };\n }\n\n const huggingfaceTools: HuggingFaceResponsesTool[] = [];\n\n for (const tool of tools) {\n switch (tool.type) {\n case 'function':\n huggingfaceTools.push({\n type: 'function',\n name: tool.name,\n description: tool.description,\n parameters: tool.inputSchema,\n });\n break;\n case 'provider-defined':\n toolWarnings.push({\n type: 'unsupported-tool',\n tool,\n });\n break;\n default: {\n const _exhaustiveCheck: never = tool;\n throw new Error(`Unsupported tool type: ${_exhaustiveCheck}`);\n }\n }\n }\n\n // prepare tool choice:\n let mappedToolChoice: HuggingFaceResponsesToolChoice | undefined = undefined;\n if (toolChoice) {\n switch (toolChoice.type) {\n case 'auto':\n mappedToolChoice = 'auto';\n break;\n case 'required':\n mappedToolChoice = 'required';\n break;\n case 'none':\n // not supported, ignore\n break;\n case 'tool':\n mappedToolChoice = {\n type: 'function',\n function: { name: toolChoice.toolName },\n };\n break;\n default: {\n const _exhaustiveCheck: never = toolChoice;\n throw new Error(`Unsupported tool choice type: ${_exhaustiveCheck}`);\n }\n }\n }\n\n return {\n tools: huggingfaceTools,\n toolChoice: mappedToolChoice,\n toolWarnings,\n };\n}\n"],"mappings":"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","names":["import_provider","import_provider_utils","import_provider","import_provider_utils","import_v4","_a"]}
1
+ {"version":3,"sources":["../src/index.ts","../src/huggingface-provider.ts","../src/responses/huggingface-responses-language-model.ts","../src/huggingface-error.ts","../src/responses/convert-to-huggingface-responses-messages.ts","../src/responses/map-huggingface-responses-finish-reason.ts","../src/responses/huggingface-responses-prepare-tools.ts"],"sourcesContent":["export { createHuggingFace, huggingface } from './huggingface-provider';\nexport type {\n HuggingFaceProvider,\n HuggingFaceProviderSettings,\n} from './huggingface-provider';\nexport type {\n HuggingFaceResponsesModelId,\n HuggingFaceResponsesSettings,\n} from './responses/huggingface-responses-settings';\nexport type { OpenAICompatibleErrorData as HuggingFaceErrorData } from '@ai-sdk/openai-compatible';\n","import {\n LanguageModelV2,\n NoSuchModelError,\n ProviderV2,\n} from '@ai-sdk/provider';\nimport {\n FetchFunction,\n generateId,\n loadApiKey,\n withoutTrailingSlash,\n} from '@ai-sdk/provider-utils';\nimport { HuggingFaceResponsesLanguageModel } from './responses/huggingface-responses-language-model';\nimport { HuggingFaceResponsesModelId } from './responses/huggingface-responses-settings';\n\nexport interface HuggingFaceProviderSettings {\n /**\nHugging Face API key.\n*/\n apiKey?: string;\n /**\nBase URL for the API calls.\n*/\n baseURL?: string;\n /**\nCustom headers to include in the requests.\n*/\n headers?: Record<string, string>;\n /**\nCustom fetch implementation. You can use it as a middleware to intercept requests,\nor to provide a custom fetch implementation for e.g. testing.\n*/\n fetch?: FetchFunction;\n\n generateId?: () => string;\n}\n\nexport interface HuggingFaceProvider extends ProviderV2 {\n /**\nCreates a Hugging Face responses model for text generation.\n*/\n (modelId: HuggingFaceResponsesModelId): LanguageModelV2;\n\n /**\nCreates a Hugging Face responses model for text generation.\n*/\n languageModel(modelId: HuggingFaceResponsesModelId): LanguageModelV2;\n\n /**\nCreates a Hugging Face responses model for text generation.\n*/\n responses(modelId: HuggingFaceResponsesModelId): LanguageModelV2;\n}\n\n/**\nCreate a Hugging Face provider instance.\n */\nexport function createHuggingFace(\n options: HuggingFaceProviderSettings = {},\n): HuggingFaceProvider {\n const baseURL =\n withoutTrailingSlash(options.baseURL) ?? 'https://router.huggingface.co/v1';\n\n const getHeaders = () => ({\n Authorization: `Bearer ${loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: 'HUGGINGFACE_API_KEY',\n description: 'Hugging Face',\n })}`,\n ...options.headers,\n });\n\n const createResponsesModel = (modelId: HuggingFaceResponsesModelId) => {\n return new HuggingFaceResponsesLanguageModel(modelId, {\n provider: 'huggingface.responses',\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch,\n generateId: options.generateId ?? generateId,\n });\n };\n\n const provider = (modelId: HuggingFaceResponsesModelId) =>\n createResponsesModel(modelId);\n\n provider.languageModel = createResponsesModel;\n provider.responses = createResponsesModel;\n\n provider.textEmbeddingModel = (modelId: string) => {\n throw new NoSuchModelError({\n modelId,\n modelType: 'textEmbeddingModel',\n message:\n 'Hugging Face Responses API does not support text embeddings. Use the Hugging Face Inference API directly for embeddings.',\n });\n };\n\n provider.imageModel = (modelId: string) => {\n throw new NoSuchModelError({\n modelId,\n modelType: 'imageModel',\n message:\n 'Hugging Face Responses API does not support image generation. Use the Hugging Face Inference API directly for image models.',\n });\n };\n\n return provider;\n}\n\n/**\nDefault Hugging Face provider instance.\n */\nexport const huggingface = createHuggingFace();\n","import {\n APICallError,\n LanguageModelV2,\n LanguageModelV2CallWarning,\n LanguageModelV2Content,\n LanguageModelV2FinishReason,\n LanguageModelV2StreamPart,\n LanguageModelV2Usage,\n} from '@ai-sdk/provider';\nimport {\n combineHeaders,\n createEventSourceResponseHandler,\n createJsonResponseHandler,\n generateId,\n parseProviderOptions,\n ParseResult,\n postJsonToApi,\n} from '@ai-sdk/provider-utils';\nimport { z } from 'zod/v4';\nimport { HuggingFaceConfig } from '../huggingface-config';\nimport { huggingfaceFailedResponseHandler } from '../huggingface-error';\nimport { convertToHuggingFaceResponsesMessages } from './convert-to-huggingface-responses-messages';\nimport { mapHuggingFaceResponsesFinishReason } from './map-huggingface-responses-finish-reason';\nimport { HuggingFaceResponsesModelId } from './huggingface-responses-settings';\nimport { prepareResponsesTools } from './huggingface-responses-prepare-tools';\n\nexport class HuggingFaceResponsesLanguageModel implements LanguageModelV2 {\n readonly specificationVersion = 'v2';\n\n readonly modelId: HuggingFaceResponsesModelId;\n\n private readonly config: HuggingFaceConfig;\n\n constructor(modelId: HuggingFaceResponsesModelId, config: HuggingFaceConfig) {\n this.modelId = modelId;\n this.config = config;\n }\n\n readonly supportedUrls: Record<string, RegExp[]> = {\n 'image/*': [/^https?:\\/\\/.*$/],\n };\n\n get provider(): string {\n return this.config.provider;\n }\n\n private async getArgs({\n maxOutputTokens,\n temperature,\n stopSequences,\n topP,\n topK,\n presencePenalty,\n frequencyPenalty,\n seed,\n prompt,\n providerOptions,\n tools,\n toolChoice,\n responseFormat,\n }: Parameters<LanguageModelV2['doGenerate']>[0]) {\n const warnings: LanguageModelV2CallWarning[] = [];\n\n if (topK != null) {\n warnings.push({ type: 'unsupported-setting', setting: 'topK' });\n }\n\n if (seed != null) {\n warnings.push({ type: 'unsupported-setting', setting: 'seed' });\n }\n\n if (presencePenalty != null) {\n warnings.push({\n type: 'unsupported-setting',\n setting: 'presencePenalty',\n });\n }\n\n if (frequencyPenalty != null) {\n warnings.push({\n type: 'unsupported-setting',\n setting: 'frequencyPenalty',\n });\n }\n\n if (stopSequences != null) {\n warnings.push({ type: 'unsupported-setting', setting: 'stopSequences' });\n }\n\n const { input, warnings: messageWarnings } =\n await convertToHuggingFaceResponsesMessages({\n prompt,\n });\n\n warnings.push(...messageWarnings);\n\n const huggingfaceOptions = await parseProviderOptions({\n provider: 'huggingface',\n providerOptions,\n schema: huggingfaceResponsesProviderOptionsSchema,\n });\n\n const {\n tools: preparedTools,\n toolChoice: preparedToolChoice,\n toolWarnings,\n } = prepareResponsesTools({\n tools,\n toolChoice,\n });\n\n warnings.push(...toolWarnings);\n\n const baseArgs = {\n model: this.modelId,\n input,\n temperature,\n top_p: topP,\n max_output_tokens: maxOutputTokens,\n\n // HuggingFace Responses API uses text.format for structured output\n ...(responseFormat?.type === 'json' &&\n responseFormat.schema && {\n text: {\n format: {\n type: 'json_schema',\n strict: huggingfaceOptions?.strictJsonSchema ?? false,\n name: responseFormat.name ?? 'response',\n description: responseFormat.description,\n schema: responseFormat.schema,\n },\n },\n }),\n\n metadata: huggingfaceOptions?.metadata,\n instructions: huggingfaceOptions?.instructions,\n\n ...(preparedTools && { tools: preparedTools }),\n ...(preparedToolChoice && { tool_choice: preparedToolChoice }),\n ...(huggingfaceOptions?.reasoningEffort != null && {\n reasoning: {\n ...(huggingfaceOptions?.reasoningEffort != null && {\n effort: huggingfaceOptions.reasoningEffort,\n }),\n },\n }),\n };\n\n return { args: baseArgs, warnings };\n }\n\n async doGenerate(\n options: Parameters<LanguageModelV2['doGenerate']>[0],\n ): Promise<Awaited<ReturnType<LanguageModelV2['doGenerate']>>> {\n const { args, warnings } = await this.getArgs(options);\n\n const body = {\n ...args,\n stream: false,\n };\n\n const url = this.config.url({\n path: '/responses',\n modelId: this.modelId,\n });\n\n const {\n value: response,\n responseHeaders,\n rawValue: rawResponse,\n } = await postJsonToApi({\n url,\n headers: combineHeaders(this.config.headers(), options.headers),\n body,\n failedResponseHandler: huggingfaceFailedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler(\n huggingfaceResponsesResponseSchema,\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch,\n });\n\n if (response.error) {\n throw new APICallError({\n message: response.error.message,\n url,\n requestBodyValues: body,\n statusCode: 400,\n responseHeaders,\n responseBody: rawResponse as string,\n isRetryable: false,\n });\n }\n\n const content: Array<LanguageModelV2Content> = [];\n\n // Process output array\n for (const part of response.output) {\n switch (part.type) {\n case 'message': {\n for (const contentPart of part.content) {\n content.push({\n type: 'text',\n text: contentPart.text,\n providerMetadata: {\n huggingface: {\n itemId: part.id,\n },\n },\n });\n\n if (contentPart.annotations) {\n for (const annotation of contentPart.annotations) {\n content.push({\n type: 'source',\n sourceType: 'url',\n id: this.config.generateId?.() ?? generateId(),\n url: annotation.url,\n title: annotation.title,\n });\n }\n }\n }\n break;\n }\n\n case 'reasoning': {\n for (const contentPart of part.content) {\n content.push({\n type: 'reasoning',\n text: contentPart.text,\n providerMetadata: {\n huggingface: {\n itemId: part.id,\n },\n },\n });\n }\n break;\n }\n\n case 'mcp_call': {\n content.push({\n type: 'tool-call',\n toolCallId: part.id,\n toolName: part.name,\n input: part.arguments,\n providerExecuted: true,\n });\n\n if (part.output) {\n content.push({\n type: 'tool-result',\n toolCallId: part.id,\n toolName: part.name,\n result: part.output,\n providerExecuted: true,\n });\n }\n break;\n }\n\n case 'mcp_list_tools': {\n content.push({\n type: 'tool-call',\n toolCallId: part.id,\n toolName: 'list_tools',\n input: JSON.stringify({ server_label: part.server_label }),\n providerExecuted: true,\n });\n\n if (part.tools) {\n content.push({\n type: 'tool-result',\n toolCallId: part.id,\n toolName: 'list_tools',\n result: { tools: part.tools },\n providerExecuted: true,\n });\n }\n break;\n }\n\n case 'function_call': {\n content.push({\n type: 'tool-call',\n toolCallId: part.call_id,\n toolName: part.name,\n input: part.arguments,\n });\n\n if (part.output) {\n content.push({\n type: 'tool-result',\n toolCallId: part.call_id,\n toolName: part.name,\n result: part.output,\n });\n }\n break;\n }\n\n default: {\n break;\n }\n }\n }\n\n return {\n content,\n finishReason: mapHuggingFaceResponsesFinishReason(\n response.incomplete_details?.reason ?? 'stop',\n ),\n usage: {\n inputTokens: response.usage?.input_tokens ?? 0,\n outputTokens: response.usage?.output_tokens ?? 0,\n totalTokens:\n response.usage?.total_tokens ??\n (response.usage?.input_tokens ?? 0) +\n (response.usage?.output_tokens ?? 0),\n },\n request: { body },\n response: {\n id: response.id,\n timestamp: new Date(response.created_at * 1000),\n modelId: response.model,\n headers: responseHeaders,\n body: rawResponse,\n },\n providerMetadata: {\n huggingface: {\n responseId: response.id,\n },\n },\n warnings,\n };\n }\n\n async doStream(\n options: Parameters<LanguageModelV2['doStream']>[0],\n ): Promise<Awaited<ReturnType<LanguageModelV2['doStream']>>> {\n const { args, warnings } = await this.getArgs(options);\n\n const body = {\n ...args,\n stream: true,\n };\n\n const { value: response, responseHeaders } = await postJsonToApi({\n url: this.config.url({\n path: '/responses',\n modelId: this.modelId,\n }),\n headers: combineHeaders(this.config.headers(), options.headers),\n body,\n failedResponseHandler: huggingfaceFailedResponseHandler,\n successfulResponseHandler: createEventSourceResponseHandler(\n huggingfaceResponsesChunkSchema,\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch,\n });\n\n let finishReason: LanguageModelV2FinishReason = 'unknown';\n let responseId: string | null = null;\n const usage: LanguageModelV2Usage = {\n inputTokens: undefined,\n outputTokens: undefined,\n totalTokens: undefined,\n };\n\n return {\n stream: response.pipeThrough(\n new TransformStream<\n ParseResult<z.infer<typeof huggingfaceResponsesChunkSchema>>,\n LanguageModelV2StreamPart\n >({\n start(controller) {\n controller.enqueue({ type: 'stream-start', warnings });\n },\n\n transform(chunk, controller) {\n if (!chunk.success) {\n finishReason = 'error';\n controller.enqueue({ type: 'error', error: chunk.error });\n return;\n }\n\n const value = chunk.value;\n\n if (isResponseCreatedChunk(value)) {\n responseId = value.response.id;\n controller.enqueue({\n type: 'response-metadata',\n id: value.response.id,\n timestamp: new Date(value.response.created_at * 1000),\n modelId: value.response.model,\n });\n return;\n }\n\n if (isResponseOutputItemAddedChunk(value)) {\n if (\n value.item.type === 'message' &&\n value.item.role === 'assistant'\n ) {\n controller.enqueue({\n type: 'text-start',\n id: value.item.id,\n providerMetadata: {\n huggingface: {\n itemId: value.item.id,\n },\n },\n });\n } else if (value.item.type === 'function_call') {\n controller.enqueue({\n type: 'tool-input-start',\n id: value.item.call_id,\n toolName: value.item.name,\n });\n } else if (value.item.type === 'reasoning') {\n controller.enqueue({\n type: 'reasoning-start',\n id: value.item.id,\n providerMetadata: {\n huggingface: {\n itemId: value.item.id,\n },\n },\n });\n }\n return;\n }\n\n if (isResponseOutputItemDoneChunk(value)) {\n if (\n value.item.type === 'message' &&\n value.item.role === 'assistant'\n ) {\n controller.enqueue({\n type: 'text-end',\n id: value.item.id,\n });\n } else if (value.item.type === 'function_call') {\n controller.enqueue({\n type: 'tool-input-end',\n id: value.item.call_id,\n });\n\n controller.enqueue({\n type: 'tool-call',\n toolCallId: value.item.call_id,\n toolName: value.item.name,\n input: value.item.arguments,\n });\n\n if (value.item.output) {\n controller.enqueue({\n type: 'tool-result',\n toolCallId: value.item.call_id,\n toolName: value.item.name,\n result: value.item.output,\n });\n }\n }\n return;\n }\n\n if (isResponseCompletedChunk(value)) {\n responseId = value.response.id;\n finishReason = mapHuggingFaceResponsesFinishReason(\n value.response.incomplete_details?.reason ?? 'stop',\n );\n if (value.response.usage) {\n usage.inputTokens = value.response.usage.input_tokens;\n usage.outputTokens = value.response.usage.output_tokens;\n usage.totalTokens =\n value.response.usage.total_tokens ??\n value.response.usage.input_tokens +\n value.response.usage.output_tokens;\n }\n return;\n }\n\n if (isReasoningDeltaChunk(value)) {\n controller.enqueue({\n type: 'reasoning-delta',\n id: value.item_id,\n delta: value.delta,\n });\n return;\n }\n\n if (isReasoningEndChunk(value)) {\n controller.enqueue({\n type: 'reasoning-end',\n id: value.item_id,\n });\n return;\n }\n\n if (isTextDeltaChunk(value)) {\n controller.enqueue({\n type: 'text-delta',\n id: value.item_id,\n delta: value.delta,\n });\n return;\n }\n },\n\n flush(controller) {\n controller.enqueue({\n type: 'finish',\n finishReason,\n usage,\n providerMetadata: {\n huggingface: {\n responseId,\n },\n },\n });\n },\n }),\n ),\n request: { body },\n response: { headers: responseHeaders },\n };\n }\n}\n\nconst huggingfaceResponsesProviderOptionsSchema = z.object({\n metadata: z.record(z.string(), z.string()).optional(),\n instructions: z.string().optional(),\n strictJsonSchema: z.boolean().optional(),\n reasoningEffort: z.string().optional(),\n});\n\nconst huggingfaceResponsesOutputSchema = z.discriminatedUnion('type', [\n z.object({\n type: z.literal('message'),\n id: z.string(),\n role: z.string().optional(),\n status: z.string().optional(),\n content: z.array(\n z.object({\n type: z.literal('output_text'),\n text: z.string(),\n annotations: z.array(z.any()).optional(),\n }),\n ),\n }),\n z.object({\n type: z.literal('reasoning'),\n id: z.string(),\n status: z.string().optional(),\n content: z.array(\n z.object({\n type: z.literal('reasoning_text'),\n text: z.string(),\n }),\n ),\n summary: z\n .array(\n z\n .object({\n type: z.literal('reasoning_summary'),\n text: z.string(),\n })\n .optional(),\n )\n .optional(),\n }),\n z.object({\n type: z.literal('function_call'),\n id: z.string(),\n call_id: z.string(),\n name: z.string(),\n arguments: z.string(),\n output: z.string().optional(),\n status: z.string().optional(),\n }),\n z.object({\n type: z.literal('mcp_call'),\n id: z.string(),\n name: z.string(),\n arguments: z.string(),\n output: z.string().optional(),\n status: z.string().optional(),\n }),\n z.object({\n type: z.literal('mcp_list_tools'),\n id: z.string(),\n server_label: z.string(),\n tools: z.array(z.any()).optional(),\n status: z.string().optional(),\n }),\n]);\n\nconst huggingfaceResponsesResponseSchema = z.object({\n id: z.string(),\n model: z.string(),\n object: z.string(),\n created_at: z.number(),\n status: z.string(),\n error: z.any().nullable(),\n instructions: z.any().nullable(),\n max_output_tokens: z.any().nullable(),\n metadata: z.any().nullable(),\n tool_choice: z.any(),\n tools: z.array(z.any()),\n temperature: z.number(),\n top_p: z.number(),\n incomplete_details: z\n .object({\n reason: z.string(),\n })\n .nullable()\n .optional(),\n usage: z\n .object({\n input_tokens: z.number(),\n input_tokens_details: z\n .object({\n cached_tokens: z.number(),\n })\n .optional(),\n output_tokens: z.number(),\n output_tokens_details: z\n .object({\n reasoning_tokens: z.number(),\n })\n .optional(),\n total_tokens: z.number(),\n })\n .nullable()\n .optional(),\n output: z.array(huggingfaceResponsesOutputSchema),\n output_text: z.string().nullable().optional(),\n});\n\nconst responseOutputItemAddedSchema = z.object({\n type: z.literal('response.output_item.added'),\n output_index: z.number(),\n item: z.discriminatedUnion('type', [\n z.object({\n type: z.literal('message'),\n id: z.string(),\n role: z.string().optional(),\n status: z.string().optional(),\n content: z.array(z.any()).optional(),\n }),\n z.object({\n type: z.literal('reasoning'),\n id: z.string(),\n status: z.string().optional(),\n content: z.array(z.any()).optional(),\n summary: z.array(z.any()).optional(),\n }),\n z.object({\n type: z.literal('mcp_list_tools'),\n id: z.string(),\n server_label: z.string(),\n tools: z.array(z.any()).optional(),\n error: z.string().optional(),\n }),\n z.object({\n type: z.literal('mcp_call'),\n id: z.string(),\n server_label: z.string(),\n name: z.string(),\n arguments: z.string(),\n output: z.string().optional(),\n error: z.string().optional(),\n }),\n z.object({\n type: z.literal('function_call'),\n id: z.string(),\n call_id: z.string(),\n name: z.string(),\n arguments: z.string(),\n output: z.string().optional(),\n error: z.string().optional(),\n }),\n ]),\n sequence_number: z.number(),\n});\n\nconst responseOutputItemDoneSchema = z.object({\n type: z.literal('response.output_item.done'),\n output_index: z.number(),\n item: z.discriminatedUnion('type', [\n z.object({\n type: z.literal('message'),\n id: z.string(),\n role: z.string().optional(),\n status: z.string().optional(),\n content: z.array(z.any()).optional(),\n }),\n z.object({\n type: z.literal('mcp_list_tools'),\n id: z.string(),\n server_label: z.string(),\n tools: z.array(z.any()).optional(),\n error: z.string().optional(),\n }),\n z.object({\n type: z.literal('mcp_call'),\n id: z.string(),\n server_label: z.string(),\n name: z.string(),\n arguments: z.string(),\n output: z.string().optional(),\n error: z.string().optional(),\n }),\n z.object({\n type: z.literal('function_call'),\n id: z.string(),\n call_id: z.string(),\n name: z.string(),\n arguments: z.string(),\n output: z.string().optional(),\n error: z.string().optional(),\n }),\n z.object({\n type: z.literal('reasoning'),\n id: z.string(),\n status: z.string().optional(),\n content: z.array(z.any()).optional(),\n summary: z.array(z.any()).optional(),\n }),\n ]),\n sequence_number: z.number(),\n});\n\nconst textDeltaChunkSchema = z.object({\n type: z.literal('response.output_text.delta'),\n item_id: z.string(),\n output_index: z.number(),\n content_index: z.number(),\n delta: z.string(),\n sequence_number: z.number(),\n});\n\nconst reasoningTextDeltaChunkSchema = z.object({\n type: z.literal('response.reasoning_text.delta'),\n item_id: z.string(),\n output_index: z.number(),\n content_index: z.number(),\n delta: z.string(),\n sequence_number: z.number(),\n});\n\nconst reasoningTextEndChunkSchema = z.object({\n type: z.literal('response.reasoning_text.done'),\n item_id: z.string(),\n output_index: z.number(),\n content_index: z.number(),\n text: z.string(),\n sequence_number: z.number(),\n});\n\nconst responseCompletedChunkSchema = z.object({\n type: z.literal('response.completed'),\n response: huggingfaceResponsesResponseSchema,\n sequence_number: z.number(),\n});\n\nconst responseCreatedChunkSchema = z.object({\n type: z.literal('response.created'),\n response: z.object({\n id: z.string(),\n object: z.string(),\n created_at: z.number(),\n status: z.string(),\n model: z.string(),\n }),\n});\n\nconst huggingfaceResponsesChunkSchema = z.union([\n responseOutputItemAddedSchema,\n responseOutputItemDoneSchema,\n reasoningTextDeltaChunkSchema,\n reasoningTextEndChunkSchema,\n textDeltaChunkSchema,\n responseCompletedChunkSchema,\n responseCreatedChunkSchema,\n z.object({ type: z.string() }).loose(), // fallback for unknown chunks\n]);\n\nfunction isResponseOutputItemAddedChunk(\n chunk: z.infer<typeof huggingfaceResponsesChunkSchema>,\n): chunk is z.infer<typeof responseOutputItemAddedSchema> {\n return chunk.type === 'response.output_item.added';\n}\n\nfunction isResponseOutputItemDoneChunk(\n chunk: z.infer<typeof huggingfaceResponsesChunkSchema>,\n): chunk is z.infer<typeof responseOutputItemDoneSchema> {\n return chunk.type === 'response.output_item.done';\n}\n\nfunction isTextDeltaChunk(\n chunk: z.infer<typeof huggingfaceResponsesChunkSchema>,\n): chunk is z.infer<typeof textDeltaChunkSchema> {\n return chunk.type === 'response.output_text.delta';\n}\n\nfunction isReasoningDeltaChunk(\n chunk: z.infer<typeof huggingfaceResponsesChunkSchema>,\n): chunk is z.infer<typeof reasoningTextDeltaChunkSchema> {\n return chunk.type === 'response.reasoning_text.delta';\n}\n\nfunction isReasoningEndChunk(\n chunk: z.infer<typeof huggingfaceResponsesChunkSchema>,\n): chunk is z.infer<typeof reasoningTextEndChunkSchema> {\n return chunk.type === 'response.reasoning_text.done';\n}\n\nfunction isResponseCompletedChunk(\n chunk: z.infer<typeof huggingfaceResponsesChunkSchema>,\n): chunk is z.infer<typeof responseCompletedChunkSchema> {\n return chunk.type === 'response.completed';\n}\n\nfunction isResponseCreatedChunk(\n chunk: z.infer<typeof huggingfaceResponsesChunkSchema>,\n): chunk is z.infer<typeof responseCreatedChunkSchema> {\n return chunk.type === 'response.created';\n}\n","import { createJsonErrorResponseHandler } from '@ai-sdk/provider-utils';\nimport { z } from 'zod/v4';\n\nconst huggingfaceErrorDataSchema = z.object({\n error: z.object({\n message: z.string(),\n type: z.string().optional(),\n code: z.string().optional(),\n }),\n});\n\nexport type HuggingFaceErrorData = z.infer<typeof huggingfaceErrorDataSchema>;\n\nexport const huggingfaceFailedResponseHandler = createJsonErrorResponseHandler({\n errorSchema: huggingfaceErrorDataSchema,\n errorToMessage: data => data.error.message,\n});\n","import {\n LanguageModelV2CallWarning,\n LanguageModelV2Prompt,\n UnsupportedFunctionalityError,\n} from '@ai-sdk/provider';\n\nexport async function convertToHuggingFaceResponsesMessages({\n prompt,\n}: {\n prompt: LanguageModelV2Prompt;\n}): Promise<{\n input: string | Array<any>;\n warnings: Array<LanguageModelV2CallWarning>;\n}> {\n const messages: Array<any> = [];\n const warnings: Array<LanguageModelV2CallWarning> = [];\n\n for (const { role, content } of prompt) {\n switch (role) {\n case 'system': {\n messages.push({ role: 'system', content });\n break;\n }\n\n case 'user': {\n messages.push({\n role: 'user',\n content: content.map(part => {\n switch (part.type) {\n case 'text': {\n return { type: 'input_text', text: part.text };\n }\n case 'file': {\n if (part.mediaType.startsWith('image/')) {\n const mediaType =\n part.mediaType === 'image/*'\n ? 'image/jpeg'\n : part.mediaType;\n\n return {\n type: 'input_image',\n image_url:\n part.data instanceof URL\n ? part.data.toString()\n : `data:${mediaType};base64,${part.data}`,\n };\n } else {\n throw new UnsupportedFunctionalityError({\n functionality: `file part media type ${part.mediaType}`,\n });\n }\n }\n default: {\n const _exhaustiveCheck: never = part;\n throw new Error(`Unsupported part type: ${_exhaustiveCheck}`);\n }\n }\n }),\n });\n\n break;\n }\n\n case 'assistant': {\n for (const part of content) {\n switch (part.type) {\n case 'text': {\n messages.push({\n role: 'assistant',\n content: [{ type: 'output_text', text: part.text }],\n });\n break;\n }\n case 'tool-call': {\n // tool calls are handled by the responses API\n break;\n }\n\n case 'tool-result': {\n // tool results are handled by the responses API\n break;\n }\n\n case 'reasoning': {\n // include reasoning content in the message text\n messages.push({\n role: 'assistant',\n content: [{ type: 'output_text', text: part.text }],\n });\n break;\n }\n }\n }\n\n break;\n }\n\n case 'tool': {\n warnings.push({\n type: 'unsupported-setting',\n setting: 'tool messages',\n });\n break;\n }\n\n default: {\n const _exhaustiveCheck: never = role;\n throw new Error(`Unsupported role: ${_exhaustiveCheck}`);\n }\n }\n }\n\n return { input: messages, warnings };\n}\n","import { LanguageModelV2FinishReason } from '@ai-sdk/provider';\n\nexport function mapHuggingFaceResponsesFinishReason(\n finishReason: string | null | undefined,\n): LanguageModelV2FinishReason {\n switch (finishReason) {\n case 'stop':\n return 'stop';\n case 'length':\n return 'length';\n case 'content_filter':\n return 'content-filter';\n case 'tool_calls':\n return 'tool-calls';\n case 'error':\n return 'error';\n default:\n return 'unknown';\n }\n}\n","import {\n LanguageModelV2CallOptions,\n LanguageModelV2CallWarning,\n} from '@ai-sdk/provider';\n\nexport type HuggingFaceResponsesTool = {\n type: 'function';\n name: string;\n description?: string;\n parameters: unknown;\n};\n\nexport type HuggingFaceResponsesToolChoice =\n | 'auto'\n | 'required'\n | { type: 'function'; function: { name: string } };\n\nexport function prepareResponsesTools({\n tools,\n toolChoice,\n}: {\n tools: LanguageModelV2CallOptions['tools'];\n toolChoice?: LanguageModelV2CallOptions['toolChoice'];\n}): {\n tools?: HuggingFaceResponsesTool[];\n toolChoice?: HuggingFaceResponsesToolChoice;\n toolWarnings: LanguageModelV2CallWarning[];\n} {\n // when the tools array is empty, change it to undefined to prevent errors:\n tools = tools?.length ? tools : undefined;\n\n const toolWarnings: LanguageModelV2CallWarning[] = [];\n\n if (tools == null) {\n return { tools: undefined, toolChoice: undefined, toolWarnings };\n }\n\n const huggingfaceTools: HuggingFaceResponsesTool[] = [];\n\n for (const tool of tools) {\n switch (tool.type) {\n case 'function':\n huggingfaceTools.push({\n type: 'function',\n name: tool.name,\n description: tool.description,\n parameters: tool.inputSchema,\n });\n break;\n case 'provider-defined':\n toolWarnings.push({\n type: 'unsupported-tool',\n tool,\n });\n break;\n default: {\n const _exhaustiveCheck: never = tool;\n throw new Error(`Unsupported tool type: ${_exhaustiveCheck}`);\n }\n }\n }\n\n // prepare tool choice:\n let mappedToolChoice: HuggingFaceResponsesToolChoice | undefined = undefined;\n if (toolChoice) {\n switch (toolChoice.type) {\n case 'auto':\n mappedToolChoice = 'auto';\n break;\n case 'required':\n mappedToolChoice = 'required';\n break;\n case 'none':\n // not supported, ignore\n break;\n case 'tool':\n mappedToolChoice = {\n type: 'function',\n function: { name: toolChoice.toolName },\n };\n break;\n default: {\n const _exhaustiveCheck: never = toolChoice;\n throw new Error(`Unsupported tool choice type: ${_exhaustiveCheck}`);\n }\n }\n }\n\n return {\n tools: huggingfaceTools,\n toolChoice: mappedToolChoice,\n toolWarnings,\n };\n}\n"],"mappings":"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","names":["import_provider","import_provider_utils","import_provider","import_provider_utils","import_v4","_a"]}
package/dist/index.mjs CHANGED
@@ -296,7 +296,14 @@ var HuggingFaceResponsesLanguageModel = class {
296
296
  metadata: huggingfaceOptions == null ? void 0 : huggingfaceOptions.metadata,
297
297
  instructions: huggingfaceOptions == null ? void 0 : huggingfaceOptions.instructions,
298
298
  ...preparedTools && { tools: preparedTools },
299
- ...preparedToolChoice && { tool_choice: preparedToolChoice }
299
+ ...preparedToolChoice && { tool_choice: preparedToolChoice },
300
+ ...(huggingfaceOptions == null ? void 0 : huggingfaceOptions.reasoningEffort) != null && {
301
+ reasoning: {
302
+ ...(huggingfaceOptions == null ? void 0 : huggingfaceOptions.reasoningEffort) != null && {
303
+ effort: huggingfaceOptions.reasoningEffort
304
+ }
305
+ }
306
+ }
300
307
  };
301
308
  return { args: baseArgs, warnings };
302
309
  }
@@ -365,6 +372,20 @@ var HuggingFaceResponsesLanguageModel = class {
365
372
  }
366
373
  break;
367
374
  }
375
+ case "reasoning": {
376
+ for (const contentPart of part.content) {
377
+ content.push({
378
+ type: "reasoning",
379
+ text: contentPart.text,
380
+ providerMetadata: {
381
+ huggingface: {
382
+ itemId: part.id
383
+ }
384
+ }
385
+ });
386
+ }
387
+ break;
388
+ }
368
389
  case "mcp_call": {
369
390
  content.push({
370
391
  type: "tool-call",
@@ -519,6 +540,16 @@ var HuggingFaceResponsesLanguageModel = class {
519
540
  id: value.item.call_id,
520
541
  toolName: value.item.name
521
542
  });
543
+ } else if (value.item.type === "reasoning") {
544
+ controller.enqueue({
545
+ type: "reasoning-start",
546
+ id: value.item.id,
547
+ providerMetadata: {
548
+ huggingface: {
549
+ itemId: value.item.id
550
+ }
551
+ }
552
+ });
522
553
  }
523
554
  return;
524
555
  }
@@ -562,6 +593,21 @@ var HuggingFaceResponsesLanguageModel = class {
562
593
  }
563
594
  return;
564
595
  }
596
+ if (isReasoningDeltaChunk(value)) {
597
+ controller.enqueue({
598
+ type: "reasoning-delta",
599
+ id: value.item_id,
600
+ delta: value.delta
601
+ });
602
+ return;
603
+ }
604
+ if (isReasoningEndChunk(value)) {
605
+ controller.enqueue({
606
+ type: "reasoning-end",
607
+ id: value.item_id
608
+ });
609
+ return;
610
+ }
565
611
  if (isTextDeltaChunk(value)) {
566
612
  controller.enqueue({
567
613
  type: "text-delta",
@@ -593,8 +639,65 @@ var HuggingFaceResponsesLanguageModel = class {
593
639
  var huggingfaceResponsesProviderOptionsSchema = z2.object({
594
640
  metadata: z2.record(z2.string(), z2.string()).optional(),
595
641
  instructions: z2.string().optional(),
596
- strictJsonSchema: z2.boolean().optional()
642
+ strictJsonSchema: z2.boolean().optional(),
643
+ reasoningEffort: z2.string().optional()
597
644
  });
645
+ var huggingfaceResponsesOutputSchema = z2.discriminatedUnion("type", [
646
+ z2.object({
647
+ type: z2.literal("message"),
648
+ id: z2.string(),
649
+ role: z2.string().optional(),
650
+ status: z2.string().optional(),
651
+ content: z2.array(
652
+ z2.object({
653
+ type: z2.literal("output_text"),
654
+ text: z2.string(),
655
+ annotations: z2.array(z2.any()).optional()
656
+ })
657
+ )
658
+ }),
659
+ z2.object({
660
+ type: z2.literal("reasoning"),
661
+ id: z2.string(),
662
+ status: z2.string().optional(),
663
+ content: z2.array(
664
+ z2.object({
665
+ type: z2.literal("reasoning_text"),
666
+ text: z2.string()
667
+ })
668
+ ),
669
+ summary: z2.array(
670
+ z2.object({
671
+ type: z2.literal("reasoning_summary"),
672
+ text: z2.string()
673
+ }).optional()
674
+ ).optional()
675
+ }),
676
+ z2.object({
677
+ type: z2.literal("function_call"),
678
+ id: z2.string(),
679
+ call_id: z2.string(),
680
+ name: z2.string(),
681
+ arguments: z2.string(),
682
+ output: z2.string().optional(),
683
+ status: z2.string().optional()
684
+ }),
685
+ z2.object({
686
+ type: z2.literal("mcp_call"),
687
+ id: z2.string(),
688
+ name: z2.string(),
689
+ arguments: z2.string(),
690
+ output: z2.string().optional(),
691
+ status: z2.string().optional()
692
+ }),
693
+ z2.object({
694
+ type: z2.literal("mcp_list_tools"),
695
+ id: z2.string(),
696
+ server_label: z2.string(),
697
+ tools: z2.array(z2.any()).optional(),
698
+ status: z2.string().optional()
699
+ })
700
+ ]);
598
701
  var huggingfaceResponsesResponseSchema = z2.object({
599
702
  id: z2.string(),
600
703
  model: z2.string(),
@@ -623,7 +726,7 @@ var huggingfaceResponsesResponseSchema = z2.object({
623
726
  }).optional(),
624
727
  total_tokens: z2.number()
625
728
  }).nullable().optional(),
626
- output: z2.array(z2.any()),
729
+ output: z2.array(huggingfaceResponsesOutputSchema),
627
730
  output_text: z2.string().nullable().optional()
628
731
  });
629
732
  var responseOutputItemAddedSchema = z2.object({
@@ -637,6 +740,13 @@ var responseOutputItemAddedSchema = z2.object({
637
740
  status: z2.string().optional(),
638
741
  content: z2.array(z2.any()).optional()
639
742
  }),
743
+ z2.object({
744
+ type: z2.literal("reasoning"),
745
+ id: z2.string(),
746
+ status: z2.string().optional(),
747
+ content: z2.array(z2.any()).optional(),
748
+ summary: z2.array(z2.any()).optional()
749
+ }),
640
750
  z2.object({
641
751
  type: z2.literal("mcp_list_tools"),
642
752
  id: z2.string(),
@@ -700,6 +810,13 @@ var responseOutputItemDoneSchema = z2.object({
700
810
  arguments: z2.string(),
701
811
  output: z2.string().optional(),
702
812
  error: z2.string().optional()
813
+ }),
814
+ z2.object({
815
+ type: z2.literal("reasoning"),
816
+ id: z2.string(),
817
+ status: z2.string().optional(),
818
+ content: z2.array(z2.any()).optional(),
819
+ summary: z2.array(z2.any()).optional()
703
820
  })
704
821
  ]),
705
822
  sequence_number: z2.number()
@@ -712,6 +829,22 @@ var textDeltaChunkSchema = z2.object({
712
829
  delta: z2.string(),
713
830
  sequence_number: z2.number()
714
831
  });
832
+ var reasoningTextDeltaChunkSchema = z2.object({
833
+ type: z2.literal("response.reasoning_text.delta"),
834
+ item_id: z2.string(),
835
+ output_index: z2.number(),
836
+ content_index: z2.number(),
837
+ delta: z2.string(),
838
+ sequence_number: z2.number()
839
+ });
840
+ var reasoningTextEndChunkSchema = z2.object({
841
+ type: z2.literal("response.reasoning_text.done"),
842
+ item_id: z2.string(),
843
+ output_index: z2.number(),
844
+ content_index: z2.number(),
845
+ text: z2.string(),
846
+ sequence_number: z2.number()
847
+ });
715
848
  var responseCompletedChunkSchema = z2.object({
716
849
  type: z2.literal("response.completed"),
717
850
  response: huggingfaceResponsesResponseSchema,
@@ -730,6 +863,8 @@ var responseCreatedChunkSchema = z2.object({
730
863
  var huggingfaceResponsesChunkSchema = z2.union([
731
864
  responseOutputItemAddedSchema,
732
865
  responseOutputItemDoneSchema,
866
+ reasoningTextDeltaChunkSchema,
867
+ reasoningTextEndChunkSchema,
733
868
  textDeltaChunkSchema,
734
869
  responseCompletedChunkSchema,
735
870
  responseCreatedChunkSchema,
@@ -745,6 +880,12 @@ function isResponseOutputItemDoneChunk(chunk) {
745
880
  function isTextDeltaChunk(chunk) {
746
881
  return chunk.type === "response.output_text.delta";
747
882
  }
883
+ function isReasoningDeltaChunk(chunk) {
884
+ return chunk.type === "response.reasoning_text.delta";
885
+ }
886
+ function isReasoningEndChunk(chunk) {
887
+ return chunk.type === "response.reasoning_text.done";
888
+ }
748
889
  function isResponseCompletedChunk(chunk) {
749
890
  return chunk.type === "response.completed";
750
891
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/huggingface-provider.ts","../src/responses/huggingface-responses-language-model.ts","../src/huggingface-error.ts","../src/responses/convert-to-huggingface-responses-messages.ts","../src/responses/map-huggingface-responses-finish-reason.ts","../src/responses/huggingface-responses-prepare-tools.ts"],"sourcesContent":["import {\n LanguageModelV2,\n NoSuchModelError,\n ProviderV2,\n} from '@ai-sdk/provider';\nimport {\n FetchFunction,\n generateId,\n loadApiKey,\n withoutTrailingSlash,\n} from '@ai-sdk/provider-utils';\nimport { HuggingFaceResponsesLanguageModel } from './responses/huggingface-responses-language-model';\nimport { HuggingFaceResponsesModelId } from './responses/huggingface-responses-settings';\n\nexport interface HuggingFaceProviderSettings {\n /**\nHugging Face API key.\n*/\n apiKey?: string;\n /**\nBase URL for the API calls.\n*/\n baseURL?: string;\n /**\nCustom headers to include in the requests.\n*/\n headers?: Record<string, string>;\n /**\nCustom fetch implementation. You can use it as a middleware to intercept requests,\nor to provide a custom fetch implementation for e.g. testing.\n*/\n fetch?: FetchFunction;\n\n generateId?: () => string;\n}\n\nexport interface HuggingFaceProvider extends ProviderV2 {\n /**\nCreates a Hugging Face responses model for text generation.\n*/\n (modelId: HuggingFaceResponsesModelId): LanguageModelV2;\n\n /**\nCreates a Hugging Face responses model for text generation.\n*/\n languageModel(modelId: HuggingFaceResponsesModelId): LanguageModelV2;\n\n /**\nCreates a Hugging Face responses model for text generation.\n*/\n responses(modelId: HuggingFaceResponsesModelId): LanguageModelV2;\n}\n\n/**\nCreate a Hugging Face provider instance.\n */\nexport function createHuggingFace(\n options: HuggingFaceProviderSettings = {},\n): HuggingFaceProvider {\n const baseURL =\n withoutTrailingSlash(options.baseURL) ?? 'https://router.huggingface.co/v1';\n\n const getHeaders = () => ({\n Authorization: `Bearer ${loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: 'HUGGINGFACE_API_KEY',\n description: 'Hugging Face',\n })}`,\n ...options.headers,\n });\n\n const createResponsesModel = (modelId: HuggingFaceResponsesModelId) => {\n return new HuggingFaceResponsesLanguageModel(modelId, {\n provider: 'huggingface.responses',\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch,\n generateId: options.generateId ?? generateId,\n });\n };\n\n const provider = (modelId: HuggingFaceResponsesModelId) =>\n createResponsesModel(modelId);\n\n provider.languageModel = createResponsesModel;\n provider.responses = createResponsesModel;\n\n provider.textEmbeddingModel = (modelId: string) => {\n throw new NoSuchModelError({\n modelId,\n modelType: 'textEmbeddingModel',\n message:\n 'Hugging Face Responses API does not support text embeddings. Use the Hugging Face Inference API directly for embeddings.',\n });\n };\n\n provider.imageModel = (modelId: string) => {\n throw new NoSuchModelError({\n modelId,\n modelType: 'imageModel',\n message:\n 'Hugging Face Responses API does not support image generation. Use the Hugging Face Inference API directly for image models.',\n });\n };\n\n return provider;\n}\n\n/**\nDefault Hugging Face provider instance.\n */\nexport const huggingface = createHuggingFace();\n","import {\n APICallError,\n LanguageModelV2,\n LanguageModelV2CallWarning,\n LanguageModelV2Content,\n LanguageModelV2FinishReason,\n LanguageModelV2StreamPart,\n LanguageModelV2Usage,\n} from '@ai-sdk/provider';\nimport {\n combineHeaders,\n createEventSourceResponseHandler,\n createJsonResponseHandler,\n generateId,\n parseProviderOptions,\n ParseResult,\n postJsonToApi,\n} from '@ai-sdk/provider-utils';\nimport { z } from 'zod/v4';\nimport { HuggingFaceConfig } from '../huggingface-config';\nimport { huggingfaceFailedResponseHandler } from '../huggingface-error';\nimport { convertToHuggingFaceResponsesMessages } from './convert-to-huggingface-responses-messages';\nimport { mapHuggingFaceResponsesFinishReason } from './map-huggingface-responses-finish-reason';\nimport { HuggingFaceResponsesModelId } from './huggingface-responses-settings';\nimport { prepareResponsesTools } from './huggingface-responses-prepare-tools';\n\nexport class HuggingFaceResponsesLanguageModel implements LanguageModelV2 {\n readonly specificationVersion = 'v2';\n\n readonly modelId: HuggingFaceResponsesModelId;\n\n private readonly config: HuggingFaceConfig;\n\n constructor(modelId: HuggingFaceResponsesModelId, config: HuggingFaceConfig) {\n this.modelId = modelId;\n this.config = config;\n }\n\n readonly supportedUrls: Record<string, RegExp[]> = {\n 'image/*': [/^https?:\\/\\/.*$/],\n };\n\n get provider(): string {\n return this.config.provider;\n }\n\n private async getArgs({\n maxOutputTokens,\n temperature,\n stopSequences,\n topP,\n topK,\n presencePenalty,\n frequencyPenalty,\n seed,\n prompt,\n providerOptions,\n tools,\n toolChoice,\n responseFormat,\n }: Parameters<LanguageModelV2['doGenerate']>[0]) {\n const warnings: LanguageModelV2CallWarning[] = [];\n\n if (topK != null) {\n warnings.push({ type: 'unsupported-setting', setting: 'topK' });\n }\n\n if (seed != null) {\n warnings.push({ type: 'unsupported-setting', setting: 'seed' });\n }\n\n if (presencePenalty != null) {\n warnings.push({\n type: 'unsupported-setting',\n setting: 'presencePenalty',\n });\n }\n\n if (frequencyPenalty != null) {\n warnings.push({\n type: 'unsupported-setting',\n setting: 'frequencyPenalty',\n });\n }\n\n if (stopSequences != null) {\n warnings.push({ type: 'unsupported-setting', setting: 'stopSequences' });\n }\n\n const { input, warnings: messageWarnings } =\n await convertToHuggingFaceResponsesMessages({\n prompt,\n });\n\n warnings.push(...messageWarnings);\n\n const huggingfaceOptions = await parseProviderOptions({\n provider: 'huggingface',\n providerOptions,\n schema: huggingfaceResponsesProviderOptionsSchema,\n });\n\n const {\n tools: preparedTools,\n toolChoice: preparedToolChoice,\n toolWarnings,\n } = prepareResponsesTools({\n tools,\n toolChoice,\n });\n\n warnings.push(...toolWarnings);\n\n const baseArgs = {\n model: this.modelId,\n input,\n temperature,\n top_p: topP,\n max_output_tokens: maxOutputTokens,\n\n // HuggingFace Responses API uses text.format for structured output\n ...(responseFormat?.type === 'json' &&\n responseFormat.schema && {\n text: {\n format: {\n type: 'json_schema',\n strict: huggingfaceOptions?.strictJsonSchema ?? false,\n name: responseFormat.name ?? 'response',\n description: responseFormat.description,\n schema: responseFormat.schema,\n },\n },\n }),\n\n metadata: huggingfaceOptions?.metadata,\n instructions: huggingfaceOptions?.instructions,\n\n ...(preparedTools && { tools: preparedTools }),\n ...(preparedToolChoice && { tool_choice: preparedToolChoice }),\n };\n\n return { args: baseArgs, warnings };\n }\n\n async doGenerate(\n options: Parameters<LanguageModelV2['doGenerate']>[0],\n ): Promise<Awaited<ReturnType<LanguageModelV2['doGenerate']>>> {\n const { args, warnings } = await this.getArgs(options);\n\n const body = {\n ...args,\n stream: false,\n };\n\n const url = this.config.url({\n path: '/responses',\n modelId: this.modelId,\n });\n\n const {\n value: response,\n responseHeaders,\n rawValue: rawResponse,\n } = await postJsonToApi({\n url,\n headers: combineHeaders(this.config.headers(), options.headers),\n body,\n failedResponseHandler: huggingfaceFailedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler(\n huggingfaceResponsesResponseSchema,\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch,\n });\n\n if (response.error) {\n throw new APICallError({\n message: response.error.message,\n url,\n requestBodyValues: body,\n statusCode: 400,\n responseHeaders,\n responseBody: rawResponse as string,\n isRetryable: false,\n });\n }\n\n const content: Array<LanguageModelV2Content> = [];\n\n // Process output array\n for (const part of response.output) {\n switch (part.type) {\n case 'message': {\n for (const contentPart of part.content) {\n content.push({\n type: 'text',\n text: contentPart.text,\n providerMetadata: {\n huggingface: {\n itemId: part.id,\n },\n },\n });\n\n if (contentPart.annotations) {\n for (const annotation of contentPart.annotations) {\n content.push({\n type: 'source',\n sourceType: 'url',\n id: this.config.generateId?.() ?? generateId(),\n url: annotation.url,\n title: annotation.title,\n });\n }\n }\n }\n break;\n }\n\n case 'mcp_call': {\n content.push({\n type: 'tool-call',\n toolCallId: part.id,\n toolName: part.name,\n input: part.arguments,\n providerExecuted: true,\n });\n\n if (part.output) {\n content.push({\n type: 'tool-result',\n toolCallId: part.id,\n toolName: part.name,\n result: part.output,\n providerExecuted: true,\n });\n }\n break;\n }\n\n case 'mcp_list_tools': {\n content.push({\n type: 'tool-call',\n toolCallId: part.id,\n toolName: 'list_tools',\n input: JSON.stringify({ server_label: part.server_label }),\n providerExecuted: true,\n });\n\n if (part.tools) {\n content.push({\n type: 'tool-result',\n toolCallId: part.id,\n toolName: 'list_tools',\n result: { tools: part.tools },\n providerExecuted: true,\n });\n }\n break;\n }\n\n case 'function_call': {\n content.push({\n type: 'tool-call',\n toolCallId: part.call_id,\n toolName: part.name,\n input: part.arguments,\n });\n\n if (part.output) {\n content.push({\n type: 'tool-result',\n toolCallId: part.call_id,\n toolName: part.name,\n result: part.output,\n });\n }\n break;\n }\n\n default: {\n break;\n }\n }\n }\n\n return {\n content,\n finishReason: mapHuggingFaceResponsesFinishReason(\n response.incomplete_details?.reason ?? 'stop',\n ),\n usage: {\n inputTokens: response.usage?.input_tokens ?? 0,\n outputTokens: response.usage?.output_tokens ?? 0,\n totalTokens:\n response.usage?.total_tokens ??\n (response.usage?.input_tokens ?? 0) +\n (response.usage?.output_tokens ?? 0),\n },\n request: { body },\n response: {\n id: response.id,\n timestamp: new Date(response.created_at * 1000),\n modelId: response.model,\n headers: responseHeaders,\n body: rawResponse,\n },\n providerMetadata: {\n huggingface: {\n responseId: response.id,\n },\n },\n warnings,\n };\n }\n\n async doStream(\n options: Parameters<LanguageModelV2['doStream']>[0],\n ): Promise<Awaited<ReturnType<LanguageModelV2['doStream']>>> {\n const { args, warnings } = await this.getArgs(options);\n\n const body = {\n ...args,\n stream: true,\n };\n\n const { value: response, responseHeaders } = await postJsonToApi({\n url: this.config.url({\n path: '/responses',\n modelId: this.modelId,\n }),\n headers: combineHeaders(this.config.headers(), options.headers),\n body,\n failedResponseHandler: huggingfaceFailedResponseHandler,\n successfulResponseHandler: createEventSourceResponseHandler(\n huggingfaceResponsesChunkSchema,\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch,\n });\n\n let finishReason: LanguageModelV2FinishReason = 'unknown';\n let responseId: string | null = null;\n const usage: LanguageModelV2Usage = {\n inputTokens: undefined,\n outputTokens: undefined,\n totalTokens: undefined,\n };\n\n return {\n stream: response.pipeThrough(\n new TransformStream<\n ParseResult<z.infer<typeof huggingfaceResponsesChunkSchema>>,\n LanguageModelV2StreamPart\n >({\n start(controller) {\n controller.enqueue({ type: 'stream-start', warnings });\n },\n\n transform(chunk, controller) {\n if (!chunk.success) {\n finishReason = 'error';\n controller.enqueue({ type: 'error', error: chunk.error });\n return;\n }\n\n const value = chunk.value;\n\n if (isResponseCreatedChunk(value)) {\n responseId = value.response.id;\n controller.enqueue({\n type: 'response-metadata',\n id: value.response.id,\n timestamp: new Date(value.response.created_at * 1000),\n modelId: value.response.model,\n });\n return;\n }\n\n if (isResponseOutputItemAddedChunk(value)) {\n if (\n value.item.type === 'message' &&\n value.item.role === 'assistant'\n ) {\n controller.enqueue({\n type: 'text-start',\n id: value.item.id,\n providerMetadata: {\n huggingface: {\n itemId: value.item.id,\n },\n },\n });\n } else if (value.item.type === 'function_call') {\n controller.enqueue({\n type: 'tool-input-start',\n id: value.item.call_id,\n toolName: value.item.name,\n });\n }\n return;\n }\n\n if (isResponseOutputItemDoneChunk(value)) {\n if (\n value.item.type === 'message' &&\n value.item.role === 'assistant'\n ) {\n controller.enqueue({\n type: 'text-end',\n id: value.item.id,\n });\n } else if (value.item.type === 'function_call') {\n controller.enqueue({\n type: 'tool-input-end',\n id: value.item.call_id,\n });\n\n controller.enqueue({\n type: 'tool-call',\n toolCallId: value.item.call_id,\n toolName: value.item.name,\n input: value.item.arguments,\n });\n\n if (value.item.output) {\n controller.enqueue({\n type: 'tool-result',\n toolCallId: value.item.call_id,\n toolName: value.item.name,\n result: value.item.output,\n });\n }\n }\n return;\n }\n\n if (isResponseCompletedChunk(value)) {\n responseId = value.response.id;\n finishReason = mapHuggingFaceResponsesFinishReason(\n value.response.incomplete_details?.reason ?? 'stop',\n );\n if (value.response.usage) {\n usage.inputTokens = value.response.usage.input_tokens;\n usage.outputTokens = value.response.usage.output_tokens;\n usage.totalTokens =\n value.response.usage.total_tokens ??\n value.response.usage.input_tokens +\n value.response.usage.output_tokens;\n }\n return;\n }\n\n if (isTextDeltaChunk(value)) {\n controller.enqueue({\n type: 'text-delta',\n id: value.item_id,\n delta: value.delta,\n });\n return;\n }\n },\n\n flush(controller) {\n controller.enqueue({\n type: 'finish',\n finishReason,\n usage,\n providerMetadata: {\n huggingface: {\n responseId,\n },\n },\n });\n },\n }),\n ),\n request: { body },\n response: { headers: responseHeaders },\n };\n }\n}\n\nconst huggingfaceResponsesProviderOptionsSchema = z.object({\n metadata: z.record(z.string(), z.string()).optional(),\n instructions: z.string().optional(),\n strictJsonSchema: z.boolean().optional(),\n});\n\nconst huggingfaceResponsesResponseSchema = z.object({\n id: z.string(),\n model: z.string(),\n object: z.string(),\n created_at: z.number(),\n status: z.string(),\n error: z.any().nullable(),\n instructions: z.any().nullable(),\n max_output_tokens: z.any().nullable(),\n metadata: z.any().nullable(),\n tool_choice: z.any(),\n tools: z.array(z.any()),\n temperature: z.number(),\n top_p: z.number(),\n incomplete_details: z\n .object({\n reason: z.string(),\n })\n .nullable()\n .optional(),\n usage: z\n .object({\n input_tokens: z.number(),\n input_tokens_details: z\n .object({\n cached_tokens: z.number(),\n })\n .optional(),\n output_tokens: z.number(),\n output_tokens_details: z\n .object({\n reasoning_tokens: z.number(),\n })\n .optional(),\n total_tokens: z.number(),\n })\n .nullable()\n .optional(),\n output: z.array(z.any()),\n output_text: z.string().nullable().optional(),\n});\n\nconst responseOutputItemAddedSchema = z.object({\n type: z.literal('response.output_item.added'),\n output_index: z.number(),\n item: z.discriminatedUnion('type', [\n z.object({\n type: z.literal('message'),\n id: z.string(),\n role: z.string().optional(),\n status: z.string().optional(),\n content: z.array(z.any()).optional(),\n }),\n z.object({\n type: z.literal('mcp_list_tools'),\n id: z.string(),\n server_label: z.string(),\n tools: z.array(z.any()).optional(),\n error: z.string().optional(),\n }),\n z.object({\n type: z.literal('mcp_call'),\n id: z.string(),\n server_label: z.string(),\n name: z.string(),\n arguments: z.string(),\n output: z.string().optional(),\n error: z.string().optional(),\n }),\n z.object({\n type: z.literal('function_call'),\n id: z.string(),\n call_id: z.string(),\n name: z.string(),\n arguments: z.string(),\n output: z.string().optional(),\n error: z.string().optional(),\n }),\n ]),\n sequence_number: z.number(),\n});\n\nconst responseOutputItemDoneSchema = z.object({\n type: z.literal('response.output_item.done'),\n output_index: z.number(),\n item: z.discriminatedUnion('type', [\n z.object({\n type: z.literal('message'),\n id: z.string(),\n role: z.string().optional(),\n status: z.string().optional(),\n content: z.array(z.any()).optional(),\n }),\n z.object({\n type: z.literal('mcp_list_tools'),\n id: z.string(),\n server_label: z.string(),\n tools: z.array(z.any()).optional(),\n error: z.string().optional(),\n }),\n z.object({\n type: z.literal('mcp_call'),\n id: z.string(),\n server_label: z.string(),\n name: z.string(),\n arguments: z.string(),\n output: z.string().optional(),\n error: z.string().optional(),\n }),\n z.object({\n type: z.literal('function_call'),\n id: z.string(),\n call_id: z.string(),\n name: z.string(),\n arguments: z.string(),\n output: z.string().optional(),\n error: z.string().optional(),\n }),\n ]),\n sequence_number: z.number(),\n});\n\nconst textDeltaChunkSchema = z.object({\n type: z.literal('response.output_text.delta'),\n item_id: z.string(),\n output_index: z.number(),\n content_index: z.number(),\n delta: z.string(),\n sequence_number: z.number(),\n});\n\nconst responseCompletedChunkSchema = z.object({\n type: z.literal('response.completed'),\n response: huggingfaceResponsesResponseSchema,\n sequence_number: z.number(),\n});\n\nconst responseCreatedChunkSchema = z.object({\n type: z.literal('response.created'),\n response: z.object({\n id: z.string(),\n object: z.string(),\n created_at: z.number(),\n status: z.string(),\n model: z.string(),\n }),\n});\n\nconst huggingfaceResponsesChunkSchema = z.union([\n responseOutputItemAddedSchema,\n responseOutputItemDoneSchema,\n textDeltaChunkSchema,\n responseCompletedChunkSchema,\n responseCreatedChunkSchema,\n z.object({ type: z.string() }).loose(), // fallback for unknown chunks\n]);\n\nfunction isResponseOutputItemAddedChunk(\n chunk: z.infer<typeof huggingfaceResponsesChunkSchema>,\n): chunk is z.infer<typeof responseOutputItemAddedSchema> {\n return chunk.type === 'response.output_item.added';\n}\n\nfunction isResponseOutputItemDoneChunk(\n chunk: z.infer<typeof huggingfaceResponsesChunkSchema>,\n): chunk is z.infer<typeof responseOutputItemDoneSchema> {\n return chunk.type === 'response.output_item.done';\n}\n\nfunction isTextDeltaChunk(\n chunk: z.infer<typeof huggingfaceResponsesChunkSchema>,\n): chunk is z.infer<typeof textDeltaChunkSchema> {\n return chunk.type === 'response.output_text.delta';\n}\n\nfunction isResponseCompletedChunk(\n chunk: z.infer<typeof huggingfaceResponsesChunkSchema>,\n): chunk is z.infer<typeof responseCompletedChunkSchema> {\n return chunk.type === 'response.completed';\n}\n\nfunction isResponseCreatedChunk(\n chunk: z.infer<typeof huggingfaceResponsesChunkSchema>,\n): chunk is z.infer<typeof responseCreatedChunkSchema> {\n return chunk.type === 'response.created';\n}\n","import { createJsonErrorResponseHandler } from '@ai-sdk/provider-utils';\nimport { z } from 'zod/v4';\n\nconst huggingfaceErrorDataSchema = z.object({\n error: z.object({\n message: z.string(),\n type: z.string().optional(),\n code: z.string().optional(),\n }),\n});\n\nexport type HuggingFaceErrorData = z.infer<typeof huggingfaceErrorDataSchema>;\n\nexport const huggingfaceFailedResponseHandler = createJsonErrorResponseHandler({\n errorSchema: huggingfaceErrorDataSchema,\n errorToMessage: data => data.error.message,\n});\n","import {\n LanguageModelV2CallWarning,\n LanguageModelV2Prompt,\n UnsupportedFunctionalityError,\n} from '@ai-sdk/provider';\n\nexport async function convertToHuggingFaceResponsesMessages({\n prompt,\n}: {\n prompt: LanguageModelV2Prompt;\n}): Promise<{\n input: string | Array<any>;\n warnings: Array<LanguageModelV2CallWarning>;\n}> {\n const messages: Array<any> = [];\n const warnings: Array<LanguageModelV2CallWarning> = [];\n\n for (const { role, content } of prompt) {\n switch (role) {\n case 'system': {\n messages.push({ role: 'system', content });\n break;\n }\n\n case 'user': {\n messages.push({\n role: 'user',\n content: content.map(part => {\n switch (part.type) {\n case 'text': {\n return { type: 'input_text', text: part.text };\n }\n case 'file': {\n if (part.mediaType.startsWith('image/')) {\n const mediaType =\n part.mediaType === 'image/*'\n ? 'image/jpeg'\n : part.mediaType;\n\n return {\n type: 'input_image',\n image_url:\n part.data instanceof URL\n ? part.data.toString()\n : `data:${mediaType};base64,${part.data}`,\n };\n } else {\n throw new UnsupportedFunctionalityError({\n functionality: `file part media type ${part.mediaType}`,\n });\n }\n }\n default: {\n const _exhaustiveCheck: never = part;\n throw new Error(`Unsupported part type: ${_exhaustiveCheck}`);\n }\n }\n }),\n });\n\n break;\n }\n\n case 'assistant': {\n for (const part of content) {\n switch (part.type) {\n case 'text': {\n messages.push({\n role: 'assistant',\n content: [{ type: 'output_text', text: part.text }],\n });\n break;\n }\n case 'tool-call': {\n // tool calls are handled by the responses API\n break;\n }\n\n case 'tool-result': {\n // tool results are handled by the responses API\n break;\n }\n\n case 'reasoning': {\n // include reasoning content in the message text\n messages.push({\n role: 'assistant',\n content: [{ type: 'output_text', text: part.text }],\n });\n break;\n }\n }\n }\n\n break;\n }\n\n case 'tool': {\n warnings.push({\n type: 'unsupported-setting',\n setting: 'tool messages',\n });\n break;\n }\n\n default: {\n const _exhaustiveCheck: never = role;\n throw new Error(`Unsupported role: ${_exhaustiveCheck}`);\n }\n }\n }\n\n return { input: messages, warnings };\n}\n","import { LanguageModelV2FinishReason } from '@ai-sdk/provider';\n\nexport function mapHuggingFaceResponsesFinishReason(\n finishReason: string | null | undefined,\n): LanguageModelV2FinishReason {\n switch (finishReason) {\n case 'stop':\n return 'stop';\n case 'length':\n return 'length';\n case 'content_filter':\n return 'content-filter';\n case 'tool_calls':\n return 'tool-calls';\n case 'error':\n return 'error';\n default:\n return 'unknown';\n }\n}\n","import {\n LanguageModelV2CallOptions,\n LanguageModelV2CallWarning,\n} from '@ai-sdk/provider';\n\nexport type HuggingFaceResponsesTool = {\n type: 'function';\n name: string;\n description?: string;\n parameters: unknown;\n};\n\nexport type HuggingFaceResponsesToolChoice =\n | 'auto'\n | 'required'\n | { type: 'function'; function: { name: string } };\n\nexport function prepareResponsesTools({\n tools,\n toolChoice,\n}: {\n tools: LanguageModelV2CallOptions['tools'];\n toolChoice?: LanguageModelV2CallOptions['toolChoice'];\n}): {\n tools?: HuggingFaceResponsesTool[];\n toolChoice?: HuggingFaceResponsesToolChoice;\n toolWarnings: LanguageModelV2CallWarning[];\n} {\n // when the tools array is empty, change it to undefined to prevent errors:\n tools = tools?.length ? tools : undefined;\n\n const toolWarnings: LanguageModelV2CallWarning[] = [];\n\n if (tools == null) {\n return { tools: undefined, toolChoice: undefined, toolWarnings };\n }\n\n const huggingfaceTools: HuggingFaceResponsesTool[] = [];\n\n for (const tool of tools) {\n switch (tool.type) {\n case 'function':\n huggingfaceTools.push({\n type: 'function',\n name: tool.name,\n description: tool.description,\n parameters: tool.inputSchema,\n });\n break;\n case 'provider-defined':\n toolWarnings.push({\n type: 'unsupported-tool',\n tool,\n });\n break;\n default: {\n const _exhaustiveCheck: never = tool;\n throw new Error(`Unsupported tool type: ${_exhaustiveCheck}`);\n }\n }\n }\n\n // prepare tool choice:\n let mappedToolChoice: HuggingFaceResponsesToolChoice | undefined = undefined;\n if (toolChoice) {\n switch (toolChoice.type) {\n case 'auto':\n mappedToolChoice = 'auto';\n break;\n case 'required':\n mappedToolChoice = 'required';\n break;\n case 'none':\n // not supported, ignore\n break;\n case 'tool':\n mappedToolChoice = {\n type: 'function',\n function: { name: toolChoice.toolName },\n };\n break;\n default: {\n const _exhaustiveCheck: never = toolChoice;\n throw new Error(`Unsupported tool choice type: ${_exhaustiveCheck}`);\n }\n }\n }\n\n return {\n tools: huggingfaceTools,\n toolChoice: mappedToolChoice,\n toolWarnings,\n };\n}\n"],"mappings":";AAAA;AAAA,EAEE;AAAA,OAEK;AACP;AAAA,EAEE,cAAAA;AAAA,EACA;AAAA,EACA;AAAA,OACK;;;ACVP;AAAA,EACE;AAAA,OAOK;AACP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,OACK;AACP,SAAS,KAAAC,UAAS;;;AClBlB,SAAS,sCAAsC;AAC/C,SAAS,SAAS;AAElB,IAAM,6BAA6B,EAAE,OAAO;AAAA,EAC1C,OAAO,EAAE,OAAO;AAAA,IACd,SAAS,EAAE,OAAO;AAAA,IAClB,MAAM,EAAE,OAAO,EAAE,SAAS;AAAA,IAC1B,MAAM,EAAE,OAAO,EAAE,SAAS;AAAA,EAC5B,CAAC;AACH,CAAC;AAIM,IAAM,mCAAmC,+BAA+B;AAAA,EAC7E,aAAa;AAAA,EACb,gBAAgB,UAAQ,KAAK,MAAM;AACrC,CAAC;;;AChBD;AAAA,EAGE;AAAA,OACK;AAEP,eAAsB,sCAAsC;AAAA,EAC1D;AACF,GAKG;AACD,QAAM,WAAuB,CAAC;AAC9B,QAAM,WAA8C,CAAC;AAErD,aAAW,EAAE,MAAM,QAAQ,KAAK,QAAQ;AACtC,YAAQ,MAAM;AAAA,MACZ,KAAK,UAAU;AACb,iBAAS,KAAK,EAAE,MAAM,UAAU,QAAQ,CAAC;AACzC;AAAA,MACF;AAAA,MAEA,KAAK,QAAQ;AACX,iBAAS,KAAK;AAAA,UACZ,MAAM;AAAA,UACN,SAAS,QAAQ,IAAI,UAAQ;AAC3B,oBAAQ,KAAK,MAAM;AAAA,cACjB,KAAK,QAAQ;AACX,uBAAO,EAAE,MAAM,cAAc,MAAM,KAAK,KAAK;AAAA,cAC/C;AAAA,cACA,KAAK,QAAQ;AACX,oBAAI,KAAK,UAAU,WAAW,QAAQ,GAAG;AACvC,wBAAM,YACJ,KAAK,cAAc,YACf,eACA,KAAK;AAEX,yBAAO;AAAA,oBACL,MAAM;AAAA,oBACN,WACE,KAAK,gBAAgB,MACjB,KAAK,KAAK,SAAS,IACnB,QAAQ,SAAS,WAAW,KAAK,IAAI;AAAA,kBAC7C;AAAA,gBACF,OAAO;AACL,wBAAM,IAAI,8BAA8B;AAAA,oBACtC,eAAe,wBAAwB,KAAK,SAAS;AAAA,kBACvD,CAAC;AAAA,gBACH;AAAA,cACF;AAAA,cACA,SAAS;AACP,sBAAM,mBAA0B;AAChC,sBAAM,IAAI,MAAM,0BAA0B,gBAAgB,EAAE;AAAA,cAC9D;AAAA,YACF;AAAA,UACF,CAAC;AAAA,QACH,CAAC;AAED;AAAA,MACF;AAAA,MAEA,KAAK,aAAa;AAChB,mBAAW,QAAQ,SAAS;AAC1B,kBAAQ,KAAK,MAAM;AAAA,YACjB,KAAK,QAAQ;AACX,uBAAS,KAAK;AAAA,gBACZ,MAAM;AAAA,gBACN,SAAS,CAAC,EAAE,MAAM,eAAe,MAAM,KAAK,KAAK,CAAC;AAAA,cACpD,CAAC;AACD;AAAA,YACF;AAAA,YACA,KAAK,aAAa;AAEhB;AAAA,YACF;AAAA,YAEA,KAAK,eAAe;AAElB;AAAA,YACF;AAAA,YAEA,KAAK,aAAa;AAEhB,uBAAS,KAAK;AAAA,gBACZ,MAAM;AAAA,gBACN,SAAS,CAAC,EAAE,MAAM,eAAe,MAAM,KAAK,KAAK,CAAC;AAAA,cACpD,CAAC;AACD;AAAA,YACF;AAAA,UACF;AAAA,QACF;AAEA;AAAA,MACF;AAAA,MAEA,KAAK,QAAQ;AACX,iBAAS,KAAK;AAAA,UACZ,MAAM;AAAA,UACN,SAAS;AAAA,QACX,CAAC;AACD;AAAA,MACF;AAAA,MAEA,SAAS;AACP,cAAM,mBAA0B;AAChC,cAAM,IAAI,MAAM,qBAAqB,gBAAgB,EAAE;AAAA,MACzD;AAAA,IACF;AAAA,EACF;AAEA,SAAO,EAAE,OAAO,UAAU,SAAS;AACrC;;;AC/GO,SAAS,oCACd,cAC6B;AAC7B,UAAQ,cAAc;AAAA,IACpB,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT;AACE,aAAO;AAAA,EACX;AACF;;;ACFO,SAAS,sBAAsB;AAAA,EACpC;AAAA,EACA;AACF,GAOE;AAEA,WAAQ,+BAAO,UAAS,QAAQ;AAEhC,QAAM,eAA6C,CAAC;AAEpD,MAAI,SAAS,MAAM;AACjB,WAAO,EAAE,OAAO,QAAW,YAAY,QAAW,aAAa;AAAA,EACjE;AAEA,QAAM,mBAA+C,CAAC;AAEtD,aAAW,QAAQ,OAAO;AACxB,YAAQ,KAAK,MAAM;AAAA,MACjB,KAAK;AACH,yBAAiB,KAAK;AAAA,UACpB,MAAM;AAAA,UACN,MAAM,KAAK;AAAA,UACX,aAAa,KAAK;AAAA,UAClB,YAAY,KAAK;AAAA,QACnB,CAAC;AACD;AAAA,MACF,KAAK;AACH,qBAAa,KAAK;AAAA,UAChB,MAAM;AAAA,UACN;AAAA,QACF,CAAC;AACD;AAAA,MACF,SAAS;AACP,cAAM,mBAA0B;AAChC,cAAM,IAAI,MAAM,0BAA0B,gBAAgB,EAAE;AAAA,MAC9D;AAAA,IACF;AAAA,EACF;AAGA,MAAI,mBAA+D;AACnE,MAAI,YAAY;AACd,YAAQ,WAAW,MAAM;AAAA,MACvB,KAAK;AACH,2BAAmB;AACnB;AAAA,MACF,KAAK;AACH,2BAAmB;AACnB;AAAA,MACF,KAAK;AAEH;AAAA,MACF,KAAK;AACH,2BAAmB;AAAA,UACjB,MAAM;AAAA,UACN,UAAU,EAAE,MAAM,WAAW,SAAS;AAAA,QACxC;AACA;AAAA,MACF,SAAS;AACP,cAAM,mBAA0B;AAChC,cAAM,IAAI,MAAM,iCAAiC,gBAAgB,EAAE;AAAA,MACrE;AAAA,IACF;AAAA,EACF;AAEA,SAAO;AAAA,IACL,OAAO;AAAA,IACP,YAAY;AAAA,IACZ;AAAA,EACF;AACF;;;AJnEO,IAAM,oCAAN,MAAmE;AAAA,EAOxE,YAAY,SAAsC,QAA2B;AAN7E,SAAS,uBAAuB;AAWhC,SAAS,gBAA0C;AAAA,MACjD,WAAW,CAAC,iBAAiB;AAAA,IAC/B;AANE,SAAK,UAAU;AACf,SAAK,SAAS;AAAA,EAChB;AAAA,EAMA,IAAI,WAAmB;AACrB,WAAO,KAAK,OAAO;AAAA,EACrB;AAAA,EAEA,MAAc,QAAQ;AAAA,IACpB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAAiD;AA5DnD;AA6DI,UAAM,WAAyC,CAAC;AAEhD,QAAI,QAAQ,MAAM;AAChB,eAAS,KAAK,EAAE,MAAM,uBAAuB,SAAS,OAAO,CAAC;AAAA,IAChE;AAEA,QAAI,QAAQ,MAAM;AAChB,eAAS,KAAK,EAAE,MAAM,uBAAuB,SAAS,OAAO,CAAC;AAAA,IAChE;AAEA,QAAI,mBAAmB,MAAM;AAC3B,eAAS,KAAK;AAAA,QACZ,MAAM;AAAA,QACN,SAAS;AAAA,MACX,CAAC;AAAA,IACH;AAEA,QAAI,oBAAoB,MAAM;AAC5B,eAAS,KAAK;AAAA,QACZ,MAAM;AAAA,QACN,SAAS;AAAA,MACX,CAAC;AAAA,IACH;AAEA,QAAI,iBAAiB,MAAM;AACzB,eAAS,KAAK,EAAE,MAAM,uBAAuB,SAAS,gBAAgB,CAAC;AAAA,IACzE;AAEA,UAAM,EAAE,OAAO,UAAU,gBAAgB,IACvC,MAAM,sCAAsC;AAAA,MAC1C;AAAA,IACF,CAAC;AAEH,aAAS,KAAK,GAAG,eAAe;AAEhC,UAAM,qBAAqB,MAAM,qBAAqB;AAAA,MACpD,UAAU;AAAA,MACV;AAAA,MACA,QAAQ;AAAA,IACV,CAAC;AAED,UAAM;AAAA,MACJ,OAAO;AAAA,MACP,YAAY;AAAA,MACZ;AAAA,IACF,IAAI,sBAAsB;AAAA,MACxB;AAAA,MACA;AAAA,IACF,CAAC;AAED,aAAS,KAAK,GAAG,YAAY;AAE7B,UAAM,WAAW;AAAA,MACf,OAAO,KAAK;AAAA,MACZ;AAAA,MACA;AAAA,MACA,OAAO;AAAA,MACP,mBAAmB;AAAA;AAAA,MAGnB,IAAI,iDAAgB,UAAS,UAC3B,eAAe,UAAU;AAAA,QACvB,MAAM;AAAA,UACJ,QAAQ;AAAA,YACN,MAAM;AAAA,YACN,SAAQ,8DAAoB,qBAApB,YAAwC;AAAA,YAChD,OAAM,oBAAe,SAAf,YAAuB;AAAA,YAC7B,aAAa,eAAe;AAAA,YAC5B,QAAQ,eAAe;AAAA,UACzB;AAAA,QACF;AAAA,MACF;AAAA,MAEF,UAAU,yDAAoB;AAAA,MAC9B,cAAc,yDAAoB;AAAA,MAElC,GAAI,iBAAiB,EAAE,OAAO,cAAc;AAAA,MAC5C,GAAI,sBAAsB,EAAE,aAAa,mBAAmB;AAAA,IAC9D;AAEA,WAAO,EAAE,MAAM,UAAU,SAAS;AAAA,EACpC;AAAA,EAEA,MAAM,WACJ,SAC6D;AAlJjE;AAmJI,UAAM,EAAE,MAAM,SAAS,IAAI,MAAM,KAAK,QAAQ,OAAO;AAErD,UAAM,OAAO;AAAA,MACX,GAAG;AAAA,MACH,QAAQ;AAAA,IACV;AAEA,UAAM,MAAM,KAAK,OAAO,IAAI;AAAA,MAC1B,MAAM;AAAA,MACN,SAAS,KAAK;AAAA,IAChB,CAAC;AAED,UAAM;AAAA,MACJ,OAAO;AAAA,MACP;AAAA,MACA,UAAU;AAAA,IACZ,IAAI,MAAM,cAAc;AAAA,MACtB;AAAA,MACA,SAAS,eAAe,KAAK,OAAO,QAAQ,GAAG,QAAQ,OAAO;AAAA,MAC9D;AAAA,MACA,uBAAuB;AAAA,MACvB,2BAA2B;AAAA,QACzB;AAAA,MACF;AAAA,MACA,aAAa,QAAQ;AAAA,MACrB,OAAO,KAAK,OAAO;AAAA,IACrB,CAAC;AAED,QAAI,SAAS,OAAO;AAClB,YAAM,IAAI,aAAa;AAAA,QACrB,SAAS,SAAS,MAAM;AAAA,QACxB;AAAA,QACA,mBAAmB;AAAA,QACnB,YAAY;AAAA,QACZ;AAAA,QACA,cAAc;AAAA,QACd,aAAa;AAAA,MACf,CAAC;AAAA,IACH;AAEA,UAAM,UAAyC,CAAC;AAGhD,eAAW,QAAQ,SAAS,QAAQ;AAClC,cAAQ,KAAK,MAAM;AAAA,QACjB,KAAK,WAAW;AACd,qBAAW,eAAe,KAAK,SAAS;AACtC,oBAAQ,KAAK;AAAA,cACX,MAAM;AAAA,cACN,MAAM,YAAY;AAAA,cAClB,kBAAkB;AAAA,gBAChB,aAAa;AAAA,kBACX,QAAQ,KAAK;AAAA,gBACf;AAAA,cACF;AAAA,YACF,CAAC;AAED,gBAAI,YAAY,aAAa;AAC3B,yBAAW,cAAc,YAAY,aAAa;AAChD,wBAAQ,KAAK;AAAA,kBACX,MAAM;AAAA,kBACN,YAAY;AAAA,kBACZ,KAAI,sBAAK,QAAO,eAAZ,4CAA8B,WAAW;AAAA,kBAC7C,KAAK,WAAW;AAAA,kBAChB,OAAO,WAAW;AAAA,gBACpB,CAAC;AAAA,cACH;AAAA,YACF;AAAA,UACF;AACA;AAAA,QACF;AAAA,QAEA,KAAK,YAAY;AACf,kBAAQ,KAAK;AAAA,YACX,MAAM;AAAA,YACN,YAAY,KAAK;AAAA,YACjB,UAAU,KAAK;AAAA,YACf,OAAO,KAAK;AAAA,YACZ,kBAAkB;AAAA,UACpB,CAAC;AAED,cAAI,KAAK,QAAQ;AACf,oBAAQ,KAAK;AAAA,cACX,MAAM;AAAA,cACN,YAAY,KAAK;AAAA,cACjB,UAAU,KAAK;AAAA,cACf,QAAQ,KAAK;AAAA,cACb,kBAAkB;AAAA,YACpB,CAAC;AAAA,UACH;AACA;AAAA,QACF;AAAA,QAEA,KAAK,kBAAkB;AACrB,kBAAQ,KAAK;AAAA,YACX,MAAM;AAAA,YACN,YAAY,KAAK;AAAA,YACjB,UAAU;AAAA,YACV,OAAO,KAAK,UAAU,EAAE,cAAc,KAAK,aAAa,CAAC;AAAA,YACzD,kBAAkB;AAAA,UACpB,CAAC;AAED,cAAI,KAAK,OAAO;AACd,oBAAQ,KAAK;AAAA,cACX,MAAM;AAAA,cACN,YAAY,KAAK;AAAA,cACjB,UAAU;AAAA,cACV,QAAQ,EAAE,OAAO,KAAK,MAAM;AAAA,cAC5B,kBAAkB;AAAA,YACpB,CAAC;AAAA,UACH;AACA;AAAA,QACF;AAAA,QAEA,KAAK,iBAAiB;AACpB,kBAAQ,KAAK;AAAA,YACX,MAAM;AAAA,YACN,YAAY,KAAK;AAAA,YACjB,UAAU,KAAK;AAAA,YACf,OAAO,KAAK;AAAA,UACd,CAAC;AAED,cAAI,KAAK,QAAQ;AACf,oBAAQ,KAAK;AAAA,cACX,MAAM;AAAA,cACN,YAAY,KAAK;AAAA,cACjB,UAAU,KAAK;AAAA,cACf,QAAQ,KAAK;AAAA,YACf,CAAC;AAAA,UACH;AACA;AAAA,QACF;AAAA,QAEA,SAAS;AACP;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAEA,WAAO;AAAA,MACL;AAAA,MACA,cAAc;AAAA,SACZ,oBAAS,uBAAT,mBAA6B,WAA7B,YAAuC;AAAA,MACzC;AAAA,MACA,OAAO;AAAA,QACL,cAAa,oBAAS,UAAT,mBAAgB,iBAAhB,YAAgC;AAAA,QAC7C,eAAc,oBAAS,UAAT,mBAAgB,kBAAhB,YAAiC;AAAA,QAC/C,cACE,oBAAS,UAAT,mBAAgB,iBAAhB,cACC,oBAAS,UAAT,mBAAgB,iBAAhB,YAAgC,OAC9B,oBAAS,UAAT,mBAAgB,kBAAhB,YAAiC;AAAA,MACxC;AAAA,MACA,SAAS,EAAE,KAAK;AAAA,MAChB,UAAU;AAAA,QACR,IAAI,SAAS;AAAA,QACb,WAAW,IAAI,KAAK,SAAS,aAAa,GAAI;AAAA,QAC9C,SAAS,SAAS;AAAA,QAClB,SAAS;AAAA,QACT,MAAM;AAAA,MACR;AAAA,MACA,kBAAkB;AAAA,QAChB,aAAa;AAAA,UACX,YAAY,SAAS;AAAA,QACvB;AAAA,MACF;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EAEA,MAAM,SACJ,SAC2D;AAC3D,UAAM,EAAE,MAAM,SAAS,IAAI,MAAM,KAAK,QAAQ,OAAO;AAErD,UAAM,OAAO;AAAA,MACX,GAAG;AAAA,MACH,QAAQ;AAAA,IACV;AAEA,UAAM,EAAE,OAAO,UAAU,gBAAgB,IAAI,MAAM,cAAc;AAAA,MAC/D,KAAK,KAAK,OAAO,IAAI;AAAA,QACnB,MAAM;AAAA,QACN,SAAS,KAAK;AAAA,MAChB,CAAC;AAAA,MACD,SAAS,eAAe,KAAK,OAAO,QAAQ,GAAG,QAAQ,OAAO;AAAA,MAC9D;AAAA,MACA,uBAAuB;AAAA,MACvB,2BAA2B;AAAA,QACzB;AAAA,MACF;AAAA,MACA,aAAa,QAAQ;AAAA,MACrB,OAAO,KAAK,OAAO;AAAA,IACrB,CAAC;AAED,QAAI,eAA4C;AAChD,QAAI,aAA4B;AAChC,UAAM,QAA8B;AAAA,MAClC,aAAa;AAAA,MACb,cAAc;AAAA,MACd,aAAa;AAAA,IACf;AAEA,WAAO;AAAA,MACL,QAAQ,SAAS;AAAA,QACf,IAAI,gBAGF;AAAA,UACA,MAAM,YAAY;AAChB,uBAAW,QAAQ,EAAE,MAAM,gBAAgB,SAAS,CAAC;AAAA,UACvD;AAAA,UAEA,UAAU,OAAO,YAAY;AAvWvC;AAwWY,gBAAI,CAAC,MAAM,SAAS;AAClB,6BAAe;AACf,yBAAW,QAAQ,EAAE,MAAM,SAAS,OAAO,MAAM,MAAM,CAAC;AACxD;AAAA,YACF;AAEA,kBAAM,QAAQ,MAAM;AAEpB,gBAAI,uBAAuB,KAAK,GAAG;AACjC,2BAAa,MAAM,SAAS;AAC5B,yBAAW,QAAQ;AAAA,gBACjB,MAAM;AAAA,gBACN,IAAI,MAAM,SAAS;AAAA,gBACnB,WAAW,IAAI,KAAK,MAAM,SAAS,aAAa,GAAI;AAAA,gBACpD,SAAS,MAAM,SAAS;AAAA,cAC1B,CAAC;AACD;AAAA,YACF;AAEA,gBAAI,+BAA+B,KAAK,GAAG;AACzC,kBACE,MAAM,KAAK,SAAS,aACpB,MAAM,KAAK,SAAS,aACpB;AACA,2BAAW,QAAQ;AAAA,kBACjB,MAAM;AAAA,kBACN,IAAI,MAAM,KAAK;AAAA,kBACf,kBAAkB;AAAA,oBAChB,aAAa;AAAA,sBACX,QAAQ,MAAM,KAAK;AAAA,oBACrB;AAAA,kBACF;AAAA,gBACF,CAAC;AAAA,cACH,WAAW,MAAM,KAAK,SAAS,iBAAiB;AAC9C,2BAAW,QAAQ;AAAA,kBACjB,MAAM;AAAA,kBACN,IAAI,MAAM,KAAK;AAAA,kBACf,UAAU,MAAM,KAAK;AAAA,gBACvB,CAAC;AAAA,cACH;AACA;AAAA,YACF;AAEA,gBAAI,8BAA8B,KAAK,GAAG;AACxC,kBACE,MAAM,KAAK,SAAS,aACpB,MAAM,KAAK,SAAS,aACpB;AACA,2BAAW,QAAQ;AAAA,kBACjB,MAAM;AAAA,kBACN,IAAI,MAAM,KAAK;AAAA,gBACjB,CAAC;AAAA,cACH,WAAW,MAAM,KAAK,SAAS,iBAAiB;AAC9C,2BAAW,QAAQ;AAAA,kBACjB,MAAM;AAAA,kBACN,IAAI,MAAM,KAAK;AAAA,gBACjB,CAAC;AAED,2BAAW,QAAQ;AAAA,kBACjB,MAAM;AAAA,kBACN,YAAY,MAAM,KAAK;AAAA,kBACvB,UAAU,MAAM,KAAK;AAAA,kBACrB,OAAO,MAAM,KAAK;AAAA,gBACpB,CAAC;AAED,oBAAI,MAAM,KAAK,QAAQ;AACrB,6BAAW,QAAQ;AAAA,oBACjB,MAAM;AAAA,oBACN,YAAY,MAAM,KAAK;AAAA,oBACvB,UAAU,MAAM,KAAK;AAAA,oBACrB,QAAQ,MAAM,KAAK;AAAA,kBACrB,CAAC;AAAA,gBACH;AAAA,cACF;AACA;AAAA,YACF;AAEA,gBAAI,yBAAyB,KAAK,GAAG;AACnC,2BAAa,MAAM,SAAS;AAC5B,6BAAe;AAAA,iBACb,iBAAM,SAAS,uBAAf,mBAAmC,WAAnC,YAA6C;AAAA,cAC/C;AACA,kBAAI,MAAM,SAAS,OAAO;AACxB,sBAAM,cAAc,MAAM,SAAS,MAAM;AACzC,sBAAM,eAAe,MAAM,SAAS,MAAM;AAC1C,sBAAM,eACJ,WAAM,SAAS,MAAM,iBAArB,YACA,MAAM,SAAS,MAAM,eACnB,MAAM,SAAS,MAAM;AAAA,cAC3B;AACA;AAAA,YACF;AAEA,gBAAI,iBAAiB,KAAK,GAAG;AAC3B,yBAAW,QAAQ;AAAA,gBACjB,MAAM;AAAA,gBACN,IAAI,MAAM;AAAA,gBACV,OAAO,MAAM;AAAA,cACf,CAAC;AACD;AAAA,YACF;AAAA,UACF;AAAA,UAEA,MAAM,YAAY;AAChB,uBAAW,QAAQ;AAAA,cACjB,MAAM;AAAA,cACN;AAAA,cACA;AAAA,cACA,kBAAkB;AAAA,gBAChB,aAAa;AAAA,kBACX;AAAA,gBACF;AAAA,cACF;AAAA,YACF,CAAC;AAAA,UACH;AAAA,QACF,CAAC;AAAA,MACH;AAAA,MACA,SAAS,EAAE,KAAK;AAAA,MAChB,UAAU,EAAE,SAAS,gBAAgB;AAAA,IACvC;AAAA,EACF;AACF;AAEA,IAAM,4CAA4CC,GAAE,OAAO;AAAA,EACzD,UAAUA,GAAE,OAAOA,GAAE,OAAO,GAAGA,GAAE,OAAO,CAAC,EAAE,SAAS;AAAA,EACpD,cAAcA,GAAE,OAAO,EAAE,SAAS;AAAA,EAClC,kBAAkBA,GAAE,QAAQ,EAAE,SAAS;AACzC,CAAC;AAED,IAAM,qCAAqCA,GAAE,OAAO;AAAA,EAClD,IAAIA,GAAE,OAAO;AAAA,EACb,OAAOA,GAAE,OAAO;AAAA,EAChB,QAAQA,GAAE,OAAO;AAAA,EACjB,YAAYA,GAAE,OAAO;AAAA,EACrB,QAAQA,GAAE,OAAO;AAAA,EACjB,OAAOA,GAAE,IAAI,EAAE,SAAS;AAAA,EACxB,cAAcA,GAAE,IAAI,EAAE,SAAS;AAAA,EAC/B,mBAAmBA,GAAE,IAAI,EAAE,SAAS;AAAA,EACpC,UAAUA,GAAE,IAAI,EAAE,SAAS;AAAA,EAC3B,aAAaA,GAAE,IAAI;AAAA,EACnB,OAAOA,GAAE,MAAMA,GAAE,IAAI,CAAC;AAAA,EACtB,aAAaA,GAAE,OAAO;AAAA,EACtB,OAAOA,GAAE,OAAO;AAAA,EAChB,oBAAoBA,GACjB,OAAO;AAAA,IACN,QAAQA,GAAE,OAAO;AAAA,EACnB,CAAC,EACA,SAAS,EACT,SAAS;AAAA,EACZ,OAAOA,GACJ,OAAO;AAAA,IACN,cAAcA,GAAE,OAAO;AAAA,IACvB,sBAAsBA,GACnB,OAAO;AAAA,MACN,eAAeA,GAAE,OAAO;AAAA,IAC1B,CAAC,EACA,SAAS;AAAA,IACZ,eAAeA,GAAE,OAAO;AAAA,IACxB,uBAAuBA,GACpB,OAAO;AAAA,MACN,kBAAkBA,GAAE,OAAO;AAAA,IAC7B,CAAC,EACA,SAAS;AAAA,IACZ,cAAcA,GAAE,OAAO;AAAA,EACzB,CAAC,EACA,SAAS,EACT,SAAS;AAAA,EACZ,QAAQA,GAAE,MAAMA,GAAE,IAAI,CAAC;AAAA,EACvB,aAAaA,GAAE,OAAO,EAAE,SAAS,EAAE,SAAS;AAC9C,CAAC;AAED,IAAM,gCAAgCA,GAAE,OAAO;AAAA,EAC7C,MAAMA,GAAE,QAAQ,4BAA4B;AAAA,EAC5C,cAAcA,GAAE,OAAO;AAAA,EACvB,MAAMA,GAAE,mBAAmB,QAAQ;AAAA,IACjCA,GAAE,OAAO;AAAA,MACP,MAAMA,GAAE,QAAQ,SAAS;AAAA,MACzB,IAAIA,GAAE,OAAO;AAAA,MACb,MAAMA,GAAE,OAAO,EAAE,SAAS;AAAA,MAC1B,QAAQA,GAAE,OAAO,EAAE,SAAS;AAAA,MAC5B,SAASA,GAAE,MAAMA,GAAE,IAAI,CAAC,EAAE,SAAS;AAAA,IACrC,CAAC;AAAA,IACDA,GAAE,OAAO;AAAA,MACP,MAAMA,GAAE,QAAQ,gBAAgB;AAAA,MAChC,IAAIA,GAAE,OAAO;AAAA,MACb,cAAcA,GAAE,OAAO;AAAA,MACvB,OAAOA,GAAE,MAAMA,GAAE,IAAI,CAAC,EAAE,SAAS;AAAA,MACjC,OAAOA,GAAE,OAAO,EAAE,SAAS;AAAA,IAC7B,CAAC;AAAA,IACDA,GAAE,OAAO;AAAA,MACP,MAAMA,GAAE,QAAQ,UAAU;AAAA,MAC1B,IAAIA,GAAE,OAAO;AAAA,MACb,cAAcA,GAAE,OAAO;AAAA,MACvB,MAAMA,GAAE,OAAO;AAAA,MACf,WAAWA,GAAE,OAAO;AAAA,MACpB,QAAQA,GAAE,OAAO,EAAE,SAAS;AAAA,MAC5B,OAAOA,GAAE,OAAO,EAAE,SAAS;AAAA,IAC7B,CAAC;AAAA,IACDA,GAAE,OAAO;AAAA,MACP,MAAMA,GAAE,QAAQ,eAAe;AAAA,MAC/B,IAAIA,GAAE,OAAO;AAAA,MACb,SAASA,GAAE,OAAO;AAAA,MAClB,MAAMA,GAAE,OAAO;AAAA,MACf,WAAWA,GAAE,OAAO;AAAA,MACpB,QAAQA,GAAE,OAAO,EAAE,SAAS;AAAA,MAC5B,OAAOA,GAAE,OAAO,EAAE,SAAS;AAAA,IAC7B,CAAC;AAAA,EACH,CAAC;AAAA,EACD,iBAAiBA,GAAE,OAAO;AAC5B,CAAC;AAED,IAAM,+BAA+BA,GAAE,OAAO;AAAA,EAC5C,MAAMA,GAAE,QAAQ,2BAA2B;AAAA,EAC3C,cAAcA,GAAE,OAAO;AAAA,EACvB,MAAMA,GAAE,mBAAmB,QAAQ;AAAA,IACjCA,GAAE,OAAO;AAAA,MACP,MAAMA,GAAE,QAAQ,SAAS;AAAA,MACzB,IAAIA,GAAE,OAAO;AAAA,MACb,MAAMA,GAAE,OAAO,EAAE,SAAS;AAAA,MAC1B,QAAQA,GAAE,OAAO,EAAE,SAAS;AAAA,MAC5B,SAASA,GAAE,MAAMA,GAAE,IAAI,CAAC,EAAE,SAAS;AAAA,IACrC,CAAC;AAAA,IACDA,GAAE,OAAO;AAAA,MACP,MAAMA,GAAE,QAAQ,gBAAgB;AAAA,MAChC,IAAIA,GAAE,OAAO;AAAA,MACb,cAAcA,GAAE,OAAO;AAAA,MACvB,OAAOA,GAAE,MAAMA,GAAE,IAAI,CAAC,EAAE,SAAS;AAAA,MACjC,OAAOA,GAAE,OAAO,EAAE,SAAS;AAAA,IAC7B,CAAC;AAAA,IACDA,GAAE,OAAO;AAAA,MACP,MAAMA,GAAE,QAAQ,UAAU;AAAA,MAC1B,IAAIA,GAAE,OAAO;AAAA,MACb,cAAcA,GAAE,OAAO;AAAA,MACvB,MAAMA,GAAE,OAAO;AAAA,MACf,WAAWA,GAAE,OAAO;AAAA,MACpB,QAAQA,GAAE,OAAO,EAAE,SAAS;AAAA,MAC5B,OAAOA,GAAE,OAAO,EAAE,SAAS;AAAA,IAC7B,CAAC;AAAA,IACDA,GAAE,OAAO;AAAA,MACP,MAAMA,GAAE,QAAQ,eAAe;AAAA,MAC/B,IAAIA,GAAE,OAAO;AAAA,MACb,SAASA,GAAE,OAAO;AAAA,MAClB,MAAMA,GAAE,OAAO;AAAA,MACf,WAAWA,GAAE,OAAO;AAAA,MACpB,QAAQA,GAAE,OAAO,EAAE,SAAS;AAAA,MAC5B,OAAOA,GAAE,OAAO,EAAE,SAAS;AAAA,IAC7B,CAAC;AAAA,EACH,CAAC;AAAA,EACD,iBAAiBA,GAAE,OAAO;AAC5B,CAAC;AAED,IAAM,uBAAuBA,GAAE,OAAO;AAAA,EACpC,MAAMA,GAAE,QAAQ,4BAA4B;AAAA,EAC5C,SAASA,GAAE,OAAO;AAAA,EAClB,cAAcA,GAAE,OAAO;AAAA,EACvB,eAAeA,GAAE,OAAO;AAAA,EACxB,OAAOA,GAAE,OAAO;AAAA,EAChB,iBAAiBA,GAAE,OAAO;AAC5B,CAAC;AAED,IAAM,+BAA+BA,GAAE,OAAO;AAAA,EAC5C,MAAMA,GAAE,QAAQ,oBAAoB;AAAA,EACpC,UAAU;AAAA,EACV,iBAAiBA,GAAE,OAAO;AAC5B,CAAC;AAED,IAAM,6BAA6BA,GAAE,OAAO;AAAA,EAC1C,MAAMA,GAAE,QAAQ,kBAAkB;AAAA,EAClC,UAAUA,GAAE,OAAO;AAAA,IACjB,IAAIA,GAAE,OAAO;AAAA,IACb,QAAQA,GAAE,OAAO;AAAA,IACjB,YAAYA,GAAE,OAAO;AAAA,IACrB,QAAQA,GAAE,OAAO;AAAA,IACjB,OAAOA,GAAE,OAAO;AAAA,EAClB,CAAC;AACH,CAAC;AAED,IAAM,kCAAkCA,GAAE,MAAM;AAAA,EAC9C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACAA,GAAE,OAAO,EAAE,MAAMA,GAAE,OAAO,EAAE,CAAC,EAAE,MAAM;AAAA;AACvC,CAAC;AAED,SAAS,+BACP,OACwD;AACxD,SAAO,MAAM,SAAS;AACxB;AAEA,SAAS,8BACP,OACuD;AACvD,SAAO,MAAM,SAAS;AACxB;AAEA,SAAS,iBACP,OAC+C;AAC/C,SAAO,MAAM,SAAS;AACxB;AAEA,SAAS,yBACP,OACuD;AACvD,SAAO,MAAM,SAAS;AACxB;AAEA,SAAS,uBACP,OACqD;AACrD,SAAO,MAAM,SAAS;AACxB;;;AD1mBO,SAAS,kBACd,UAAuC,CAAC,GACnB;AA1DvB;AA2DE,QAAM,WACJ,0BAAqB,QAAQ,OAAO,MAApC,YAAyC;AAE3C,QAAM,aAAa,OAAO;AAAA,IACxB,eAAe,UAAU,WAAW;AAAA,MAClC,QAAQ,QAAQ;AAAA,MAChB,yBAAyB;AAAA,MACzB,aAAa;AAAA,IACf,CAAC,CAAC;AAAA,IACF,GAAG,QAAQ;AAAA,EACb;AAEA,QAAM,uBAAuB,CAAC,YAAyC;AAvEzE,QAAAC;AAwEI,WAAO,IAAI,kCAAkC,SAAS;AAAA,MACpD,UAAU;AAAA,MACV,KAAK,CAAC,EAAE,KAAK,MAAM,GAAG,OAAO,GAAG,IAAI;AAAA,MACpC,SAAS;AAAA,MACT,OAAO,QAAQ;AAAA,MACf,aAAYA,MAAA,QAAQ,eAAR,OAAAA,MAAsBC;AAAA,IACpC,CAAC;AAAA,EACH;AAEA,QAAM,WAAW,CAAC,YAChB,qBAAqB,OAAO;AAE9B,WAAS,gBAAgB;AACzB,WAAS,YAAY;AAErB,WAAS,qBAAqB,CAAC,YAAoB;AACjD,UAAM,IAAI,iBAAiB;AAAA,MACzB;AAAA,MACA,WAAW;AAAA,MACX,SACE;AAAA,IACJ,CAAC;AAAA,EACH;AAEA,WAAS,aAAa,CAAC,YAAoB;AACzC,UAAM,IAAI,iBAAiB;AAAA,MACzB;AAAA,MACA,WAAW;AAAA,MACX,SACE;AAAA,IACJ,CAAC;AAAA,EACH;AAEA,SAAO;AACT;AAKO,IAAM,cAAc,kBAAkB;","names":["generateId","z","z","_a","generateId"]}
1
+ {"version":3,"sources":["../src/huggingface-provider.ts","../src/responses/huggingface-responses-language-model.ts","../src/huggingface-error.ts","../src/responses/convert-to-huggingface-responses-messages.ts","../src/responses/map-huggingface-responses-finish-reason.ts","../src/responses/huggingface-responses-prepare-tools.ts"],"sourcesContent":["import {\n LanguageModelV2,\n NoSuchModelError,\n ProviderV2,\n} from '@ai-sdk/provider';\nimport {\n FetchFunction,\n generateId,\n loadApiKey,\n withoutTrailingSlash,\n} from '@ai-sdk/provider-utils';\nimport { HuggingFaceResponsesLanguageModel } from './responses/huggingface-responses-language-model';\nimport { HuggingFaceResponsesModelId } from './responses/huggingface-responses-settings';\n\nexport interface HuggingFaceProviderSettings {\n /**\nHugging Face API key.\n*/\n apiKey?: string;\n /**\nBase URL for the API calls.\n*/\n baseURL?: string;\n /**\nCustom headers to include in the requests.\n*/\n headers?: Record<string, string>;\n /**\nCustom fetch implementation. You can use it as a middleware to intercept requests,\nor to provide a custom fetch implementation for e.g. testing.\n*/\n fetch?: FetchFunction;\n\n generateId?: () => string;\n}\n\nexport interface HuggingFaceProvider extends ProviderV2 {\n /**\nCreates a Hugging Face responses model for text generation.\n*/\n (modelId: HuggingFaceResponsesModelId): LanguageModelV2;\n\n /**\nCreates a Hugging Face responses model for text generation.\n*/\n languageModel(modelId: HuggingFaceResponsesModelId): LanguageModelV2;\n\n /**\nCreates a Hugging Face responses model for text generation.\n*/\n responses(modelId: HuggingFaceResponsesModelId): LanguageModelV2;\n}\n\n/**\nCreate a Hugging Face provider instance.\n */\nexport function createHuggingFace(\n options: HuggingFaceProviderSettings = {},\n): HuggingFaceProvider {\n const baseURL =\n withoutTrailingSlash(options.baseURL) ?? 'https://router.huggingface.co/v1';\n\n const getHeaders = () => ({\n Authorization: `Bearer ${loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: 'HUGGINGFACE_API_KEY',\n description: 'Hugging Face',\n })}`,\n ...options.headers,\n });\n\n const createResponsesModel = (modelId: HuggingFaceResponsesModelId) => {\n return new HuggingFaceResponsesLanguageModel(modelId, {\n provider: 'huggingface.responses',\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch,\n generateId: options.generateId ?? generateId,\n });\n };\n\n const provider = (modelId: HuggingFaceResponsesModelId) =>\n createResponsesModel(modelId);\n\n provider.languageModel = createResponsesModel;\n provider.responses = createResponsesModel;\n\n provider.textEmbeddingModel = (modelId: string) => {\n throw new NoSuchModelError({\n modelId,\n modelType: 'textEmbeddingModel',\n message:\n 'Hugging Face Responses API does not support text embeddings. Use the Hugging Face Inference API directly for embeddings.',\n });\n };\n\n provider.imageModel = (modelId: string) => {\n throw new NoSuchModelError({\n modelId,\n modelType: 'imageModel',\n message:\n 'Hugging Face Responses API does not support image generation. Use the Hugging Face Inference API directly for image models.',\n });\n };\n\n return provider;\n}\n\n/**\nDefault Hugging Face provider instance.\n */\nexport const huggingface = createHuggingFace();\n","import {\n APICallError,\n LanguageModelV2,\n LanguageModelV2CallWarning,\n LanguageModelV2Content,\n LanguageModelV2FinishReason,\n LanguageModelV2StreamPart,\n LanguageModelV2Usage,\n} from '@ai-sdk/provider';\nimport {\n combineHeaders,\n createEventSourceResponseHandler,\n createJsonResponseHandler,\n generateId,\n parseProviderOptions,\n ParseResult,\n postJsonToApi,\n} from '@ai-sdk/provider-utils';\nimport { z } from 'zod/v4';\nimport { HuggingFaceConfig } from '../huggingface-config';\nimport { huggingfaceFailedResponseHandler } from '../huggingface-error';\nimport { convertToHuggingFaceResponsesMessages } from './convert-to-huggingface-responses-messages';\nimport { mapHuggingFaceResponsesFinishReason } from './map-huggingface-responses-finish-reason';\nimport { HuggingFaceResponsesModelId } from './huggingface-responses-settings';\nimport { prepareResponsesTools } from './huggingface-responses-prepare-tools';\n\nexport class HuggingFaceResponsesLanguageModel implements LanguageModelV2 {\n readonly specificationVersion = 'v2';\n\n readonly modelId: HuggingFaceResponsesModelId;\n\n private readonly config: HuggingFaceConfig;\n\n constructor(modelId: HuggingFaceResponsesModelId, config: HuggingFaceConfig) {\n this.modelId = modelId;\n this.config = config;\n }\n\n readonly supportedUrls: Record<string, RegExp[]> = {\n 'image/*': [/^https?:\\/\\/.*$/],\n };\n\n get provider(): string {\n return this.config.provider;\n }\n\n private async getArgs({\n maxOutputTokens,\n temperature,\n stopSequences,\n topP,\n topK,\n presencePenalty,\n frequencyPenalty,\n seed,\n prompt,\n providerOptions,\n tools,\n toolChoice,\n responseFormat,\n }: Parameters<LanguageModelV2['doGenerate']>[0]) {\n const warnings: LanguageModelV2CallWarning[] = [];\n\n if (topK != null) {\n warnings.push({ type: 'unsupported-setting', setting: 'topK' });\n }\n\n if (seed != null) {\n warnings.push({ type: 'unsupported-setting', setting: 'seed' });\n }\n\n if (presencePenalty != null) {\n warnings.push({\n type: 'unsupported-setting',\n setting: 'presencePenalty',\n });\n }\n\n if (frequencyPenalty != null) {\n warnings.push({\n type: 'unsupported-setting',\n setting: 'frequencyPenalty',\n });\n }\n\n if (stopSequences != null) {\n warnings.push({ type: 'unsupported-setting', setting: 'stopSequences' });\n }\n\n const { input, warnings: messageWarnings } =\n await convertToHuggingFaceResponsesMessages({\n prompt,\n });\n\n warnings.push(...messageWarnings);\n\n const huggingfaceOptions = await parseProviderOptions({\n provider: 'huggingface',\n providerOptions,\n schema: huggingfaceResponsesProviderOptionsSchema,\n });\n\n const {\n tools: preparedTools,\n toolChoice: preparedToolChoice,\n toolWarnings,\n } = prepareResponsesTools({\n tools,\n toolChoice,\n });\n\n warnings.push(...toolWarnings);\n\n const baseArgs = {\n model: this.modelId,\n input,\n temperature,\n top_p: topP,\n max_output_tokens: maxOutputTokens,\n\n // HuggingFace Responses API uses text.format for structured output\n ...(responseFormat?.type === 'json' &&\n responseFormat.schema && {\n text: {\n format: {\n type: 'json_schema',\n strict: huggingfaceOptions?.strictJsonSchema ?? false,\n name: responseFormat.name ?? 'response',\n description: responseFormat.description,\n schema: responseFormat.schema,\n },\n },\n }),\n\n metadata: huggingfaceOptions?.metadata,\n instructions: huggingfaceOptions?.instructions,\n\n ...(preparedTools && { tools: preparedTools }),\n ...(preparedToolChoice && { tool_choice: preparedToolChoice }),\n ...(huggingfaceOptions?.reasoningEffort != null && {\n reasoning: {\n ...(huggingfaceOptions?.reasoningEffort != null && {\n effort: huggingfaceOptions.reasoningEffort,\n }),\n },\n }),\n };\n\n return { args: baseArgs, warnings };\n }\n\n async doGenerate(\n options: Parameters<LanguageModelV2['doGenerate']>[0],\n ): Promise<Awaited<ReturnType<LanguageModelV2['doGenerate']>>> {\n const { args, warnings } = await this.getArgs(options);\n\n const body = {\n ...args,\n stream: false,\n };\n\n const url = this.config.url({\n path: '/responses',\n modelId: this.modelId,\n });\n\n const {\n value: response,\n responseHeaders,\n rawValue: rawResponse,\n } = await postJsonToApi({\n url,\n headers: combineHeaders(this.config.headers(), options.headers),\n body,\n failedResponseHandler: huggingfaceFailedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler(\n huggingfaceResponsesResponseSchema,\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch,\n });\n\n if (response.error) {\n throw new APICallError({\n message: response.error.message,\n url,\n requestBodyValues: body,\n statusCode: 400,\n responseHeaders,\n responseBody: rawResponse as string,\n isRetryable: false,\n });\n }\n\n const content: Array<LanguageModelV2Content> = [];\n\n // Process output array\n for (const part of response.output) {\n switch (part.type) {\n case 'message': {\n for (const contentPart of part.content) {\n content.push({\n type: 'text',\n text: contentPart.text,\n providerMetadata: {\n huggingface: {\n itemId: part.id,\n },\n },\n });\n\n if (contentPart.annotations) {\n for (const annotation of contentPart.annotations) {\n content.push({\n type: 'source',\n sourceType: 'url',\n id: this.config.generateId?.() ?? generateId(),\n url: annotation.url,\n title: annotation.title,\n });\n }\n }\n }\n break;\n }\n\n case 'reasoning': {\n for (const contentPart of part.content) {\n content.push({\n type: 'reasoning',\n text: contentPart.text,\n providerMetadata: {\n huggingface: {\n itemId: part.id,\n },\n },\n });\n }\n break;\n }\n\n case 'mcp_call': {\n content.push({\n type: 'tool-call',\n toolCallId: part.id,\n toolName: part.name,\n input: part.arguments,\n providerExecuted: true,\n });\n\n if (part.output) {\n content.push({\n type: 'tool-result',\n toolCallId: part.id,\n toolName: part.name,\n result: part.output,\n providerExecuted: true,\n });\n }\n break;\n }\n\n case 'mcp_list_tools': {\n content.push({\n type: 'tool-call',\n toolCallId: part.id,\n toolName: 'list_tools',\n input: JSON.stringify({ server_label: part.server_label }),\n providerExecuted: true,\n });\n\n if (part.tools) {\n content.push({\n type: 'tool-result',\n toolCallId: part.id,\n toolName: 'list_tools',\n result: { tools: part.tools },\n providerExecuted: true,\n });\n }\n break;\n }\n\n case 'function_call': {\n content.push({\n type: 'tool-call',\n toolCallId: part.call_id,\n toolName: part.name,\n input: part.arguments,\n });\n\n if (part.output) {\n content.push({\n type: 'tool-result',\n toolCallId: part.call_id,\n toolName: part.name,\n result: part.output,\n });\n }\n break;\n }\n\n default: {\n break;\n }\n }\n }\n\n return {\n content,\n finishReason: mapHuggingFaceResponsesFinishReason(\n response.incomplete_details?.reason ?? 'stop',\n ),\n usage: {\n inputTokens: response.usage?.input_tokens ?? 0,\n outputTokens: response.usage?.output_tokens ?? 0,\n totalTokens:\n response.usage?.total_tokens ??\n (response.usage?.input_tokens ?? 0) +\n (response.usage?.output_tokens ?? 0),\n },\n request: { body },\n response: {\n id: response.id,\n timestamp: new Date(response.created_at * 1000),\n modelId: response.model,\n headers: responseHeaders,\n body: rawResponse,\n },\n providerMetadata: {\n huggingface: {\n responseId: response.id,\n },\n },\n warnings,\n };\n }\n\n async doStream(\n options: Parameters<LanguageModelV2['doStream']>[0],\n ): Promise<Awaited<ReturnType<LanguageModelV2['doStream']>>> {\n const { args, warnings } = await this.getArgs(options);\n\n const body = {\n ...args,\n stream: true,\n };\n\n const { value: response, responseHeaders } = await postJsonToApi({\n url: this.config.url({\n path: '/responses',\n modelId: this.modelId,\n }),\n headers: combineHeaders(this.config.headers(), options.headers),\n body,\n failedResponseHandler: huggingfaceFailedResponseHandler,\n successfulResponseHandler: createEventSourceResponseHandler(\n huggingfaceResponsesChunkSchema,\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch,\n });\n\n let finishReason: LanguageModelV2FinishReason = 'unknown';\n let responseId: string | null = null;\n const usage: LanguageModelV2Usage = {\n inputTokens: undefined,\n outputTokens: undefined,\n totalTokens: undefined,\n };\n\n return {\n stream: response.pipeThrough(\n new TransformStream<\n ParseResult<z.infer<typeof huggingfaceResponsesChunkSchema>>,\n LanguageModelV2StreamPart\n >({\n start(controller) {\n controller.enqueue({ type: 'stream-start', warnings });\n },\n\n transform(chunk, controller) {\n if (!chunk.success) {\n finishReason = 'error';\n controller.enqueue({ type: 'error', error: chunk.error });\n return;\n }\n\n const value = chunk.value;\n\n if (isResponseCreatedChunk(value)) {\n responseId = value.response.id;\n controller.enqueue({\n type: 'response-metadata',\n id: value.response.id,\n timestamp: new Date(value.response.created_at * 1000),\n modelId: value.response.model,\n });\n return;\n }\n\n if (isResponseOutputItemAddedChunk(value)) {\n if (\n value.item.type === 'message' &&\n value.item.role === 'assistant'\n ) {\n controller.enqueue({\n type: 'text-start',\n id: value.item.id,\n providerMetadata: {\n huggingface: {\n itemId: value.item.id,\n },\n },\n });\n } else if (value.item.type === 'function_call') {\n controller.enqueue({\n type: 'tool-input-start',\n id: value.item.call_id,\n toolName: value.item.name,\n });\n } else if (value.item.type === 'reasoning') {\n controller.enqueue({\n type: 'reasoning-start',\n id: value.item.id,\n providerMetadata: {\n huggingface: {\n itemId: value.item.id,\n },\n },\n });\n }\n return;\n }\n\n if (isResponseOutputItemDoneChunk(value)) {\n if (\n value.item.type === 'message' &&\n value.item.role === 'assistant'\n ) {\n controller.enqueue({\n type: 'text-end',\n id: value.item.id,\n });\n } else if (value.item.type === 'function_call') {\n controller.enqueue({\n type: 'tool-input-end',\n id: value.item.call_id,\n });\n\n controller.enqueue({\n type: 'tool-call',\n toolCallId: value.item.call_id,\n toolName: value.item.name,\n input: value.item.arguments,\n });\n\n if (value.item.output) {\n controller.enqueue({\n type: 'tool-result',\n toolCallId: value.item.call_id,\n toolName: value.item.name,\n result: value.item.output,\n });\n }\n }\n return;\n }\n\n if (isResponseCompletedChunk(value)) {\n responseId = value.response.id;\n finishReason = mapHuggingFaceResponsesFinishReason(\n value.response.incomplete_details?.reason ?? 'stop',\n );\n if (value.response.usage) {\n usage.inputTokens = value.response.usage.input_tokens;\n usage.outputTokens = value.response.usage.output_tokens;\n usage.totalTokens =\n value.response.usage.total_tokens ??\n value.response.usage.input_tokens +\n value.response.usage.output_tokens;\n }\n return;\n }\n\n if (isReasoningDeltaChunk(value)) {\n controller.enqueue({\n type: 'reasoning-delta',\n id: value.item_id,\n delta: value.delta,\n });\n return;\n }\n\n if (isReasoningEndChunk(value)) {\n controller.enqueue({\n type: 'reasoning-end',\n id: value.item_id,\n });\n return;\n }\n\n if (isTextDeltaChunk(value)) {\n controller.enqueue({\n type: 'text-delta',\n id: value.item_id,\n delta: value.delta,\n });\n return;\n }\n },\n\n flush(controller) {\n controller.enqueue({\n type: 'finish',\n finishReason,\n usage,\n providerMetadata: {\n huggingface: {\n responseId,\n },\n },\n });\n },\n }),\n ),\n request: { body },\n response: { headers: responseHeaders },\n };\n }\n}\n\nconst huggingfaceResponsesProviderOptionsSchema = z.object({\n metadata: z.record(z.string(), z.string()).optional(),\n instructions: z.string().optional(),\n strictJsonSchema: z.boolean().optional(),\n reasoningEffort: z.string().optional(),\n});\n\nconst huggingfaceResponsesOutputSchema = z.discriminatedUnion('type', [\n z.object({\n type: z.literal('message'),\n id: z.string(),\n role: z.string().optional(),\n status: z.string().optional(),\n content: z.array(\n z.object({\n type: z.literal('output_text'),\n text: z.string(),\n annotations: z.array(z.any()).optional(),\n }),\n ),\n }),\n z.object({\n type: z.literal('reasoning'),\n id: z.string(),\n status: z.string().optional(),\n content: z.array(\n z.object({\n type: z.literal('reasoning_text'),\n text: z.string(),\n }),\n ),\n summary: z\n .array(\n z\n .object({\n type: z.literal('reasoning_summary'),\n text: z.string(),\n })\n .optional(),\n )\n .optional(),\n }),\n z.object({\n type: z.literal('function_call'),\n id: z.string(),\n call_id: z.string(),\n name: z.string(),\n arguments: z.string(),\n output: z.string().optional(),\n status: z.string().optional(),\n }),\n z.object({\n type: z.literal('mcp_call'),\n id: z.string(),\n name: z.string(),\n arguments: z.string(),\n output: z.string().optional(),\n status: z.string().optional(),\n }),\n z.object({\n type: z.literal('mcp_list_tools'),\n id: z.string(),\n server_label: z.string(),\n tools: z.array(z.any()).optional(),\n status: z.string().optional(),\n }),\n]);\n\nconst huggingfaceResponsesResponseSchema = z.object({\n id: z.string(),\n model: z.string(),\n object: z.string(),\n created_at: z.number(),\n status: z.string(),\n error: z.any().nullable(),\n instructions: z.any().nullable(),\n max_output_tokens: z.any().nullable(),\n metadata: z.any().nullable(),\n tool_choice: z.any(),\n tools: z.array(z.any()),\n temperature: z.number(),\n top_p: z.number(),\n incomplete_details: z\n .object({\n reason: z.string(),\n })\n .nullable()\n .optional(),\n usage: z\n .object({\n input_tokens: z.number(),\n input_tokens_details: z\n .object({\n cached_tokens: z.number(),\n })\n .optional(),\n output_tokens: z.number(),\n output_tokens_details: z\n .object({\n reasoning_tokens: z.number(),\n })\n .optional(),\n total_tokens: z.number(),\n })\n .nullable()\n .optional(),\n output: z.array(huggingfaceResponsesOutputSchema),\n output_text: z.string().nullable().optional(),\n});\n\nconst responseOutputItemAddedSchema = z.object({\n type: z.literal('response.output_item.added'),\n output_index: z.number(),\n item: z.discriminatedUnion('type', [\n z.object({\n type: z.literal('message'),\n id: z.string(),\n role: z.string().optional(),\n status: z.string().optional(),\n content: z.array(z.any()).optional(),\n }),\n z.object({\n type: z.literal('reasoning'),\n id: z.string(),\n status: z.string().optional(),\n content: z.array(z.any()).optional(),\n summary: z.array(z.any()).optional(),\n }),\n z.object({\n type: z.literal('mcp_list_tools'),\n id: z.string(),\n server_label: z.string(),\n tools: z.array(z.any()).optional(),\n error: z.string().optional(),\n }),\n z.object({\n type: z.literal('mcp_call'),\n id: z.string(),\n server_label: z.string(),\n name: z.string(),\n arguments: z.string(),\n output: z.string().optional(),\n error: z.string().optional(),\n }),\n z.object({\n type: z.literal('function_call'),\n id: z.string(),\n call_id: z.string(),\n name: z.string(),\n arguments: z.string(),\n output: z.string().optional(),\n error: z.string().optional(),\n }),\n ]),\n sequence_number: z.number(),\n});\n\nconst responseOutputItemDoneSchema = z.object({\n type: z.literal('response.output_item.done'),\n output_index: z.number(),\n item: z.discriminatedUnion('type', [\n z.object({\n type: z.literal('message'),\n id: z.string(),\n role: z.string().optional(),\n status: z.string().optional(),\n content: z.array(z.any()).optional(),\n }),\n z.object({\n type: z.literal('mcp_list_tools'),\n id: z.string(),\n server_label: z.string(),\n tools: z.array(z.any()).optional(),\n error: z.string().optional(),\n }),\n z.object({\n type: z.literal('mcp_call'),\n id: z.string(),\n server_label: z.string(),\n name: z.string(),\n arguments: z.string(),\n output: z.string().optional(),\n error: z.string().optional(),\n }),\n z.object({\n type: z.literal('function_call'),\n id: z.string(),\n call_id: z.string(),\n name: z.string(),\n arguments: z.string(),\n output: z.string().optional(),\n error: z.string().optional(),\n }),\n z.object({\n type: z.literal('reasoning'),\n id: z.string(),\n status: z.string().optional(),\n content: z.array(z.any()).optional(),\n summary: z.array(z.any()).optional(),\n }),\n ]),\n sequence_number: z.number(),\n});\n\nconst textDeltaChunkSchema = z.object({\n type: z.literal('response.output_text.delta'),\n item_id: z.string(),\n output_index: z.number(),\n content_index: z.number(),\n delta: z.string(),\n sequence_number: z.number(),\n});\n\nconst reasoningTextDeltaChunkSchema = z.object({\n type: z.literal('response.reasoning_text.delta'),\n item_id: z.string(),\n output_index: z.number(),\n content_index: z.number(),\n delta: z.string(),\n sequence_number: z.number(),\n});\n\nconst reasoningTextEndChunkSchema = z.object({\n type: z.literal('response.reasoning_text.done'),\n item_id: z.string(),\n output_index: z.number(),\n content_index: z.number(),\n text: z.string(),\n sequence_number: z.number(),\n});\n\nconst responseCompletedChunkSchema = z.object({\n type: z.literal('response.completed'),\n response: huggingfaceResponsesResponseSchema,\n sequence_number: z.number(),\n});\n\nconst responseCreatedChunkSchema = z.object({\n type: z.literal('response.created'),\n response: z.object({\n id: z.string(),\n object: z.string(),\n created_at: z.number(),\n status: z.string(),\n model: z.string(),\n }),\n});\n\nconst huggingfaceResponsesChunkSchema = z.union([\n responseOutputItemAddedSchema,\n responseOutputItemDoneSchema,\n reasoningTextDeltaChunkSchema,\n reasoningTextEndChunkSchema,\n textDeltaChunkSchema,\n responseCompletedChunkSchema,\n responseCreatedChunkSchema,\n z.object({ type: z.string() }).loose(), // fallback for unknown chunks\n]);\n\nfunction isResponseOutputItemAddedChunk(\n chunk: z.infer<typeof huggingfaceResponsesChunkSchema>,\n): chunk is z.infer<typeof responseOutputItemAddedSchema> {\n return chunk.type === 'response.output_item.added';\n}\n\nfunction isResponseOutputItemDoneChunk(\n chunk: z.infer<typeof huggingfaceResponsesChunkSchema>,\n): chunk is z.infer<typeof responseOutputItemDoneSchema> {\n return chunk.type === 'response.output_item.done';\n}\n\nfunction isTextDeltaChunk(\n chunk: z.infer<typeof huggingfaceResponsesChunkSchema>,\n): chunk is z.infer<typeof textDeltaChunkSchema> {\n return chunk.type === 'response.output_text.delta';\n}\n\nfunction isReasoningDeltaChunk(\n chunk: z.infer<typeof huggingfaceResponsesChunkSchema>,\n): chunk is z.infer<typeof reasoningTextDeltaChunkSchema> {\n return chunk.type === 'response.reasoning_text.delta';\n}\n\nfunction isReasoningEndChunk(\n chunk: z.infer<typeof huggingfaceResponsesChunkSchema>,\n): chunk is z.infer<typeof reasoningTextEndChunkSchema> {\n return chunk.type === 'response.reasoning_text.done';\n}\n\nfunction isResponseCompletedChunk(\n chunk: z.infer<typeof huggingfaceResponsesChunkSchema>,\n): chunk is z.infer<typeof responseCompletedChunkSchema> {\n return chunk.type === 'response.completed';\n}\n\nfunction isResponseCreatedChunk(\n chunk: z.infer<typeof huggingfaceResponsesChunkSchema>,\n): chunk is z.infer<typeof responseCreatedChunkSchema> {\n return chunk.type === 'response.created';\n}\n","import { createJsonErrorResponseHandler } from '@ai-sdk/provider-utils';\nimport { z } from 'zod/v4';\n\nconst huggingfaceErrorDataSchema = z.object({\n error: z.object({\n message: z.string(),\n type: z.string().optional(),\n code: z.string().optional(),\n }),\n});\n\nexport type HuggingFaceErrorData = z.infer<typeof huggingfaceErrorDataSchema>;\n\nexport const huggingfaceFailedResponseHandler = createJsonErrorResponseHandler({\n errorSchema: huggingfaceErrorDataSchema,\n errorToMessage: data => data.error.message,\n});\n","import {\n LanguageModelV2CallWarning,\n LanguageModelV2Prompt,\n UnsupportedFunctionalityError,\n} from '@ai-sdk/provider';\n\nexport async function convertToHuggingFaceResponsesMessages({\n prompt,\n}: {\n prompt: LanguageModelV2Prompt;\n}): Promise<{\n input: string | Array<any>;\n warnings: Array<LanguageModelV2CallWarning>;\n}> {\n const messages: Array<any> = [];\n const warnings: Array<LanguageModelV2CallWarning> = [];\n\n for (const { role, content } of prompt) {\n switch (role) {\n case 'system': {\n messages.push({ role: 'system', content });\n break;\n }\n\n case 'user': {\n messages.push({\n role: 'user',\n content: content.map(part => {\n switch (part.type) {\n case 'text': {\n return { type: 'input_text', text: part.text };\n }\n case 'file': {\n if (part.mediaType.startsWith('image/')) {\n const mediaType =\n part.mediaType === 'image/*'\n ? 'image/jpeg'\n : part.mediaType;\n\n return {\n type: 'input_image',\n image_url:\n part.data instanceof URL\n ? part.data.toString()\n : `data:${mediaType};base64,${part.data}`,\n };\n } else {\n throw new UnsupportedFunctionalityError({\n functionality: `file part media type ${part.mediaType}`,\n });\n }\n }\n default: {\n const _exhaustiveCheck: never = part;\n throw new Error(`Unsupported part type: ${_exhaustiveCheck}`);\n }\n }\n }),\n });\n\n break;\n }\n\n case 'assistant': {\n for (const part of content) {\n switch (part.type) {\n case 'text': {\n messages.push({\n role: 'assistant',\n content: [{ type: 'output_text', text: part.text }],\n });\n break;\n }\n case 'tool-call': {\n // tool calls are handled by the responses API\n break;\n }\n\n case 'tool-result': {\n // tool results are handled by the responses API\n break;\n }\n\n case 'reasoning': {\n // include reasoning content in the message text\n messages.push({\n role: 'assistant',\n content: [{ type: 'output_text', text: part.text }],\n });\n break;\n }\n }\n }\n\n break;\n }\n\n case 'tool': {\n warnings.push({\n type: 'unsupported-setting',\n setting: 'tool messages',\n });\n break;\n }\n\n default: {\n const _exhaustiveCheck: never = role;\n throw new Error(`Unsupported role: ${_exhaustiveCheck}`);\n }\n }\n }\n\n return { input: messages, warnings };\n}\n","import { LanguageModelV2FinishReason } from '@ai-sdk/provider';\n\nexport function mapHuggingFaceResponsesFinishReason(\n finishReason: string | null | undefined,\n): LanguageModelV2FinishReason {\n switch (finishReason) {\n case 'stop':\n return 'stop';\n case 'length':\n return 'length';\n case 'content_filter':\n return 'content-filter';\n case 'tool_calls':\n return 'tool-calls';\n case 'error':\n return 'error';\n default:\n return 'unknown';\n }\n}\n","import {\n LanguageModelV2CallOptions,\n LanguageModelV2CallWarning,\n} from '@ai-sdk/provider';\n\nexport type HuggingFaceResponsesTool = {\n type: 'function';\n name: string;\n description?: string;\n parameters: unknown;\n};\n\nexport type HuggingFaceResponsesToolChoice =\n | 'auto'\n | 'required'\n | { type: 'function'; function: { name: string } };\n\nexport function prepareResponsesTools({\n tools,\n toolChoice,\n}: {\n tools: LanguageModelV2CallOptions['tools'];\n toolChoice?: LanguageModelV2CallOptions['toolChoice'];\n}): {\n tools?: HuggingFaceResponsesTool[];\n toolChoice?: HuggingFaceResponsesToolChoice;\n toolWarnings: LanguageModelV2CallWarning[];\n} {\n // when the tools array is empty, change it to undefined to prevent errors:\n tools = tools?.length ? tools : undefined;\n\n const toolWarnings: LanguageModelV2CallWarning[] = [];\n\n if (tools == null) {\n return { tools: undefined, toolChoice: undefined, toolWarnings };\n }\n\n const huggingfaceTools: HuggingFaceResponsesTool[] = [];\n\n for (const tool of tools) {\n switch (tool.type) {\n case 'function':\n huggingfaceTools.push({\n type: 'function',\n name: tool.name,\n description: tool.description,\n parameters: tool.inputSchema,\n });\n break;\n case 'provider-defined':\n toolWarnings.push({\n type: 'unsupported-tool',\n tool,\n });\n break;\n default: {\n const _exhaustiveCheck: never = tool;\n throw new Error(`Unsupported tool type: ${_exhaustiveCheck}`);\n }\n }\n }\n\n // prepare tool choice:\n let mappedToolChoice: HuggingFaceResponsesToolChoice | undefined = undefined;\n if (toolChoice) {\n switch (toolChoice.type) {\n case 'auto':\n mappedToolChoice = 'auto';\n break;\n case 'required':\n mappedToolChoice = 'required';\n break;\n case 'none':\n // not supported, ignore\n break;\n case 'tool':\n mappedToolChoice = {\n type: 'function',\n function: { name: toolChoice.toolName },\n };\n break;\n default: {\n const _exhaustiveCheck: never = toolChoice;\n throw new Error(`Unsupported tool choice type: ${_exhaustiveCheck}`);\n }\n }\n }\n\n return {\n tools: huggingfaceTools,\n toolChoice: mappedToolChoice,\n toolWarnings,\n };\n}\n"],"mappings":"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","names":["generateId","z","z","_a","generateId"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ai-sdk/huggingface",
3
- "version": "0.0.8",
3
+ "version": "0.0.10",
4
4
  "license": "Apache-2.0",
5
5
  "sideEffects": false,
6
6
  "main": "./dist/index.js",
@@ -19,17 +19,17 @@
19
19
  }
20
20
  },
21
21
  "dependencies": {
22
- "@ai-sdk/openai-compatible": "1.0.26",
22
+ "@ai-sdk/openai-compatible": "1.0.27",
23
23
  "@ai-sdk/provider": "2.0.0",
24
- "@ai-sdk/provider-utils": "3.0.16"
24
+ "@ai-sdk/provider-utils": "3.0.17"
25
25
  },
26
26
  "devDependencies": {
27
27
  "@types/node": "20.17.24",
28
28
  "tsup": "^8",
29
29
  "typescript": "5.8.3",
30
30
  "zod": "3.25.76",
31
- "@ai-sdk/test-server": "0.0.1",
32
- "@vercel/ai-tsconfig": "0.0.0"
31
+ "@vercel/ai-tsconfig": "0.0.0",
32
+ "@ai-sdk/test-server": "0.0.1"
33
33
  },
34
34
  "peerDependencies": {
35
35
  "zod": "^3.25.76 || ^4"