Spaces:
Runtime error
Runtime error
| from contextlib import asynccontextmanager | |
| from pathlib import Path | |
| from typing import Annotated | |
| import dotenv | |
| import uvicorn | |
| import logging | |
| import os | |
| from fastapi import FastAPI, Depends | |
| from fastapi.middleware.cors import CORSMiddleware | |
| from common.common import configure_logging | |
| from common.configuration import Configuration | |
| # from main_before import config | |
| # from routes.acronym import router as acronym_router | |
| from common import dependencies as DI | |
| from routes.dataset import router as dataset_router | |
| from routes.document import router as document_router | |
| from routes.acronym import router as acronym_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 common.common import configure_logging | |
| from transformers import AutoTokenizer, AutoModel | |
| # Загружаем переменные из .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: Удаляем файл статуса обработки датасета при запуске приложения | |
| Path(os.environ.get("APP_TMP_PATH", '.') / 'tmp.json').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(acronym_router) | |
| app.include_router(dataset_router) | |
| app.include_router(document_router) | |
| app.include_router(llm_config_router) | |
| app.include_router(llm_prompt_router) | |
| if __name__ == "__main__": | |
| uvicorn.run( | |
| "main:app", | |
| host="localhost", | |
| port=8885, | |
| reload=True, | |
| workers=1 | |
| ) |