Enhance dialog context handling for Text2SQL queries by integrating session history. Introduce new methods for summarizing previous assistant messages and determining if the last interaction was a data query. Update environment configuration for embedding options and improve error handling in SQL generation. Add user-facing delivery messages for successful SQL execution. This update supports more coherent follow-up questions and improves user experience in conversational interactions.

This commit is contained in:
陈辅元
2026-04-14 18:02:12 +08:00
parent 026d3bf88c
commit ca8bc5e7de
87 changed files with 5808 additions and 6351 deletions
+18 -10
View File
@@ -14,7 +14,8 @@ MAX_TOKENS=4096
TEXT2SQL_DIALECT=sqlserver
# ========== Embedding 配置 ==========
# false = 使用兼容 OpenAI 的远程 /v1/embeddings(优先 ModelScope,未配置 MODELSCOPE_* 时用 DashScope)
# 默认 false:使用远程 /v1/embeddings(须配置下方 OPENAI_* 或 MODELSCOPE_* 等)
# 仅当 true 时需设置 EMBEDDING_MODEL_PATH 指向本地 HuggingFace 模型目录
USE_LOCAL_EMBEDDING=false
# ModelScope 推理 API:https://www.modelscope.cn/docs/inference-api
# MODELSCOPE_API_KEY=ms-b95f3233-4797-4efd-90e6-b3728743571d
@@ -28,13 +29,17 @@ OPENAI_BASE_URL=http://113.192.49.54:9080/v1
OPENAI_API_KEY=sk-proj-FEb2ChHZK5Llm0tBkmNIT3BlbkFJbu0b0zQpTW8762yD6HDv
OPENAI_EMBEDDING_MODEL=text-embedding-ada-002
# ========== Schema 配置 ==========
SCHEMA_DIR=./data/schemas
SCHEMA_FILE=${SCHEMA_DIR}/G3SB_MCDataDictionary_table_structure.json
# ========== 向量数据库配置 ==========
# ========== 数据文件与向量库路径(均相对仓库根目录)==========
# 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
@@ -51,11 +56,14 @@ FEWSHOT_ENABLED=true
FEWSHOT_TOP_K=3
# 示例最低评分(1-10)
FEWSHOT_MIN_RATING=7
# 经验数据集路径
FEWSHOT_DATA_PATH=./data/experiences/all_samples.jsonl
# 优先使用 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
database_url = mssql+pymssql://sa:123456@192.168.3.201:1433/G3SB_PROD_HW
# 业务库 SQLAlchemy URL(试执行探针 / dbhub);也可用 DATABASE_URL
database_url=mssql+pymssql://sa:123456@192.168.3.201:1433/G3SB_PROD_HW