马怡煖 · 作品集 菜单 ☰
PORTFOLIO · 2026

马怡煖 · 全栈开发作品集

全栈工程师 · 前端开发 · 小程序开发 · 数据处理 · 2026 届

独立完成医疗问答系统(优秀毕设 90 分),毕业后上线 3 个真实项目, 服务 1000+ 用户、处理 6.8 万行订单数据。

全栈上线Vue / JavaPython数据处理有真实用户
查看项目 ↓ GitHub
01 · 毕业设计
基于知识图谱与通义千问 API 的医疗问答系统
⭐ 获评优秀毕设 · 点我看证书 2025.10 – 2026.05

针对通用大模型在医疗场景的"幻觉"问题,独立设计并实现图谱增强型 RAG 问答系统。用 Python 从 Huatuo-26M 数据集抽取实体关系,构建 50 万+ 实体、125 万+ 关系边的医疗知识图谱,以 MySQL 轻量化存储替代 Neo4j;按"图谱检索 → 结构化 Prompt → 通义千问生成"链路抑制幻觉。支持文本+图片多模态问答、ECharts 图谱可视化(BFS 最短路径)。Spring Boot + Vue3 全栈实现,70 个测试用例全过。

⚠️ 浏览器渲染限制:ECharts 在 DOM 中渲染约 1000 节点即出现卡顿,实际入库可视化仅展示 713 节点 / 1857 边的可达子图;全量图谱存于 MySQL,后续计划迁移 WebGL 渲染以支持更大规模。
50 万+
图谱实体
125 万+
关系边
70
测试用例全过
602.3
req/s @100 并发
PythonSpring BootVue3MySQL通义千问 APIECharts
展开技术细节
  • 数据构建:从 Huatuo-26M 问答语料用规则 + LLM 抽取症状 / 疾病 / 药品 / 检查实体及关系,清洗去重后入 MySQL。
  • 检索与生成:以问题为起点做 BFS 子图召回(限定层数与节点数),拼入结构化 Prompt,调用通义千问生成,抑制通用大模型幻觉。
  • 多模态:支持文本 + 图片混合输入,图片经 OCR 识别后并入问答上下文。
  • 性能与测试:JMeter 100 并发压测 602.3 req/s、错误率 0%;JUnit 70 个测试用例全部通过。
  • 工程取舍:不引入 Neo4j,用 MySQL 邻接表存图谱,降低部署成本;前端仅渲染 713 节点子图以规避 DOM 渲染上限。
02 · 实践学期作品
基于 Vector RAG 的智能医疗问答助手
作品展二等奖 · 点我看证书2025.07 – 2025.10

实践学期独立作品。从 Huatuo26M 数据集清洗出约 18 万条医患问答对、切块为 183 万文本片段,用 text2vec-base-chinese 编码为 384 维向量、建 FAISS 索引(GPU 加速)实现毫秒级检索,融合通义千问 API 流式输出。基于 Gradio 做「医疗咨询 / 用药管理 / 健康档案 / 对话历史」四模块,提示词约束模型按症状分析、用药指导等 7 个结构化模块输出,规避幻觉。

18 万
问答对 / 183 万片段
384 维
text2vec 向量
90%
问答准确率
95%
病史记忆率
Pythontext2vec-base-chineseFAISS通义千问 APIGradio
展开技术细节
  • 数据:Huatuo26M(约 18 万医患问答对)清洗为 JSONL,切块生成约 183 万规范片段。
  • 向量化:text2vec-base-chinese → 384 维向量,FAISS 建索引并启用 GPU 加速。
  • 生成:Top-K 检索 + 历史对话拼入结构化 Prompt → 通义千问 API 流式逐字输出。
  • 功能闭环:用药方案正则提取(90% 准确率)、健康档案、按日期回溯对话,JSON 本地持久化。
  • 工程取舍:本地显存不足以微调大模型,改用「向量检索 + API」零训练成本方案。
03 · 个人项目 · 真实落地
十万级订单数据分析平台
多管理员轮班 · Cloudflare Pages2026.07 – 至今
订单数据分析平台截图

为粉丝社群活动运营方开发的浏览器端数据审核平台:管理员上传微店 / 来豹接龙导出的 Excel,浏览器本地解析,自动完成主订单统计、碎卡兑换审核与集赞礼兑核对;多管理员分班协作,通过 Cloudflare Workers KV 云端同步两套审核小表,全程修改留痕、可追溯。

