RAG实战:基于FAISS+DeepSeek构建私人健康膳食助手

什么是RAG?

RAG(Retrieval-Augmented Generation,检索增强生成)是一种融合信息检索与文本生成的先进技术。它通过从外部知识库中动态检索相关信息,并输入给生成模型,显著提升生成内容的准确性、相关性和可信度,尤其适合知识密集型任务。

image

RAG 的工作流程主要分为三个步骤:

1.索引(Indexing):将知识高效地存储并结构化,构建便于检索的知识库。

2.检索(Retrieval):在海量知识中精准定位与用户问题最相关的内容片段。

3.生成(Generation):结合用户提问与检索到的参考资料,由大模型生成准确、有用的回答。

实战:使用 RAG 搭建个人健康助手

本项目基于 RAG 技术,构建了一个可回答膳食与营养相关问题的智能健康助手。

技术架构:

•大语言模型:DeepSeek-V3(生成模型)、Text-Embedding-V4(嵌入模型)

•向量数据库:FAISS(高效相似性检索)

•开发语言:Python

•开发环境:PyCharm

•知识来源:《中国居民膳食指南(2022)》(扫描版 PDF,需解析为图像并进行 OCR 处理)

代码已开源,欢迎访问 GitHub 查看详情与实现:

🔗 https://github.com/Mr-Zhaoly/ai-health-assistant.git

示例问答展示:
以下为健康助手针对“中午吃什么好?”生成的回答(附检索来源):

AI健康助手 - 基于中国居民膳食指南(2022)
我可以回答关于中国膳食指南和营养健康的问题

请输入你的问题: 中午吃什么好?
正在思考...
回答:
根据平衡膳食原则和不同人群的营养需求,以下是为午餐设计的科学搭配建议:

### 一、基础搭配框架
1. **主食**(1-2种)  
   - 推荐:糙米饭、全麦面条、杂粮馒头(粗细搭配)  
   - 可选:红薯、玉米、藜麦等富含膳食纤维的食材

2. **蛋白质**(2种组合)  
   - 动物性:清蒸鱼/虾、白灼鸡胸肉、卤牛肉(少油盐烹制)  
   - 植物性:凉拌豆腐/毛豆、腐竹炒时蔬

3. **蔬菜**(2-3种,不同颜色)  
   - 深色蔬菜:西兰花、菠菜(焯拌)  
   - 浅色蔬菜:冬瓜、白菜(清炒)  
   - 菌菇类:香菇炒油菜

4. **加餐水果**  
   - 应季水果如苹果、橙子(建议与正餐间隔30分钟食用)

### 二、分场景推荐
**🏠 居家/自带午餐**  
- 示例:  
  ✔️ 杂粮饭 + 香煎三文鱼(少油)  
  ✔️ 蒜蓉空心菜 + 胡萝卜炒木耳  
  ✔️ 海带豆腐汤 + 猕猴桃  

**🍱 外卖/食堂选择**  
- 安全原则:优先选择B级以上卫生单位  
- 推荐组合:  
  ✔️ 清汤牛肉面(要求少盐) + 白灼菜心  
  ✔️ 寿司拼盘(含鱼生需确保新鲜) + 味噌汤  
  ✔️ 避免:油炸类、腌制食品、明显高油脂菜品  

### 三、特殊人群调整
- **脑力劳动者**:增加深海鱼类(富含DHA)  
- **体力劳动者**:适量增加瘦肉和主食量  
- **控糖人群**:用荞麦面替代精制面条,搭配豆制品  

### 四、健康贴士
1. 烹饪方式优先:蒸>煮>炖>清炒  
2. 用油盐标准:  
   - 每人每餐≤10g油  
   - 盐摄入量<5g/天(建议使用限盐勺)  
3. 进餐时专注进食,避免看手机影响消化  

建议根据当日早餐/晚餐内容灵活调整,如早餐奶制品不足时,午餐可增加酸奶;晚餐计划吃红肉则午餐优选白肉。保持全天食物种类达12种以上更佳。

参考来源:
来源 1 (相似度: 0.679)
要吃饱不仅要保证食物的种类还要保证食物的营养质量。午餐的食物选择应当根据不同年龄人群的营养需要遵照平衡膳食的要求。主食可选择米或面制品做到粗细搭配2 3种蔬菜1 2种动物性食物如鱼虾等水产品、鸡肉、瘦猪肉、牛羊肉1种豆制品1份水果。无论是在家就餐还是在食堂、餐馆等就餐应注意食物多样、荤素搭配。在家吃午餐或自带午餐便于合理安排食物种类、控制烹饪用油、盐等可按照膳食指南推
来自第 15 页

来源 2 (相似度: 0.665)
初诣动藏命讯回开120当调整晚餐食物的摄入量保证全天营养平衡。同时做到清淡少油少盐。主食可以选富含膳食纤维的食物如小米、薏米、荞麦、红薯等既能增加饱腹感又可以促进肠胃蠕动搭配蔬菜、水果、适量动物性食物和豆制品多采用蒸、煮、炖、清炒等少用炸、烤等烹调方法。四在外就餐应注意什么应选择食品安全状况良好、卫生信誉度在 B 级及以上的餐饮服务单位。
来自第 16 页

来源 3 (相似度: 0.646)
用餐时间为15 20分钟午、晚餐用餐时间为20 30分钟。应细嚼慢咽享受食物的美味。进食环境影响消化液的分泌和食物的消化吸收。应营造轻松、愉快的进餐氛围可以放点轻音乐谈论轻松的话题进餐时应相对专注不宜边进餐边看电视、看手机等。合理分配一日三餐的食物量。通常以能量作为分配一日三餐进食量的标准。早餐提供的能量应占全天总能量的25 30午餐占30 40晚餐占30 35。每人每天摄入的能量应根据职业、劳动强度和生活习惯进行相应调整中、高身体活动水平者应分别比低身体活动水平者每天多摄入300kcal 800kcal的能量。
来自第 15 页

说明:该回答由 RAG 系统生成,内容综合了检索到的专业知识与语言模型的推理能力,确保既科学可靠又贴合实际需求。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容