@adaline/google 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -2
- package/dist/index.d.mts +415 -189
- package/dist/index.d.ts +415 -189
- package/dist/index.js +126 -120
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +10 -12
- package/dist/index.mjs.map +1 -1
- package/package.json +5 -7
package/dist/index.js
CHANGED
|
@@ -4,132 +4,138 @@ var zod = require('zod');
|
|
|
4
4
|
var provider = require('@adaline/provider');
|
|
5
5
|
var types = require('@adaline/types');
|
|
6
6
|
|
|
7
|
-
var Zo=Object.defineProperty;var po=Object.getOwnPropertySymbols;var et=Object.prototype.hasOwnProperty,ot=Object.prototype.propertyIsEnumerable;var tt=(i,e)=>(e=Symbol[i])?e:Symbol.for("Symbol."+i);var co=(i,e,t)=>e in i?Zo(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t,G=(i,e)=>{for(var t in e||(e={}))et.call(e,t)&&co(i,t,e[t]);if(po)for(var t of po(e))ot.call(e,t)&&co(i,t,e[t]);return i};var P=(i,e,t)=>new Promise((o,s)=>{var m=l=>{try{r(t.next(l));}catch(c){s(c);}},n=l=>{try{r(t.throw(l));}catch(c){s(c);}},r=l=>l.done?o(l.value):Promise.resolve(l.value).then(m,n);r((t=t.apply(i,e)).next());}),nt=function(i,e){this[0]=i,this[1]=e;},ho=(i,e,t)=>{var o=(n,r,l,c)=>{try{var p=t[n](r),T=(r=p.value)instanceof nt,b=p.done;Promise.resolve(T?r[0]:r).then(f=>T?o(n==="return"?n:"next",r[1]?{done:f.done,value:f.value}:f,l,c):l({value:f,done:b})).catch(f=>o("throw",f,l,c));}catch(f){c(f);}},s=n=>m[n]=r=>new Promise((l,c)=>o(n,r,l,c)),m={};return t=t.apply(i,e),m[tt("asyncIterator")]=()=>m,s("next"),s("throw"),s("return"),m};var L=(i,e)=>provider.RangeConfigItem({param:"temperature",title:provider.CHAT_CONFIG.TEMPERATURE.title,description:provider.CHAT_CONFIG.TEMPERATURE.description,min:0,max:i,step:.01,default:e}),v=i=>provider.RangeConfigItem({param:"maxOutputTokens",title:provider.CHAT_CONFIG.MAX_TOKENS.title,description:provider.CHAT_CONFIG.MAX_TOKENS.description,min:0,max:i,step:1,default:0}),I=i=>provider.MultiStringConfigItem({param:"stopSequences",title:provider.CHAT_CONFIG.STOP(i).title,description:provider.CHAT_CONFIG.STOP(i).description,max:i}),$=i=>provider.RangeConfigItem({param:"topP",title:provider.CHAT_CONFIG.TOP_P.title,description:provider.CHAT_CONFIG.TOP_P.description,min:0,max:1,step:.01,default:i}),Oe=i=>provider.RangeConfigItem({param:"topK",title:provider.CHAT_CONFIG.TOP_K.title,description:provider.CHAT_CONFIG.TOP_K.description,min:1,max:40,step:1,default:i}),Pe=provider.RangeConfigItem({param:"frequencyPenalty",title:provider.CHAT_CONFIG.FREQUENCY_PENALTY.title,description:provider.CHAT_CONFIG.FREQUENCY_PENALTY.description,min:-2,max:2,step:.01,default:0}),Re=provider.RangeConfigItem({param:"presencePenalty",title:provider.CHAT_CONFIG.PRESENCE_PENALTY.title,description:provider.CHAT_CONFIG.PRESENCE_PENALTY.description,min:-2,max:2,step:.01,default:0}),xe=provider.RangeConfigItem({param:"seed",title:provider.CHAT_CONFIG.SEED.title,description:provider.CHAT_CONFIG.SEED.description,min:0,max:1e6,step:1,default:0}),F=provider.SelectStringConfigItem({param:"toolChoice",title:"Tool choice",description:"Controls which (if any) tool is called by the model. 'none' means the model will not call a function. 'auto' means the model can pick between generating a message or calling a tool.",default:"auto",choices:["auto","any","none"]}),q=provider.ObjectSchemaConfigItem({param:"safetySettings",title:"Safety settings",description:"The safety rating contains the category of harm and the harm probability level in that category for a piece of content.",objectSchema:zod.z.array(zod.z.object({threshold:zod.z.enum(["HARM_BLOCK_THRESHOLD_UNSPECIFIED","BLOCK_LOW_AND_ABOVE","BLOCK_MEDIUM_AND_ABOVE","BLOCK_ONLY_HIGH","BLOCK_NONE","OFF"]),category:zod.z.enum(["HARM_CATEGORY_UNSPECIFIED","HARM_CATEGORY_HARASSMENT","HARM_CATEGORY_HATE_SPEECH","HARM_CATEGORY_SEXUALLY_EXPLICIT","HARM_CATEGORY_DANGEROUS_CONTENT","HARM_CATEGORY_CIVIC_INTEGRITY"])}))});var fo=(i,e,t,o,s)=>zod.z.object({temperature:L(i,e).schema,maxTokens:v(t).schema,stop:I(o).schema,topP:$(s).schema,toolChoice:F.schema,safetySettings:q.schema}),go=(i,e,t,o,s)=>({temperature:L(i,e).def,maxTokens:v(t).def,stop:I(o).def,topP:$(s).def,toolChoice:F.def,safetySettings:q.def});var uo=(i,e,t,o,s,m)=>zod.z.object({temperature:L(i,e).schema,maxTokens:v(t).schema,stop:I(o).schema,topP:$(s).schema,topK:Oe(m).schema,frequencyPenalty:Pe.schema,presencePenalty:Re.schema,seed:xe.schema.transform(n=>n===0?void 0:n),toolChoice:F.schema,safetySettings:q.schema}),yo=(i,e,t,o,s,m)=>({temperature:L(i,e).def,maxTokens:v(t).def,stop:I(o).def,topP:$(s).def,topK:Oe(m).def,frequencyPenalty:Pe.def,presencePenalty:Re.def,seed:xe.def,toolChoice:F.def,safetySettings:q.def});var we=i=>provider.RangeConfigItem({param:"outputDimensionality",title:provider.EMBEDDING_CONFIG.DIMENSIONS.title,description:provider.EMBEDDING_CONFIG.DIMENSIONS.description,min:1,max:i,step:1,default:i});var To=i=>zod.z.object({dimensions:we(i).schema}),Go=i=>({dimensions:we(i).def});var h={base:(i,e,t,o,s)=>({def:go(i,e,t,o,s),schema:fo(i,e,t,o,s)}),c1:(i,e,t,o,s,m)=>({def:yo(i,e,t,o,s,m),schema:uo(i,e,t,o,s,m)})},j={base:i=>({def:Go(i),schema:To(i)})};var u=zod.z.enum([types.SystemRoleLiteral,types.UserRoleLiteral,types.AssistantRoleLiteral,types.ToolRoleLiteral]),gt="model",ut="function",y={system:types.UserRoleLiteral,user:types.UserRoleLiteral,assistant:gt,tool:ut};var _=[types.TextModalityLiteral,types.ImageModalityLiteral,types.ToolCallModalityLiteral,types.ToolResponseModalityLiteral],E=zod.z.enum([types.TextModalityLiteral,types.ImageModalityLiteral,types.ToolCallModalityLiteral,types.ToolResponseModalityLiteral]),Nn=[types.TextModalityLiteral],An=zod.z.enum([types.TextModalityLiteral]),bo=[types.TextModalityLiteral,types.ImageModalityLiteral],Mo=zod.z.enum([types.TextModalityLiteral,types.ImageModalityLiteral]),z=[types.TextModalityLiteral,types.ToolCallModalityLiteral,types.ToolResponseModalityLiteral],D=zod.z.enum([types.TextModalityLiteral,types.ToolCallModalityLiteral,types.ToolResponseModalityLiteral]);var yt=zod.z.object({text:zod.z.string()}),Ct=zod.z.object({functionCall:zod.z.object({name:zod.z.string(),args:zod.z.record(zod.z.any())})}),_o=zod.z.object({candidates:zod.z.array(zod.z.object({content:zod.z.object({role:zod.z.string(),parts:zod.z.array(zod.z.union([yt,Ct]))}).optional(),finishReason:zod.z.string(),index:zod.z.number().optional(),safetyRatings:zod.z.optional(zod.z.array(zod.z.object({category:zod.z.string(),probability:zod.z.string(),blocked:zod.z.boolean().optional()})))})),promptFeedback:zod.z.optional(zod.z.object({safetyRatings:zod.z.optional(zod.z.array(zod.z.object({category:zod.z.string(),probability:zod.z.string()})))})),usageMetadata:zod.z.object({promptTokenCount:zod.z.number(),cachedContentTokenCount:zod.z.number().optional(),candidatesTokenCount:zod.z.number().optional(),totalTokenCount:zod.z.number()}).optional()}),Tt=zod.z.object({text:zod.z.string()}),Gt=zod.z.object({functionCall:zod.z.object({name:zod.z.string(),args:zod.z.record(zod.z.any())})}),Eo=zod.z.object({candidates:zod.z.array(zod.z.object({content:zod.z.object({role:zod.z.string(),parts:zod.z.array(zod.z.union([Tt,Gt]))}).optional(),finishReason:zod.z.string().optional(),index:zod.z.number().optional(),safetyRatings:zod.z.optional(zod.z.array(zod.z.object({category:zod.z.string(),probability:zod.z.string(),blocked:zod.z.boolean().optional()})))})),promptFeedback:zod.z.optional(zod.z.object({safetyRatings:zod.z.optional(zod.z.array(zod.z.object({category:zod.z.string(),probability:zod.z.string()})))})),usageMetadata:zod.z.object({promptTokenCount:zod.z.number(),cachedContentTokenCount:zod.z.number().optional(),candidatesTokenCount:zod.z.number(),totalTokenCount:zod.z.number()}).optional()});var Ro=zod.z.object({text:zod.z.string().min(1)}),bt=zod.z.object({inline_data:zod.z.object({mime_type:zod.z.string().min(1),data:zod.z.string().base64()})}),Mt=zod.z.object({function_call:zod.z.object({name:zod.z.string().min(1),args:zod.z.record(zod.z.string().min(1))})}),_t=zod.z.object({function_response:zod.z.object({name:zod.z.string().min(1),response:zod.z.record(zod.z.string().min(1))})}),Et=zod.z.object({role:zod.z.enum(["user","model","function"]),parts:zod.z.array(zod.z.union([Ro,bt,Mt,_t]))}),So=zod.z.object({parts:zod.z.array(Ro)}),St=zod.z.object({name:zod.z.string().min(1),description:zod.z.string().min(1),parameters:zod.z.any()}),Oo=zod.z.object({function_calling_config:zod.z.object({mode:zod.z.enum(["ANY","AUTO","NONE"]),allowed_function_names:zod.z.array(zod.z.string()).optional()})}),Po=zod.z.object({stopSequences:zod.z.array(zod.z.string()).optional(),maxOutputTokens:zod.z.number().optional(),temperature:zod.z.number().optional(),topP:zod.z.number().optional(),topK:zod.z.number().optional(),presencePenalty:zod.z.number().optional(),frequencyPenalty:zod.z.number().optional(),seed:zod.z.number().optional()}),xo=zod.z.object({model:zod.z.string().min(1).optional(),contents:zod.z.array(Et),systemInstruction:So.optional(),system_instruction:So.optional(),generationConfig:Po.optional(),generation_config:Po.optional(),tools:zod.z.object({function_declarations:zod.z.array(St)}).optional(),toolConfig:Oo.optional(),tool_config:Oo.optional()});var Ot="google",K=class{constructor(){this.version="v1";this.name=Ot;this.chatModelFactories={[Be]:{model:pe,modelOptions:$o,modelSchema:Ne},[Ae]:{model:ce,modelOptions:Fo,modelSchema:He},[Ve]:{model:he,modelOptions:qo,modelSchema:Ke},[De]:{model:de,modelOptions:Io,modelSchema:Ue},[We]:{model:ge,modelOptions:zo,modelSchema:Xe},[Qe]:{model:ue,modelOptions:Do,modelSchema:Ze},[eo]:{model:ye,modelOptions:Uo,modelSchema:oo},[Ye]:{model:fe,modelOptions:jo,modelSchema:Je},[Le]:{model:ae,modelOptions:wo,modelSchema:ve},[je]:{model:me,modelOptions:vo,modelSchema:ze},[Fe]:{model:le,modelOptions:Lo,modelSchema:qe},[Ie]:{model:re,modelOptions:ko,modelSchema:$e}};this.embeddingModelFactories={[to]:{model:Ce,modelOptions:Bo,modelSchema:no},[so]:{model:Te,modelOptions:No,modelSchema:io}};}chatModelLiterals(){return Object.keys(this.chatModelFactories)}chatModel(e,t){if(!(e in this.chatModelFactories))throw new provider.ProviderError({info:`Google chat model: ${e} not found`,cause:new Error(`Google chat model: ${e} not found, available chat models:
|
|
8
|
-
[${this.chatModelLiterals().join(", ")}]`)});let
|
|
9
|
-
[${this.
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
available modalities : [${this.modelSchema.modalities.join(", ")}]`)})});}),t.forEach(n=>{if(!Object.keys(this.modelSchema.roles).includes(n.role))throw new provider.InvalidMessagesError({info:`Invalid message content for model : '${this.modelSchema.name}'`,cause:new Error(`model : '${this.modelSchema.name}' does not support role : '${n.role}',
|
|
15
|
-
available
|
|
16
|
-
available roles : [${Object.keys(this.modelSchema.roles).join(", ")}]`)})}}),s[0].role!==this.modelSchema.roles[types.UserRoleLiteral])throw new provider.InvalidMessagesError({info:`Invalid message 'role' for model : ${this.modelSchema.name}`,cause:new Error(`model : '${this.modelSchema.name}' requires first message to be from user`)});let m=n=>n===this.modelSchema.roles[types.UserRoleLiteral]||n===this.modelSchema.roles[types.ToolRoleLiteral]?[this.modelSchema.roles[types.AssistantRoleLiteral]]:[this.modelSchema.roles[types.UserRoleLiteral],this.modelSchema.roles[types.ToolRoleLiteral]];for(let n=1;n<s.length;n++)if(!m(s[n-1].role).includes(s[n].role))throw new provider.InvalidMessagesError({info:`Invalid message format for model : ${this.modelSchema.name}`,cause:new Error(`model : '${this.modelSchema.name}' cannot have message with role : '${s[n].role}' after message with role : '${s[n-1].role}'`)});if(s[s.length-1].role!==this.modelSchema.roles[types.UserRoleLiteral])throw new provider.InvalidMessagesError({info:`Invalid message format for model : ${this.modelSchema.name}`,cause:new Error(`model : '${this.modelSchema.name}' requires last message to be from user`)});return G({contents:s},o.parts.length>0?{system_instruction:o}:{})}transformTools(e){if(!this.modelSchema.modalities.includes(types.ToolCallModalityLiteral))throw new provider.InvalidToolsError({info:`Invalid tool 'modality' for model : ${this.modelSchema.name}`,cause:new Error(`model : '${this.modelSchema.name}' does not support tool modality : '${types.ToolCallModalityLiteral}'`)});return !e||e&&e.length===0?{tools:[]}:{tools:e.map(s=>{let m=types.Tool().safeParse(s);if(!m.success)throw new provider.InvalidToolsError({info:"Invalid tools",cause:m.error});return m.data}).map(s=>({function_declarations:[{name:s.definition.schema.name,description:s.definition.schema.description,parameters:s.definition.schema.parameters}]}))}}getCompleteChatUrl(e,t,o){return P(this,null,function*(){return new Promise(s=>{s(this.completeChatUrl);})})}getCompleteChatHeaders(e,t,o){return P(this,null,function*(){return new Promise(s=>{s(this.getDefaultHeaders());})})}getCompleteChatData(e,t,o){return P(this,null,function*(){let s=this.transformConfig(e,t,o),m=this.transformMessages(t);if(m.messages&&m.messages.length===0)throw new provider.InvalidMessagesError({info:"Messages are required",cause:new Error("Messages are required")});let n=o?this.transformTools(o):{};return new Promise(r=>{r(G(G(G(G({},this.getDefaultParams()),s),m),n));})})}transformCompleteChatResponse(e){let t=_o.safeParse(e);if(t.success){if(t.data.candidates.length===0)throw new provider.ModelResponseError({info:"Invalid response from model",cause:new Error(`No choices in response : ${JSON.stringify(t.data)}`)});let o=t.data,s=[],m,n=o.candidates[0].content;if(n){let c=n.parts.map((p,T)=>{if("text"in p&&p.text!==void 0)return types.createTextContent(p.text);if("functionCall"in p&&p.functionCall!==void 0)return types.createToolCallContent(T,`${p.functionCall.name}_${T}`,p.functionCall.name,JSON.stringify(p.functionCall.args))});return s.push({role:types.AssistantRoleLiteral,content:c}),o.usageMetadata&&(m={promptTokens:o.usageMetadata.promptTokenCount,totalTokens:o.usageMetadata.totalTokenCount,completionTokens:o.usageMetadata.candidatesTokenCount||0}),{messages:s,usage:m,logProbs:void 0}}let r=o.candidates[0].safetyRatings;if(r&&r.length>0&&r.forEach(c=>{if(c.blocked)throw new provider.ModelResponseError({info:`Blocked content for category: ${c.category} with probability: ${c.probability}`,cause:new Error(`Blocked content for category: ${c.category} with probability: ${c.probability}`)})}),o.candidates[0].finishReason==="SAFETY")throw new provider.ModelResponseError({info:"Blocked content, model response finished with safety reason",cause:new Error("Blocked content, model response finished with safety reason")})}throw new provider.ModelResponseError({info:"Invalid response from model",cause:t.error})}getStreamChatUrl(e,t,o){return P(this,null,function*(){return new Promise(s=>{s(this.streamChatUrl);})})}getStreamChatHeaders(e,t,o){return P(this,null,function*(){return new Promise(s=>{s(this.getDefaultHeaders());})})}getStreamChatData(e,t,o){return P(this,null,function*(){let s=this.transformConfig(e,t,o),m=this.transformMessages(t);if(m.messages&&m.messages.length===0)throw new provider.InvalidMessagesError({info:"Messages are required",cause:new Error("Messages are required")});let n=o?this.transformTools(o):{};return new Promise(r=>{r(G(G(G(G({},this.getDefaultParams()),s),m),n));})})}transformStreamChatResponseChunk(e,t){return ho(this,null,function*(){let o=(t+e).split(",\r").filter(s=>s.trim()!=="");for(let s of o){let m=s;if(m=m.replace(/\n/g,""),m.startsWith("["))m=m.slice(1);else if(m.endsWith("]")){if(m==="]")return;m=m.slice(0,-1);}let n;try{n=JSON.parse(m);}catch(l){if(l instanceof SyntaxError){t=m;continue}else throw l}t="";let r=Eo.safeParse(n);if(r.success){let l={partialMessages:[]},c=r.data;if(c.candidates.length>0){let p=c.candidates[0].content;p&&"parts"in p&&p.parts.length>0&&p.parts.forEach((T,b)=>{if("text"in T&&T.text!==void 0&&l.partialMessages.push(types.createPartialTextMessage(types.AssistantRoleLiteral,T.text)),"functionCall"in T&&T.functionCall!==void 0){let f=T.functionCall;l.partialMessages.push(types.createPartialToolCallMessage(types.AssistantRoleLiteral,b,`${f.name}_${b}`,f.name,JSON.stringify(f.args)));}});}c.usageMetadata&&(l.usage={promptTokens:c.usageMetadata.promptTokenCount,completionTokens:c.usageMetadata.candidatesTokenCount,totalTokens:c.usageMetadata.totalTokenCount}),yield {partialResponse:l,buffer:t};}else throw new provider.ModelResponseError({info:"Invalid response from model",cause:r.error})}yield {partialResponse:{partialMessages:[]},buffer:t};})}};var R=class extends C{transformMessages(e){let t=super.transformMessages(e);if(t.systemInstruction){let o={role:this.modelSchema.roles[types.UserRoleLiteral],parts:t.systemInstruction.parts};t.contents.unshift(o),delete t.systemInstruction;}return t}};var Le="gemini-1.0-pro",jt="Google's predecessor to Gemini 1.5 Pro, a model for scaling across a wide range of tasks Optimized for natural language tasks, multi-turn text and code chat, and code generation",ve=provider.ChatModelSchema(u,D).parse({name:Le,description:jt,maxInputTokens:30720,maxOutputTokens:2048,roles:y,modalities:z,config:{def:h.base(1,.9,2048,4,1).def,schema:h.base(1,.9,2048,4,1).schema}}),wo=g,ae=class extends R{constructor(e){super(ve,e);}};var Ie="gemini-1.0-pro-001",Dt="Google's predecessor to Gemini 1.5 Pro, a model for scaling across a wide range of tasks Optimized for natural language tasks, multi-turn text and code chat, and code generation",$e=provider.ChatModelSchema(u,D).parse({name:Ie,description:Dt,maxInputTokens:30720,maxOutputTokens:2048,roles:y,modalities:z,config:{def:h.base(1,.9,2048,4,1).def,schema:h.base(1,.9,2048,4,1).schema}}),ko=g,re=class extends R{constructor(e){super($e,e);}};var Fe="gemini-1.0-pro-latest",Bt="Google's latest multimodal model with great performance for high-frequency tasks. Optimized for natural language tasks, multi-turn text and code chat, and code generation",qe=provider.ChatModelSchema(u,D).parse({name:Fe,description:Bt,maxInputTokens:30720,maxOutputTokens:2048,roles:y,modalities:z,config:{def:h.base(1,.9,2048,4,1).def,schema:h.base(1,.9,2048,4,1).schema}}),Lo=g,le=class extends R{constructor(e){super(qe,e);}};var je="gemini-1.0-pro-vision",At="Google's predecessor to Gemini 1.5 Pro, an image understanding model to handle a broad range of applications",ze=provider.ChatModelSchema(u,Mo).parse({name:je,description:At,maxInputTokens:12288,maxOutputTokens:4096,roles:y,modalities:bo,config:{def:h.c1(1,.4,4096,4,1,32).def,schema:h.c1(1,.4,4096,4,1,32).schema}}),vo=g,me=class extends R{constructor(e){super(ze,e);}};var De="gemini-1.5-flash",Vt="Google's fastest, most cost-efficient multimodal model with great performance for high-frequency tasks. Optimized for fast and versatile performance across a diverse variety of tasks",Ue=provider.ChatModelSchema(u,E).parse({name:De,description:Vt,maxInputTokens:1e6,maxOutputTokens:8192,roles:y,modalities:_,config:{def:h.c1(2,1,8192,4,.95,64).def,schema:h.c1(2,1,8192,4,.95,64).schema}}),Io=g,de=class extends C{constructor(e){super(Ue,e);}};var Be="gemini-1.5-flash-001",Yt="Google's fastest, most cost-efficient multimodal model with great performance for high-frequency tasks. Optimized for fast and versatile performance across a diverse variety of tasks",Ne=provider.ChatModelSchema(u,E).parse({name:Be,description:Yt,maxInputTokens:1e6,maxOutputTokens:8192,roles:y,modalities:_,config:{def:h.c1(2,1,8192,4,.95,64).def,schema:h.c1(2,1,8192,4,.95,64).schema}}),$o=g,pe=class extends C{constructor(e){super(Ne,e);}};var Ae="gemini-1.5-flash-002",Wt="Google's fastest, most cost-efficient multimodal model with great performance for high-frequency tasks. Optimized for fast and versatile performance across a diverse variety of tasks",He=provider.ChatModelSchema(u,E).parse({name:Ae,description:Wt,maxInputTokens:1e6,maxOutputTokens:8192,roles:y,modalities:_,config:{def:h.c1(2,1,8192,4,.95,40).def,schema:h.c1(2,1,8192,4,.95,40).schema}}),Fo=g,ce=class extends C{constructor(e){super(He,e);}};var Ve="gemini-1.5-flash-latest",Qt="Google's latest multimodal model with great performance for high-frequency tasks. Optimized for fast and versatile performance across a diverse variety of tasks",Ke=provider.ChatModelSchema(u,E).parse({name:Ve,description:Qt,maxInputTokens:1e6,maxOutputTokens:8192,roles:y,modalities:_,config:{def:h.c1(2,1,8192,4,.95,64).def,schema:h.c1(2,1,8192,4,.95,64).schema}}),qo=g,he=class extends C{constructor(e){super(Ke,e);}};var Ye="gemini-1.5-pro",en="Google's best performing multimodal model with features for a wide variety of reasoning tasks. Optimized for complex reasoning tasks requiring more intelligence",Je=provider.ChatModelSchema(u,E).parse({name:Ye,description:en,maxInputTokens:2e6,maxOutputTokens:8192,roles:y,modalities:_,config:{def:h.c1(2,1,8192,4,.95,64).def,schema:h.c1(2,1,8192,4,.95,64).schema}}),jo=g,fe=class extends C{constructor(e){super(Je,e);}};var We="gemini-1.5-pro-001",tn="Google's best performing multimodal model with features for a wide variety of reasoning tasks. Optimized for complex reasoning tasks requiring more intelligence",Xe=provider.ChatModelSchema(u,E).parse({name:We,description:tn,maxInputTokens:2e6,maxOutputTokens:8192,roles:y,modalities:_,config:{def:h.c1(2,1,8192,4,.95,64).def,schema:h.c1(2,1,8192,4,.95,64).schema}}),zo=g,ge=class extends C{constructor(e){super(Xe,e);}};var Qe="gemini-1.5-pro-002",sn="Google's best performing multimodal model with features for a wide variety of reasoning tasks. Optimized for complex reasoning tasks requiring more intelligence",Ze=provider.ChatModelSchema(u,E).parse({name:Qe,description:sn,maxInputTokens:2e6,maxOutputTokens:8192,roles:y,modalities:_,config:{def:h.c1(2,1,8192,4,.95,40).def,schema:h.c1(2,1,8192,4,.95,40).schema}}),Do=g,ue=class extends C{constructor(e){super(Ze,e);}};var eo="gemini-1.5-pro-latest",rn="Google's best performing multimodal model with features for a wide variety of reasoning tasks. Optimized for complex reasoning tasks requiring more intelligence",oo=provider.ChatModelSchema(u,E).parse({name:eo,description:rn,maxInputTokens:2e6,maxOutputTokens:8192,roles:y,modalities:_,config:{def:h.c1(2,1,8192,4,.95,64).def,schema:h.c1(2,1,8192,4,.95,64).schema}}),Uo=g,ye=class extends C{constructor(e){super(oo,e);}};var _e=[types.EmbeddingTextModalityLiteral],Ee=zod.z.enum([types.EmbeddingTextModalityLiteral]);var Jo=zod.z.object({embeddings:zod.z.array(zod.z.object({values:zod.z.array(zod.z.number())}))});var mn=zod.z.object({model:zod.z.string().min(1),content:zod.z.object({parts:zod.z.array(zod.z.object({text:zod.z.string().min(1)})).min(1)})}),Wo=zod.z.object({model:zod.z.string().min(1).optional(),requests:zod.z.array(mn).min(1),outputDimensionality:zod.z.number().int().min(1).optional()});var Z=zod.z.object({apiKey:zod.z.string(),baseUrl:zod.z.string().url(),getEmbeddingsUrl:zod.z.string().url().optional()}),N=class{constructor(e,t){this.version="v1";let o=Z.parse(t);this.modelSchema=e,this.apiKey=o.apiKey,this.baseUrl=provider.urlWithoutTrailingSlash(o.baseUrl),this.getEmbeddingsUrl=provider.urlWithoutTrailingSlash(o.getEmbeddingsUrl||`${this.baseUrl}/models/${this.modelSchema.name}:batchEmbedContents?key=${this.apiKey}`);}getDefaultBaseUrl(){return this.baseUrl}getDefaultHeaders(){return {"Content-Type":"application/json",source:"adaline.ai"}}getDefaultParams(){return {model:this.modelSchema.name}}getRetryDelay(e){return {shouldRetry:!1,delayMs:0}}getTokenCount(e){return e.requests.reduce((t,o)=>t+o.length,0)}transformModelRequest(e){let t=Wo.safeParse(e);if(!t.success)throw new provider.InvalidModelRequestError({info:"Invalid model request",cause:t.error});let o=t.data,s=o.model,m={outputDimensionality:o.outputDimensionality},n=types.Config().parse(provider.removeUndefinedEntries(m)),r={modality:types.EmbeddingTextModalityLiteral,requests:o.requests.reduce((l,c)=>(l.push(...c.content.parts.map(p=>p.text)),l),[])};return {modelName:s,config:n,embeddingRequests:r}}transformConfig(e,t){let o=this.modelSchema.config.schema.safeParse(e);if(!o.success)throw new provider.InvalidConfigError({info:`Invalid config for model : '${this.modelSchema.name}'`,cause:o.error});let s=o.data;return Object.keys(s).forEach(n=>{if(!this.modelSchema.config.def[n])throw new provider.InvalidConfigError({info:`Invalid config for model : '${this.modelSchema.name}'`,cause:new Error(`Invalid config key : '${n}',
|
|
17
|
-
available keys : [${Object.keys(this.modelSchema.config.def).join(", ")}]`)})}),Object.keys(s).reduce((n,r)=>{let c=this.modelSchema.config.def[r].param,p=s[r];return n[c]=p,n},{})}transformEmbeddingRequests(e){let t=types.EmbeddingRequests().safeParse(e);if(!t.success)throw new provider.InvalidEmbeddingRequestsError({info:"Invalid embedding requests",cause:t.error});if(e.modality!==types.EmbeddingTextModalityLiteral)throw new provider.InvalidEmbeddingRequestsError({info:`Invalid embedding requests for model : '${this.modelSchema.name}'`,cause:new Error(`Only '${types.EmbeddingTextModalityLiteral}' modality is supported for model : '${this.modelSchema.name}'`)});return {requests:t.data.requests.map(s=>({model:`models/${this.modelSchema.name}`,content:{parts:[{text:s}]}}))}}getGetEmbeddingsUrl(e,t){return P(this,null,function*(){return new Promise(o=>{o(this.getEmbeddingsUrl);})})}getGetEmbeddingsHeaders(e,t){return P(this,null,function*(){return new Promise(o=>{o(this.getDefaultHeaders());})})}getGetEmbeddingsData(e,t){return P(this,null,function*(){return new Promise(o=>{let s=this.transformConfig(e),m=this.transformEmbeddingRequests(t);if(t.requests.length===0)throw new provider.InvalidEmbeddingRequestsError({info:`Invalid embedding requests for model : '${this.modelSchema.name}'`,cause:new Error("requests cannot be empty")});s.outputDimensionality&&(m.requests.forEach(n=>{n.outputDimensionality=s.outputDimensionality;}),delete s.outputDimensionality),o(G(G(G({},this.getDefaultParams()),s),m));})})}transformGetEmbeddingsResponse(e){let t=Jo.safeParse(e);if(t.success){let s=t.data.embeddings.map((m,n)=>({index:n,embedding:m.values}));return {encodingFormat:types.FloatEmbeddingLiteral,embeddings:s}}throw new provider.ModelResponseError({info:"Invalid response from model",cause:t.error})}};var to="text-embedding-001",yn="text-embedding-001",no=provider.EmbeddingModelSchema(Ee).parse({name:to,description:yn,modalities:_e,maxInputTokens:2048,maxOutputTokens:768,config:{def:j.base(768).def,schema:j.base(768).schema}}),Bo=Z,Ce=class extends N{constructor(e){super(no,e);}};var so="text-embedding-004",Tn="text-embedding-004",io=provider.EmbeddingModelSchema(Ee).parse({name:so,description:Tn,modalities:_e,maxInputTokens:2048,maxOutputTokens:768,config:{def:j.base(768).def,schema:j.base(768).schema}}),No=Z,Te=class extends N{constructor(e){super(io,e);}};
|
|
7
|
+
var mt=Object.defineProperty,dt=Object.defineProperties;var pt=Object.getOwnPropertyDescriptors;var Go=Object.getOwnPropertySymbols;var ct=Object.prototype.hasOwnProperty,ft=Object.prototype.propertyIsEnumerable;var ht=(i,e)=>(e=Symbol[i])?e:Symbol.for("Symbol."+i);var Mo=(i,e,o)=>e in i?mt(i,e,{enumerable:!0,configurable:!0,writable:!0,value:o}):i[e]=o,G=(i,e)=>{for(var o in e||(e={}))ct.call(e,o)&&Mo(i,o,e[o]);if(Go)for(var o of Go(e))ft.call(e,o)&&Mo(i,o,e[o]);return i},we=(i,e)=>dt(i,pt(e));var R=(i,e,o)=>new Promise((t,s)=>{var r=l=>{try{m(o.next(l));}catch(p){s(p);}},n=l=>{try{m(o.throw(l));}catch(p){s(p);}},m=l=>l.done?t(l.value):Promise.resolve(l.value).then(r,n);m((o=o.apply(i,e)).next());}),gt=function(i,e){this[0]=i,this[1]=e;},bo=(i,e,o)=>{var t=(n,m,l,p)=>{try{var f=o[n](m),C=(m=f.value)instanceof gt,M=f.done;Promise.resolve(C?m[0]:m).then(g=>C?t(n==="return"?n:"next",m[1]?{done:g.done,value:g.value}:g,l,p):l({value:g,done:M})).catch(g=>t("throw",g,l,p));}catch(g){p(g);}},s=n=>r[n]=m=>new Promise((l,p)=>t(n,m,l,p)),r={};return o=o.apply(i,e),r[ht("asyncIterator")]=()=>r,s("next"),s("throw"),s("return"),r};var N=(i,e)=>provider.RangeConfigItem({param:"temperature",title:provider.CHAT_CONFIG.TEMPERATURE.title,description:provider.CHAT_CONFIG.TEMPERATURE.description,min:0,max:i,step:.01,default:e}),v=i=>provider.RangeConfigItem({param:"maxOutputTokens",title:provider.CHAT_CONFIG.MAX_TOKENS.title,description:provider.CHAT_CONFIG.MAX_TOKENS.description,min:0,max:i,step:1,default:0}),q=i=>provider.MultiStringConfigItem({param:"stopSequences",title:provider.CHAT_CONFIG.STOP(i).title,description:provider.CHAT_CONFIG.STOP(i).description,max:i}),F=i=>provider.RangeConfigItem({param:"topP",title:provider.CHAT_CONFIG.TOP_P.title,description:provider.CHAT_CONFIG.TOP_P.description,min:0,max:1,step:.01,default:i}),Le=i=>provider.RangeConfigItem({param:"topK",title:provider.CHAT_CONFIG.TOP_K.title,description:provider.CHAT_CONFIG.TOP_K.description,min:1,max:40,step:1,default:i}),Ie=provider.RangeConfigItem({param:"frequencyPenalty",title:provider.CHAT_CONFIG.FREQUENCY_PENALTY.title,description:provider.CHAT_CONFIG.FREQUENCY_PENALTY.description,min:-2,max:2,step:.01,default:0}),ke=provider.RangeConfigItem({param:"presencePenalty",title:provider.CHAT_CONFIG.PRESENCE_PENALTY.title,description:provider.CHAT_CONFIG.PRESENCE_PENALTY.description,min:-2,max:2,step:.01,default:0}),Ne=provider.RangeConfigItem({param:"seed",title:provider.CHAT_CONFIG.SEED.title,description:provider.CHAT_CONFIG.SEED.description,min:0,max:1e6,step:1,default:0}),$=provider.SelectStringConfigItem({param:"toolChoice",title:"Tool choice",description:"Controls which (if any) tool is called by the model. 'none' means the model will not call a function. 'auto' means the model can pick between generating a message or calling a tool.",default:"auto",choices:["auto","any","none"]}),z=provider.ObjectSchemaConfigItem({param:"safetySettings",title:"Safety settings",description:"The safety rating contains the category of harm and the harm probability level in that category for a piece of content.",objectSchema:zod.z.array(zod.z.object({threshold:zod.z.enum(["HARM_BLOCK_THRESHOLD_UNSPECIFIED","BLOCK_LOW_AND_ABOVE","BLOCK_MEDIUM_AND_ABOVE","BLOCK_ONLY_HIGH","BLOCK_NONE","OFF"]),category:zod.z.enum(["HARM_CATEGORY_UNSPECIFIED","HARM_CATEGORY_HARASSMENT","HARM_CATEGORY_HATE_SPEECH","HARM_CATEGORY_SEXUALLY_EXPLICIT","HARM_CATEGORY_DANGEROUS_CONTENT","HARM_CATEGORY_CIVIC_INTEGRITY"])}))});var _o=(i,e,o,t,s)=>zod.z.object({temperature:N(i,e).schema,maxTokens:v(o).schema,stop:q(t).schema,topP:F(s).schema,toolChoice:$.schema,safetySettings:z.schema}),Eo=(i,e,o,t,s)=>({temperature:N(i,e).def,maxTokens:v(o).def,stop:q(t).def,topP:F(s).def,toolChoice:$.def,safetySettings:z.def});var Oo=(i,e,o,t,s,r)=>zod.z.object({temperature:N(i,e).schema,maxTokens:v(o).schema,stop:q(t).schema,topP:F(s).schema,topK:Le(r).schema,frequencyPenalty:Ie.schema,presencePenalty:ke.schema,seed:Ne.schema.transform(n=>n===0?void 0:n),toolChoice:$.schema,safetySettings:z.schema}),Po=(i,e,o,t,s,r)=>({temperature:N(i,e).def,maxTokens:v(o).def,stop:q(t).def,topP:F(s).def,topK:Le(r).def,frequencyPenalty:Ie.def,presencePenalty:ke.def,seed:Ne.def,toolChoice:$.def,safetySettings:z.def});var ve=i=>provider.RangeConfigItem({param:"outputDimensionality",title:provider.EMBEDDING_CONFIG.DIMENSIONS.title,description:provider.EMBEDDING_CONFIG.DIMENSIONS.description,min:1,max:i,step:1,default:i});var Ro=i=>zod.z.object({dimensions:ve(i).schema}),xo=i=>({dimensions:ve(i).def});var c={base:(i,e,o,t,s)=>({def:Eo(i,e,o,t,s),schema:_o(i,e,o,t,s)}),c1:(i,e,o,t,s,r)=>({def:Po(i,e,o,t,s,r),schema:Oo(i,e,o,t,s,r)})},j={base:i=>({def:xo(i),schema:Ro(i)})};var u=zod.z.enum([types.SystemRoleLiteral,types.UserRoleLiteral,types.AssistantRoleLiteral,types.ToolRoleLiteral]),St="model",Rt="function",y={system:types.UserRoleLiteral,user:types.UserRoleLiteral,assistant:St,tool:Rt};var _=[types.TextModalityLiteral,types.ImageModalityLiteral,types.ToolCallModalityLiteral,types.ToolResponseModalityLiteral],E=zod.z.enum([types.TextModalityLiteral,types.ImageModalityLiteral,types.ToolCallModalityLiteral,types.ToolResponseModalityLiteral]),is=[types.TextModalityLiteral],as=zod.z.enum([types.TextModalityLiteral]),ae=[types.TextModalityLiteral,types.ImageModalityLiteral],re=zod.z.enum([types.TextModalityLiteral,types.ImageModalityLiteral]),L=[types.TextModalityLiteral,types.ToolCallModalityLiteral,types.ToolResponseModalityLiteral],I=zod.z.enum([types.TextModalityLiteral,types.ToolCallModalityLiteral,types.ToolResponseModalityLiteral]);var xt=zod.z.object({text:zod.z.string()}),wt=zod.z.object({functionCall:zod.z.object({name:zod.z.string(),args:zod.z.record(zod.z.any())})}),wo=zod.z.object({candidates:zod.z.array(zod.z.object({content:zod.z.object({role:zod.z.string(),parts:zod.z.array(zod.z.union([xt,wt]))}).optional(),finishReason:zod.z.string(),index:zod.z.number().optional(),safetyRatings:zod.z.optional(zod.z.array(zod.z.object({category:zod.z.string(),probability:zod.z.string(),blocked:zod.z.boolean().optional()})))})),promptFeedback:zod.z.optional(zod.z.object({safetyRatings:zod.z.optional(zod.z.array(zod.z.object({category:zod.z.string(),probability:zod.z.string()})))})),usageMetadata:zod.z.object({promptTokenCount:zod.z.number(),cachedContentTokenCount:zod.z.number().optional(),candidatesTokenCount:zod.z.number().optional(),totalTokenCount:zod.z.number()}).optional()}),Lt=zod.z.object({text:zod.z.string()}),It=zod.z.object({functionCall:zod.z.object({name:zod.z.string(),args:zod.z.record(zod.z.any())})}),Lo=zod.z.object({candidates:zod.z.array(zod.z.object({content:zod.z.object({role:zod.z.string(),parts:zod.z.array(zod.z.union([Lt,It]))}).optional(),finishReason:zod.z.string().optional(),index:zod.z.number().optional(),safetyRatings:zod.z.optional(zod.z.array(zod.z.object({category:zod.z.string(),probability:zod.z.string(),blocked:zod.z.boolean().optional()})))})),promptFeedback:zod.z.optional(zod.z.object({safetyRatings:zod.z.optional(zod.z.array(zod.z.object({category:zod.z.string(),probability:zod.z.string()})))})),usageMetadata:zod.z.object({promptTokenCount:zod.z.number(),cachedContentTokenCount:zod.z.number().optional(),candidatesTokenCount:zod.z.number(),totalTokenCount:zod.z.number()}).optional()});var qo=zod.z.object({text:zod.z.string().min(1)}),kt=zod.z.object({inline_data:zod.z.object({mime_type:zod.z.string().min(1),data:zod.z.string().base64()})}),Nt=zod.z.object({function_call:zod.z.object({name:zod.z.string().min(1),args:zod.z.record(zod.z.string().min(1))})}),vt=zod.z.object({function_response:zod.z.object({name:zod.z.string().min(1),response:zod.z.record(zod.z.string().min(1))})}),qt=zod.z.object({role:zod.z.enum(["user","model","function"]),parts:zod.z.array(zod.z.union([qo,kt,Nt,vt]))}),Io=zod.z.object({parts:zod.z.array(qo)}),Ft=zod.z.object({name:zod.z.string().min(1),description:zod.z.string().min(1),parameters:zod.z.any()}),ko=zod.z.object({function_calling_config:zod.z.object({mode:zod.z.enum(["ANY","AUTO","NONE"]),allowed_function_names:zod.z.array(zod.z.string()).optional()})}),No=zod.z.object({stopSequences:zod.z.array(zod.z.string()).optional(),maxOutputTokens:zod.z.number().optional(),temperature:zod.z.number().optional(),topP:zod.z.number().optional(),topK:zod.z.number().optional(),presencePenalty:zod.z.number().optional(),frequencyPenalty:zod.z.number().optional(),seed:zod.z.number().optional()}),vo=zod.z.object({category:zod.z.enum(["HARM_CATEGORY_HARASSMENT","HARM_CATEGORY_HATE_SPEECH","HARM_CATEGORY_SEXUALLY_EXPLICIT","HARM_CATEGORY_DANGEROUS_CONTENT","HARM_CATEGORY_CIVIC_INTEGRITY"]),threshold:zod.z.enum(["HARM_BLOCK_THRESHOLD_UNSPECIFIED","BLOCK_LOW_AND_ABOVE","BLOCK_MEDIUM_AND_ABOVE","BLOCK_ONLY_HIGH","BLOCK_NONE","OFF"])}),Fo=zod.z.object({model:zod.z.string().min(1).optional(),contents:zod.z.array(qt),systemInstruction:Io.optional(),system_instruction:Io.optional(),generationConfig:No.optional(),generation_config:No.optional(),safetySettings:zod.z.array(vo).optional(),safety_settings:zod.z.array(vo).optional(),tools:zod.z.object({function_declarations:zod.z.array(Ft)}).optional(),toolConfig:ko.optional(),tool_config:ko.optional()});var $t="google",Y=class{constructor(){this.version="v1";this.name=$t;this.chatModelFactories={[Fe]:{model:me,modelOptions:$o,modelSchema:$e},[ze]:{model:de,modelOptions:zo,modelSchema:je},[Xe]:{model:ue,modelOptions:Vo,modelSchema:Qe},[Ze]:{model:ye,modelOptions:Ho,modelSchema:eo},[oo]:{model:Ce,modelOptions:Ko,modelSchema:to},[Je]:{model:ge,modelOptions:Ao,modelSchema:We},[io]:{model:Ge,modelOptions:Jo,modelSchema:ao},[ro]:{model:Me,modelOptions:Wo,modelSchema:lo},[mo]:{model:be,modelOptions:Xo,modelSchema:po},[no]:{model:Te,modelOptions:Yo,modelSchema:so},[Be]:{model:pe,modelOptions:jo,modelSchema:De},[Ke]:{model:he,modelOptions:Uo,modelSchema:Ye},[Ve]:{model:fe,modelOptions:Do,modelSchema:He},[Ue]:{model:ce,modelOptions:Bo,modelSchema:Ae}};this.embeddingModelFactories={[co]:{model:_e,modelOptions:Qo,modelSchema:fo},[ho]:{model:Ee,modelOptions:Zo,modelSchema:go}};}chatModelLiterals(){return Object.keys(this.chatModelFactories)}chatModelSchemas(){return Object.keys(this.chatModelFactories).reduce((e,o)=>(e[o]=this.chatModelFactories[o].modelSchema,e),{})}chatModel(e){let o=e.modelName;if(!o)throw new provider.ProviderError({info:"Google chat model name is required",cause:new Error("Google chat model name is required")});if(!(o in this.chatModelFactories))throw new provider.ProviderError({info:`Google chat model: ${o} not found`,cause:new Error(`Google chat model: ${o} not found, available chat models:
|
|
8
|
+
[${this.chatModelLiterals().join(", ")}]`)});let t=this.chatModelFactories[o].model,s=we(G({},e),{modelName:o}),r=this.chatModelFactories[o].modelOptions.parse(s);return new t(r)}embeddingModelLiterals(){return Object.keys(this.embeddingModelFactories)}embeddingModelSchemas(){return Object.keys(this.embeddingModelFactories).reduce((e,o)=>(e[o]=this.embeddingModelFactories[o].modelSchema,e),{})}embeddingModel(e){let o=e.modelName;if(!o)throw new provider.ProviderError({info:"Google embedding model name is required",cause:new Error("Google embedding model name is required")});if(!(o in this.embeddingModelFactories))throw new provider.ProviderError({info:`Google embedding model: ${o} not found`,cause:new Error(`Google embedding model: ${o} not found, available embedding models:
|
|
9
|
+
[${this.embeddingModelLiterals().join(", ")}]`)});let t=this.embeddingModelFactories[o].model,s=we(G({},e),{modelName:o}),r=this.embeddingModelFactories[o].modelOptions.parse(s);return new t(r)}};Y.baseUrl="https://generativelanguage.googleapis.com/v1beta";var h=zod.z.object({modelName:zod.z.string(),apiKey:zod.z.string(),baseUrl:zod.z.string().url().optional(),completeChatUrl:zod.z.string().url().optional(),streamChatUrl:zod.z.string().url().optional()}),T=class{constructor(e,o){this.version="v1";var s;let t=h.parse(o);this.modelSchema=e,this.modelName=t.modelName,this.apiKey=t.apiKey,this.baseUrl=provider.urlWithoutTrailingSlash((s=t.baseUrl)!=null?s:Y.baseUrl),this.completeChatUrl=provider.urlWithoutTrailingSlash(t.completeChatUrl||`${this.baseUrl}/models/${this.modelName}:generateContent?key=${this.apiKey}`),this.streamChatUrl=provider.urlWithoutTrailingSlash(t.streamChatUrl||`${this.baseUrl}/models/${this.modelName}:streamGenerateContent?key=${this.apiKey}`);}getDefaultBaseUrl(){return this.baseUrl}getDefaultHeaders(){return {"Content-Type":"application/json",source:"adaline.ai"}}getDefaultParams(){return {}}getRetryDelay(e){return {shouldRetry:!1,delayMs:0}}getTokenCount(e){return e.reduce((o,t)=>o+t.content.map(s=>s.modality==="text"?s.value:"").join(" ").length,0)}transformModelRequest(e){let o=Fo.safeParse(e);if(!o.success)throw new provider.InvalidModelRequestError({info:"Invalid model request",cause:o.error});let t=o.data,s=t.model;if(t.system_instruction&&t.systemInstruction)throw new provider.InvalidModelRequestError({info:`Invalid model request for model : '${this.modelName}'`,cause:new Error("'system_instruction' and 'systemInstruction' are not allowed at the same time")});if(t.generation_config&&t.generationConfig)throw new provider.InvalidModelRequestError({info:`Invalid model request for model : '${this.modelName}'`,cause:new Error("'generation_config' and 'generationConfig' are not allowed at the same time")});if(t.tool_config&&t.toolConfig)throw new provider.InvalidModelRequestError({info:`Invalid model request for model : '${this.modelName}'`,cause:new Error("'tool_config' and 'toolConfig' are not allowed at the same time")});let r=t.system_instruction||t.systemInstruction,n=t.generation_config||t.generationConfig,m=t.safety_settings||t.safetySettings,l=t.tool_config||t.toolConfig;if(l&&(!t.tools||t.tools.function_declarations.length===0))throw new provider.InvalidModelRequestError({info:`Invalid model request for model : '${this.modelName}'`,cause:new Error("'tools' are required when 'tool_choice' is specified")});let p={};l&&(l.function_calling_config.mode==="ANY"&&l.function_calling_config.allowed_function_names&&l.function_calling_config.allowed_function_names.length===1?p.toolChoice=l.function_calling_config.allowed_function_names[0]:p.toolChoice=l.function_calling_config.mode.toLowerCase()),p.seed=n==null?void 0:n.seed,p.maxTokens=n==null?void 0:n.maxOutputTokens,p.temperature=n==null?void 0:n.temperature,p.topP=n==null?void 0:n.topP,p.presencePenalty=n==null?void 0:n.presencePenalty,p.frequencyPenalty=n==null?void 0:n.frequencyPenalty,p.stop=n==null?void 0:n.stopSequences,p.safetySettings=m;let f=types.Config().parse(provider.removeUndefinedEntries(p)),C=[];r&&r.parts.forEach(g=>{C.push({role:types.SystemRoleLiteral,content:[{modality:types.TextModalityLiteral,value:g.text}]});}),t.contents.forEach(g=>{let V=g.role;switch(V){case"user":{let H=g.parts.map(S=>"text"in S?{modality:types.TextModalityLiteral,value:S.text}:{modality:types.ImageModalityLiteral,detail:"auto",value:{type:types.Base64ImageContentTypeLiteral,base64:S.inline_data.data,media_type:S.inline_data.mime_type.split("/")[1]}});C.push({role:V,content:H});}break;case"model":{let H=g.parts.map((S,K)=>"text"in S?{modality:types.TextModalityLiteral,value:S.text}:{modality:types.ToolCallModalityLiteral,id:K.toString(),index:K,name:S.function_call.name,arguments:JSON.stringify(S.function_call.args)});C.push({role:types.AssistantRoleLiteral,content:H});}break;case"function":{let H=g.parts.map((S,K)=>({modality:types.ToolResponseModalityLiteral,id:K.toString(),index:K,name:S.function_response.name,data:JSON.stringify(S.function_response.response)}));C.push({role:types.ToolRoleLiteral,content:H});}break;default:throw new provider.InvalidMessagesError({info:`Invalid message 'role' for model : ${this.modelName}`,cause:new Error(`role : '${g.role}' is not supported for model : ${this.modelName}`)})}});let M=[];return t.tools&&t.tools.function_declarations.forEach(g=>{M.push({type:"function",definition:{schema:{name:g.name,description:g.description,parameters:g.parameters}}});}),{modelName:s,config:f,messages:C,tools:M.length>0?M:void 0}}transformConfig(e,o,t){let s=e.toolChoice;delete e.toolChoice;let r=this.modelSchema.config.schema.safeParse(e);if(!r.success)throw new provider.InvalidConfigError({info:`Invalid config for model : '${this.modelName}'`,cause:r.error});let n=r.data;Object.keys(n).forEach(f=>{if(!(f in this.modelSchema.config.def))throw new provider.InvalidConfigError({info:`Invalid config for model : '${this.modelName}'`,cause:new Error(`Invalid config key : '${f}',
|
|
10
|
+
available keys : [${Object.keys(this.modelSchema.config.def).join(", ")}]`)})});let m=Object.keys(n).reduce((f,C)=>{let M=this.modelSchema.config.def[C],g=M.param,V=n[C];return g==="maxOutputTokens"&&M.type==="range"&&V===0?f[g]=M.max:f[g]=V,f},{}),l=m.safetySettings;delete m.safetySettings;let p;if(s!==void 0){let f=s;if(!t||t&&t.length===0)throw new provider.InvalidConfigError({info:`Invalid config for model : '${this.modelName}'`,cause:new Error("'tools' are required when 'toolChoice' is specified")});if(t&&t.length>0){let C=this.modelSchema.config.def.toolChoice;if(C.choices.includes(f))f==="any"?p={function_calling_config:{mode:"ANY",allowed_function_names:t.map(M=>M.definition.schema.name)}}:p={function_calling_config:{mode:f.toUpperCase()}};else if(t.map(M=>M.definition.schema.name).includes(f))p={function_calling_config:{mode:"ANY",allowed_function_names:[f]}};else throw new provider.InvalidConfigError({info:`Invalid config for model : '${this.modelName}'`,cause:new Error(`toolChoice : '${f}' is not part of provided 'tools' names or
|
|
11
|
+
one of [${C.choices.join(", ")}]`)})}}return G(G({generation_config:m},p?{tool_config:p}:{}),l?{safety_settings:l}:{})}transformMessages(e){if(!e||e&&e.length===0)return {messages:[]};let o=e.map(n=>{let m=types.Message().safeParse(n);if(!m.success)throw new provider.InvalidMessagesError({info:"Invalid messages",cause:m.error});return m.data});o.forEach(n=>{n.content.forEach(m=>{if(!this.modelSchema.modalities.includes(m.modality))throw new provider.InvalidMessagesError({info:`Invalid message content for model : '${this.modelName}'`,cause:new Error(`model : '${this.modelName}' does not support modality : '${m.modality}',
|
|
12
|
+
available modalities : [${this.modelSchema.modalities.join(", ")}]`)})});}),o.forEach(n=>{if(!Object.keys(this.modelSchema.roles).includes(n.role))throw new provider.InvalidMessagesError({info:`Invalid message content for model : '${this.modelName}'`,cause:new Error(`model : '${this.modelName}' does not support role : '${n.role}',
|
|
13
|
+
available roles : [${Object.keys(this.modelSchema.roles).join(", ")}]`)})});let t={parts:[]},s=[];if(o.forEach(n=>{switch(n.role){case types.SystemRoleLiteral:n.content.forEach(m=>{if(m.modality===types.TextModalityLiteral)t.parts.push({text:m.value});else throw new provider.InvalidMessagesError({info:`Invalid message 'role' and 'modality' combination for model : ${this.modelName}`,cause:new Error(`role : '${n.role}' cannot have content with modality : '${m.modality}'`)})});break;case types.AssistantRoleLiteral:{let m=[];n.content.forEach(l=>{if(l.modality===types.TextModalityLiteral)m.push({text:l.value});else if(l.modality===types.ToolCallModalityLiteral)m.push({function_call:{name:l.name,args:JSON.parse(l.arguments)}});else throw new provider.InvalidMessagesError({info:`Invalid message 'role' and 'modality' combination for model : ${this.modelName}`,cause:new Error(`role : '${n.role}' cannot have content with modality : '${l.modality}'`)})}),s.push({role:this.modelSchema.roles[n.role],parts:m});}break;case types.UserRoleLiteral:{let m=[];n.content.forEach(l=>{if(l.modality===types.TextModalityLiteral)m.push({text:l.value});else if(l.modality===types.ImageModalityLiteral){if(l.value.type==="base64")m.push({inline_data:{mime_type:l.value.media_type,data:l.value.base64}});else if(l.value.type==="url")throw new provider.InvalidMessagesError({info:`Invalid message 'modality' for model : ${this.modelName}`,cause:new Error(`model: '${this.modelName}' does not support image content type: '${l.value.type}'`)})}else throw new provider.InvalidMessagesError({info:`Invalid message 'role' and 'modality' combination for model : ${this.modelName}`,cause:new Error(`role : '${n.role}' cannot have content with modality : '${l.modality}'`)})}),s.push({role:this.modelSchema.roles[n.role],parts:m});}break;case types.ToolRoleLiteral:{let m=[];n.content.forEach(l=>{if(l.modality===types.ToolResponseModalityLiteral)m.push({function_response:{name:l.name,response:JSON.parse(l.data)}});else throw new provider.InvalidMessagesError({info:`Invalid message 'role' and 'modality' combination for model : ${this.modelName}`,cause:new Error(`role : '${n.role}' cannot have content with modality : '${l.modality}'`)})}),s.push({role:this.modelSchema.roles[n.role],parts:m});}break;default:throw new provider.InvalidMessagesError({info:`Invalid message 'role' for model : ${this.modelName}`,cause:new Error(`role : '${n.role}' is not supported,
|
|
14
|
+
available roles : [${Object.keys(this.modelSchema.roles).join(", ")}]`)})}}),s[0].role!==this.modelSchema.roles[types.UserRoleLiteral])throw new provider.InvalidMessagesError({info:`Invalid message 'role' for model : ${this.modelName}`,cause:new Error(`model : '${this.modelName}' requires first message to be from user`)});let r=n=>n===this.modelSchema.roles[types.UserRoleLiteral]||n===this.modelSchema.roles[types.ToolRoleLiteral]?[this.modelSchema.roles[types.AssistantRoleLiteral]]:[this.modelSchema.roles[types.UserRoleLiteral],this.modelSchema.roles[types.ToolRoleLiteral]];for(let n=1;n<s.length;n++)if(!r(s[n-1].role).includes(s[n].role))throw new provider.InvalidMessagesError({info:`Invalid message format for model : ${this.modelName}`,cause:new Error(`model : '${this.modelName}' cannot have message with role : '${s[n].role}' after message with role : '${s[n-1].role}'`)});if(s[s.length-1].role!==this.modelSchema.roles[types.UserRoleLiteral])throw new provider.InvalidMessagesError({info:`Invalid message format for model : ${this.modelName}`,cause:new Error(`model : '${this.modelName}' requires last message to be from user`)});return G({contents:s},t.parts.length>0?{system_instruction:t}:{})}transformTools(e){if(!this.modelSchema.modalities.includes(types.ToolCallModalityLiteral))throw new provider.InvalidToolsError({info:`Invalid tool 'modality' for model : ${this.modelName}`,cause:new Error(`model : '${this.modelName}' does not support tool modality : '${types.ToolCallModalityLiteral}'`)});return !e||e&&e.length===0?{tools:[]}:{tools:e.map(s=>{let r=types.Tool().safeParse(s);if(!r.success)throw new provider.InvalidToolsError({info:"Invalid tools",cause:r.error});return r.data}).map(s=>({function_declarations:[{name:s.definition.schema.name,description:s.definition.schema.description,parameters:s.definition.schema.parameters}]}))}}getCompleteChatUrl(e,o,t){return R(this,null,function*(){return new Promise(s=>{s(this.completeChatUrl);})})}getCompleteChatHeaders(e,o,t){return R(this,null,function*(){return new Promise(s=>{s(this.getDefaultHeaders());})})}getCompleteChatData(e,o,t){return R(this,null,function*(){let s=this.transformConfig(e,o,t),r=this.transformMessages(o);if(r.messages&&r.messages.length===0)throw new provider.InvalidMessagesError({info:"Messages are required",cause:new Error("Messages are required")});let n=t?this.transformTools(t):{};return new Promise(m=>{m(G(G(G(G({},this.getDefaultParams()),s),r),n));})})}transformCompleteChatResponse(e){let o=wo.safeParse(e);if(o.success){if(o.data.candidates.length===0)throw new provider.ModelResponseError({info:"Invalid response from model",cause:new Error(`No choices in response : ${JSON.stringify(o.data)}`)});let t=o.data,s=[],r,n=t.candidates[0].content;if(n){let p=n.parts.map((f,C)=>{if("text"in f&&f.text!==void 0)return types.createTextContent(f.text);if("functionCall"in f&&f.functionCall!==void 0)return types.createToolCallContent(C,`${f.functionCall.name}_${C}`,f.functionCall.name,JSON.stringify(f.functionCall.args))});return s.push({role:types.AssistantRoleLiteral,content:p}),t.usageMetadata&&(r={promptTokens:t.usageMetadata.promptTokenCount,totalTokens:t.usageMetadata.totalTokenCount,completionTokens:t.usageMetadata.candidatesTokenCount||0}),{messages:s,usage:r,logProbs:void 0}}let m=t.candidates[0].safetyRatings;if(m&&m.length>0&&m.forEach(p=>{if(p.blocked)throw new provider.ModelResponseError({info:`Blocked content for category: ${p.category} with probability: ${p.probability}`,cause:new Error(`Blocked content for category: ${p.category} with probability: ${p.probability}`)})}),t.candidates[0].finishReason==="SAFETY")throw new provider.ModelResponseError({info:"Blocked content, model response finished with safety reason",cause:new Error("Blocked content, model response finished with safety reason")})}throw new provider.ModelResponseError({info:"Invalid response from model",cause:o.error})}getStreamChatUrl(e,o,t){return R(this,null,function*(){return new Promise(s=>{s(this.streamChatUrl);})})}getStreamChatHeaders(e,o,t){return R(this,null,function*(){return new Promise(s=>{s(this.getDefaultHeaders());})})}getStreamChatData(e,o,t){return R(this,null,function*(){let s=this.transformConfig(e,o,t),r=this.transformMessages(o);if(r.messages&&r.messages.length===0)throw new provider.InvalidMessagesError({info:"Messages are required",cause:new Error("Messages are required")});let n=t?this.transformTools(t):{};return new Promise(m=>{m(G(G(G(G({},this.getDefaultParams()),s),r),n));})})}transformStreamChatResponseChunk(e,o){return bo(this,null,function*(){let t=(o+e).split(",\r").filter(s=>s.trim()!=="");for(let s of t){let r=s;if(r=r.replace(/\n/g,""),r.startsWith("["))r=r.slice(1);else if(r.endsWith("]")){if(r==="]")return;r=r.slice(0,-1);}let n;try{n=JSON.parse(r);}catch(l){if(l instanceof SyntaxError){o=r;continue}else throw l}o="";let m=Lo.safeParse(n);if(m.success){let l={partialMessages:[]},p=m.data;if(p.candidates.length>0){let f=p.candidates[0].content;f&&"parts"in f&&f.parts.length>0&&f.parts.forEach((C,M)=>{if("text"in C&&C.text!==void 0&&l.partialMessages.push(types.createPartialTextMessage(types.AssistantRoleLiteral,C.text)),"functionCall"in C&&C.functionCall!==void 0){let g=C.functionCall;l.partialMessages.push(types.createPartialToolCallMessage(types.AssistantRoleLiteral,M,`${g.name}_${M}`,g.name,JSON.stringify(g.args)));}});}p.usageMetadata&&(l.usage={promptTokens:p.usageMetadata.promptTokenCount,completionTokens:p.usageMetadata.candidatesTokenCount,totalTokens:p.usageMetadata.totalTokenCount}),yield {partialResponse:l,buffer:o};}else throw new provider.ModelResponseError({info:"Invalid response from model",cause:m.error})}yield {partialResponse:{partialMessages:[]},buffer:o};})}};var P=class extends T{transformMessages(e){let o=super.transformMessages(e);if(o.systemInstruction){let t={role:this.modelSchema.roles[types.UserRoleLiteral],parts:o.systemInstruction.parts};o.contents.unshift(t),delete o.systemInstruction;}return o}};var Fe="gemini-pro",Wt="A model for scaling across a wide range of tasks Optimized for natural language tasks, multi-turn text and code chat, and code generation",$e=provider.ChatModelSchema(u,I).parse({name:Fe,description:Wt,maxInputTokens:30720,maxOutputTokens:2048,roles:y,modalities:L,config:{def:c.base(1,.9,2048,4,1).def,schema:c.base(1,.9,2048,4,1).schema}}),$o=h,me=class extends P{constructor(e){super($e,e);}};var ze="gemini-pro-vision",Qt="An image understanding model to handle a broad range of applications",je=provider.ChatModelSchema(u,re).parse({name:ze,description:Qt,maxInputTokens:12288,maxOutputTokens:4096,roles:y,modalities:ae,config:{def:c.c1(1,.4,4096,4,1,32).def,schema:c.c1(1,.4,4096,4,1,32).schema}}),zo=h,de=class extends P{constructor(e){super(je,e);}};var Be="gemini-1.0-pro",en="Google's predecessor to Gemini 1.5 Pro, a model for scaling across a wide range of tasks Optimized for natural language tasks, multi-turn text and code chat, and code generation",De=provider.ChatModelSchema(u,I).parse({name:Be,description:en,maxInputTokens:30720,maxOutputTokens:2048,roles:y,modalities:L,config:{def:c.base(1,.9,2048,4,1).def,schema:c.base(1,.9,2048,4,1).schema}}),jo=h,pe=class extends P{constructor(e){super(De,e);}};var Ue="gemini-1.0-pro-001",tn="Google's predecessor to Gemini 1.5 Pro, a model for scaling across a wide range of tasks Optimized for natural language tasks, multi-turn text and code chat, and code generation",Ae=provider.ChatModelSchema(u,I).parse({name:Ue,description:tn,maxInputTokens:30720,maxOutputTokens:2048,roles:y,modalities:L,config:{def:c.base(1,.9,2048,4,1).def,schema:c.base(1,.9,2048,4,1).schema}}),Bo=h,ce=class extends P{constructor(e){super(Ae,e);}};var Ve="gemini-1.0-pro-latest",sn="Google's latest multimodal model with great performance for high-frequency tasks. Optimized for natural language tasks, multi-turn text and code chat, and code generation",He=provider.ChatModelSchema(u,I).parse({name:Ve,description:sn,maxInputTokens:30720,maxOutputTokens:2048,roles:y,modalities:L,config:{def:c.base(1,.9,2048,4,1).def,schema:c.base(1,.9,2048,4,1).schema}}),Do=h,fe=class extends P{constructor(e){super(He,e);}};var Ke="gemini-1.0-pro-vision",rn="Google's predecessor to Gemini 1.5 Pro, an image understanding model to handle a broad range of applications",Ye=provider.ChatModelSchema(u,re).parse({name:Ke,description:rn,maxInputTokens:12288,maxOutputTokens:4096,roles:y,modalities:ae,config:{def:c.c1(1,.4,4096,4,1,32).def,schema:c.c1(1,.4,4096,4,1,32).schema}}),Uo=h,he=class extends P{constructor(e){super(Ye,e);}};var Je="gemini-1.5-flash",mn="Google's fastest, most cost-efficient multimodal model with great performance for high-frequency tasks. Optimized for fast and versatile performance across a diverse variety of tasks",We=provider.ChatModelSchema(u,E).parse({name:Je,description:mn,maxInputTokens:1e6,maxOutputTokens:8192,roles:y,modalities:_,config:{def:c.c1(2,1,8192,4,.95,64).def,schema:c.c1(2,1,8192,4,.95,64).schema}}),Ao=h,ge=class extends T{constructor(e){super(We,e);}};var Xe="gemini-1.5-flash-001",pn="Google's fastest, most cost-efficient multimodal model with great performance for high-frequency tasks. Optimized for fast and versatile performance across a diverse variety of tasks",Qe=provider.ChatModelSchema(u,E).parse({name:Xe,description:pn,maxInputTokens:1e6,maxOutputTokens:8192,roles:y,modalities:_,config:{def:c.c1(2,1,8192,4,.95,64).def,schema:c.c1(2,1,8192,4,.95,64).schema}}),Vo=h,ue=class extends T{constructor(e){super(Qe,e);}};var Ze="gemini-1.5-flash-002",fn="Google's fastest, most cost-efficient multimodal model with great performance for high-frequency tasks. Optimized for fast and versatile performance across a diverse variety of tasks",eo=provider.ChatModelSchema(u,E).parse({name:Ze,description:fn,maxInputTokens:1e6,maxOutputTokens:8192,roles:y,modalities:_,config:{def:c.c1(2,1,8192,4,.95,40).def,schema:c.c1(2,1,8192,4,.95,40).schema}}),Ho=h,ye=class extends T{constructor(e){super(eo,e);}};var oo="gemini-1.5-flash-latest",gn="Google's latest multimodal model with great performance for high-frequency tasks. Optimized for fast and versatile performance across a diverse variety of tasks",to=provider.ChatModelSchema(u,E).parse({name:oo,description:gn,maxInputTokens:1e6,maxOutputTokens:8192,roles:y,modalities:_,config:{def:c.c1(2,1,8192,4,.95,64).def,schema:c.c1(2,1,8192,4,.95,64).schema}}),Ko=h,Ce=class extends T{constructor(e){super(to,e);}};var no="gemini-1.5-pro",yn="Google's best performing multimodal model with features for a wide variety of reasoning tasks. Optimized for complex reasoning tasks requiring more intelligence",so=provider.ChatModelSchema(u,E).parse({name:no,description:yn,maxInputTokens:2e6,maxOutputTokens:8192,roles:y,modalities:_,config:{def:c.c1(2,1,8192,4,.95,64).def,schema:c.c1(2,1,8192,4,.95,64).schema}}),Yo=h,Te=class extends T{constructor(e){super(so,e);}};var io="gemini-1.5-pro-001",Tn="Google's best performing multimodal model with features for a wide variety of reasoning tasks. Optimized for complex reasoning tasks requiring more intelligence",ao=provider.ChatModelSchema(u,E).parse({name:io,description:Tn,maxInputTokens:2e6,maxOutputTokens:8192,roles:y,modalities:_,config:{def:c.c1(2,1,8192,4,.95,64).def,schema:c.c1(2,1,8192,4,.95,64).schema}}),Jo=h,Ge=class extends T{constructor(e){super(ao,e);}};var ro="gemini-1.5-pro-002",Mn="Google's best performing multimodal model with features for a wide variety of reasoning tasks. Optimized for complex reasoning tasks requiring more intelligence",lo=provider.ChatModelSchema(u,E).parse({name:ro,description:Mn,maxInputTokens:2e6,maxOutputTokens:8192,roles:y,modalities:_,config:{def:c.c1(2,1,8192,4,.95,40).def,schema:c.c1(2,1,8192,4,.95,40).schema}}),Wo=h,Me=class extends T{constructor(e){super(lo,e);}};var mo="gemini-1.5-pro-latest",_n="Google's best performing multimodal model with features for a wide variety of reasoning tasks. Optimized for complex reasoning tasks requiring more intelligence",po=provider.ChatModelSchema(u,E).parse({name:mo,description:_n,maxInputTokens:2e6,maxOutputTokens:8192,roles:y,modalities:_,config:{def:c.c1(2,1,8192,4,.95,64).def,schema:c.c1(2,1,8192,4,.95,64).schema}}),Xo=h,be=class extends T{constructor(e){super(po,e);}};var Re=[types.EmbeddingTextModalityLiteral],xe=zod.z.enum([types.EmbeddingTextModalityLiteral]);var it=zod.z.object({embeddings:zod.z.array(zod.z.object({values:zod.z.array(zod.z.number())}))});var On=zod.z.object({model:zod.z.string().min(1),content:zod.z.object({parts:zod.z.array(zod.z.object({text:zod.z.string().min(1)})).min(1)})}),at=zod.z.object({model:zod.z.string().min(1).optional(),requests:zod.z.array(On).min(1),outputDimensionality:zod.z.number().int().min(1).optional()});var ee=zod.z.object({modelName:zod.z.string(),apiKey:zod.z.string(),baseUrl:zod.z.string().url(),getEmbeddingsUrl:zod.z.string().url().optional()}),A=class{constructor(e,o){this.version="v1";let t=ee.parse(o);this.modelSchema=e,this.modelName=t.modelName,this.apiKey=t.apiKey,this.baseUrl=provider.urlWithoutTrailingSlash(t.baseUrl),this.getEmbeddingsUrl=provider.urlWithoutTrailingSlash(t.getEmbeddingsUrl||`${this.baseUrl}/models/${this.modelName}:batchEmbedContents?key=${this.apiKey}`);}getDefaultBaseUrl(){return this.baseUrl}getDefaultHeaders(){return {"Content-Type":"application/json",source:"adaline.ai"}}getDefaultParams(){return {model:this.modelName}}getRetryDelay(e){return {shouldRetry:!1,delayMs:0}}getTokenCount(e){return e.requests.reduce((o,t)=>o+t.length,0)}transformModelRequest(e){let o=at.safeParse(e);if(!o.success)throw new provider.InvalidModelRequestError({info:"Invalid model request",cause:o.error});let t=o.data,s=t.model,r={outputDimensionality:t.outputDimensionality},n=types.Config().parse(provider.removeUndefinedEntries(r)),m={modality:types.EmbeddingTextModalityLiteral,requests:t.requests.reduce((l,p)=>(l.push(...p.content.parts.map(f=>f.text)),l),[])};return {modelName:s,config:n,embeddingRequests:m}}transformConfig(e,o){let t=this.modelSchema.config.schema.safeParse(e);if(!t.success)throw new provider.InvalidConfigError({info:`Invalid config for model : '${this.modelName}'`,cause:t.error});let s=t.data;return Object.keys(s).forEach(n=>{if(!this.modelSchema.config.def[n])throw new provider.InvalidConfigError({info:`Invalid config for model : '${this.modelName}'`,cause:new Error(`Invalid config key : '${n}',
|
|
15
|
+
available keys : [${Object.keys(this.modelSchema.config.def).join(", ")}]`)})}),Object.keys(s).reduce((n,m)=>{let p=this.modelSchema.config.def[m].param,f=s[m];return n[p]=f,n},{})}transformEmbeddingRequests(e){let o=types.EmbeddingRequests().safeParse(e);if(!o.success)throw new provider.InvalidEmbeddingRequestsError({info:"Invalid embedding requests",cause:o.error});if(e.modality!==types.EmbeddingTextModalityLiteral)throw new provider.InvalidEmbeddingRequestsError({info:`Invalid embedding requests for model : '${this.modelName}'`,cause:new Error(`Only '${types.EmbeddingTextModalityLiteral}' modality is supported for model : '${this.modelName}'`)});return {requests:o.data.requests.map(s=>({model:`models/${this.modelName}`,content:{parts:[{text:s}]}}))}}getGetEmbeddingsUrl(e,o){return R(this,null,function*(){return new Promise(t=>{t(this.getEmbeddingsUrl);})})}getGetEmbeddingsHeaders(e,o){return R(this,null,function*(){return new Promise(t=>{t(this.getDefaultHeaders());})})}getGetEmbeddingsData(e,o){return R(this,null,function*(){return new Promise(t=>{let s=this.transformConfig(e),r=this.transformEmbeddingRequests(o);if(o.requests.length===0)throw new provider.InvalidEmbeddingRequestsError({info:`Invalid embedding requests for model : '${this.modelName}'`,cause:new Error("requests cannot be empty")});s.outputDimensionality&&(r.requests.forEach(n=>{n.outputDimensionality=s.outputDimensionality;}),delete s.outputDimensionality),t(G(G(G({},this.getDefaultParams()),s),r));})})}transformGetEmbeddingsResponse(e){let o=it.safeParse(e);if(o.success){let s=o.data.embeddings.map((r,n)=>({index:n,embedding:r.values}));return {encodingFormat:types.FloatEmbeddingLiteral,embeddings:s}}throw new provider.ModelResponseError({info:"Invalid response from model",cause:o.error})}};var co="text-embedding-001",kn="text-embedding-001",fo=provider.EmbeddingModelSchema(xe).parse({name:co,description:kn,modalities:Re,maxInputTokens:2048,maxOutputTokens:768,config:{def:j.base(768).def,schema:j.base(768).schema}}),Qo=ee,_e=class extends A{constructor(e){super(fo,e);}};var ho="text-embedding-004",vn="text-embedding-004",go=provider.EmbeddingModelSchema(xe).parse({name:ho,description:vn,modalities:Re,maxInputTokens:2048,maxOutputTokens:768,config:{def:j.base(768).def,schema:j.base(768).schema}}),Zo=ee,Ee=class extends A{constructor(e){super(go,e);}};
|
|
18
16
|
|
|
19
|
-
exports.BaseChatModel =
|
|
20
|
-
exports.BaseChatModelGemini1 =
|
|
21
|
-
exports.BaseChatModelOptions =
|
|
22
|
-
exports.BaseEmbeddingModel =
|
|
23
|
-
exports.BaseEmbeddingModelOptions =
|
|
24
|
-
exports.ChatModelBaseConfigDef =
|
|
25
|
-
exports.ChatModelBaseConfigSchema =
|
|
26
|
-
exports.ChatModelC1ConfigDef =
|
|
27
|
-
exports.ChatModelC1ConfigSchema =
|
|
28
|
-
exports.EmbeddingModelBaseConfigDef =
|
|
29
|
-
exports.EmbeddingModelBaseConfigSchema =
|
|
30
|
-
exports.Gemini1_0Pro =
|
|
31
|
-
exports.Gemini1_0ProLatest =
|
|
32
|
-
exports.Gemini1_0ProLatestLiteral =
|
|
33
|
-
exports.Gemini1_0ProLatestOptions =
|
|
34
|
-
exports.Gemini1_0ProLatestSchema =
|
|
35
|
-
exports.Gemini1_0ProLiteral =
|
|
36
|
-
exports.Gemini1_0ProOptions =
|
|
37
|
-
exports.Gemini1_0ProSchema =
|
|
38
|
-
exports.Gemini1_0ProVision =
|
|
39
|
-
exports.Gemini1_0ProVisionLiteral =
|
|
40
|
-
exports.Gemini1_0ProVisionOptions =
|
|
41
|
-
exports.Gemini1_0ProVisionSchema =
|
|
42
|
-
exports.Gemini1_0Pro_001 =
|
|
43
|
-
exports.Gemini1_0Pro_001Literal =
|
|
44
|
-
exports.Gemini1_0Pro_001Options =
|
|
45
|
-
exports.Gemini1_0Pro_001Schema =
|
|
46
|
-
exports.Gemini1_5Flash =
|
|
47
|
-
exports.Gemini1_5Flash001 =
|
|
48
|
-
exports.Gemini1_5Flash001Literal =
|
|
49
|
-
exports.Gemini1_5Flash001Options =
|
|
50
|
-
exports.Gemini1_5Flash001Schema =
|
|
51
|
-
exports.Gemini1_5Flash002 =
|
|
52
|
-
exports.Gemini1_5Flash002Literal =
|
|
53
|
-
exports.Gemini1_5Flash002Options =
|
|
54
|
-
exports.Gemini1_5Flash002Schema =
|
|
55
|
-
exports.Gemini1_5FlashLatest =
|
|
56
|
-
exports.Gemini1_5FlashLatestLiteral =
|
|
57
|
-
exports.Gemini1_5FlashLatestOptions =
|
|
58
|
-
exports.Gemini1_5FlashLatestSchema =
|
|
59
|
-
exports.Gemini1_5FlashLiteral =
|
|
60
|
-
exports.Gemini1_5FlashOptions =
|
|
61
|
-
exports.Gemini1_5FlashSchema =
|
|
62
|
-
exports.Gemini1_5Pro =
|
|
63
|
-
exports.Gemini1_5Pro001 =
|
|
64
|
-
exports.Gemini1_5Pro001Literal =
|
|
65
|
-
exports.Gemini1_5Pro001Options =
|
|
66
|
-
exports.Gemini1_5Pro001Schema =
|
|
67
|
-
exports.Gemini1_5Pro002 =
|
|
68
|
-
exports.Gemini1_5Pro002Literal =
|
|
69
|
-
exports.Gemini1_5Pro002Options =
|
|
70
|
-
exports.Gemini1_5Pro002Schema =
|
|
71
|
-
exports.Gemini1_5ProLatest =
|
|
72
|
-
exports.Gemini1_5ProLatestLiteral =
|
|
73
|
-
exports.Gemini1_5ProLatestOptions =
|
|
74
|
-
exports.Gemini1_5ProLatestSchema =
|
|
75
|
-
exports.Gemini1_5ProLiteral =
|
|
76
|
-
exports.Gemini1_5ProOptions =
|
|
77
|
-
exports.Gemini1_5ProSchema =
|
|
78
|
-
exports.
|
|
79
|
-
exports.
|
|
80
|
-
exports.
|
|
81
|
-
exports.
|
|
82
|
-
exports.
|
|
83
|
-
exports.
|
|
84
|
-
exports.
|
|
85
|
-
exports.
|
|
86
|
-
exports.
|
|
17
|
+
exports.BaseChatModel = T;
|
|
18
|
+
exports.BaseChatModelGemini1 = P;
|
|
19
|
+
exports.BaseChatModelOptions = h;
|
|
20
|
+
exports.BaseEmbeddingModel = A;
|
|
21
|
+
exports.BaseEmbeddingModelOptions = ee;
|
|
22
|
+
exports.ChatModelBaseConfigDef = Eo;
|
|
23
|
+
exports.ChatModelBaseConfigSchema = _o;
|
|
24
|
+
exports.ChatModelC1ConfigDef = Po;
|
|
25
|
+
exports.ChatModelC1ConfigSchema = Oo;
|
|
26
|
+
exports.EmbeddingModelBaseConfigDef = xo;
|
|
27
|
+
exports.EmbeddingModelBaseConfigSchema = Ro;
|
|
28
|
+
exports.Gemini1_0Pro = pe;
|
|
29
|
+
exports.Gemini1_0ProLatest = fe;
|
|
30
|
+
exports.Gemini1_0ProLatestLiteral = Ve;
|
|
31
|
+
exports.Gemini1_0ProLatestOptions = Do;
|
|
32
|
+
exports.Gemini1_0ProLatestSchema = He;
|
|
33
|
+
exports.Gemini1_0ProLiteral = Be;
|
|
34
|
+
exports.Gemini1_0ProOptions = jo;
|
|
35
|
+
exports.Gemini1_0ProSchema = De;
|
|
36
|
+
exports.Gemini1_0ProVision = he;
|
|
37
|
+
exports.Gemini1_0ProVisionLiteral = Ke;
|
|
38
|
+
exports.Gemini1_0ProVisionOptions = Uo;
|
|
39
|
+
exports.Gemini1_0ProVisionSchema = Ye;
|
|
40
|
+
exports.Gemini1_0Pro_001 = ce;
|
|
41
|
+
exports.Gemini1_0Pro_001Literal = Ue;
|
|
42
|
+
exports.Gemini1_0Pro_001Options = Bo;
|
|
43
|
+
exports.Gemini1_0Pro_001Schema = Ae;
|
|
44
|
+
exports.Gemini1_5Flash = ge;
|
|
45
|
+
exports.Gemini1_5Flash001 = ue;
|
|
46
|
+
exports.Gemini1_5Flash001Literal = Xe;
|
|
47
|
+
exports.Gemini1_5Flash001Options = Vo;
|
|
48
|
+
exports.Gemini1_5Flash001Schema = Qe;
|
|
49
|
+
exports.Gemini1_5Flash002 = ye;
|
|
50
|
+
exports.Gemini1_5Flash002Literal = Ze;
|
|
51
|
+
exports.Gemini1_5Flash002Options = Ho;
|
|
52
|
+
exports.Gemini1_5Flash002Schema = eo;
|
|
53
|
+
exports.Gemini1_5FlashLatest = Ce;
|
|
54
|
+
exports.Gemini1_5FlashLatestLiteral = oo;
|
|
55
|
+
exports.Gemini1_5FlashLatestOptions = Ko;
|
|
56
|
+
exports.Gemini1_5FlashLatestSchema = to;
|
|
57
|
+
exports.Gemini1_5FlashLiteral = Je;
|
|
58
|
+
exports.Gemini1_5FlashOptions = Ao;
|
|
59
|
+
exports.Gemini1_5FlashSchema = We;
|
|
60
|
+
exports.Gemini1_5Pro = Te;
|
|
61
|
+
exports.Gemini1_5Pro001 = Ge;
|
|
62
|
+
exports.Gemini1_5Pro001Literal = io;
|
|
63
|
+
exports.Gemini1_5Pro001Options = Jo;
|
|
64
|
+
exports.Gemini1_5Pro001Schema = ao;
|
|
65
|
+
exports.Gemini1_5Pro002 = Me;
|
|
66
|
+
exports.Gemini1_5Pro002Literal = ro;
|
|
67
|
+
exports.Gemini1_5Pro002Options = Wo;
|
|
68
|
+
exports.Gemini1_5Pro002Schema = lo;
|
|
69
|
+
exports.Gemini1_5ProLatest = be;
|
|
70
|
+
exports.Gemini1_5ProLatestLiteral = mo;
|
|
71
|
+
exports.Gemini1_5ProLatestOptions = Xo;
|
|
72
|
+
exports.Gemini1_5ProLatestSchema = po;
|
|
73
|
+
exports.Gemini1_5ProLiteral = no;
|
|
74
|
+
exports.Gemini1_5ProOptions = Yo;
|
|
75
|
+
exports.Gemini1_5ProSchema = so;
|
|
76
|
+
exports.GeminiPro = me;
|
|
77
|
+
exports.GeminiProLiteral = Fe;
|
|
78
|
+
exports.GeminiProOptions = $o;
|
|
79
|
+
exports.GeminiProSchema = $e;
|
|
80
|
+
exports.GeminiProVision = de;
|
|
81
|
+
exports.GeminiProVisionLiteral = ze;
|
|
82
|
+
exports.GeminiProVisionOptions = zo;
|
|
83
|
+
exports.GeminiProVisionSchema = je;
|
|
84
|
+
exports.Google = Y;
|
|
85
|
+
exports.GoogleChatAssistantRoleLiteral = St;
|
|
86
|
+
exports.GoogleChatContent = qt;
|
|
87
|
+
exports.GoogleChatContentPartFunctionCall = Nt;
|
|
88
|
+
exports.GoogleChatContentPartFunctionResponse = vt;
|
|
89
|
+
exports.GoogleChatContentPartInlineData = kt;
|
|
90
|
+
exports.GoogleChatContentPartText = qo;
|
|
91
|
+
exports.GoogleChatGenerationConfig = No;
|
|
92
|
+
exports.GoogleChatModelConfigs = c;
|
|
87
93
|
exports.GoogleChatModelModalities = _;
|
|
88
94
|
exports.GoogleChatModelModalitiesEnum = E;
|
|
89
95
|
exports.GoogleChatModelRoles = u;
|
|
90
96
|
exports.GoogleChatModelRolesMap = y;
|
|
91
|
-
exports.GoogleChatModelTextModalities =
|
|
92
|
-
exports.GoogleChatModelTextModalitiesEnum =
|
|
93
|
-
exports.GoogleChatModelTextToolModalities =
|
|
94
|
-
exports.GoogleChatModelTextToolModalitiesEnum =
|
|
95
|
-
exports.GoogleChatModelTextVisionModalities =
|
|
96
|
-
exports.GoogleChatModelTextVisionModalitiesEnum =
|
|
97
|
-
exports.GoogleChatRequest =
|
|
98
|
-
exports.GoogleChatSystemInstruction =
|
|
99
|
-
exports.GoogleChatTool =
|
|
100
|
-
exports.GoogleChatToolConfig =
|
|
101
|
-
exports.GoogleChatToolRoleLiteral =
|
|
102
|
-
exports.GoogleCompleteChatResponse =
|
|
103
|
-
exports.GoogleCompleteChatTextResponse =
|
|
104
|
-
exports.GoogleCompleteChatToolResponse =
|
|
97
|
+
exports.GoogleChatModelTextModalities = is;
|
|
98
|
+
exports.GoogleChatModelTextModalitiesEnum = as;
|
|
99
|
+
exports.GoogleChatModelTextToolModalities = L;
|
|
100
|
+
exports.GoogleChatModelTextToolModalitiesEnum = I;
|
|
101
|
+
exports.GoogleChatModelTextVisionModalities = ae;
|
|
102
|
+
exports.GoogleChatModelTextVisionModalitiesEnum = re;
|
|
103
|
+
exports.GoogleChatRequest = Fo;
|
|
104
|
+
exports.GoogleChatSystemInstruction = Io;
|
|
105
|
+
exports.GoogleChatTool = Ft;
|
|
106
|
+
exports.GoogleChatToolConfig = ko;
|
|
107
|
+
exports.GoogleChatToolRoleLiteral = Rt;
|
|
108
|
+
exports.GoogleCompleteChatResponse = wo;
|
|
109
|
+
exports.GoogleCompleteChatTextResponse = xt;
|
|
110
|
+
exports.GoogleCompleteChatToolResponse = wt;
|
|
105
111
|
exports.GoogleEmbeddingModelConfigs = j;
|
|
106
|
-
exports.GoogleEmbeddingModelModalities =
|
|
107
|
-
exports.GoogleEmbeddingModelModalitiesEnum =
|
|
108
|
-
exports.GoogleEmbeddingRequest =
|
|
109
|
-
exports.GoogleEmbeddingRequestInput =
|
|
110
|
-
exports.GoogleGetEmbeddingsResponse =
|
|
111
|
-
exports.GoogleStreamChatResponse =
|
|
112
|
-
exports.GoogleStreamChatTextResponse =
|
|
113
|
-
exports.GoogleStreamChatToolResponse =
|
|
114
|
-
exports.ProviderLiteral =
|
|
115
|
-
exports.Text_Embedding_001 =
|
|
116
|
-
exports.Text_Embedding_001Literal =
|
|
117
|
-
exports.Text_Embedding_001Options =
|
|
118
|
-
exports.Text_Embedding_001Schema =
|
|
119
|
-
exports.Text_Embedding_004 =
|
|
120
|
-
exports.Text_Embedding_004Literal =
|
|
121
|
-
exports.Text_Embedding_004Options =
|
|
122
|
-
exports.Text_Embedding_004Schema =
|
|
123
|
-
exports.dimensions =
|
|
124
|
-
exports.frequencyPenalty =
|
|
112
|
+
exports.GoogleEmbeddingModelModalities = Re;
|
|
113
|
+
exports.GoogleEmbeddingModelModalitiesEnum = xe;
|
|
114
|
+
exports.GoogleEmbeddingRequest = at;
|
|
115
|
+
exports.GoogleEmbeddingRequestInput = On;
|
|
116
|
+
exports.GoogleGetEmbeddingsResponse = it;
|
|
117
|
+
exports.GoogleStreamChatResponse = Lo;
|
|
118
|
+
exports.GoogleStreamChatTextResponse = Lt;
|
|
119
|
+
exports.GoogleStreamChatToolResponse = It;
|
|
120
|
+
exports.ProviderLiteral = $t;
|
|
121
|
+
exports.Text_Embedding_001 = _e;
|
|
122
|
+
exports.Text_Embedding_001Literal = co;
|
|
123
|
+
exports.Text_Embedding_001Options = Qo;
|
|
124
|
+
exports.Text_Embedding_001Schema = fo;
|
|
125
|
+
exports.Text_Embedding_004 = Ee;
|
|
126
|
+
exports.Text_Embedding_004Literal = ho;
|
|
127
|
+
exports.Text_Embedding_004Options = Zo;
|
|
128
|
+
exports.Text_Embedding_004Schema = go;
|
|
129
|
+
exports.dimensions = ve;
|
|
130
|
+
exports.frequencyPenalty = Ie;
|
|
125
131
|
exports.maxTokens = v;
|
|
126
|
-
exports.presencePenalty =
|
|
127
|
-
exports.safetySettings =
|
|
128
|
-
exports.seed =
|
|
129
|
-
exports.stop =
|
|
130
|
-
exports.temperature =
|
|
131
|
-
exports.toolChoice =
|
|
132
|
-
exports.topK =
|
|
133
|
-
exports.topP =
|
|
132
|
+
exports.presencePenalty = ke;
|
|
133
|
+
exports.safetySettings = z;
|
|
134
|
+
exports.seed = Ne;
|
|
135
|
+
exports.stop = q;
|
|
136
|
+
exports.temperature = N;
|
|
137
|
+
exports.toolChoice = $;
|
|
138
|
+
exports.topK = Le;
|
|
139
|
+
exports.topP = F;
|
|
134
140
|
//# sourceMappingURL=index.js.map
|
|
135
141
|
//# sourceMappingURL=index.js.map
|