# 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-4o-mini
# OPENAI_CHAT_MODEL=

# 模型配置
# 主生成模型

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
