# Text2SQL Agent 环境配置示例 # 复制为 .env 并填入实际值 # ========== DeepSeek API 配置 ========== # LLM 路由(deepseek | openai),不填则按 Key 自动选择(优先 deepseek) LLM_SERVICE_CODE=openai DEEPSEEK_API_KEY=sk-041b3995415c4445a1713750fcc9e023 DEEPSEEK_BASE_URL=https://api.deepseek.com MODEL_PRIMARY=deepseek-chat OPENAI_API_KEY=sk-proj-FEb2ChHZK5Llm0tBkmNIT3BlbkFJbu0b0zQpTW8762yD6HDv OPENAI_BASE_URL=http://113.192.49.54:9080/v1 OPENAI_MODEL=gpt-5.4 # OPENAI_CHAT_MODEL=gpt-4o-mini # 模型配置 # 主生成模型 TEMPERATURE=0 # 确定性模式:每次生成相同结果 MAX_TOKENS=4096 # 生成与校验默认 SQL Server(T-SQL);可改为 mysql / postgresql 等 TEXT2SQL_DIALECT=sqlserver # ========== Embedding 配置(远程 /v1/embeddings,须配置下方 OPENAI_* 或 MODELSCOPE_* 等)========== # ModelScope 推理 API:https://www.modelscope.cn/docs/inference-api # MODELSCOPE_API_KEY=ms-b95f3233-4797-4efd-90e6-b3728743571d # MODELSCOPE_BASE_URL=https://api-inference.modelscope.cn/v1 # MODELSCOPE_EMBEDDING_MODEL=Qwen/Qwen3-Embedding-8B # # 单次请求最大条数,按服务端限制调整 # MODELSCOPE_EMBEDDING_MAX_BATCH=32 # 兼容 OpenAI 的网关:地址含 /v1(若网关根路径即 OpenAI API 则按实际填写) OPENAI_BASE_URL=http://113.192.49.54:9080/v1 OPENAI_API_KEY=sk-proj-FEb2ChHZK5Llm0tBkmNIT3BlbkFJbu0b0zQpTW8762yD6HDv OPENAI_EMBEDDING_MODEL=text-embedding-ada-002 # ========== 数据文件与向量库路径(均相对仓库根目录)========== # G3SB 表结构;api_server 用 SCHEMA_PATH / SCHEMA_META_PATH(勿用 SCHEMA_FILE,代码不读) SCHEMA_PATH=./data/schemas/G3SB_MCDataDictionary_table_structure.json # G3SB 表注释,与 structure 同名配对;粗筛 embedding 文本会含表注释 SCHEMA_META_PATH=./data/schemas/G3SB_MCDataDictionary_table_meta.json # Schema 表级向量持久化目录(Chroma 集合名固定为 schema_tables);改 structure/meta 后需强制重建索引 VECTOR_DB_PATH=./data/embeddings/chroma # Few-shot 源 JSONL(build_fewshot_chroma_index.py 默认读此变量) FEWSHOT_DATA_PATH=./data/experiences/all_samples.jsonl # Few-shot 向量持久化目录(Chroma 集合名默认 fewshot_samples;勿与 VECTOR_DB_PATH 混用同一目录) FEWSHOT_CHROMA_PATH=./data/embeddings/chroma_fewshot # ========== 验证配置 ========== ENABLE_SQL_VALIDATION=true BLOCK_DANGEROUS_SQL=true # ========== 重试配置 ========== MAX_RETRY=2 # 确定性模式:只尝试一次,不重试 RETRY_DELAY=1.0 # ========== Few-shot 配置 ========== # 是否启用经验数据集few-shot增强 FEWSHOT_ENABLED=true # 每次使用的示例数量 FEWSHOT_TOP_K=3 # 示例最低评分(1-10) FEWSHOT_MIN_RATING=7 # 优先使用 Chroma 向量库(运行时检索不依赖 JSONL;灌库: python scripts/build_fewshot_chroma_index.py --force) FEWSHOT_USE_CHROMA=true # 留空则用代码默认集合名 fewshot_samples FEWSHOT_CHROMA_COLLECTION= # ========== 日志配置 ========== LOG_LEVEL=INFO LOG_FILE=./logs/text2sql.log # 业务库 SQLAlchemy URL(试执行探针 / dbhub);也可用 DATABASE_URL database_url=mssql+pymssql://sa:123456@192.168.3.201:1433/G3SB_PROD_HW