diff --git a/app/api/endpoints.py b/app/api/endpoints.py index 2417860..28bbfe4 100644 --- a/app/api/endpoints.py +++ b/app/api/endpoints.py @@ -43,7 +43,9 @@ async def ingest_file( if not file.filename: raise HTTPException(status_code=400, detail="File name is required") - with tempfile.NamedTemporaryFile(delete=True, suffix=file.filename) as tmp: + with tempfile.NamedTemporaryFile( + delete=False, suffix=file.filename, delete_on_close=True + ) as tmp: file.file.seek(0) shutil.copyfileobj(file.file, tmp) tmp.flush() diff --git a/app/core/config.py b/app/core/config.py index adf258e..2e0f9bc 100644 --- a/app/core/config.py +++ b/app/core/config.py @@ -59,4 +59,5 @@ def get_settings() -> Settings: settings = get_settings() # Set environment variables for third-party libraries +os.environ["GEMINI_API_KEY"] = settings.GEMINI_API_KEY os.environ["TOKENIZERS_PARALLELISM"] = "false" diff --git a/app/services/config_service.py b/app/services/config_service.py index cb26769..8bb4197 100644 --- a/app/services/config_service.py +++ b/app/services/config_service.py @@ -44,7 +44,7 @@ class ConfigService: """ logger.info("Initializing default models...") embedding_model_name = settings.EMBEDDING_MODEL - if embedding_model_name not in EmbeddingModelName.__members__: + if embedding_model_name not in EmbeddingModelName._value2member_map_: logger.warning( "Embedding model '%s' is not valid. Falling back to default '%s'", embedding_model_name, @@ -60,7 +60,7 @@ class ConfigService: getattr(settings, "RERANKER_MODEL", None) or RerankerModelName.MiniLMReranker.value ) - if reranker_model_name not in RerankerModelName.__members__: + if reranker_model_name not in RerankerModelName._value2member_map_: logger.warning( "Reranker model '%s' is not valid. Falling back to default '%s'", reranker_model_name, @@ -73,7 +73,7 @@ class ConfigService: vector_store_name = ( getattr(settings, "VECTOR_STORE_TYPE", None) or VectorStoreType.PGVECTOR ) - if vector_store_name not in vector_store_registry.list_available(): + if vector_store_name not in VectorStoreType._value2member_map_: logger.warning( "Vector store '%s' is not valid. Falling back to default '%s'", vector_store_name,