Skip to content

Commit 6013bb1

Browse files
authored
Merge pull request elizaOS#1272 from UD1sto/bug-1270-incorrect-fallback
fix: fix imageModelProvider apiKey selection fallback
2 parents 1cc2923 + aeae4f1 commit 6013bb1

File tree

1 file changed

+24
-8
lines changed

1 file changed

+24
-8
lines changed

packages/core/src/generation.ts

+24-8
Original file line numberDiff line numberDiff line change
@@ -952,14 +952,30 @@ export const generateImage = async (
952952
});
953953

954954
const apiKey =
955-
runtime.imageModelProvider === runtime.modelProvider
956-
? runtime.token
957-
: (runtime.getSetting("HEURIST_API_KEY") ??
958-
runtime.getSetting("TOGETHER_API_KEY") ??
959-
runtime.getSetting("FAL_API_KEY") ??
960-
runtime.getSetting("OPENAI_API_KEY") ??
961-
runtime.getSetting("VENICE_API_KEY"));
962-
955+
runtime.imageModelProvider === runtime.modelProvider
956+
? runtime.token
957+
: (() => {
958+
// First try to match the specific provider
959+
switch (runtime.imageModelProvider) {
960+
case ModelProviderName.HEURIST:
961+
return runtime.getSetting("HEURIST_API_KEY");
962+
case ModelProviderName.TOGETHER:
963+
return runtime.getSetting("TOGETHER_API_KEY");
964+
case ModelProviderName.FAL:
965+
return runtime.getSetting("FAL_API_KEY");
966+
case ModelProviderName.OPENAI:
967+
return runtime.getSetting("OPENAI_API_KEY");
968+
case ModelProviderName.VENICE:
969+
return runtime.getSetting("VENICE_API_KEY");
970+
default:
971+
// If no specific match, try the fallback chain
972+
return (runtime.getSetting("HEURIST_API_KEY") ??
973+
runtime.getSetting("TOGETHER_API_KEY") ??
974+
runtime.getSetting("FAL_API_KEY") ??
975+
runtime.getSetting("OPENAI_API_KEY") ??
976+
runtime.getSetting("VENICE_API_KEY"));
977+
}
978+
})();
963979
try {
964980
if (runtime.imageModelProvider === ModelProviderName.HEURIST) {
965981
const response = await fetch(

0 commit comments

Comments
 (0)