@effect/ai-openrouter 4.0.0-beta.83 → 4.0.0-beta.84

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.
@@ -307,6 +307,38 @@ const prepareMessages = /*#__PURE__*/Effect.fnUntraced(function* ({
307
307
  });
308
308
  break;
309
309
  }
310
+ if (part.mediaType.startsWith("audio/")) {
311
+ const format = audioFormats[part.mediaType.toLowerCase()];
312
+ if (Predicate.isUndefined(format)) {
313
+ return yield* AiError.make({
314
+ module: "OpenRouterLanguageModel",
315
+ method: "prepareMessages",
316
+ reason: new AiError.InvalidUserInputError({
317
+ description: `Detected unsupported media type for audio file: '${part.mediaType}' ` + `- OpenRouter supports ${supportedAudioFormats} audio`
318
+ })
319
+ });
320
+ }
321
+ if (part.data instanceof URL) {
322
+ return yield* AiError.make({
323
+ module: "OpenRouterLanguageModel",
324
+ method: "prepareMessages",
325
+ reason: new AiError.InvalidUserInputError({
326
+ description: "Detected URL data for audio file - OpenRouter requires " + "audio to be provided as base64-encoded data"
327
+ })
328
+ });
329
+ }
330
+ content.push({
331
+ type: "input_audio",
332
+ input_audio: {
333
+ data: part.data instanceof Uint8Array ? Encoding.encodeBase64(part.data) : getBase64FromDataUrl(part.data),
334
+ format
335
+ },
336
+ ...(Predicate.isNotNull(partCacheControl) ? {
337
+ cache_control: partCacheControl
338
+ } : undefined)
339
+ });
340
+ break;
341
+ }
310
342
  const options = part.options.openrouter;
311
343
  const fileName = options?.fileName ?? part.fileName ?? "";
