山东大学软件学院-项目实训-个人开发日志(一):BabyMind项目启动
引言
我是山东大学软件学院2023级本科生张钧虹,“字节摇篮队”负责人。在接下来的几个月时间内,我将会持续更新我们团队开发“BabyMind:基于多Agent和RAG的科学育儿辅助平台”的项目过程展示推文。本博客将作为我的个人开发记录站,在复盘我在选题阶段的思考路径、技术选型的同时,记录代码实现,以及项目开发过程中难点的攻克。
一、选题前的“磨刀”:技术预研与方向洞察
在项目实训正式开题前,为了避免盲目选题和技术栈踩坑,我进行了技术预研与市场调研。这段经历不仅帮助我和团队确立了基于多Agent和RAG的科学育儿辅助平台这一方向,更让我对当前大模型应用开发的主流范式有了清晰的认知。
我主要进行了两项准备工作:
1、主流技术框架的深度扫盲
面对日新月异的大模型生态,我认为只有对当前的主流技术框架有了初步认知之后,才能更好地思考选题方向以及实现路径。于是,第一步,我先通过速刷B站上的各类视频教程快速构建了知识体系:
①速刷了《黑马程序员大模型RAG与Agent智能体项目实战教程》,深入理解了LangChain的核心概念(Chain,Agent,Memory,Tools)。我认识到,LangChain在灵活编排多Agent协作和非结构化数据处理上具有天然优势,非常适合需要复杂逻辑推理的育儿场景。
②同时学习了《黑马程序员SpringAI+DeepSeek大模型应用开发实战视频教程》,了解了传统Java项目如何通过SpringAI进行AI化转型。
虽然团队成员更熟悉Java语言,但考虑到本项目核心在于RAG向量检索的动态性和Agent的自主规划能力,Python生态下的LangChain+Chroma组合在社区支持、插件丰富度及原型开发速度上优于当前的SpringAI方案,并且现在AI领域的研究与应用基本离不开Python的学习。因此,我主张后端采用Python(FastAPI)而非Java,以确保能最快落地多Agent协作逻辑。
2、智能体比赛选题的风向标分析
为了验证选题的可行性与创新性,我广泛搜索了近期各类大模型智能体比赛的赛事选题方向和优秀案例,如讯飞杯、文心智能体大赛。
我发现“医疗咨询”、“法律助手”、“教育辅导”、“情感抚慰”是最热门的几个选题方向。结合调研结果,我主要锁定两个方向作为选题参考:医疗和生活。考虑到通用医疗问答存在严重的合规风险,面对复杂病情可能出现误诊等情况,并且领域过于宽泛,学期内项目开发难以达到很高的深度等诸多问题。最终我们选择了同时兼具医疗和生活属性的“婴幼儿科学养育”这个方向。
我们主要锁定了0-3岁婴幼儿的父母这一高需求群体。现有网络信息繁杂、难以甄别,同时现有的应用多为静态知识库查询,缺乏主动式、个性化、多模态的智能体服务。家长在育儿中面临的“信息过载却精准性不足”、“突发状况手足无措”等痛点,恰好能通过RAG+多Agent的技术组合来解决。
于是,基于对技术框架的认知和对垂直细分赛道的观察,我们最终确定了BabyMind项目,避免做通用对话智能体的同质化竞争。
二、我的角色与核心任务
在3月21日晚上我们进行了团队的第一次会议,经过讨论,我们确定了选题方向和初步的技术分工,我主动承担以下工作:
①负责基于FastAPI的异步后端框架搭建,利用其协程特性解决大模型API调用的延迟与并发问题。设计RESTfulAPI,对接Android前端(Kotlin),确保数据交互的高效性。
②寻找育儿领域的权威数据,如《国家免疫规划》、《婴幼儿喂养指南》,并进行清洗、切片与向量化,构建向量数据库Chroma。
③通过精细化的Prompt Engineering,强制模型输出结构化医疗建议。
④设计健康、时间轴、营养三个模块的Agent。实现Agent间的状态共享与任务分发,比如:生病导致疫苗自动重排的动态逻辑。
三、技术选型深度复盘
以下是我整理的项目技术选型表格:
| 架构层级 | 核心技术/组件 | 选型理由与具体作用 |
|---|---|---|
| 前端交互层 | Kotlin (Android) | 原生开发:保障App在低端机型上的流畅度 UI实现:构建动态疫苗时间轴、红色高危预警弹窗及结构化问答界面 |
| 多模态交互 | ASR + Qwen3-TTS | 语音闭环:兼具语音识别ASR与文本转语音TTS功能,实现抱娃场景下的免手操双向语音交互 |
| 后端服务层 | Python FastAPI | 异步并发:利用async/await协程特性,提升多用户并发响应速度 |
| Agent | LangChain | 多 Agent 协作:设计健康、疫苗、营养三个专用Agent 逻辑调度:实现Agent间的工具调用与状态共享 |
| RAG | Chroma + Embedding | 向量检索:存储权威育儿知识向量,提供语义检索能力; 避免AI幻觉:通过RAG使模型基于知识库回答,消除医疗建议幻觉。 |
| 数据存储层 | MySQL + Chroma | 混合存储: 1、MySQL:存储用户账号等结构化业务数据; 2、Chroma:存储《育儿指南》等非结构化知识的向量索引。 |
| 协作 | Docker + Gitee | 环境一致性:容器化部署后端服务,避免依赖冲突; 版本管理:规范代码提交与分支管理,支持团队并行开发。 |
四、第一周工作概况:
1、选题方向与技术定型:
我先通过教程视频了解当前主流技术框架,同时利用网络检索当前热门选题赛道,然后进行小组内会议讨论,最终决定选定当前方向与技术框架。
2、开发环境标准化:
已初步在Android Studio搭建前端Kotlin框架,并在Gitee创建仓库Babymind,具体地址如下:https://gitee.com/Attachment818/baby-mind.git。
五、遇到的挑战与下周计划
1、数据需求:权威育儿数据的数字化程度不一,部分PDF清晰度不足,难以解析,需要寻找高效的OCR或替代方案。
2、幻觉边界:对于如何界定“可以回答的健康建议”与“必须转人工的医疗急症”,需要设计一套严格的Prompt分类器。
六、结语
从观看教程时的懵懂,到对比技术栈时的纠结,再到最终确定BabyMind架构的坚定,这一周的预研让我深刻体会到:大模型应用开发,不仅仅是调用API,更是对业务场景的深度理解和对技术边界的精准把控。
接下来的三个月,我将脚踏实地写好每一行代码,做好每一次Prompt优化。BabyMind不仅是一个作业,更是我们团队应用AI技术的一次尝试。
欢迎各位老师、同学批评指正!
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)