Skip to content

Commit ca885a8

Browse files
authored
Merge pull request #953 from odilitime/fix-openrouter
feat: allow character.json settings models for open router
2 parents cbb5680 + 703bc54 commit ca885a8

File tree

1 file changed

+43
-21
lines changed

1 file changed

+43
-21
lines changed

packages/core/src/generation.ts

+43-21
Original file line numberDiff line numberDiff line change
@@ -76,27 +76,49 @@ export async function generateText({
7676
runtime.character.modelEndpointOverride || models[provider].endpoint;
7777
let model = models[provider].model[modelClass];
7878

79-
// if runtime.getSetting("LLAMACLOUD_MODEL_LARGE") is true and modelProvider is LLAMACLOUD, then use the large model
80-
if (
81-
(runtime.getSetting("LLAMACLOUD_MODEL_LARGE") &&
82-
provider === ModelProviderName.LLAMACLOUD) ||
83-
(runtime.getSetting("TOGETHER_MODEL_LARGE") &&
84-
provider === ModelProviderName.TOGETHER)
85-
) {
86-
model =
87-
runtime.getSetting("LLAMACLOUD_MODEL_LARGE") ||
88-
runtime.getSetting("TOGETHER_MODEL_LARGE");
89-
}
90-
91-
if (
92-
(runtime.getSetting("LLAMACLOUD_MODEL_SMALL") &&
93-
provider === ModelProviderName.LLAMACLOUD) ||
94-
(runtime.getSetting("TOGETHER_MODEL_SMALL") &&
95-
provider === ModelProviderName.TOGETHER)
96-
) {
97-
model =
98-
runtime.getSetting("LLAMACLOUD_MODEL_SMALL") ||
99-
runtime.getSetting("TOGETHER_MODEL_SMALL");
79+
// allow character.json settings => secrets to override models
80+
// FIXME: add MODEL_MEDIUM support
81+
switch(provider) {
82+
// if runtime.getSetting("LLAMACLOUD_MODEL_LARGE") is true and modelProvider is LLAMACLOUD, then use the large model
83+
case ModelProviderName.LLAMACLOUD: {
84+
switch(modelClass) {
85+
case ModelClass.LARGE: {
86+
model = runtime.getSetting("LLAMACLOUD_MODEL_LARGE") || model;
87+
}
88+
break;
89+
case ModelClass.SMALL: {
90+
model = runtime.getSetting("LLAMACLOUD_MODEL_SMALL") || model;
91+
}
92+
break;
93+
}
94+
}
95+
break;
96+
case ModelProviderName.TOGETHER: {
97+
switch(modelClass) {
98+
case ModelClass.LARGE: {
99+
model = runtime.getSetting("TOGETHER_MODEL_LARGE") || model;
100+
}
101+
break;
102+
case ModelClass.SMALL: {
103+
model = runtime.getSetting("TOGETHER_MODEL_SMALL") || model;
104+
}
105+
break;
106+
}
107+
}
108+
break;
109+
case ModelProviderName.OPENROUTER: {
110+
switch(modelClass) {
111+
case ModelClass.LARGE: {
112+
model = runtime.getSetting("LARGE_OPENROUTER_MODEL") || model;
113+
}
114+
break;
115+
case ModelClass.SMALL: {
116+
model = runtime.getSetting("SMALL_OPENROUTER_MODEL") || model;
117+
}
118+
break;
119+
}
120+
}
121+
break;
100122
}
101123

102124
elizaLogger.info("Selected model:", model);

0 commit comments

Comments
 (0)