312
344
  content.push({
@@ -1235,6 +1267,30 @@ const getResponseFormat = /*#__PURE__*/Effect.fnUntraced(function* ({
1235
1267
  }
1236
1268
  return undefined;
1237
1269
  });
1270
+ /**
1271
+ * Maps audio media types to the formats supported by OpenRouter.
1272
+ *
1273
+ * @see https://openrouter.ai/docs/guides/overview/multimodal/audio
1274
+ */
1275
+ const audioFormats = {
1276
+ "audio/aac": "aac",
1277
+ "audio/aiff": "aiff",
1278
+ "audio/x-aiff": "aiff",
1279
+ "audio/flac": "flac",
1280
+ "audio/x-flac": "flac",
1281
+ "audio/l16": "pcm16",
1282
+ "audio/l24": "pcm24",
1283
+ "audio/m4a": "m4a",
1284
+ "audio/x-m4a": "m4a",
1285
+ "audio/mp4": "m4a",
1286
+ "audio/mp3": "mp3",
1287
+ "audio/mpeg": "mp3",
1288
+ "audio/ogg": "ogg",
1289
+ "audio/wav": "wav",
1290
+ "audio/wave": "wav",
1291
+ "audio/x-wav": "wav"
1292
+ };
1293
+ const supportedAudioFormats = /*#__PURE__*/Array.from(new Set(Object.values(audioFormats))).join(", ");
1238
1294
  const getMediaType = (dataUrl, defaultMediaType) => {
1239
1295
  const match = dataUrl.match(/^data:([^;]+)/);
1240
1296
  return match ? match[1] ?? defaultMediaType : defaultMediaType;
@@ -1 +1 @@
1
- {"version":3,"file":"OpenRouterLanguageModel.js","names":["Arr","Context","DateTime","Effect","Encoding","dual","Layer","Option","Predicate","Redactable","SchemaAST","Stream","AiError","toCodecAnthropic","IdGenerator","LanguageModel","AiModel","toCodecOpenAI","addGenAIAnnotations","Tool","ReasoningDetailsDuplicateTracker","resolveFinishReason","OpenRouterClient","Config","Service","model","config","make","layer","fnUntraced","providerConfig","client","codecTransformer","getCodecTransformer","makeConfig","gen","services","context","mapUnsafe","get","key","makeRequest","options","messages","prepareMessages","tools","toolChoice","prepareTools","transformer","responseFormat","getResponseFormat","request","isNotUndefined","response_format","undefined","tool_choice","generateText","annotateRequest","span","rawResponse","response","createChatCompletion","annotateResponse","makeResponse","streamText","stream","createChatCompletionStream","makeStreamResponse","effect","pipe","unwrap","map","annotateStreamResponse","withConfigOverride","self","overrides","flatMap","serviceOption","provideService","_tag","value","reasoningDetailsTracker","message","prompt","content","role","cache_control","getCacheControl","push","type","text","isNotNull","messageCacheControl","length","lastTextPartIndex","i","index","part","isLastTextPart","partCacheControl","mediaType","startsWith","image_url","url","data","URL","toString","Uint8Array","encodeBase64","openrouter","fileName","file","filename","file_data","reasoning","toolCalls","id","function","name","arguments","JSON","stringify","params","messageReasoningDetails","reasoningDetails","candidateReasoningDetails","isNotNullish","Array","isArray","findFirstReasoningDetails","uniqueReasoningDetails","detail","upsert","reasoning_details","tool_calls","tool_call_id","result","buildHttpRequestDetails","method","urlParams","from","hash","getOrUndefined","headers","redact","buildHttpResponseDetails","status","idGenerator","parts","hasToolCalls","hasEncryptedReasoning","createdAt","Date","created","modelId","timestamp","formatIso","fromDateUnsafe","choice","choices","isUndefined","module","reason","InvalidOutputError","description","finishReason","finish_reason","metadata","summary","item","toolCall","toolName","toolParams","try","unsafeSecureJsonParse","catch","cause","ToolParameterValidationError","images","image","getMediaType","getBase64FromDataUrl","generateId","sourceType","title","annotations","annotation","url_citation","start_index","startIndex","end_index","endIndex","fileAnnotations","filter","usage","getUsage","systemFingerprint","system_fingerprint","hasProperty","isString","provider","textStarted","reasoningStarted","responseMetadataEmitted","reasoningDetailsAttachedToToolCall","openRouterResponseId","activeReasoningId","activeTextId","totalToolCalls","activeToolCalls","accumulatedReasoningDetails","accumulatedFileAnnotations","inputTokens","total","uncached","cacheRead","cacheWrite","outputTokens","mapEffect","event","error","now","computed","delta","isNullish","emitReasoning","lastDetail","signature","format","openRouter","activeToolCall","some","Object","values","flattenIterable","hasProviderDefinedTools","tool","isProviderDefined","InvalidUserInputError","getDescription","parameters","tryJsonSchema","parametersSchema","strict","getStrictMode","allowedTools","Set","oneOf","has","mode","system","operation","temperature","topP","top_p","maxTokens","max_tokens","stopSequences","ensure","stop","finishReasons","prompt_tokens","completion_tokens","cacheControl","details","defaultCodecTransformer","unsupportedSchemaError","UnsupportedSchemaError","Error","String","schema","getJsonSchemaFromSchema","resolveDescription","ast","jsonSchema","json_schema","objectName","strictJsonSchema","dataUrl","defaultMediaType","match","promptTokens","completionTokens","cacheReadTokens","prompt_tokens_details","cached_tokens","cacheWriteTokens","cache_write_tokens","reasoningTokens","completion_tokens_details","reasoning_tokens"],"sources":["../src/OpenRouterLanguageModel.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"OpenRouterLanguageModel.js","names":["Arr","Context","DateTime","Effect","Encoding","dual","Layer","Option","Predicate","Redactable","SchemaAST","Stream","AiError","toCodecAnthropic","IdGenerator","LanguageModel","AiModel","toCodecOpenAI","addGenAIAnnotations","Tool","ReasoningDetailsDuplicateTracker","resolveFinishReason","OpenRouterClient","Config","Service","model","config","make","layer","fnUntraced","providerConfig","client","codecTransformer","getCodecTransformer","makeConfig","gen","services","context","mapUnsafe","get","key","makeRequest","options","messages","prepareMessages","tools","toolChoice","prepareTools","transformer","responseFormat","getResponseFormat","request","isNotUndefined","response_format","undefined","tool_choice","generateText","annotateRequest","span","rawResponse","response","createChatCompletion","annotateResponse","makeResponse","streamText","stream","createChatCompletionStream","makeStreamResponse","effect","pipe","unwrap","map","annotateStreamResponse","withConfigOverride","self","overrides","flatMap","serviceOption","provideService","_tag","value","reasoningDetailsTracker","message","prompt","content","role","cache_control","getCacheControl","push","type","text","isNotNull","messageCacheControl","length","lastTextPartIndex","i","index","part","isLastTextPart","partCacheControl","mediaType","startsWith","image_url","url","data","URL","toString","Uint8Array","encodeBase64","format","audioFormats","toLowerCase","isUndefined","module","method","reason","InvalidUserInputError","description","supportedAudioFormats","input_audio","getBase64FromDataUrl","openrouter","fileName","file","filename","file_data","reasoning","toolCalls","id","function","name","arguments","JSON","stringify","params","messageReasoningDetails","reasoningDetails","candidateReasoningDetails","isNotNullish","Array","isArray","findFirstReasoningDetails","uniqueReasoningDetails","detail","upsert","reasoning_details","tool_calls","tool_call_id","result","buildHttpRequestDetails","urlParams","from","hash","getOrUndefined","headers","redact","buildHttpResponseDetails","status","idGenerator","parts","hasToolCalls","hasEncryptedReasoning","createdAt","Date","created","modelId","timestamp","formatIso","fromDateUnsafe","choice","choices","InvalidOutputError","finishReason","finish_reason","metadata","summary","item","toolCall","toolName","toolParams","try","unsafeSecureJsonParse","catch","cause","ToolParameterValidationError","images","image","getMediaType","generateId","sourceType","title","annotations","annotation","url_citation","start_index","startIndex","end_index","endIndex","fileAnnotations","filter","usage","getUsage","systemFingerprint","system_fingerprint","hasProperty","isString","provider","textStarted","reasoningStarted","responseMetadataEmitted","reasoningDetailsAttachedToToolCall","openRouterResponseId","activeReasoningId","activeTextId","totalToolCalls","activeToolCalls","accumulatedReasoningDetails","accumulatedFileAnnotations","inputTokens","total","uncached","cacheRead","cacheWrite","outputTokens","mapEffect","event","error","now","computed","delta","isNullish","emitReasoning","lastDetail","signature","openRouter","activeToolCall","some","Object","values","flattenIterable","hasProviderDefinedTools","tool","isProviderDefined","getDescription","parameters","tryJsonSchema","parametersSchema","strict","getStrictMode","allowedTools","Set","oneOf","has","mode","system","operation","temperature","topP","top_p","maxTokens","max_tokens","stopSequences","ensure","stop","finishReasons","prompt_tokens","completion_tokens","cacheControl","details","defaultCodecTransformer","unsupportedSchemaError","UnsupportedSchemaError","Error","String","schema","getJsonSchemaFromSchema","resolveDescription","ast","jsonSchema","json_schema","objectName","strictJsonSchema","join","dataUrl","defaultMediaType","match","promptTokens","completionTokens","cacheReadTokens","prompt_tokens_details","cached_tokens","cacheWriteTokens","cache_write_tokens","reasoningTokens","completion_tokens_details","reasoning_tokens"],"sources":["../src/OpenRouterLanguageModel.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/ai-openrouter",
3
- "version": "4.0.0-beta.83",
3
+ "version": "4.0.0-beta.84",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "description": "An OpenRouter provider integration for Effect AI SDK",
@@ -43,10 +43,10 @@
43
43
  "provenance": true
44
44
  },
45
45
  "devDependencies": {
46
- "effect": "^4.0.0-beta.83"
46
+ "effect": "^4.0.0-beta.84"
47
47
  },
48
48
  "peerDependencies": {
49
- "effect": "^4.0.0-beta.83"
49
+ "effect": "^4.0.0-beta.84"
50
50
  },
51
51
  "scripts": {
52
52
  "codegen": "effect-utils codegen",
@@ -834,6 +834,45 @@ const prepareMessages = Effect.fnUntraced(
834
834
  break
835
835
  }
836
836
 
837
+ if (part.mediaType.startsWith("audio/")) {
838
+ const format = audioFormats[part.mediaType.toLowerCase()]
839
+
840
+ if (Predicate.isUndefined(format)) {
841
+ return yield* AiError.make({
842
+ module: "OpenRouterLanguageModel",
843
+ method: "prepareMessages",
844
+ reason: new AiError.InvalidUserInputError({
845
+ description: `Detected unsupported media type for audio file: '${part.mediaType}' ` +
846
+ `- OpenRouter supports ${supportedAudioFormats} audio`
847
+ })
848
+ })
849
+ }
850
+
851
+ if (part.data instanceof URL) {
852
+ return yield* AiError.make({
853
+ module: "OpenRouterLanguageModel",
854
+ method: "prepareMessages",
855
+ reason: new AiError.InvalidUserInputError({
856
+ description: "Detected URL data for audio file - OpenRouter requires " +
857
+ "audio to be provided as base64-encoded data"
858
+ })
859
+ })
860
+ }
861
+
862
+ content.push({
863
+ type: "input_audio",
864
+ input_audio: {
865
+ data: part.data instanceof Uint8Array
866
+ ? Encoding.encodeBase64(part.data)
867
+ : getBase64FromDataUrl(part.data),
868
+ format
869
+ },
870
+ ...(Predicate.isNotNull(partCacheControl) ? { cache_control: partCacheControl } : undefined)
871
+ })
872
+
873
+ break
874
+ }
875
+
837
876
  const options = part.options.openrouter
838
877
  const fileName = options?.fileName ?? part.fileName ?? ""
839
878
 
@@ -1836,6 +1875,32 @@ const getResponseFormat = Effect.fnUntraced(function*({ config, options, transfo
1836
1875
  return undefined
1837
1876
  })
1838
1877
 
1878
+ /**
1879
+ * Maps audio media types to the formats supported by OpenRouter.
1880
+ *
1881
+ * @see https://openrouter.ai/docs/guides/overview/multimodal/audio
1882
+ */
1883
+ const audioFormats: Record<string, string> = {
1884
+ "audio/aac": "aac",
1885
+ "audio/aiff": "aiff",
1886
+ "audio/x-aiff": "aiff",
1887
+ "audio/flac": "flac",
1888
+ "audio/x-flac": "flac",
1889
+ "audio/l16": "pcm16",
1890
+ "audio/l24": "pcm24",
1891
+ "audio/m4a": "m4a",
1892
+ "audio/x-m4a": "m4a",
1893
+ "audio/mp4": "m4a",
1894
+ "audio/mp3": "mp3",
1895
+ "audio/mpeg": "mp3",
1896
+ "audio/ogg": "ogg",
1897
+ "audio/wav": "wav",
1898
+ "audio/wave": "wav",
1899
+ "audio/x-wav": "wav"
1900
+ }
1901
+
1902
+ const supportedAudioFormats = Array.from(new Set(Object.values(audioFormats))).join(", ")
1903
+
1839
1904
  const getMediaType = (dataUrl: string, defaultMediaType: string): string => {
1840
1905
  const match = dataUrl.match(/^data:([^;]+)/)
1841
1906
  return match ? (match[1] ?? defaultMediaType) : defaultMediaType