@@ -1031,10 +1031,22 @@ BEGIN
10311031 SELECT Id, AI_Model, AI_URL, AI_Database_Scoped_Credential_Name, AI_Parameters, Payload_Template, Timeout_Seconds, Context, DefaultModel FROM '
10321032 + CASE WHEN @AIConfigDatabaseName IS NOT NULL THEN (QUOTENAME (@AIConfigDatabaseName) + N ' .' ) ELSE N ' ' END
10331033 + CASE WHEN @AIConfigSchemaName IS NOT NULL THEN (QUOTENAME (@AIConfigSchemaName) + N ' .' ) ELSE N ' ' END
1034- + QUOTENAME (@AIConfigTableName) + N ' WHERE (@AIModel IS NULL AND DefaultModel = 1) OR @AIModel = AI_Model ; ' ;
1034+ + QUOTENAME (@AIConfigTableName) + N ' WHERE DefaultModel = 1 OR @AIModel = AI_Model ; ' ;
10351035 EXEC sp_executesql @config_sql, N ' @AIModel NVARCHAR(100)' , @AIModel;
10361036END ;
10371037
1038+ IF @AIModel IS NOT NULL AND @AIConfigTable IS NOT NULL
1039+ AND NOT EXISTS (SELECT 1 FROM #ai_providers WHERE AI_Model = @AIModel)
1040+ BEGIN
1041+ DECLARE @AIModelRequested NVARCHAR (200 ) = @AIModel;
1042+ DECLARE @AIFallbackModel NVARCHAR (200 );
1043+ SELECT TOP 1 @AIFallbackModel = AI_Model FROM #ai_providers WHERE DefaultModel = 1 ORDER BY Id;
1044+ IF @AIFallbackModel IS NULL SET @AIFallbackModel = N ' gpt-5-nano' ;
1045+ RAISERROR (' @AIModel "%s" was not found in configuration table %s. Using "%s" instead.' ,
1046+ 10 , 1 , @AIModelRequested, @AIConfigTable, @AIFallbackModel) WITH NOWAIT ;
1047+ SET @AIModel = NULL ;
1048+ END ;
1049+
10381050IF @AIPromptConfigTable IS NOT NULL
10391051BEGIN
10401052 RAISERROR (N ' Reading values from AI Prompts Table' , 0 , 1 ) WITH NOWAIT ;
@@ -1083,6 +1095,7 @@ IF @AI > 0
10831095 @AITimeoutSeconds = COALESCE (Timeout_Seconds, 230 ),
10841096 @AIContext = Context
10851097 FROM #ai_providers
1098+ WHERE AI_Model = @AIModel
10861099 ORDER BY Id;
10871100
10881101 /* Check the prompts table */
0 commit comments