fix provider call
This commit is contained in:
parent
dfd60574d0
commit
033a40600c
3 changed files with 18 additions and 5 deletions
|
|
@ -54,7 +54,7 @@ export const useGetOpenAIModelsQuery = (
|
||||||
queryKey: ["models", "openai", params],
|
queryKey: ["models", "openai", params],
|
||||||
queryFn: getOpenAIModels,
|
queryFn: getOpenAIModels,
|
||||||
retry: 2,
|
retry: 2,
|
||||||
enabled: !!params?.apiKey, // Only run if API key is provided
|
enabled: options?.enabled !== false, // Allow enabling/disabling from options
|
||||||
staleTime: 0, // Always fetch fresh data
|
staleTime: 0, // Always fetch fresh data
|
||||||
gcTime: 0, // Don't cache results
|
gcTime: 0, // Don't cache results
|
||||||
...options,
|
...options,
|
||||||
|
|
|
||||||
|
|
@ -112,9 +112,12 @@ function KnowledgeSourcesPage() {
|
||||||
const currentProvider = (settings.provider?.model_provider || 'openai') as ModelProvider;
|
const currentProvider = (settings.provider?.model_provider || 'openai') as ModelProvider;
|
||||||
|
|
||||||
// Fetch available models based on provider
|
// Fetch available models based on provider
|
||||||
const { data: openaiModelsData } = useGetOpenAIModelsQuery({
|
const { data: openaiModelsData } = useGetOpenAIModelsQuery(
|
||||||
enabled: isAuthenticated && currentProvider === 'openai',
|
undefined, // Let backend use stored API key from configuration
|
||||||
});
|
{
|
||||||
|
enabled: isAuthenticated && currentProvider === 'openai',
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
const { data: ollamaModelsData } = useGetOllamaModelsQuery(
|
const { data: ollamaModelsData } = useGetOllamaModelsQuery(
|
||||||
undefined, // No params for now, could be extended later
|
undefined, // No params for now, could be extended later
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
from starlette.responses import JSONResponse
|
from starlette.responses import JSONResponse
|
||||||
from utils.logging_config import get_logger
|
from utils.logging_config import get_logger
|
||||||
|
from config.settings import get_openrag_config
|
||||||
|
|
||||||
logger = get_logger(__name__)
|
logger = get_logger(__name__)
|
||||||
|
|
||||||
|
|
@ -11,9 +12,18 @@ async def get_openai_models(request, models_service, session_manager):
|
||||||
query_params = dict(request.query_params)
|
query_params = dict(request.query_params)
|
||||||
api_key = query_params.get("api_key")
|
api_key = query_params.get("api_key")
|
||||||
|
|
||||||
|
# If no API key provided, try to get it from stored configuration
|
||||||
|
if not api_key:
|
||||||
|
try:
|
||||||
|
config = get_openrag_config()
|
||||||
|
api_key = config.provider.api_key
|
||||||
|
logger.info(f"Retrieved API key from config: {'yes' if api_key else 'no'}")
|
||||||
|
except Exception as e:
|
||||||
|
logger.error(f"Failed to get config: {e}")
|
||||||
|
|
||||||
if not api_key:
|
if not api_key:
|
||||||
return JSONResponse(
|
return JSONResponse(
|
||||||
{"error": "OpenAI API key is required as query parameter"},
|
{"error": "OpenAI API key is required either as query parameter or in configuration"},
|
||||||
status_code=400
|
status_code=400
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue