File tree 5 files changed +39
-1
lines changed
5 files changed +39
-1
lines changed Original file line number Diff line number Diff line change @@ -235,6 +235,13 @@ The model to use for generateText.
235
235
236
236
The model to use for generateImage.
237
237
238
+
239
+ ### imageVisionModelProvider
240
+
241
+ > ** imageVisionModelProvider** : [ ` ModelProviderName ` ] ( ../enumerations/ModelProviderName.md )
242
+
243
+ The model to use for describing inputImages.
244
+
238
245
#### Implementation of
239
246
240
247
[ ` IAgentRuntime ` ] ( ../interfaces/IAgentRuntime.md ) .[ ` imageModelProvider ` ] ( ../interfaces/IAgentRuntime.md#imageModelProvider )
Original file line number Diff line number Diff line change @@ -44,6 +44,17 @@ Model provider to use
44
44
45
45
Image model provider to use, if different from modelProvider
46
46
47
+
48
+
49
+ ### imageVisionModelProvider?
50
+
51
+ > ` optional ` ** imageVisionModelProvider** : [ ` ModelProviderName ` ] ( ../enumerations/ModelProviderName.md )
52
+
53
+ Image Vision model provider to use, if different from modelProvider
54
+
55
+ imageVisionModelProvider
56
+
57
+
47
58
### modelEndpointOverride?
48
59
49
60
> ` optional ` ** modelEndpointOverride** : ` string `
Original file line number Diff line number Diff line change @@ -103,6 +103,12 @@ export class AgentRuntime implements IAgentRuntime {
103
103
*/
104
104
imageModelProvider : ModelProviderName ;
105
105
106
+
107
+ /**
108
+ * The model to use for describing images.
109
+ */
110
+ imageVisionModelProvider : ModelProviderName ;
111
+
106
112
/**
107
113
* Fetch function to use
108
114
* Some environments may not have access to the global fetch function and need a custom fetch override.
@@ -324,6 +330,16 @@ export class AgentRuntime implements IAgentRuntime {
324
330
this . imageModelProvider
325
331
) ;
326
332
333
+ this . imageVisionModelProvider =
334
+ this . character . imageVisionModelProvider ?? this . modelProvider ;
335
+
336
+ elizaLogger . info ( "Selected model provider:" , this . modelProvider ) ;
337
+ elizaLogger . info (
338
+ "Selected image model provider:" ,
339
+ this . imageVisionModelProvider
340
+ ) ;
341
+
342
+
327
343
// Validate model provider
328
344
if ( ! Object . values ( ModelProviderName ) . includes ( this . modelProvider ) ) {
329
345
elizaLogger . error ( "Invalid model provider:" , this . modelProvider ) ;
Original file line number Diff line number Diff line change @@ -687,6 +687,10 @@ export type Character = {
687
687
/** Image model provider to use, if different from modelProvider */
688
688
imageModelProvider ?: ModelProviderName ;
689
689
690
+
691
+ /** Image Vision model provider to use, if different from modelProvider */
692
+ imageVisionModelProvider ?: ModelProviderName ;
693
+
690
694
/** Optional model endpoint override */
691
695
modelEndpointOverride ?: string ;
692
696
@@ -1100,6 +1104,7 @@ export interface IAgentRuntime {
1100
1104
token : string | null ;
1101
1105
modelProvider : ModelProviderName ;
1102
1106
imageModelProvider : ModelProviderName ;
1107
+ imageVisionModelProvider : ModelProviderName ;
1103
1108
character : Character ;
1104
1109
providers : Provider [ ] ;
1105
1110
actions : Action [ ] ;
Original file line number Diff line number Diff line change @@ -211,7 +211,6 @@ export class ImageDescriptionService
211
211
this . runtime . imageModelProvider === ModelProviderName . OPENAI
212
212
? models [ this . runtime . imageModelProvider ] . endpoint
213
213
: "https://api.openai.com/v1" ;
214
-
215
214
const response = await fetch ( endpoint + "/chat/completions" , {
216
215
method : "POST" ,
217
216
headers : {
You can’t perform that action at this time.
0 commit comments