@@ -952,14 +952,30 @@ export const generateImage = async (
952
952
} ) ;
953
953
954
954
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
+ } ) ( ) ;
963
979
try {
964
980
if ( runtime . imageModelProvider === ModelProviderName . HEURIST ) {
965
981
const response = await fetch (
0 commit comments