✅ 已被社群实际采纳:主订单 6.8 万行本地解析不卡 UI,叠加碎卡兑换、集赞礼兑等多 Sheet(约 1 万行),自动生成查询表替代人工对账。
6.8 万
行主订单本地解析
3,400+
分析用户
4 班
多管理员轮班
KV
云端小表同步
原生 JavaScriptSheetJSEChartsCloudflare Workers KV
展开技术细节
  • 主订单分析:SheetJS 兼容 UTF-8/GBK 解析 6.8 万行 Excel,本地计算卡型分布、销量 TOP、用户统计、活动期与满赠达标,不卡 UI;ECharts 出图。
  • 碎卡兑换审核:按"提交"聚合兑换请求,支持通过 / 未找到用户 / 人工放行,每条客服修改写入历史表。
  • 集赞礼兑核对:三 Sheet(通过 / 重复问卷 / 不通过)导入核对,人工指定微信昵称归属,自动重算并留痕。
  • 多班协作:大表本地不上云,云端只存两套审核小表(KV 整份快照);登录自动探测合并,保存前先拉云端再写回,降低并发覆盖。
  • 留痕:页面内修改历史表 + 导出 Excel 均含昵称列与 ✎已改 标记,交接时可追溯。
04 · 三端产品
抽抽乐(盲盒抽卡)记录器
v6.1 · 已上线2026.03 – 至今
抽抽乐记录器 · 首页 抽抽乐记录器 · 记录页 抽抽乐记录器 · 数据中心

面向粉丝社群的盲盒抽卡记录工具,已迭代至 v6.1,累计 1,000+ 用户。支持手动点选、OCR 识别、文本批量导入三种录入方式,内置 88 张卡牌图鉴、个人 9 档与全服 7 档满赠追踪。一套产品同时发布网页版、微信小程序版和 Android APK 版——APK 用命令行工具链自打包,不依赖 Android Studio,包体仅 132KB。

💾 数据通过 JSON 一键导入 / 导出备份,换设备不丢记录。
Web微信小程序Android APKOCR 识别JSON 导入导出
📦 下载 APK 安装包 在线访问 →
展开技术细节
  • 三端一致:同一套业务逻辑发布 Web、微信小程序、Android APK;APK 用命令行工具链自打包,不依赖 Android Studio,包体仅 132KB。
  • 三种录入:手动点选、OCR 识别小票、文本批量导入,适配粉丝不同使用习惯。
  • 数据备份:全部记录通过 JSON 一键导入 / 导出,换设备不丢数据。
  • 功能:内置 88 张卡牌图鉴、个人 9 档与全服 7 档满赠追踪,累计 1,000+ 用户。
05 · 个人项目 · PWA 双端上线
Orbit Life · 生活工作台
Web + Android 双端 · 已上线2026.08 – 至今
生活工作台 · Orbit Life 首页

为个人使用打造的纯前端生活仪表盘:番茄钟专注 + 12 个记录模块(灵感 / 体感 / 宠物 / 菜谱 / 衣橱 / 观影 / 好物 / 人情 / 社交 / 旅行 / 通勤),全部数据 localStorage 本地存储 + JSON 一键备份。零第三方依赖的单文件 PWA,同时用命令行工具链打包成原生 Android APK——零权限、纯离线,WebView 虚拟域名规避 file:// 下 localStorage 被系统清理的问题,包体仅 70KB。

12
记录模块
70KB
APK 包体
0
权限申请
双端
Web PWA + APK
原生 HTML/CSS/JSPWASVG 手写WebView 打包Cloudflare Pages
展开技术细节
  • 双端一致:同一套网页产物发布 Web PWA 与 Android APK;PWA 支持"添加到主屏幕"、离线可用。
  • APK 构建:aapt2 → javac → d8 → zipalign → apksigner 命令行工具链,不依赖 Android Studio,构建 < 5 秒。
  • 存储可靠性:WebView 用 shouldInterceptRequest 把资源映射到虚拟域名,规避 file:// 下 localStorage 被 ROM 当临时存储清理。
  • 主题:CSS 变量驱动的宇宙星河昼夜主题,响应式适配。
06 · CONTACT

欢迎聊聊 · 随时到岗

2026 届软件工程应届生,全栈开发方向,期望地点福州。
独立完成医疗问答系统(优秀毕设 90 分),已上线 3 个真实项目。

✉️ 3338329122@qq.com
📱 13665029873
💬 微信(扫码添加)
🐙 GitHub前往主页
🎬 飞咔演示视频打开
🎬 作品集二维码