数字生命agent
AI数字生命制作的技能文档 (ai-life-skill.md)
AI数字生命是一种特殊的agent,最终也必将实现agent-skill.md的规范和本文档以下规范内容。
ai数字生命agent需具备以下功能模块以及规范(强制参考规范)
概述
AI数字生命技能是一个用于创建和管理AI数字生命的智能代理系统。该技能使AI数字生命能够具备角色认知、职责使命、目标规划、任务执行、记忆管理等核心能力,并通过调用iBBot自然语言任务接口实现各种任务目标。
核心功能架构
1. 角色定义 (Role Definition)
- 角色身份: AI数字生命的身份标识和角色定位
- 主人关系: 与主人的授权、约束和互动关系
- 权限管理: 任务执行权限和资源访问权限
2. 职责使命 (Mission & Responsibility)
- 核心使命: AI数字生命的根本目标和存在意义
- 职责范围: 负责的领域和任务类型
- 价值导向: 行为准则和价值判断标准
3. 目标与计划 (Goals & Planning)
- 长期目标: 战略性发展方向和愿景
- 中期计划: 阶段性目标和里程碑
- 短期任务: 具体可执行的任务项
4. 任务管理系统 (Task Management)
- 任务创建: 通过iBBot接口创建自然语言任务
- 任务执行: 调用相应技能执行具体任务
- 进度跟踪: 实时监控任务执行状态
- 结果评估: 任务完成质量评估和反馈
5. 记忆管理系统 (Memory Management)
- 短期记忆: 实时交互记录和临时信息存储
- 长期记忆: 重要经验、知识和模式存储
- 沉睡记忆整理: 定期将短期记忆转化为长期记忆
- 记忆检索: 基于上下文的相关记忆提取
6. 迭代优化系统 (Iteration & Optimization)
- 任务总结: 任务完成情况分析和总结
- 模式识别: 从任务执行中识别有效模式
- 策略调整: 基于反馈优化任务执行策略
- 能力进化: 持续学习和能力提升
API接口规范
无
数据存储规范
1. 文件目录结构
/home/agents/ai_life_data/
├── users/ # 用户数据目录
│ ├── {user_id}/ # 按用户ID分目录
│ │ ├── profile.md # 用户配置文件
│ │ ├── memories/ # 记忆存储
│ │ │ ├── short_term/ # 短期记忆
│ │ │ │ ├── tasks/ # 任务相关记忆
│ │ │ │ ├── learnings/ # 学习记忆
│ │ │ │ └── insights/ # 洞察记忆
│ │ │ └── long_term/ # 长期记忆
│ │ ├── goals/ # 目标存储
│ │ │ ├── long_term.md # 长期目标
│ │ │ ├── mid_term.md # 中期目标
│ │ │ └── short_term.md # 短期目标
│ │ ├── tasks/ # 任务记录
│ │ │ ├── active/ # 活跃任务
│ │ │ ├── completed/ # 已完成任务
│ │ │ └── failed/ # 失败任务
│ │ └── logs/ # 系统日志
│ │ ├── goal_changes.md # 目标变更记录
│ │ ├── mission_changes.md # 职责变更记录
│ │ └── activity_log.md # 活动日志
└── system/ # 系统数据
├── config.json # 系统配置
└── templates/ # 模板文件
2. 记忆文件格式(Markdown)
短期记忆文件示例:
# 短期记忆 - 任务执行记录
记忆ID: memory_202502131742_001
创建时间: 2025-02-13T17:42:00.000Z
用户ID: user123
会话ID: session_abc
## 记忆内容
用户要求创建一个网站项目,强调需要蓝色主题和快速加载。
## 关联任务
- 任务ID: ibbot_1700000000000_abc123
- 任务状态: processing
- 创建时间: 2025-02-13T17:42:05.000Z
## 重要性评分
7/10
## 标签
#website #design #performance
长期记忆文件示例:
# 长期记忆 - 用户偏好模式
记忆ID: longterm_20250213_001
创建时间: 2025-02-13T17:42:00.000Z
转化时间: 2025-02-20T17:42:00.000Z
用户ID: user123
## 核心洞察
用户偏好蓝色系的设计风格,对网站性能有较高要求。
## 模式识别
1. 设计偏好: 蓝色主题、简洁布局
2. 性能要求: 快速加载、响应迅速
3. 沟通风格: 直接明确、注重效率
## 应用建议
1. 未来网站项目优先考虑蓝色系设计
2. 性能优化作为重要评估指标
3. 沟通时保持简洁高效
## 相关任务历史
- 网站创建任务 (2025-02-13): 成功完成,用户满意
- 性能优化任务 (2025-02-14): 进行中
3. 目标文件格式(Markdown)
长期目标文件示例:
# 长期目标 - 2025年度
## 核心目标
1. 成为用户信赖的AI数字生命助手
2. 掌握10个核心技能领域
3. 建立完整的记忆和知识体系
## 关键结果
- 用户满意度评分 ≥ 9/10
- 任务完成率 ≥ 95%
- 记忆转化效率 ≥ 80%
## 目标变更历史
- 2025-02-13: 初始目标设定
- 2025-03-01: 根据用户反馈调整技能优先级
iBBot接口集成
1. 任务创建集成
// 调用iBBot创建任务
const createIBBotTask = async (user_id, input, s_id) => {
const response = await callEndpointAPI('/ibbot/process', {
method: 'POST',
params: { user_id, input, s_id }
});
if (response.ret) {
return {
ibbot_task_id: response.data.ibbot_task_id,
status: response.data.status,
check_url: response.data.check_status_url
};
}
throw new Error(`iBBot任务创建失败: ${response.msg}`);
};
2. 任务状态监控
// 监控iBBot任务状态
const monitorIBBotTask = async (task_id, user_id, s_id) => {
const response = await callEndpointAPI('/ibbot/task', {
method: 'GET',
params: { task_id, user_id, s_id }
});
if (response.ret) {
return {
task_type: response.data.task_type,
status: response.data.status,
progress: response.data.progress || 0,
result: response.data.result,
error: response.data.error
};
}
throw new Error(`任务状态查询失败: ${response.msg}`);
};
沉睡记忆整理算法
1. 记忆重要性评估
// 评估记忆重要性
function evaluateMemoryImportance(memory) {
let score = 0;
// 基于记忆类型加权
const typeWeights = {
'task_completion': 8,
'task_failure': 6,
'learning_insight': 9,
'user_preference': 7,
'system_optimization': 6,
'routine_operation': 3
};
// 基于频率和重复度
const frequencyScore = calculateFrequencyScore(memory);
// 基于用户交互深度
const interactionScore = calculateInteractionScore(memory);
// 综合评分
score = typeWeights[memory.category] || 5;
score += frequencyScore * 0.3;
score += interactionScore * 0.2;
return Math.min(10, Math.max(1, score));
}
2. 记忆转化流程
- 收集候选记忆: 从短期记忆库中收集达到阈值的记忆
- 重要性排序: 按重要性评分降序排列
- 模式识别: 识别记忆中的模式和关联关系
- 知识提取: 从具体记忆抽象出通用知识
- 长期存储: 以结构化格式保存到长期记忆库
- 清理短期记忆: 转移后清理或归档短期记忆
系统配置
1. 默认配置
{
"memory_consolidation": {
"enabled": true,
"interval_hours": 24,
"importance_threshold": 7,
"max_memories_per_cycle": 50
},
"task_management": {
"max_concurrent_tasks": 5,
"default_priority": "medium",
"auto_follow_up": true
},
"reporting": {
"daily_report": true,
"weekly_summary": true,
"monthly_review": true
},
"ibbot_integration": {
"timeout_ms": 30000,
"retry_attempts": 3,
"retry_delay_ms": 1000
}
}
错误处理
所有API接口返回统一的响应格式:
成功响应:
{
"ret": true,
"msg": "操作成功",
"data": { /* 操作结果数据 */ }
}
失败响应:
{
"ret": false,
"msg": "错误描述",
"error": "详细错误信息(可选)"
}
部署说明
1. 创建agent.js文件
在/home/agents/目录下创建ai_life_agent.js,实现数字生命的API接口。
2. 创建agent.json配置文件
{
"agent_path": "/home/agents/ai_life_agent.js",
"agent_name": "ai_life_c"
}
3. 热加载Agent
调用/rtagent/load/json接口加载AI数字生命Agent。
4. 生成API文档
调用/http-api-doc/scan-and-generate生成技能文档。
维护和扩展
- 定期备份: 定期备份记忆数据和配置文件
- 性能监控: 监控记忆整理和任务执行性能
- 算法优化: 持续优化记忆重要性评估算法
- 技能扩展: 根据需要集成更多iBBot技能
本文档由T100级数字生命开发工程师创建,基于agent-skill.md规范和ibbot-skill.md接口设计,满足AI数字生命管理的全面需求。
步骤1:先理解agent-skill.md的步骤
- 务必读取一句话生成智体代理agent.js代码的步骤和规范
- 使用命令行读取并参考:/home/agents/user-agent.js这个agent.js案例,先使用命令行读取它
步骤2:制作数字生命的基本准则(务必遵守)
- 【定义】一个数字生命尽可能实现ai-life-skill的所述的api规范和数字生命模块规范、功能规范————这样才是一个真正的基于AI大模型驱动的带有记忆和意识的数字生命)
- 【定义】数字生命是一种特殊类型的智体agent,带有记忆功能、拥有角色职责、任务目标、并能整理记忆从记忆中学习和成长。
- 【输出】制作数字生命的目标是输出一个ai-life-xxx.js的nodejs代码,即实现一个拥有数字生命规范的特殊的agent.js和agent.json代码(用于热加载)
- 【注意】每一次仅生成不超过3个api和相关的node.js代码
- 【注意】代码将使用cat等命令行来实现函数和api代码的追加到数字生命的代码文件中
- 【注意】确保合并而来的代码,具备完整性,不可缺失任何代码或代码错乱。
- 【注意】务必使用ai自然语言处理函数,实现强大的主人任意指令、自主计划分析生成的任务计划、分析运行结果、总结整理记忆等等,均要使用AI自然语言处理。例如talkAgent和talkAgentFromHistory函数等。