EmoLLM
基于主流LLM微调的心理健康AI助手,支持多角色心理咨询、RAG知识增强与本地Web UI部署
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
基于主流LLM微调的心理健康AI助手,支持多角色心理咨询、RAG知识增强与本地Web UI部署
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
深夜三点,你刚结束一场高压面试,躺在床上辗转反侧,脑子里全是「如果失败了怎么办」。这时候,你会不会希望有个人能随时听你倾诉,不评判、不冷漠,只是静静地陪着你分析情绪——但现实是心理咨询师收费高昂,朋友的倾听又总是心有余而力不足。
EmoLLM(心理健康大模型) 正是为这个场景而生:它将InternLM、Qwen、DeepSeek、LLaMA、ChatGLM 等主流大模型,通过心理学专业数据集微调成「AI心理助手」,让任何人都能免费获得7×24小时的情绪陪伴和专业建议。这个项目由 SmartFlowAI 团队维护,目前已在 GitHub 收获超过 1700 颗星,是中国开源社区在心理健康 AI 领域最具影响力的实践之一。
大语言模型(LLM)在对话能力上已经非常强大,但它们默认是「知识型助手」——擅长回答编程问题、写文案、做总结,却对「我最近工作压力很大,感觉自己很失败」这类情绪表达显得生硬刻板。这是因为通用 LLM 的训练数据以知识性内容为主,缺少高质量的心理咨询对话数据。
EmoLLM 的核心思路是:用专业的心理健康数据集对主流 LLM 进行指令微调,让模型学会心理支持的语言模式——倾听、共情、引导,而不是直接给答案。 项目作者是 aJupyter(海孖/Jupyter),同时也是 ThinkLLM 等知名开源项目的作者,在 LLM 微调领域有深厚积累。团队通过 InternLM 浦语挑战赛 TOP50 的实践积累,最终将技术能力转化为心理健康应用。
项目的心理健康大模型概念覆盖了认知因素(思维模式、认知偏差)、情感因素(情绪调节、情感表达)、行为因素(应对策略、社交技能)、社会环境(家庭、工作背景)以及心理韧性评估等多个维度,力求在「理解用户→支持用户→帮助用户」的完整链路上提供支持。
EmoLLM 支持对InternLM2、Qwen、Baichuan、DeepSeek、Mixtral、LLaMA、ChatGLM 等十余个主流模型系列进行微调,微调方式涵盖全量微调(Full Fine-tuning)、LoRA、QLoRA 三种方案,适配不同硬件条件:
每个微调配置都有对应的 xtuner_config 脚本,基于 InternLM 团队开源的 XTuner 微调框架实现,配合 ModelScope 和 OpenXLab 平台可一键下载微调好的模型权重。
项目内置了多个精心设计的心理咨询角色,不同角色有不同的说话风格和专长:
角色通过不同的模型权重文件实现,替换模型即可切换角色风格。
EmoLLM 团队构建了丰富的心理健康对话数据集,覆盖单轮、多轮、角色扮演等多种场景:
| 数据集 | 规模 | 特点 |
|---|---|---|
| aiwei.json | 3.2MB | 艾薇角色的多轮咨询对话 |
| data.json | 3.8MB | 基础心理对话数据 |
| data_pro.json | 16MB | 专业级咨询对话 |
| mother_v1/v2.json | 5-9MB | 母亲视角心理支持 |
| single_turn_dataset | 25MB×2 | 单轮问答数据 |
| multi_turn_dataset | 15-8MB×2 | 多轮咨询对话 |
| psychology-10k-Deepseek-R1-zh.json | 45MB | 基于 DeepSeek-R1 的10k专业心理数据 |
其中 psychology-10k 是规模最大的专业数据集,直接利用 DeepSeek-R1 的推理能力生成了高质量的心理咨询问答。
EmoLLM 建立了两层评测体系:
通用指标评测:使用 ROUGE-1/2/L 和 BLEU-1/2/3/4 评估生成文本与参考答案的重叠度。评测显示 InternLM2_7B_base_qlora 在 10 epoch 训练后 ROUGE-L 达到 43.47%,显著优于原始 Qwen1.5-0.5B-chat 的 17.05%。
专业指标评测:引入论文 CPsyCoun 提出的「理解全面性(Comprehensiveness)」、「专业性(Professionalism)」、「真实性(Authenticity)」、「安全性(Safety)」四维评估框架,在 CPsyCounE 数据集上与 Role-playing ChatGPT 进行对比。EmoLLM V2.0(InternLM2_7B_chat_full)在专业性上达到 2.45,超越 Role-playing ChatGPT 在心理咨询任务上的表现。
EmoLLM 内置了基于 LangChain + FAISS 的 RAG(检索增强生成)系统,可将心理学专业知识(理论、方法论、经典案例)构建为向量数据库,在回答时实时检索相关知识片段,显著提升回答的专业性和可靠性。
具体流程:用户输入 → BAAI/bge-small-zh-v1.5 向量嵌入 → FAISS 相似度检索 → BAAI/bge-reranker-large 重排序 → 取 top-3 片段注入 prompt → LLM 生成回答。
在 agents/ 模块下,项目引入了 MetaGPT 多角色 Agent 框架,通过 config.yml 定义角色和工具,支持多 Agent 协作完成复杂心理支持任务。现已集成智谱 AI(ZhipuAI)和 OpenAI API。
| 资源 | 最低要求 | 推荐配置 |
|---|---|---|
| GPU | RTX 3060 12GB | RTX 4060Ti 16GB 及以上 |
| 显存 | 12GB | 16GB+ |
| 内存 | 16GB | 32GB |
| 磁盘 | 20GB | 50GB(多模型) |
| CUDA | 11.8 | 12.2 |
# 1. 克隆代码
git clone https://github.com/SmartFlowAI/EmoLLM.git
cd EmoLLM
# 2. 安装依赖
pip install -r requirements.txt
# 3. 下载模型(自动下载,支持 OpenXLab)
python download_model.py ajupyter/EmoLLM_aiwei
# 4. 启动 Web UI
python app.py
# 访问 http://0.0.0.0:7860
LMDeploy 是由 OpenMMLab 团队开发的 LLM 推理框架,支持 TurboMind 推理引擎,在多轮对话场景下性能是 vLLM 的 1.8 倍:
部署流程:安装 LMDeploy → 转换 TurboMind 格式 → 启动 API Server → Gradio/Streamlit 前端接入。
EmoLLM/
├── app.py # Streamlit 启动入口(多模型选择)
├── web_demo-aiwei.py # 艾薇角色 Web UI(主界面)
├── web_internlm2.py # 浦语角色 Web UI
├── web_demo-Llama3.py # LLaMA3 角色 Web UI
├── download_model.py # OpenXLab 模型自动下载
├── requirements.txt # Python 依赖(transformers, streamlit, accelerate)
├── xtuner_config/ # XTuner 微调配置文件(20+种配置)
├── swift/ # Swift 训练模块(data/ + src/)
├── datasets/ # 心理健康对话数据集(10+个 JSON 文件)
├── evaluate/ # 评测模块(通用/专业指标 + BLEU/ROUGE)
├── rag/ # RAG 检索增强模块(LangChain + FAISS)
├── agents/ # MetaGPT 多角色 Agent 框架
├── deploy/ # 部署文档(LMDeploy / API 部署)
├── quick_start/ # Jupyter Notebook 快速入门
└── assets/ # Logo、Demo GIF、部署截图
核心技术栈:Python + Transformers + Streamlit + XTuner + LangChain + FAISS + LMDeploy,覆盖了从数据处理、模型微调、评测到部署的完整 ML 生命周期。
这是 EmoLLM 团队主动坦诚的议题。项目在 README 末尾包含详尽的免责条款,明确指出:
这是一个负责任的态度——很多类似项目会刻意回避这些问题。但这也意味着:EmoLLM 的定位是「情绪支持工具」而非「诊断治疗工具」,对于中重度心理疾病患者,专业的医疗干预仍是必要且不可替代的。
MetaGPT Agent 模块目前功能相对基础,agents/README.md 仅 527 字节,actions 和 roles 子目录结构完整但实际功能较为简单,是项目未来迭代的重点方向。
填补心理健康 AI 的开源空白:全球范围内,将 LLM 微调应用于心理健康支持的开源项目并不多见,EmoLLM 提供了从数据、训练、评测到部署的完整闭环,具有较高的参考价值。
推动心理咨询民主化:在中国,心理咨询资源分布极不均衡,专业心理咨询师缺口巨大。一款可本地部署的心理健康 AI 助手,可以让缺乏心理咨询资源的地区和人群获得基础的情感支持。
多模型横向对比的实践价值:项目同时支持十余个主流模型系列的微调配置,为 LLM 在垂直领域应用的选型提供了丰富的横向对比参考。
图1:EmoLLM 官方 Logo
图2:模型文件目录结构(需完整下载 LFS 文件)
图3:LMDeploy 推理部署效果示意
图4:EmoLLM 技术发展路线图