40 lines
1.0 KiB
Python
40 lines
1.0 KiB
Python
import os
|
|
from dotenv import load_dotenv
|
|
|
|
# 加载环境变量
|
|
load_dotenv()
|
|
|
|
|
|
class Config:
|
|
"""应用配置类"""
|
|
|
|
# 应用基本配置
|
|
APP_NAME = os.getenv("APP_NAME", "Easy RAG Service")
|
|
APP_VERSION = os.getenv("APP_VERSION", "1.0.0")
|
|
DEBUG = os.getenv("DEBUG", "False").lower() == "true"
|
|
|
|
# 服务器配置
|
|
HOST = os.getenv("HOST", "0.0.0.0")
|
|
PORT = int(os.getenv("PORT", 8000))
|
|
|
|
# OpenAI 配置
|
|
OPENAI_API_KEY = os.getenv("OPENAI_API_KEY")
|
|
OPENAI_BASE_URL = os.getenv("OPENAI_BASE_URL", "https://api.openai.com/v1")
|
|
|
|
# 向量数据库配置
|
|
CHROMA_PERSIST_DIRECTORY = os.getenv("CHROMA_PERSIST_DIRECTORY", "./chroma_db")
|
|
|
|
# 文件上传配置
|
|
UPLOAD_DIR = os.getenv("UPLOAD_DIR", "./uploads")
|
|
MAX_FILE_SIZE = int(os.getenv("MAX_FILE_SIZE", 10485760)) # 10MB
|
|
|
|
@classmethod
|
|
def validate(cls):
|
|
"""验证配置"""
|
|
if not cls.OPENAI_API_KEY:
|
|
raise ValueError("OPENAI_API_KEY 环境变量未设置")
|
|
|
|
|
|
# 创建配置实例
|
|
config = Config()
|