Spaces:
Runtime error
Runtime error
| import logging | |
| import os | |
| from contextlib import asynccontextmanager | |
| from pathlib import Path | |
| from typing import Annotated | |
| import dotenv | |
| import uvicorn | |
| from fastapi import FastAPI | |
| from fastapi.middleware.cors import CORSMiddleware | |
| from transformers import AutoModel, AutoTokenizer | |
| # from routes.acronym import router as acronym_router | |
| from common import dependencies as DI | |
| from common.common import configure_logging | |
| from common.configuration import Configuration | |
| from routes.dataset import router as dataset_router | |
| from routes.document import router as document_router | |
| from routes.entity import router as entity_router | |
| from routes.llm import router as llm_router | |
| from routes.llm_config import router as llm_config_router | |
| from routes.llm_prompt import router as llm_prompt_router | |
| from routes.auth import router as auth_router | |
| # from main_before import config | |
| # Загружаем переменные из .env | |
| dotenv.load_dotenv() | |
| # from routes.feedback import router as feedback_router | |
| # from routes.llm import router as llm_router | |
| # from routes.log import router as log_router | |
| CONFIG_PATH = os.environ.get('CONFIG_PATH', 'config_dev.yaml') | |
| print("config path: ") | |
| print(CONFIG_PATH) | |
| config = Configuration(CONFIG_PATH) | |
| logger = logging.getLogger(__name__) | |
| configure_logging(config_file_path=config.common_config.log_file_path) | |
| configure_logging( | |
| level=logging.DEBUG, | |
| config_file_path=config.common_config.log_file_path, | |
| ) | |
| # Костыль №47364: Удаляем файл статуса обработки датасета при запуске приложения | |
| tmp_path = Path(os.environ.get("APP_TMP_PATH", '.')) / 'tmp.json' | |
| tmp_path.unlink(missing_ok=True) | |
| print("Downloading model to cache...") | |
| AutoTokenizer.from_pretrained(config.db_config.faiss.model_embedding_path) | |
| AutoModel.from_pretrained(config.db_config.faiss.model_embedding_path) | |
| print("Model cached successfully.") | |
| app = FastAPI(title="Assistant control panel") | |
| origins = ["*"] | |
| app.add_middleware( | |
| CORSMiddleware, | |
| allow_origins=origins, | |
| allow_credentials=True, | |
| allow_methods=["*"], | |
| allow_headers=["*"], | |
| ) | |
| app.include_router(llm_router) | |
| # app.include_router(log_router) | |
| # app.include_router(feedback_router) | |
| app.include_router(dataset_router) | |
| app.include_router(document_router) | |
| app.include_router(llm_config_router) | |
| app.include_router(llm_prompt_router) | |
| app.include_router(entity_router) | |
| app.include_router(auth_router) | |
| if __name__ == "__main__": | |
| uvicorn.run( | |
| "main:app", | |
| host="localhost", | |
| port=7860, | |
| reload=False, | |
| workers=1 | |
| ) |