针对通用大模型在医疗场景的"幻觉"问题,独立设计并实现图谱增强型 RAG 问答系统。用 Python 从 Huatuo-26M 数据集抽取实体关系,构建 50 万+ 实体、125 万+ 关系边的医疗知识图谱,以 MySQL 轻量化存储替代 Neo4j;按"图谱检索 → 结构化 Prompt → 通义千问生成"链路抑制幻觉。支持文本+图片多模态问答、ECharts 图谱可视化(BFS 最短路径)。Spring Boot + Vue3 全栈实现,70 个测试用例全过。
展开技术细节
- 数据构建:从 Huatuo-26M 问答语料用规则 + LLM 抽取症状 / 疾病 / 药品 / 检查实体及关系,清洗去重后入 MySQL。
- 检索与生成:以问题为起点做 BFS 子图召回(限定层数与节点数),拼入结构化 Prompt,调用通义千问生成,抑制通用大模型幻觉。
- 多模态:支持文本 + 图片混合输入,图片经 OCR 识别后并入问答上下文。
- 性能与测试:JMeter 100 并发压测 602.3 req/s、错误率 0%;JUnit 70 个测试用例全部通过。
- 工程取舍:不引入 Neo4j,用 MySQL 邻接表存图谱,降低部署成本;前端仅渲染 713 节点子图以规避 DOM 渲染上限。
实践学期独立作品。从 Huatuo26M 数据集清洗出约 18 万条医患问答对、切块为 183 万文本片段,用 text2vec-base-chinese 编码为 384 维向量、建 FAISS 索引(GPU 加速)实现毫秒级检索,融合通义千问 API 流式输出。基于 Gradio 做「医疗咨询 / 用药管理 / 健康档案 / 对话历史」四模块,提示词约束模型按症状分析、用药指导等 7 个结构化模块输出,规避幻觉。
展开技术细节
- 数据:Huatuo26M(约 18 万医患问答对)清洗为 JSONL,切块生成约 183 万规范片段。
- 向量化:text2vec-base-chinese → 384 维向量,FAISS 建索引并启用 GPU 加速。
- 生成:Top-K 检索 + 历史对话拼入结构化 Prompt → 通义千问 API 流式逐字输出。
- 功能闭环:用药方案正则提取(90% 准确率)、健康档案、按日期回溯对话,JSON 本地持久化。
- 工程取舍:本地显存不足以微调大模型,改用「向量检索 + API」零训练成本方案。
为粉丝社群活动运营方开发的浏览器端数据审核平台:管理员上传微店 / 来豹接龙导出的 Excel,浏览器本地解析,自动完成主订单统计、碎卡兑换审核与集赞礼兑核对;多管理员分班协作,通过 Cloudflare Workers KV 云端同步两套审核小表,全程修改留痕、可追溯。
展开技术细节
- 主订单分析:SheetJS 兼容 UTF-8/GBK 解析 6.8 万行 Excel,本地计算卡型分布、销量 TOP、用户统计、活动期与满赠达标,不卡 UI;ECharts 出图。
- 碎卡兑换审核:按"提交"聚合兑换请求,支持通过 / 未找到用户 / 人工放行,每条客服修改写入历史表。
- 集赞礼兑核对:三 Sheet(通过 / 重复问卷 / 不通过)导入核对,人工指定微信昵称归属,自动重算并留痕。
- 多班协作:大表本地不上云,云端只存两套审核小表(KV 整份快照);登录自动探测合并,保存前先拉云端再写回,降低并发覆盖。
- 留痕:页面内修改历史表 + 导出 Excel 均含昵称列与 ✎已改 标记,交接时可追溯。
面向粉丝社群的盲盒抽卡记录工具,已迭代至 v6.1,累计 1,000+ 用户。支持手动点选、OCR 识别、文本批量导入三种录入方式,内置 88 张卡牌图鉴、个人 9 档与全服 7 档满赠追踪。一套产品同时发布网页版、微信小程序版和 Android APK 版——APK 用命令行工具链自打包,不依赖 Android Studio,包体仅 132KB。
展开技术细节
- 三端一致:同一套业务逻辑发布 Web、微信小程序、Android APK;APK 用命令行工具链自打包,不依赖 Android Studio,包体仅 132KB。
- 三种录入:手动点选、OCR 识别小票、文本批量导入,适配粉丝不同使用习惯。
- 数据备份:全部记录通过 JSON 一键导入 / 导出,换设备不丢数据。
- 功能:内置 88 张卡牌图鉴、个人 9 档与全服 7 档满赠追踪,累计 1,000+ 用户。
为个人使用打造的纯前端生活仪表盘:番茄钟专注 + 12 个记录模块(灵感 / 体感 / 宠物 / 菜谱 / 衣橱 / 观影 / 好物 / 人情 / 社交 / 旅行 / 通勤),全部数据 localStorage 本地存储 + JSON 一键备份。零第三方依赖的单文件 PWA,同时用命令行工具链打包成原生 Android APK——零权限、纯离线,WebView 虚拟域名规避 file:// 下 localStorage 被系统清理的问题,包体仅 70KB。
展开技术细节
- 双端一致:同一套网页产物发布 Web PWA 与 Android APK;PWA 支持"添加到主屏幕"、离线可用。
- APK 构建:aapt2 → javac → d8 → zipalign → apksigner 命令行工具链,不依赖 Android Studio,构建 < 5 秒。
- 存储可靠性:WebView 用 shouldInterceptRequest 把资源映射到虚拟域名,规避 file:// 下 localStorage 被 ROM 当临时存储清理。
- 主题:CSS 变量驱动的宇宙星河昼夜主题,响应式适配。