| 123456789101112131415161718192021222324252627282930313233 |
- from pydantic_settings import BaseSettings, SettingsConfigDict
- class Settings(BaseSettings):
- app_name: str = "Labor Arbitration Backend"
- # 开发期:使用本机 MySQL,避免依赖 Docker/PostgreSQL
- # 示例:mysql+pymysql://root:password@127.0.0.1:3306/graduation?charset=utf8mb4
- database_url: str = "mysql+pymysql://root:password@127.0.0.1:3306/graduation?charset=utf8mb4"
- # 下面这些在你以后接入向量库和独立 NLP 服务时再启用
- # 无 Docker / 无 Qdrant 时保持 False,相似案件走 MySQL 内简易文本相似度
- use_vector_store: bool = False
- qdrant_url: str = "http://localhost:6333"
- qdrant_collection: str = "labor_case_vectors"
- embedding_model_name: str = "sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2"
- nlp_service_url: str = "http://localhost:8001/extract"
- use_remote_nlp_service: bool = False
- # Ollama(可选):启用后使用 app/anj.py 中同一 Ollama 模型增强「仲裁请求 claims」与「案由模板扁平要素」
- # (extract_dispute_template_fields),规则抽取仍先执行,LLM 结果覆盖非空字段。
- use_ollama: bool = False
- ollama_base_url: str = "http://127.0.0.1:11434"
- ollama_model_name: str = "qwen2.5:3b"
- # Extractor mode: "rules" | "bert" | "ollama" | "hybrid"
- extractor_mode: str = "rules"
- # BERT model service URL (nlp-service)
- bert_model_service_url: str = "http://localhost:8001/extract"
- model_config = SettingsConfigDict(env_file=".env", extra="ignore")
- settings = Settings()
|