🧠🎵 MindEchoAgent - 情绪驱动的音乐推荐智能体,用AI感知心情,用音乐温暖心灵。
目前它是一个基于 hello-agents 框架构建的情绪音乐推荐智能体。
- 🎧 情绪驱动,而非标签驱动:基于深度情绪识别而非简单标签匹配
- 🧠 Agent + Tool 架构:基于Hello-Agents框架,模块化设计,易于扩展
- 🧪 完全模拟,稳定可控:可内置高质量模拟数据,无需API密钥即可体验全部功能
- 🎛 Gradio 快速演示:开箱即用的Web界面,支持实时交互演示
- 🔄 记忆系统(待完善):具备短期心境记忆,可记录和分析情绪变化模式
- 📱 多端适配(待扩展):Web界面适配移动端,后续支持智能家居设备
- 核心框架: hello-agents >= 0.2.7
- Web界面: gradio >= 4.0
- 语言环境: Python 3.10+
- 数据处理: json, datetime, typing
- 环境管理: python-dotenv
# 1. 克隆项目
git clone https://github.com/pamdla/MindEchoAgent.git
cd MindEchoAgent
# 2. 安装依赖
pip install -r requirements.txt
# 3. 启动应用
python main.pyMindEchoAgent/
├── main.py # Gradio主界面
├── requirements.txt # 依赖列表
├── README.md # 项目说明
├── .env.example # 环境变量示例
├── assets/ # 静态资源
│ ├── architecture.png # 架构图
│ └── demo-screenshot.png # 演示截图
├── src/ # 源代码
│ ├── __init__.py
│ ├── agents/ # 智能体模块
│ │ ├── __init__.py
│ │ └── mind_echo_agent.py # 主智能体
│ └── tools/ # 工具模块
│ ├── __init__.py
│ ├── mood_music_tool.py # 音乐推荐工具
│ ├── text_comfort_tool.py # 文字安慰工具
│ └── mood_summary_tool.py # 心情总结工具
└── data/ # 数据目录
└── mood_history.json # 心情历史记录
- 情绪识别与响应
- 对话状态识别: 初始状态、情绪识别、情感支持、音乐推荐、情绪反思、问题升级6种状态
- 多维情绪检测:识别开心、悲伤、放松、专注、压力、兴奋等6种核心情绪
- 上下文感知:结合场景(工作、运动、学习、睡前等)提供精准推荐
- 自然语言交互:理解口语化表达,如"今天好累"、"心情美美的"
- 智能音乐推荐(待完善)
- 个性化播放列表:根据心情和场景生成定制化音乐推荐
- 模拟数据引擎:可内置偏好的曲目,覆盖多种风格和场景
- 播放时长计算:智能计算播放列表总时长,优化聆听体验
- 情感支持系统
- 双模式安慰引擎:预设回复 + LLM生成,确保稳定性和创造性
- 共情表达:温暖、支持的语气,搭配适当的emoji表情
- 实用建议:提供具体、可操作的情绪调节建议
- 心境记忆分析
- 历史记录:自动记录每次交互的心情状态
- 模式识别:分析情绪变化趋势和时间分布
- 个性化洞察:提供基于历史数据的个性化建议
启动应用后,
- 在浏览器打开 http://localhost:7860
- 输入心情描述,如:"今天工作压力好大,想听放松的音乐"
- 查看智能响应,包含:
情绪识别结果 个性化音乐推荐 情感支持文字 心情分析报告
- 功能扩展【近期(~1个月)】
- 记忆系统(记录和分析情绪变化)
- 音乐预览片段(30秒试听功能)
- 增加音乐文件(不同类型1\~2首歌曲)
- 增加语音监听、长时在线接收用户输入、分析语调、语气等
- 增加音乐生成能力(也许搜不到合适的、或者用户不满意、那么路由到音乐生成agent)- 用户体验优化【中期(~2个月)】
# 计划新增功能
- 对话历史管理(支持多轮对话上下文)
- 情感强度调节滑块(用户可调整推荐强度)
- 个性化偏好设置(音乐风格、语言偏好)
- 多端适配(支持家居设备,音箱、灯光、窗帘等)阶段1:基础对接
# 技术栈:Python + MiService + WebSocket
# 1. 创建小米音箱技能
- 注册小米开发者账号
- 创建智能家居技能
- 配置语音交互模型
# 2. 实现语音接口
- 语音转文本(ASR)
- 文本转语音(TTS)
- 指令解析与响应
# 3. 设备控制集成
- 播放控制(播放、暂停、切歌)
- 音量调节
- 播放列表管理感谢以下项目和社区的支持:
所有贡献者和用户