节点
临床问题先进入意图分析,可回答时再生成 SQL。生成器进行基础语法检查与修复;执行及结果比较位于评估器中。
团队项目 · 帝国理工
在团队项目评估中正确回答了 20 个问题中的 17 个。
角色: 规划智能体设计、LangGraph 集成与失败案例评估。
将临床问题转换为基于 MIMIC-IV schema 的 SQL,并进行验证、修复与安全拒答。
系统表达
医院记录分散在不同数据表里。团队的助手把问题变成 SQL,也就是检索这些记录的指令。我的工作重点是分步规划、LangGraph 集成和失败案例测试。
2018 年有多少患者入院?
意图分析先判断问题类型;如果无法从数据库回答,就停止生成查询。
Gemini 2.5 Pro 接收问题、意图和 schema,即可用数据表的名称与结构。
基础语法检查识别不完整查询。生成器收到错误后可再次尝试,无法解决时不返回 SQL。
↺ 修复发生在生成器内部
治疗建议与检索已记录事实是不同的请求。系统可以返回 null,而不是强行生成 SQL。
评估器在 SQLite 中分别执行生成 SQL 和参考 SQL,再比较返回结果。语法检查通过,并不等于回答正确。
提供的 notebook 有 intent_analyzer 和 generator 两个 LangGraph 节点。生成器总共最多尝试两次。检查涉及 SELECT 基础结构、括号和不完整子句;表名检查给出提示,并不阻止输出。SQL 执行位于独立的诊断评估器中。这些检查不构成临床正确性的保证。
临床问题先进入意图分析,可回答时再生成 SQL。生成器进行基础语法检查与修复;执行及结果比较位于评估器中。
LangGraph 协调共享状态、节点与转移。
可回答的意图进入生成器,无法回答时结束图流程。语法修复和重试发生在生成器内部,随后返回输出。
无法安全回答时,系统以拒答结束。
核心思想 / 原理导读
SQL 用于查询关系型数据表。Text-to-SQL 将自然语言问题转换为查询,但语法正确并不代表回答了正确的问题。
规划将问题拆为人群、时间窗口、住院记录和聚合方式。先明确这些条件,可以将问题解释与 MIMIC-IV 查询构建分开。
状态承载一次运行中的信息。提供的实现包含意图分析和生成节点,条件边决定进入生成器还是结束。修复循环位于生成器内部。
基础语法检查可触发再次生成,表名检查仅作提示,执行则单独测试。查询能够解析或输出格式正确,都不保证回答正确。
自然语言请求
意图分析与分步拆解
基于 schema 生成 SQL
语法、schema、执行检查与修复
有效查询执行;无法解决时安全拒答
设计分步规划逻辑,集成 LangGraph 状态、节点与转移。
参与团队评估中的失败案例测试;团队正确回答了 20 个问题中的 17 个。
帝国理工团队项目,使用 MIMIC-IV。