主动上下文感知个人AI
隐私优先的人工智能代理,保持对您数字生活的持续感知,并主动提供见解、警告和帮助,而无需询问。
概述
该项目重新构想了个人人工智能助理的范式。该系统创建了一个 持续的、尊重隐私的记忆 您的目标、项目和习惯,成为真正的数字合作伙伴。
问题
当前的人工智能助手是上下文无关的,无状态的。他们:
- 忘记谈话之间的一切
- 要求您每次手动提供上下文
- 等待你提问,而不是预测需求
- 没有意识到你正在进行的项目和承诺
解决方案
一个主动的AI代理:
- 维护持久上下文 在您的所有数字工具中
- 预测您的需求 基于模式和即将发生的事件
- 提供及时干预 未经提示
- 从反馈中学习 随着时间的推移,提高其有用性
- 尊重您的隐私 采用本地优先加密架构
建筑
┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ Data Sources │ │ MCP Servers │ │ Core AI Agent │
│ │ │ │ │ │
│ • Gmail │◄──►│ • mcp-gmail │◄──►│ • Context │
│ • Calendar │ │ • mcp-calendar │ │ Engine │
│ • Notion │ │ • mcp-notion │ │ • Alert System │
│ • Slack │ │ • mcp-slack │ │ • ML Models │
│ • Health APIs │ │ • mcp-health │ │ │
└─────────────────┘ └──────────────────┘ └─────────────────┘
│
▼
┌─────────────────┐
│ Vector DB & │
│ Memory System │
└─────────────────┘核心组件
- MCP(模型上下文协议)服务器:连接到数据源的安全、权限范围的连接器
- 上下文引擎:持续处理数据流并保持动态的“用户状态”
- 矢量存储器:基于ChromaDB的数字活动历史语义搜索
- 警报分类系统:ML驱动的过滤器,学习什么是有用的干预
- 主动代理:协调所有组件并提供及时的见解
主要特点
主动干预
会议情报
"You have a meeting with Acme Corp in 30 minutes. Your last email to them
was about Q4 pricing, and the attached proposal document you're working on
hasn't been saved in 2 hours. Would you like to open it?"项目连续性
"I've noticed three emails from different team members about 'Project Phoenix'
this week, but it's not on your official project list in Notion. Should I
create a summary page?"健康监测
"Your screen time and calendar stress metrics have been high this week.
I've blocked a 1-hour 'focus time' slot for you tomorrow afternoon."技术创新
- 持续学习管道:从MCP流中获取数据,更新矢量数据库,并生成智能压缩摘要
- 因果推断:ML模型学习有意义的相关性与噪声,并通过反馈回路进行自我改进
- 隐私优先设计:在本地运行或使用E2E加密;MCP的权限模型确保数据隔离
- 智能投票:基于数据源更新模式的自适应轮询间隔
- 语义上下文匹配:用于跨源关系发现的向量嵌入
入门指南
先决条件
- Python 3.10+
- Docker&Docker编写
- 您的数据源(Gmail、日历等)的API凭据
- 建议使用8GB+RAM
安装
- 克隆存储库
git clone https://github.com/yourusername/proactive-ai.git
cd proactive-ai- 设置项目结构
mkdir -p core-agent/src/{context_engine,alert_system,memory,models}
mkdir -p mcp-servers/{gmail,calendar,notion,slack,shared}
mkdir -p frontend data config- 安装核心依赖项
cd core-agent
pip install -r requirements.txt- 配置环境变量
cp .env.example .env
# Edit .env with your API keys and credentials- 设置数据源凭据
# Place your OAuth credentials in config/
# - gmail_credentials.json
# - calendar_credentials.json
# - notion_token.txt- 使用Docker Compose启动
docker-compose up -d快速测试
运行一个最小测试来验证设置:
python core-agent/src/test_setup.py这将:
- 初始化矢量数据库
- 创建模拟MCP服务器
- 测试上下文提取
- 验证警报生成
项目结构
mcp-context-ai-agent/
├── core-agent/ # Main AI agent
│ ├── src/
│ │ ├── context_engine/ # Context processing and extraction
│ │ │ └── engine.py
│ │ ├── alert_system/ # Alert generation and triage
│ │ │ └── triage.py
│ │ ├── memory/ # Vector database interface
│ │ │ └── vector_store.py
│ │ ├── models/ # ML models for prediction
│ │ └── main_agent.py # Main orchestration loop
│ └── requirements.txt
├── mcp-servers/ # MCP server implementations
│ ├── shared/
│ │ └── base_server.py # Base MCP server class
│ ├── gmail/ # Gmail integration
│ ├── calendar/ # Calendar integration
│ ├── notion/ # Notion integration
│ └── slack/ # Slack integration
├── client/ # Web interface (optional)
├── data/ # Local data storage
├── config/ # Credentials and config files
├── docker-compose.yml
└── README.md🔧 配置
MCP服务器配置
每个MCP服务器都通过以下方式配置 config/mcp_config.json:
{
"servers": {
"gmail": {
"enabled": true,
"poll_interval": 300,
"credentials_path": "config/gmail_credentials.json"
},
"calendar": {
"enabled": true,
"poll_interval": 600,
"credentials_path": "config/calendar_credentials.json"
}
}
}警报系统配置
调整警报阈值 config/alerts_config.json:
{
"meeting_reminder_minutes": 30,
"min_alert_confidence": 0.7,
"working_hours": {
"start": "09:00",
"end": "18:00"
},
"alert_cooldown_minutes": 60
}运作原理
1.数据收集
MCP服务器持续轮询您的数据源:
- 日历:即将召开的会议、日程安排变更
- Gmail:新电子邮件、帖子、附件
- 概念:项目更新、任务更改
- Slack:团队沟通,提及
2.上下文提取
上下文引擎将原始数据处理为语义实体:
- 确定会议、项目、任务、沟通
- 计算重要性分数
- 发现实体之间的关系
- 生成用于语义搜索的向量嵌入
3.内存存储
实体存储在ChromaDB中,用于快速语义检索:
- 矢量嵌入实现了“基于意义”的搜索
- 元数据允许按时间、重要性、类型进行过滤
- 压缩摘要使上下文窗口易于管理
4.警报生成
该系统识别可操作的模式:
- 即将召开的会议,其中包含未保存的相关文档
- 任务管理器中未跟踪项目提及
- 暗示压力或超负荷的沟通模式
- 日程冲突或重复预订
5.警报分类
ML模型过滤警报以防止通知疲劳:
- 基于规则的初始方法(工作时间、优先级阈值)
- 从用户反馈中学习(解雇、采取的行动)
- 随着反馈的积累,定期回放
- 适应个人喜好和工作模式
6.主动交付
已验证的警报通过以下方式传递:
- 桌面提醒
- Web仪表板
- 移动应用程序(可选)
- 每日摘要电子邮件
隐私和安全
该项目的设计以隐私为核心原则:
当地第一建筑
- 所有处理都发生在您的计算机或专用服务器上
- 没有数据发送给外部人工智能提供商(通过Ollama使用本地LLM)
- ChromaDB使用加密存储在本地运行
MCP权限模型
- 每个MCP服务器只能访问其数据源
- Gmail服务器无法访问您的健康数据
- 日历服务器无法读取您的电子邮件
- 每个数据源都需要明确同意
数据加密
- 所有静态加密存储的凭据
- 数据库可选E2E加密
- OAuth流的安全令牌管理
数据保留
- 可配置的保留策略(默认值:90天)
- 自动修剪旧上下文数据
- 用户控制的数据删除
路线图
第一阶段:基础(第1-4周)
- \[x\] 项目结构设置
- \[x\] 基本MCP服务器实现
- \[x\] 矢量数据库集成
- \[\]日历和Gmail集成
- \[\]简单的基于规则的警报
第二阶段:智力(第5-8周)
- \[\]具有实体提取功能的上下文引擎
- \[\]跨源关系发现
- \[\]警报分流ML模型
- \[\]反馈收集系统
第三阶段:扩张(第9-12周)
- \[\]概念整合
- \[\]Slack集成
- \[\]健康API集成
- \[\]Web仪表板用户界面
第4阶段:优化(第13-16周)
- \[\]性能调整
- \[\]ML模型改进
- \[\]移动应用程序(可选)
- \[\]高级个性化
贡献
欢迎投稿!这个项目雄心勃勃,从不同的角度受益。
贡献领域
- 其他MCP服务器实现(GitHub、Todoist等)
- 用于警报分类的ML模型改进
- 隐私保护技术
- 仪表板的UI/UX
- 文件和示例
开发设置
- 复刻仓库
- 创建要素分支:
git checkout -b feature/amazing-feature - 进行更改并添加测试
- 承诺:
git commit -m 'Add amazing feature' - 推:
git push origin feature/amazing-feature - 打开拉取请求
性能注意事项
资源使用情况
- 记忆:~2-4GB用于矢量数据库和模型
- 中央处理器:闲置时最小;上下文处理过程中的尖峰
- 存储:每月约100MB的上下文数据(因使用情况而异)
优化提示
- 根据数据源更新频率调整轮询间隔
- 使用较小的嵌入模型以加快处理速度
- 实施增量更新而不是完整扫描
- 缓存频繁访问的上下文实体
故障排除
常见问题
MCP服务器连接失败
# Check server logs
docker-compose logs mcp-calendar
# Verify credentials
cat config/calendar_credentials.json矢量数据库查询速度慢
# Rebuild index
python core-agent/src/memory/rebuild_index.py警报过多/过少
- 调整
min_alert_confidence在alertsconfig.json中 - 提供更多反馈以改进ML模型
- 检查工作时间配置
延伸阅读
许可证
此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。
致谢
- 受情境感知计算和主动人工智能研究的启发
- 基于模型上下文协议(MCP)构建
- 使用ChromaDB进行矢量存储
- 利用句子变换器进行嵌入
______________________________________________________________________
备注:这是一个探索主动人工智能辅助界限的实验项目。在执行系统建议的任何操作之前,始终对其进行审查和验证。
