from __future__ import annotations from fastapi import Depends from app.core.security import require_api_key from app.services.auth_service import AuthService from app.services.converter_service import ConverterService from app.services.database_service import DatabaseService from app.services.embeddings_service import EmbeddingService from app.services.extraction_service import ExtractionService from app.services.ocr_service import OCRService from app.services.sql_validator_service import SqlValidatorService from app.services.text_cleaner_service import TextCleanerService from app.services.vector_store_service import VectorStoreService from app.services.web_search_service import WebSearchService def get_sql_validator_service() -> SqlValidatorService: return SqlValidatorService() def get_text_cleaner_service() -> TextCleanerService: return TextCleanerService() def get_auth_service() -> AuthService: return AuthService() def get_converter_service() -> ConverterService: return ConverterService() def get_ocr_service() -> OCRService: return OCRService() def get_extraction_service() -> ExtractionService: return ExtractionService() def get_database_service() -> DatabaseService: return DatabaseService() def get_embeddings_service() -> EmbeddingService: from app.api.server import _embedding_service return _embedding_service def get_vector_store_service() -> VectorStoreService: from app.api.server import _vector_store_service return _vector_store_service def require_auth(token: str = Depends(require_api_key)) -> str: return token