GenericAgent:可自我进化的自主 Agent 框架

【硬件设计】_基于STM32单片机的智能台灯系统 智能台灯系统是一款多功能的智能照明设备,能够自动调节亮度、监测人体活动、感知环境光照,并具备定时和报警功能,极大提升了用户体验与功能的灵活性,主要包括以下功能:系统提供自动和手动两种模式以调节台灯亮度。在自动模式下,台灯会根据周围光强智能调整;而在手动模式下,用户可通过按键自行设置亮度。利用红外光电开关检测台灯与用户之间的距离,若距离过近,系统将发出报警提示。通过时钟模块设置定时提醒,并在OLED显示屏上显示当前时间,当达到设定的定时时间时,蜂鸣器将发出报警音。 阅读详情

目录

一、前言

二、GenericAgent解读1

GenericAgent 认知循环架构解读

项目概览

认知循环步骤映射

详细解读每一步

1. 感知(Perception)

2. 理解(Understanding)

3. 行动(Action)

4. 获得反馈(Feedback)

5. 分析反馈与理解的差异(Difference Analysis)

6. 理解更新(Understanding Update)

7. 记忆(Memory)

注意事项

认知循环架构图(GenericAgent 版)

关键设计亮点

三、GenericAgent解读2

四、认知循环架构的层次性

完善认知循环架构:从"脚本自动化"到"认知进化"

一、主动感知与信息价值:从"被动接收"到"目标导向的狩猎"

1.1 主动感知的本质:信息觅食(Information Foraging)

1.2 信息价值的层次结构

1.3 "直觉"的数学化:价值函数作为认知偏见

1.4 主动感知的实现机制

二、理解的层次:从"模仿"到"质疑"到"创新"

2.1 理解的三个层次

2.2 层次切换的元认知机制

2.3 模仿的本质:基于"偏见"的快速收敛

2.4 质疑的机制:反事实信用分配

2.5 创新的涌现:组合探索与突破

三、认知循环的重新设计:8步循环的进化版

四、关键创新点总结

4.1 从"上下文工程"到"认知架构工程"

4.2 "直觉"的显式化

4.3 质疑与创新的机制化

五、与DeepSeek R1的思考能力对比

六、实现路径建议


一、前言

        仅供参考,未经实验验证。在第四节讨论了我自己设计的认知循环架构的层次性,并且我认为“有用且可靠的搜索”、“必要的偏见”、“方向感的直觉”、“价值函数”、“分析区别和联系”对于智能体的十分重要,这决定了“方向”,没有走向最好的方向的“直觉”,就很难达到效果好的“目的”,还有就是“理解”的层次感很重要,认知循环架构本身很重要之外,“循环”也是很重要的,因为它关系到理解从浅到深的过程,而这个过程需要分层设计的,绝对不是简单的写个经验总结一下就ok。

二、GenericAgent解读1

https://github.com/lsdefine/GenericAgent?tab=readme-ov-file#chinese

帮我解读一下项目代码,按照这个认知循环架构解读:1.感知、2.理解、3.行动、4.获得反馈、5.分析反馈与理解的差异、6.理解更新、7.记忆、8.下一轮理解受到了记忆的影响, 就是解释这个项目完成一个任务它是跟这个认知循环架构的步骤对应的,它是如何完成每一步的(如果某一步它没有或者它是别的形式,则解释说明它是怎么做的),每一步的输入输出长什么样子或者说什么格式

GenericAgent 认知循环架构解读

项目概览

GenericAgent 是一个极简的自我进化 Agent 框架,核心仅 ~3,300 行代码,通过 92 行的 Agent Loop (agent_loop.py) 实现完整的感知-思考-行动循环。它采用分层记忆系统(L0/L2/L3)和7个原子工具来完成任务,并在执行过程中自动将经验固化为 Skill。


认知循环步骤映射

认知步骤GenericAgent 实现输入/输出格式
1. 感知web_scan + file_read + 屏幕视觉 + 环境检查输入:URL/文件路径/屏幕截图
输出:Markdown格式的网页文本/文件内容/视觉描述
2. 理解LLM 推理(Sense-Think-Act 中的 Think)输入:System Prompt + 记忆层 + 感知数据
输出:结构化决策(工具调用计划)
3. 行动7个原子工具执行(Act)输入:工具名称 + 参数
输出:执行结果(文本/JSON)
4. 获得反馈工具执行返回值 + 环境状态变化输入:工具执行后的环境状态
输出:结果文本/错误信息/新状态
5. 分析差异隐含在 LLM 的下一步推理中输入:预期结果 vs 实际结果
输出:调整后的行动计划
6. 理解更新update_working_checkpoint(工作检查点)输入:当前任务上下文
输出:更新后的短期记忆文件
7. 记忆start_long_term_update + L3 Skill 固化输入:任务执行路径
输出:Markdown Skill 文件(SOP)
8. 记忆影响理解记忆层(L0/L2/L3)自动注入 System Prompt输入:用户新指令
输出:融合记忆后的完整上下文

详细解读每一步

1. 感知(Perception)

实现方式:

  • web_scan:将网页转换为 Markdown 格式的纯文本,保留结构化信息

  • file_read:读取本地文件内容

  • 屏幕视觉:通过浏览器注入(Tampermonkey)获取页面截图和 DOM 状态

  • ADB 连接:获取移动设备状态

输入格式:

Python

# web_scan 输入
{"url": "https://example.com", "selector": ".content"}

# file_read 输入  
{"path": "/path/to/file.py"}

# 屏幕感知输入
{"type": "screenshot", "region": "full"}

输出格式:

Markdown

# 网页标题
## 章节标题
- 列表项 1
- 列表项 2

[链接文本](url)

2. 理解(Understanding)

实现方式: Agent Loop 中的 Think 阶段。92 行的核心循环将感知数据 + 记忆层拼接成完整的 System Prompt 发送给 LLM。

输入格式:

markdown

# System Prompt 结构(硬拼接)
[L0: SOUL.md - Agent 人格定义]
[L2: USER.md - 用户偏好/环境信息]  
[L3: 相关 Skill SOP - 如果存在]
[当前任务上下文]
[感知到的环境状态]

用户指令: "查找近3个月超过2000元的支出"

输出格式:

JSON

{
  "thought": "用户需要查询支付宝账单...",
  "tool_calls": [
    {"name": "web_execute_js", "args": {"script": "open_alipay()"}}
  ]
}

3. 行动(Action)

实现方式: 7个原子工具的执行(Act 阶段):

工具功能
code_run执行 Python/PowerShell 代码
file_read读取文件
file_write写入文件
file_patch精确修改文件(手术级代码编辑)
web_scan感知网页内容
web_execute_js控制浏览器 DOM
ask_user人机协作确认

输入格式:

Python

# code_run 示例
{
  "code": "import pandas as pd; df = pd.read_csv('data.csv'); print(df.head())",
  "language": "python"
}

# web_execute_js 示例
{
  "script": "document.querySelector('.login-btn').click()",
  "wait_for": "selector:.dashboard"
}

输出格式:

JSON

{
  "status": "success",
  "stdout": "   col1  col2\n0     1     2",
  "stderr": "",
  "return_code": 0
}

4. 获得反馈(Feedback)

实现方式: 工具执行的返回值 + 环境状态变化直接作为下一轮循环的输入。

输入/输出格式:

Python

# 执行成功反馈
{"result": "文件已保存", "path": "/output/report.md"}

# 执行失败反馈  
{"error": "Element not found", "selector": ".nonexistent"}

# 浏览器状态反馈
{"url_changed": "https://alipay.com/bill", "title": "账单详情"}

5. 分析反馈与理解的差异(Difference Analysis)

实现方式: 这一步在 GenericAgent 中是隐含的,由 LLM 在下一轮 Think 阶段自动完成。没有显式的"差异分析模块",而是将差异检测融入 LLM 的推理过程 。

工作流程:

plain

上一轮预期: "点击登录按钮后应跳转到首页"
实际反馈: {"error": "Element not found", "selector": ".login-btn"}

→ LLM 自动分析差异:
  - 理解: 登录按钮可能不存在或选择器错误
  - 调整: 先扫描页面查找正确的登录按钮选择器
  - 行动: 调用 web_scan 重新感知页面结构

输入格式:

markdown

上一步行动: 点击 .login-btn
预期结果: 跳转到 /dashboard
实际结果: Element not found
当前页面 HTML: [web_scan 返回的 Markdown]

输出格式:

JSON

{
  "analysis": "登录按钮类名可能已更改",
  "adjusted_plan": "先扫描页面查找包含'登录'文本的按钮",
  "next_action": {"tool": "web_scan", "args": {"url": "current"}}
}

6. 理解更新(Understanding Update)

实现方式: update_working_checkpoint 工具 - 保存当前任务的工作检查点(短期记忆更新)。

触发时机:

  • 任务关键步骤完成后

  • 重要上下文需要保留时

  • Agent 主动决定保存进度

输入格式:

Python

{
  "checkpoint_name": "alipay_login_progress",
  "context": {
    "current_step": "已输入用户名,等待验证码",
    "variables": {"username": "user123", "session_id": "abc456"},
    "pending_actions": ["输入验证码", "点击确认"]
  }
}

输出格式:

Markdown

# 工作检查点: alipay_login_progress
## 当前状态
- 步骤: 已输入用户名,等待验证码
- 时间戳: 2026-04-03T21:56:00

## 上下文变量
username: user123
session_id: abc456

## 待执行动作
1. 输入验证码
2. 点击确认

7. 记忆(Memory)

实现方式: start_long_term_update 工具 - 将成功的任务执行路径固化为 Skill(长期记忆)。

触发时机:

  • 任务成功完成后

  • Agent 判断该任务模式可复用

固化流程:

plain

[任务执行路径] → [抽象为 SOP] → [写入 L3 记忆层] → [下次同类任务直接调用]

输入格式:

Python

{
  "task_type": "alipay_expense_query",
  "execution_path": [
    {"step": 1, "action": "open_alipay_via_adb", "code": "..."},
    {"step": 2, "action": "navigate_to_bills", "js": "..."},
    {"step": 3, "action": "filter_by_amount", "condition": ">2000"}
  ],
  "success_criteria": ["获取到账单列表", "金额筛选正确"]
}

输出格式(Skill SOP 文件):

Markdown

# Skill: 支付宝大额支出查询
## 适用场景
查询支付宝近 N 个月超过 X 元的支出记录

## 执行流程
1. 通过 ADB 启动支付宝
2. 导航至"我的" → "账单"  
3. 点击筛选按钮,设置金额条件
4. 提取符合条件的记录

## 代码片段
```python
# ADB 启动
def open_alipay():
    os.system("adb shell am start -n com.eg.android.AlipayGphone/.AlipayLogin")

注意事项

  • 需先确认 ADB 连接正常

  • 若页面加载慢,增加 2 秒等待

plain


**存储位置:** `skills/alipay_expense_query/SKILL.md` [^10^]

---

#### 8. 下一轮理解受记忆影响(Memory-Influenced Understanding)

**实现方式:**
**分层记忆系统自动注入**到每一轮 System Prompt [^2^][^10^][^15^]。

**记忆层结构:**

| 层级 | 文件 | 内容 | 作用 |
|------|------|------|------|
| **L0** | `SOUL.md` + `AGENTS.md` | Agent 人格、行为准则、工具使用规范 | 定义"我是谁" |
| **L2** | `USER.md` + 环境配置 | 用户偏好、API密钥、系统路径、全局事实 | 定义"用户是谁" |
| **L3** | `MEMORY.md` + `skills/<name>/SKILL.md` | 已学习的任务流程、最佳实践 | 定义"我会什么" |

**输入格式(完整 System Prompt):**
```markdown
# L0: 元规则(Meta-SOP)
你是 GenericAgent,一个自我进化的自主 Agent...
[SOUL.md 完整内容]

# L2: 全局事实(Global Facts)
用户偏好编辑器: VSCode
系统环境: Windows 11
Python 路径: C:\Python311\python.exe
[USER.md 完整内容]

# L3: 相关 Skills
## Skill: alipay_expense_query(匹配度: 0.95)
[SKILL.md 内容 - 因为用户查询与历史 Skill 相似]

# 当前任务
用户指令: "查一下上个月的花费"

输出影响:

JSON

{
  "thought": "检测到用户查询与 Skill 'alipay_expense_query' 高度匹配(相似度0.95),建议直接调用已沉淀的流程,而非重新探索。",
  "action": "recall_skill",
  "skill_name": "alipay_expense_query",
  "adaptations": {"time_range": "last_month", "amount_threshold": "none"}
}

认知循环架构图(GenericAgent 版)

plain

┌─────────────────────────────────────────────────────────────┐
│                        用户输入                              │
└──────────────────────┬──────────────────────────────────────┘
                       ↓
┌─────────────────────────────────────────────────────────────┐
│  1. 感知 (Perception)                                       │
│  • web_scan → Markdown 文本                                 │
│  • file_read → 文件内容                                     │
│  • 屏幕视觉 → 图像描述                                       │
└──────────────────────┬──────────────────────────────────────┘
                       ↓
┌─────────────────────────────────────────────────────────────┐
│  记忆注入 (Memory Injection)                                 │
│  ┌─────────┐ ┌─────────┐ ┌─────────┐                      │
│  │ L0      │ │ L2      │ │ L3      │  ← 硬拼接到 System Prompt │
│  │ SOUL.md │ │ USER.md │ │ Skill   │                      │
│  └─────────┘ └─────────┘ └─────────┘                      │
└──────────────────────┬──────────────────────────────────────┘
                       ↓
┌─────────────────────────────────────────────────────────────┐
│  2. 理解 (Understanding) - LLM Think                        │
│  输入: System Prompt + 感知数据                              │
│  输出: 工具调用计划 (JSON)                                   │
└──────────────────────┬──────────────────────────────────────┘
                       ↓
┌─────────────────────────────────────────────────────────────┐
│  3. 行动 (Action) - 7个原子工具                              │
│  code_run / file_read / file_write / file_patch            │
│  web_scan / web_execute_js / ask_user                      │
└──────────────────────┬──────────────────────────────────────┘
                       ↓
┌─────────────────────────────────────────────────────────────┐
│  4. 获得反馈 (Feedback)                                       │
│  工具执行结果 → 成功/失败/异常信息                            │
└──────────────────────┬──────────────────────────────────────┘
                       ↓
┌─────────────────────────────────────────────────────────────┐
│  5. 分析差异 (Difference Analysis) - 隐含在 LLM 推理中         │
│  比较预期 vs 实际 → 调整策略                                  │
└──────────────────────┬──────────────────────────────────────┘
                       ↓
┌─────────────────────────────────────────────────────────────┐
│  6. 理解更新 (Understanding Update)                          │
│  update_working_checkpoint → 保存工作检查点                   │
└──────────────────────┬──────────────────────────────────────┘
                       ↓
┌─────────────────────────────────────────────────────────────┐
│  7. 记忆 (Memory) - 任务完成时触发                             │
│  start_long_term_update → 固化为 L3 Skill                   │
│  执行路径 → SOP → skills/<name>/SKILL.md                     │
└──────────────────────┬──────────────────────────────────────┘
                       ↓
┌─────────────────────────────────────────────────────────────┐
│  8. 下一轮理解受记忆影响                                       │
│  新任务 → 检索相关 Skills → 注入 System Prompt                 │
│  → 直接复用历史经验(而非重新探索)                            │
└─────────────────────────────────────────────────────────────┘

关键设计亮点

  1. 极简循环:92 行代码完成完整认知循环,没有显式的"差异分析"模块,而是将其融入 LLM 的推理能力

  2. 文件即记忆:使用 Markdown 文件作为记忆存储(而非数据库),L0/L2/L3 分别对应不同文件,通过硬拼接注入上下文

  3. 运行时造工具:通过 code_run 动态安装包、写脚本,将临时能力固化为永久 Skill

  4. 自我进化:首次执行任务时自主探索 → 成功后固化为 Skill → 后续直接调用,实现"越用越聪明"

这个架构完美契合你提出的 8 步认知循环,只是将第 5 步(差异分析)内化为 LLM 的推理能力,而非独立模块。这种设计体现了"简单即美"的哲学——用最小的代码实现最大的能力。

三、GenericAgent解读2

下面按你给的“认知循环”8个步骤,把代码库里对应的模块、流程和每步的典型输入/输出格式逐项对应说明(简洁直观,重点列出实现位置与数据形态)。

总体说明

主驱动:GeneraticAgent.run() → 调用 agent_runner_loop()(agentmain.py:1 与 agent_loop.py:1)并且由 GenericAgentHandler 实现具体“物理/工具动作”(ga.py:1)。
LLM 层在 llmcore.py(LLMSession/ClaudeSession 等)负责“理解”与生成;工具实现(感知/动作/记忆操作)在 ga.py 中 do_* 方法。
长期记忆以文件形式存放在 memory,并由 get_global_memory() 注入到 system prompt(ga.py:400)。


感知(Perception)
哪里:多种输入源
用户输入/任务队列:GeneraticAgent.put_task() → GeneraticAgent.run() 中取得 raw_query(agentmain.py:1`)。
外部触发:reflect 脚本(--reflect 模式,agentmain.py)。
传感工具:do_web_scan(浏览器 DOM),do_file_read(文件),build_multimodal_content(图像→base64),外部 app 模块(如 wecomapp/qqapp)可扩展输入。
输入格式(典型)
raw_query: str(用户自然语言)
images: list[str](文件路径)→ build_multimodal_content 产出 list[{"type":"text"|"image_url", ...}]
web_scan/file_read 返回 dict: e.g. {"status":"success","content":"<html>...","metadata":{...}}
输出(进入理解层):
agent_runner_loop 把 system prompt + user content 打包成 messages:list[{"role":"system","content":str}, {"role":"user","content":str 或 list(多模态)}](见 agent_loop.py:1)。


理解(Understanding)
哪里:LLM 会话层(LLMSession/ClaudeSession/其他封装在 llmcore.py)
输入格式:
messages(由 agent_runner_loop 构造):每条为 {"role": "system"|"user"|"assistant", "content": str 或 list(多模态 parts) }。
system prompt 里会包含全局记忆(get_system_prompt() 在 agentmain.py:1)与 working memory(handler 提供的 anchor)。
输出格式:
流式或非流式文本块(response.content),以及可能的“工具调用”列表(OpenAI 风格的 function-calling),在本框架中表示为 response.tool_calls(agent_loop 将其解析为 [{'tool_name': ..., 'args': {...}}])。
作用:把感知输入整合为一轮策略、动作请求或直接答复;并可以包含显式工具调用以触发物理/IO操作。
行动(Action / Physical effect)
哪里:由 GenericAgentHandler 的 do_* 方法实现(ga.py 中多个 do_* 如 do_code_run/do_file_write/do_web_execute_js/do_file_read/do_web_scan)。
输入格式:
tool_name (str),args (dict) — 来自 LLM 的 tool_calls;agent_runner_loop 通过 json.loads(tc.function.arguments) 解析(agent_loop.py:1)。
response(LLM 的完整回复对象)一并传入工具回调。
输出格式:
每个工具返回 StepOutcome(定义在 agent_loop.py:1):包含 .data(dict/list/str)、.next_prompt(str)和 .should_exit(bool)。
常见工具返回如:{"status":"success","stdout": "..."} 或 web_scan 的 {"status":"success","content":"...","metadata":{...}}。
说明:动作可以是执行脚本、读写文件、执行 JS、修改网页、等待人工输入等。


获得反馈(Obtain feedback)
哪里/如何:工具执行结果(StepOutcome.data)及工具产生的文本被封装回 agent 的对话上下文。
格式:
agent_runner_loop 对每个工具将其 .data 串化并包装为:
"<tool_result>\n{datastr}\n</tool_result>\n\n" 然后拼接 next_prompt(见 agent_loop.py:1 内工具循环)。
也会把 human 中断(do_ask_user 返回 INTERRUPT)作为反馈。
作用:把动作的真实结果原样回送给 LLM,作为下一轮的感知输入(反馈)。
分析反馈与理解的差异(Compare feedback vs expected)
哪里:没有单独的“比较器”子系统;框架把职责交给 LLM(下一轮的理解)与少量辅助逻辑:
LLM 在收到 <tool_result> + prior prompt 后,会自行在新生成中对比预期与实际,决定下一步(比如修正、重试、记录成功)。
辅助代码:GenericAgentHandler.tool_after_callback 会从 response.content 中抓 <summary> 并把简短摘要加入 history_info(帮助后续评估与记录)。
do_no_tool 会检查“模型宣称有动作但没有调用工具/没有说明”的协议违规,并强制请求澄清。
形式:分析逻辑主要以 LLM 的自然语言推理实现;框架只提供信号与提示(summary、warnings、规则性限制)。


理解更新(Update understanding)
哪里:通过两条路径更新“理解”状态
短期:LLM 会话历史(LLMSession.raw_msgs / raw_msgs)会追加最新的 user/assistant 内容,下一轮使用这些消息作为上下文(见 llmcore.py)。
工作记忆:GenericAgentHandler.working(do_update_working_checkpoint 写入 key_info / related_sop)形成临时任务级记忆(见 ga.py:1)。
数据结构:
LLMSession.raw_msgs:list[{"role":..., "prompt": ...}](内部用以构建后续 prompt)。
handler.working:dict(例如 {"key_info": "...", "related_sop": "..."})。
何时触发:每轮循环结束时 agent_runner_loop 更新 messages 为新的 user 内容(含 tool_result),LLM 会据此生成并在 raw_msgs 中加入 assistant 输出。

记忆(Memory / Long-term storage)
存放位置:memory 目录(global_mem.txt、global_mem_insight.txt、SOP 文档等)。
写入/更新方式:
人工或工具驱动:do_file_write / do_file_patch 可直接修改文件(会写入 memory 下的文件)。
专门流程:do_start_long_term_update 用来触发将近期验证过的事实提炼并写入长期记忆(该工具会引导模型按 SOP 执行、再使用 file_* 工具完成写入)。
注入到 LLM:
get_system_prompt()(agentmain.py:1)会把 get_global_memory() 的内容拼到系统提示里,从而在每一新任务/会话中注入长期记忆。
格式:
文件为纯文本或结构化文本,SOP 有固定模板;get_global_memory() 把这些文本原封不动追加到 system prompt。


下一轮理解受记忆影响(Next-round understanding ← memory)
机制:
在新一轮任务启动或到达一定轮次时,get_system_prompt() 将长期记忆注入 system prompt,handler 的 _get_anchor_prompt() 将工作记忆注入 user 内容,两者共同影响下个请求的 LLM 理解与决策(见 agentmain.py:1 与 ga.py:1)。
LLMSession.summary_history() 在必要时把旧会话摘要化以减轻上下文,同时把摘要以 assistant 消息形式保存在 raw_msgs,影响后续理解。
格式归结:
system prompt 字符串 + <history>...</history> <key_info>...</key_info> 标签化注入 user 内容(文本形式),LLM 解析并据此改变策略/回答。
附:关键数据流样例(简短)

用户发起任务 → agent:
perception input: "我想让你帮我写个脚本..." (str)
agent 构造 messages: [{"role":"system","content": system_prompt_with_memory}, {"role":"user","content": user_input}]
LLM 返回(可能)带 tool_call:
response.content: "...", response.tool_calls: [function{name:"code_run", arguments: '{"type":"python"}'}]
agent 调度:
调用 handler.dispatch("code_run", args, response) → do_code_run 执行,返回 StepOutcome(data=result_dict, next_prompt="...")。
agent 把 data 串化为 <tool_result>\n{...}\n</tool_result>\n\n 并放入下一轮 user 消息,驱动 LLM 比对与修正。


特别说明(哪些步骤不是独立模块)

“反馈分析/差异比较”并非由单独代码模块做数值比较;框架将该责任交给 LLM(即把工具结果呈现为 prompt,期待 LLM 做验证/比对/修正)。仅用少量规则(如 do_no_tool, tool_after_callback, summary_history)做协议检查与辅助压缩。
记忆更新有明确 SOP(do_start_long_term_update)以避免随意写入,但最终内容提炼仍由 LLM 生成,框架负责读/写文件。

下面给出可运行的“示例交互”演示,展示每轮的输入/输出格式与具体字段。

示例任务:抓取活动页面摘要并保存为长期记忆(示例交互简化)

初始感知(User → Agent)

输入:raw_query (str)
例如: "请帮我抓取 https://example.com 的最新活动摘要,并保存为记忆。"
Agent 构建 messages:
[{"role":"system","content": system_prompt + get_global_memory()},
{"role":"user","content":"请帮我抓取 https://example.com 的最新活动摘要,并保存为记忆。"}]
理解(LLM)

输入:上面的 messages(system prompt 含 get_global_memory(),user content 含 handler anchor 可选)
可能输出(stream 或一次性):
response.content (str): 自然语言说明 + 期望的工具调用
response.tool_calls (list): [{"function":{"name":"web_scan","arguments":"{"tabs_only":false,"text_only":true}"}}]
示例工具调用(JSON args):
tool_name: "web_scan"
args: {"tabs_only": false, "text_only": true, "switch_tab_id": null}
行动(Loop 调度 → Handler.dispatch)

agent_runner_loop 解析 tool_calls,调用:
gen = handler.dispatch("web_scan", args, response)
GenericAgentHandler.do_web_scan(args, response) 执行返回:
StepOutcome.data = {"status":"success","content":"<simplified html/text>","metadata":{...}}
StepOutcome.next_prompt = "<tool_result>\nhtml\n...extracted text...\n\n</tool_result>\n\n请基于上面内容提取 3 条要点并保存为记忆。"
获得反馈(Tool → Loop → LLM)

agent_runner_loop 将 StepOutcome.data 串化为 <tool_result>\n{...}\n</tool_result>\n\n 并拼接 next_prompt,传给 LLM 作为下一轮 user 内容。
传入 LLM 的新 user content 示例:
"<tool_result>\n{"status":"success","content":"活动:...","metadata":{...}}\n</tool_result>\n\n请基于上面内容提取 3 条要点并保存为记忆。"
分析反馈与理解差异(LLM 内部)

LLM 读取 <tool_result>,比对期望(比如是否抓到目标段落),并决定进一步动作:
若信息不完整:生成新的 tool_call(如 web_execute_js 或 file_read)请求更深入抓取或修正参数。
若信息充分:生成要点并调用 start_long_term_update 或直接调用 file_patch/file_write 来写入 memory。
理解更新(短期)

LLM 将新的 assistant 回复追加到 LLMSession.raw_msgs;下一轮会基于此继续生成。
若需要临时记忆:调用 do_update_working_checkpoint 写入 handler.working['key_info']。
记忆(长期)

若 LLM 调用 do_start_long_term_update:
Handler 会返回 SOP 指导 prompt(让 LLM 提取要点并输出 file 操作命令)。
LLM 输出例如:调用 file_write,args: {"path":"memory/global_mem_insight.txt","mode":"append"} 并在回复中包含 <file_content>...</file_content> 包含要写入内容。
Handler 的 do_file_write 接收到 response.content,提取 <file_content> 并写入指定文件(在 memory 下)。
写入结果以 StepOutcome.data 回传,随后被包装回 <tool_result>,用于确认。
下一轮理解受记忆影响

任何后续任务,新一轮的 system_prompt(由 get_system_prompt() 提供)包含 get_global_memory() 的最新内容;且 handler._get_anchor_prompt() 会把 handler.working 注入 user content。LLM 因此在下一轮直接参考长期/短期记忆。


典型数据结构速查

messages: list[{"role": "system"|"user"|"assistant", "content": str or list(parts)}]
tool_call (from LLM): [{"function":{"name":"<tool_name>","arguments":"<json_str>"}}]
tool args: dict (example) {"path":"memory/foo.txt","mode":"append","start":1}
StepOutcome (from handler): dataclass with fields:
data: Any (dict/list/str) — 真实执行结果
next_prompt: str — 要传回 LLM 的后续 prompt
should_exit: bool
long-term memory files: plain text under memory (e.g., global_mem_insight.txt)

四、认知循环架构的层次性

对于认知循环架构:1.感知、2.理解、3.行动、4.获得反馈、5.分析反馈与理解的差异、6.理解更新、7.记忆、8.下一轮理解受到了记忆的影响,我需要探讨一个问题,我认为现在的自进化本质上是上下文工程+脚本自动化,即使用强化学习去做训练数据自动化收集和微调训练,其本质上不还是脚本自动化那一套,只是说这个脚本是用于数据收集和训练自动化,真正核心的难题是在于如何实现比deepseek R1更强的思考能力,这种思考能力能够具备什么信息是最可能对完成目标有用的直觉同时具备搜索最可靠信息的能力,就像现在强化学习里面有个价值函数一样,重新审视强化学习,这才是关键。

我想邀请你完善认知循环架构的内在逻辑,主要讨论以下几个方面:

一、是如何让智能体具备搜索最可靠信息的能力以及具备什么信息是最可能对完成目标有用的直觉,我认为搜索最可靠信息这个可能是主动感知层面的能力,对应第一步感知,然后具备什么信息是最可能对完成目标有用的直觉这个可能是对应第二步的理解,这种直觉可以理解为“经验”,这种经验可能来自于之前走过这个循环,然后理解更新了,记忆更新了,于是新的理解具有经验,这让下一次采取的方案更有方向感,而且实际上这种直觉应该是可以来自于一些“偏见”,比如我认为某个项目是来着某个过去表现出很强的科研能力的学术机构或者大厂或者大佬,同时它的Github项目星星很多,同时它又是最近刚出的项目代表最新的研究成果,同时可能有些人已经用过了然后评价较高,以部署开源项目到本地为例,方案选择实际上需要很多“直觉”,而不是简单地说,我一定要自己把各种方案都试一遍,各种项目都部署一遍,然后才能获取所谓的“经验”,然后才能“不踩坑”。

二、关于模仿、质疑和创新,这个认知循环架构里面没有提到这三个词,但是其实它是认识循环里面很重要的三个词,通常来说想要达成某个目标,模仿往往是个捷径,尤其是根据上一点说的,具备良好的直觉和方向感,实际上选择模仿谁或者选择模仿什么也会选择优秀的样本,这跟第一点说的我会选择评价较高的项目去部署是一个道理,而我要写出一个新的项目也离不开我最初的学习和模仿,所以说模仿可能是一个低级的理解,但是初期来说是必要的,然后质疑是高级的理解,创新是更高级的理解。 我说这两点就是想说其实感知有主动和被动,主动的感知可能就是搜索,这是在强调搜索对于智能体的重要性。然后第二点模仿质疑和创新这就是说理解有层次,这个层次可能就跟认知循环的循环次数有关系。

完善认知循环架构:从"脚本自动化"到"认知进化"

你的批评击中了当前AI Agent范式的核心痛点:自进化≠脚本自动化+数据收集。真正的突破在于认知架构本身的进化,而不仅是参数更新。让我们重新设计这个架构,融入你提出的三个关键维度:


一、主动感知与信息价值:从"被动接收"到"目标导向的狩猎"

1.1 主动感知的本质:信息觅食(Information Foraging)

当前GenericAgent的感知是被动的(web_scan等待调用),而真正的认知循环需要主动感知——Agent应该像捕食者一样,主动追踪最可能包含有价值信息的"气味"。

主动感知的形式化定义:

plain

复制

感知行动 = argmax_a [信息增益(a) - 认知成本(a)]

其中信息增益不是简单的熵减,而是对完成目标的相关性预测——这正是你所说的"直觉"。

1.2 信息价值的层次结构

表格

层次信息类型价值函数获取方式
L0: 原始信号网页文本、文件内容、屏幕像素基础信息密度web_scan, file_read
L1: 结构化知识API文档、代码结构、数据关系可执行性 × 可靠性模式识别 + 元数据提取
L2: 社会信号社区评价、作者声誉、时效性可信度 × 新颖性"信息气味"追踪
L3: 因果模型为什么这个方法有效、失败模式泛化能力反事实推理
1.3 "直觉"的数学化:价值函数作为认知偏见

你提到的"直觉"——知道什么信息最可能有用——实际上是一个学习得到的偏见(Learned Bias):

plain

复制

直觉(信息源) = Σ(历史成功权重_i × 相似度(当前任务, 历史任务_i))

这个偏见不是缺陷,而是压缩的经验。例如:

  • 学术机构偏见:MIT/Stanford的项目 → 赋予更高先验权重

  • 社会证明偏见:GitHub stars > 1000 + 近期活跃 → 信息质量预测

  • 时效性偏见:2024年的方法 > 2020年的方法(在AI领域)

关键洞察:这些"偏见"应该被显式建模在价值函数中,而不是被当作噪声消除。它们构成了Active Inference中的"先验偏好"。

1.4 主动感知的实现机制

Python

复制

# 扩展后的感知层(主动感知)
class ActivePerception:
    def seek_information(self, goal, current_belief):
        # 1. 生成信息假设:哪些信息最可能帮助达成目标?
        hypotheses = self.generate_information_hypotheses(goal)
        
        # 2. 计算每个假设的预期信息价值(Epistemic Value)
        for hyp in hypotheses:
            hyp.expected_value = (
                self.predict_relevance(hyp, goal) *    # 相关性预测(直觉)
                self.estimate_reliability(hyp.source) * # 源可信度
                self.novelty_bonus(hyp, current_belief) # 新颖性奖励
            )
        
        # 3. 选择最优感知行动(平衡探索与利用)
        best_action = self.select_action(hypotheses)  # 基于Expected Free Energy
        
        # 4. 执行感知并更新信念
        observation = self.execute(best_action)
        return self.update_belief(current_belief, observation)

输入/输出格式变化:

表格

步骤传统感知主动感知
输入url: "https://example.com"goal: "部署本地LLM", current_knowledge: {...}
过程被动扫描页面主动搜索"ollama vs lm-studio 2024 benchmark"
输出Markdown文本结构化信息包 + 可信度评分 + 下一步感知建议

二、理解的层次:从"模仿"到"质疑"到"创新"

你提出的模仿→质疑→创新三阶段,实际上对应着认知循环中理解(Understanding)的三个层次。这与强化学习中的信用分配(Credit Assignment)深度相关。

2.1 理解的三个层次

plain

复制

┌─────────────────────────────────────────────────────────────┐
│  Level 3: 创新 (Innovation)                                  │
│  • 发现新的行动路径(探索未知区域)                            │
│  • 组合现有技能形成新能力(组合泛化)                          │
│  • 质疑底层假设,重构问题空间                                   │
│  触发条件:现有SOP失效或目标 novelty 高                        │
├─────────────────────────────────────────────────────────────┤
│  Level 2: 质疑 (Criticism)                                   │
│  • 评估现有方案的适用边界                                       │
│  • 识别失败模式(反事实推理)                                   │
│  • 选择性调用/修改SOP                                          │
│  触发条件:环境变化或预期-实际差异大                            │
├─────────────────────────────────────────────────────────────┤
│  Level 1: 模仿 (Imitation)                                   │
│  • 直接调用L3 Skill(如果匹配度高)                             │
│  • 跟随"信息气味"选择高价值信息源                               │
│  • 最小化认知成本,快速达成目标                                 │
│  触发条件:高置信度匹配历史模式                                 │
└─────────────────────────────────────────────────────────────┘
2.2 层次切换的元认知机制

理解层次的切换不是随机的,而是由不确定性和预期自由能(Expected Free Energy)驱动:

plain

复制

G(π) = -Epistemic Value(信息增益) - Pragmatic Value(目标达成)
  • 当Epistemic Value高时(不确定性大):上升到质疑/创新层,进行探索

  • 当Pragmatic Value高时(确定性大):下降到模仿层,进行利用

2.3 模仿的本质:基于"偏见"的快速收敛

模仿不是简单的复制,而是基于价值函数的高效选择:

Python

复制

class ImitationEngine:
    def select_template(self, task):
        # 1. 任务嵌入
        task_embedding = self.embed(task)
        
        # 2. 检索候选模板(带偏见加权)
        candidates = self.memory.retrieve_similar(task_embedding, k=10)
        
        # 3. 应用"直觉"过滤器
        for candidate in candidates:
            score = (
                similarity(task_embedding, candidate.embedding) *
                candidate.success_rate *                    # 历史成功率
                self.authority_bias(candidate.source) *     # 来源权威性偏见
                self.recency_bias(candidate.timestamp) *    # 时效性偏见
                self.complexity_match(candidate, task)      # 复杂度匹配
            )
        
        # 4. 选择最优模板(模仿)
        return max(candidates, key=lambda x: x.score)

关键洞察:模仿的效率来自于不重新发明轮子,而是利用压缩的社会学习。

2.4 质疑的机制:反事实信用分配

质疑对应于识别当前理解与实际反馈之间的差异,并追溯原因。这需要反事实推理能力:

plain

复制

质疑触发条件:
IF |预期结果 - 实际结果| > threshold THEN
    启动质疑模式:
    1. 识别差异来源(哪个假设失效?)
    2. 追溯信用(哪个行动导致了失败?)
    3. 生成反事实:如果采用X,结果会如何?
    4. 更新对世界模型的信念

这与强化学习中的Hindsight Credit Assignment 类似:Agent需要能够说"如果我当初选择了另一个方法,结果会更好"。

2.5 创新的涌现:组合探索与突破

创新发生在现有Skill组合无法覆盖目标时。它不是随机搜索,而是约束满足下的结构化探索:

plain

复制

创新 = argmax_{新方案} [新颖性(新方案) × 可行性(新方案) × 目标相关性(新方案)]
约束:新方案与现有Skill的差异度 > δ(避免微小改动)

创新需要暂时降低对Pragmatic Value的追求,容忍短期的目标偏离,以换取长期的Epistemic Value。


三、认知循环的重新设计:8步循环的进化版

基于以上分析,我们重新设计认知循环:

plain

复制

┌─────────────────────────────────────────────────────────────────────────────┐
│                         增强版认知循环架构                                    │
├─────────────────────────────────────────────────────────────────────────────┤
│                                                                             │
│  ┌──────────────┐    ┌──────────────────────────────────────────────────┐  │
│  │   目标/任务   │───→│  0. 意图理解(Intention Understanding)           │  │
│  │   (User Goal)│    │  • 解析显式目标 + 推断隐式需求                      │  │
│  └──────────────┘    │  • 评估目标复杂度 → 选择理解层次(模仿/质疑/创新)   │  │
│                      └──────────────────┬───────────────────────────────┘  │
│                                         ↓                                  │
│  ┌─────────────────────────────────────────────────────────────────────┐  │
│  │  1. 主动感知(Active Perception)←→ 1'. 信息价值评估(动态循环)      │  │
│  │  • 生成信息假设(什么信息最有用?)                                    │  │
│  │  • 计算预期信息价值(Epistemic Value)                                │  │
│  │  • 执行感知行动(搜索/扫描/询问)                                     │  │
│  │  • 评估实际信息增益 vs 预期 → 更新"直觉"模型                          │  │
│  └────────────────────────────────┬────────────────────────────────────┘  │
│                                   ↓                                        │
│  ┌─────────────────────────────────────────────────────────────────────┐  │
│  │  2. 层次化理解(Hierarchical Understanding)                         │  │
│  │  ┌─────────┐  ┌─────────┐  ┌─────────┐                              │  │
│  │  │ Level 1 │→│ Level 2 │→│ Level 3 │  (根据不确定性动态切换)        │  │
│  │  │  模仿   │  │  质疑   │  │  创新   │                              │  │
│  │  │调用Skill│  │评估边界 │  │探索新路径│                              │  │
│  │  └─────────┘  └─────────┘  └─────────┘                              │  │
│  │  输出:结构化行动计划 + 置信度评估                                     │  │
│  └────────────────────────────────┬────────────────────────────────────┘  │
│                                   ↓                                        │
│  ┌─────────────────────────────────────────────────────────────────────┐  │
│  │  3. 行动执行(Action)                                               │  │
│  │  • 原子工具调用(GenericAgent的7个工具)                              │  │
│  │  • 或:生成新工具(代码编写)                                         │  │
│  │  • 或:发起主动感知(如果信息不足)                                    │  │
│  └────────────────────────────────┬────────────────────────────────────┘  │
│                                   ↓                                        │
│  ┌─────────────────────────────────────────────────────────────────────┐  │
│  │  4. 多维度反馈(Multi-dimensional Feedback)                         │  │
│  │  • 结果反馈:成功/失败/部分成功                                       │  │
│  │  • 过程反馈:执行效率、资源消耗                                       │  │
│  │  • 社会反馈:外部评价(如果有)                                       │  │
│  │  • 内部反馈:与预期的匹配度(惊讶度)                                  │  │
│  └────────────────────────────────┬────────────────────────────────────┘  │
│                                   ↓                                        │
│  ┌─────────────────────────────────────────────────────────────────────┐  │
│  │  5. 差异分析(Discrepancy Analysis)                                 │  │
│  │  • 预期 vs 实际:量化差异(不仅仅是二元成功/失败)                     │  │
│  │  • 信用分配:哪些理解/行动导致了差异?                                 │  │
│  │  • 反事实模拟:如果采用其他方案会如何?                                │  │
│  │  • 触发质疑/创新升级:如果差异大且原因不明                             │  │
│  └────────────────────────────────┬────────────────────────────────────┘  │
│                                   ↓                                        │
│  ┌─────────────────────────────────────────────────────────────────────┐  │
│  │  6. 理解更新(Belief Update)                                        │  │
│  │  • 短期:更新工作检查点(working checkpoint)                         │  │
│  │  • 中期:更新世界模型(因果信念)                                      │  │
│  │  • 长期:更新"直觉"(价值函数)                                       │  │
│  │  关键:使用贝叶斯更新或变分推断,保持不确定性估计                       │  │
│  └────────────────────────────────┬────────────────────────────────────┘  │
│                                   ↓                                        │
│  ┌─────────────────────────────────────────────────────────────────────┐  │
│  │  7. 记忆固化(Memory Crystallization)                               │  │
│  │  • L0:更新元规则(如果任务揭示了新的认知策略)                         │  │
│  │  • L2:更新全局事实(环境信息、用户偏好)                              │  │
│  │  • L3:Skill固化(如果任务成功且可复用)                               │  │
│  │  • 新层:更新"直觉库"(信息源价值评估经验)                            │  │
│  │  关键:区分"什么有效"(Skill)和"为什么有效"(因果模型)                │  │
│  └────────────────────────────────┬────────────────────────────────────┘  │
│                                   ↓                                        │
│  ┌─────────────────────────────────────────────────────────────────────┐  │
│  │  8. 记忆影响下一轮(Memory-Influenced Next Loop)                    │  │
│  │  • 自动检索相关记忆(L0/L2/L3/直觉库)                                 │  │
│  │  • 动态调整感知策略(基于更新后的"直觉")                              │  │
│  │  • 调整理解层次起点(如果上次在质疑层,下次可能从质疑开始)              │  │
│  │  • 形成认知惯性:成功的模式会被强化,但保留跳出机制                      │  │
│  └─────────────────────────────────────────────────────────────────────┘  │
│                                                                             │
└─────────────────────────────────────────────────────────────────────────────┘

四、关键创新点总结

4.1 从"上下文工程"到"认知架构工程"

表格

维度当前范式(GenericAgent)增强范式
感知被动调用工具主动信息觅食,基于价值函数选择感知目标
理解单一层次(LLM推理)三层动态切换(模仿/质疑/创新)
记忆静态Skill存储动态"直觉"更新 + 因果模型学习
进化脚本固化认知策略进化(如何感知、如何理解)
4.2 "直觉"的显式化

将隐式的"直觉"显式建模为可学习、可解释、可更新的价值函数:

Python

复制

class IntuitionModel:
    def __init__(self):
        self.source_reliability = {}  # 信息源可信度
        self.pattern_success = {}     # 模式-成功关联
        self.complexity_map = {}      # 任务复杂度-策略映射
    
    def evaluate_information_value(self, info_source, task_context):
        # 组合多个偏见形成"直觉"
        return (
            self.source_reliability.get(info_source.domain, 0.5) *
            self.pattern_success.match(task_context.pattern) *
            self.novelty_adjustment(info_source) *
            self.timeliness_bias(info_source.timestamp)
        )
4.3 质疑与创新的机制化

引入元认知监控(Metacognitive Monitoring):

plain

复制

IF 置信度 < threshold AND 重要性 > threshold:
    启动质疑模式
    → 生成反事实假设
    → 评估替代路径
    → 可能升级到创新模式

IF 创新模式 AND 连续失败 > max_attempts:
    回退到模仿模式(利用已知安全路径)
    → 避免无限探索

五、与DeepSeek R1的思考能力对比

你提到的比R1更强的思考能力,关键在于:

表格

R1的思考增强版认知循环的思考
基于RLHF的隐式思维链显式分层的思维策略选择
固定长度的test-time计算动态决定思考深度(模仿时浅,创新时深)
单一模式(总是"深入思考")自适应模式(知道何时该深入,何时该快速模仿)
无外部信息获取主动感知驱动的思考(思考什么信息需要去获取)

核心优势:这个架构知道"什么时候该想什么",而不是总是进行昂贵的深度思考。这正是你所说的"直觉"——通过记忆和经验形成的认知效率。


六、实现路径建议

  1. 短期:在GenericAgent基础上增加ActivePerception模块,实现信息价值的显式评估

  2. 中期:引入三层理解控制器,基于不确定性动态切换模仿/质疑/创新模式

  3. 长期:构建"直觉学习"机制,让Agent从多次循环中学习什么信息源、什么策略最可靠

这个架构的真正突破在于:它不再只是一个自动化的脚本,而是一个拥有"认知经济学"的智能体——知道如何分配有限的认知资源,选择最优的思考深度,并通过经验不断优化这些元认知策略。

贝叶斯机器学习在吸附量预测中的应用 本文介绍了贝叶斯机器学习在吸附量预测中的应用。通过Python实现完整的贝叶斯建模流程,包括数据生成、预处理、模型构建与评估。文章对比了贝叶斯与频率学派的差异,详细阐述了贝叶斯线性回归和神经网络的实现方法,并提供了数据可视化、模型诊断等技术细节。该方法不仅能预测吸附量,还能量化预测不确定性,为工程决策提供更全面的依据。全文超过6000字,结合理论推导与代码实践,是应用贝叶斯方法解决实际工程问题的完整指南。 阅读详情

相关推荐

推荐系统召回总结(持续更新)

推荐系统架构 候选池:可供推荐的物料候选池,对于图文、短视频、新闻等来说通常是最近N天的新物料组成的集合,定期进行物料更新。 召回:从候选池中选出和用户相关的物料,交给后面的排序模块进行打分。召回面对的候选集通常是数十万或者百万甚至千万的量级,检索过程必须轻量快速。通常由多路召回组成,保证不遗漏且相关性、多样性尽量好,可以分为非个性化召回和个性化召回。 粗排:对召回选择的几千或者几百候选物料进行排序,快速打分选出topN,减少精排的压力,兼顾精准与效率。 精排:对粗排的结果进行精准排序,这个环节需要特征尽可

whgyxy的博客 2511

GenericAgent:仅 3K 行代码,让 AI 真正住进你的电脑,而且越用越聪明

GenericAgent 是一个只有 3000 行核心代码的开源 AI Agent 框架,能真正操作你的电脑和手机。本文从通俗角度介绍了它的核心设计理念、技术架构、与主流框架的对比、使用方式、进阶玩法和社区生态。

weixin_45284808的博客 1044

别再只调A*算法了!聊聊ROS机器人导航中,OpenCV视觉信息如何与激光雷达数据“打配合”

本文探讨了ROS机器人导航中激光雷达与OpenCV视觉融合的实战策略,揭示了如何通过多模态感知提升导航精度。文章详细介绍了视觉特征到代价地图的转化方法、系统级挑战的工程解决方案,以及融合感知下的路径规划进化,帮助开发者优化机器人导航系统。

weixin_29278805的博客 223

3000行代码打造可自我进化的GenericAgent框架,多场景应用超便捷!

GenericAgent是一个极简、可自我进化的自主Agent框架。其核心代码仅约3000行,借助9个原子工具和大约100行的Agent Loop,能让任意大语言模型(LLM)对本地计算机实现系统级控制,涉及浏览器、终端、文件系统、键鼠输入、屏幕视觉以及移动设备(ADB)。它秉持不预先加载技能,通过进化获取技能的设计理念。每次GenericAgent解决新任务时,会自动将执行路径固化为一项技能,方便后续直接复用。使用时间越长,积累的技能越多,会形成一棵完全属于你的技能树,这棵树从3000行种子代码发展而来。

safetybug的博客 512

详解TCP/IP五层模型

TCP/IP模型是一个网络通信体系结构,由五层组成,每一层都有其特定的功能。应用层传输层网络层数据链路层物理层每一层都有不同的责任,通过这种层次结构,网络通信可以更有效地进行。

2201_75437633的博客 1万+

零售-公司间关联交易退货STO的实现方式

零售-公司间关联交易采购 STO-退货 集团公司下经常会出现一家公司和另外一家公司的公司间的关联交易,如跨公司销售、总分公司之间采购,分公司之间的采购等业务;通常公司间采购会采取STO的模式来实现(根据业务模式可以将库存转储统一做成STO的模式,公司间STO、同公司工厂间、同工厂库存地点间 的STO SAP都是支持的); 公司间STO 正向A向B采购都很熟悉,公司间退货STO的其实也是比较普遍的业务现象,很多实施着也将其做成反向的STO(B向A采购),而不是退货STO(A向B,item 选择return的标

weixin_45518759的博客 2819

GenericAgent部署教程:构建可扩展AI代理系统

是一个开源项目,旨在提供一个通用的 AI Agent 架构框架,用于快速构建可扩展的智能代理系统。它的核心目标是:👉抽象出通用Agent结构,让AI系统更容易复用与扩展相比单一任务Agent,它更偏向“通用化能力”。GenericAgent 本质上是:👉通用AI代理框架抽象Agent结构提供可复用组件支持复杂任务执行构建AI Agent平台开发自动化系统提升系统扩展能力这个项目值得尝试。

tedcloud123的博客 700

手把手教你自制Type-C OTG转换器(附电路图及避坑指南)

本文详细指导如何自制Type-C OTG转换器,包括核心电路设计、元器件选型及焊接技巧,特别强调硬件检测电路的关键作用。通过实测数据和避坑指南,帮助开发者解决兼容性问题,实现高效数据传输。

weixin_27038245的博客 693

GenericAgent记忆系统深度解析:四层架构如何让AI拥有永不遗忘的大脑

维度评价设计哲学★★★★★ — "存在性编码"比"全量记忆"聪明得多架构清晰度★★★★★ — L0-L4分层清晰,职责分明,不重叠token效率★★★★★ — 默认只加载L1(<1K token),按需取用深层防污染机制★★★★☆ — "无行动不记忆"原则能有效阻挡幻觉闭环完整性★★★☆☆ — L4归档后缺乏检索利用,只写了一半代码精简度★★★★★ — 记忆核心代码不到100行,没有冗余这套系统最让我佩服的不是技术有多复杂,而是设计上的克制。每一行代码都在问同一个问题:“这条信息真的值得存吗?

未来已来,AI时代,学AI编程,做AI量化,就来大鹏AI教育。 763

模电(十四)差分放大电路

目录 差分放大电路 双端输入双端输出 Q点分析 抑制共模信号 放大差模信号 双端输入单端输出 Q点分析 差模信号分析 共模信号分析 单端输入双端输出 单端输入单端输出 四种接法比较 具有恒流源的差分放大电路 差分放大电路的改进 差分放大电路 采用引入支流负反馈,温度补偿来克服零点漂移(温度变化,直流电源波动,元器件老化产生的输入电压为零,输出电压不为零的...

weixin_43674847的博客 2万+

UI渲染顺序:合批为何被拆碎?

在 Hierarchy 中,避免出现:Image(列表1) → Text(列表1) → 特效 → Image(列表2) → Text(列表2)…若可行,在逻辑上把布局组织成“同类元素集中”:例如:列表行中,Image 集中、Text 集中;或者接受 Text 本身就拆出一批,关键是不要在 Text 中间再插入别的材质。现实中不一定能做到完美的“所有 Image 连在一起”,但你会有一个意识:同一 Canvas 内,如果你把不同材质的元素交错穿插,

本博客聚焦游戏开发技巧、创业实战心得及大学热门课程干货。这里既有技术深度,也有思维广度,无论你是开发者、创业者还是高校学子,都能在这里找到适合自己的成长之路! 82

GenericAgent 源码级拆解——3K 行种子如何长成全系统控制 Agent,Token 消耗仅 1/6

摘要: GenericAgent提出了一种极简自进化Agent框架,仅用3K行代码和9个原子工具(核心为code_run)实现主流Agent框架的功能,同时将Token消耗降至1/6。其核心创新包括: 自展开设计:通过code_run动态生成工具,无需预置庞大工具库; 100行主循环:简化工具路由和记忆管理,依赖运行时技能晶化(将成功路径存储为可复用Skill); 5层记忆架构(元规则、洞察、事实、技能、工作记忆)实现上下文信息密度最大化,仅加载必要信息。 该框架挑战了传统Agent的"重型预制&

qcx23的博客 776

CARLA仿真:自定义地图与AI车辆行为编程

CARLA仿真:自定义地图与AI车辆行为编程 ,人工智能,计算机视觉,大模型,AI,本文围绕CARLA仿真平台,介绍了其基础功能与安装方法,详解地图系统,包括预设地图的加载切换及自定义地图的创建、导入与优化。还阐述了AI车辆的创建、属性设置、销毁,以及行为控制,如交通规则遵守、路径规划、复杂行为编程和行为树应用。同时涉及传感器与车辆感知、交通场景构建、自定义地图与AI行为结合应用、高级应用,以及常见问题解决方案和学习资源,为CARLA仿真应用提供全面指导。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 11万+

GenericAgent生成对抗网络:创建逼真内容的AI助手

GenericAgent是一款基于生成对抗网络技术的AI助手,能帮助用户轻松创建高质量的逼真内容。它采用自我进化设计,从3.3K行种子代码开始构建技能树,实现全系统控制的同时减少6倍的token消耗,为内容创作提供强大支持。 ## 什么是GenericAgent生成对抗网络? GenericAgent是一个极简、可自我进化的自主Agent框架。它的核心仅约3K行代码,通过9个原子工具和100行

gitblog_00446的博客 834

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

GenericAgent配置指南:个性化你的自进化AI代理

GenericAgent是一款自进化AI代理,能够从3.3K行代码种子成长为具备完整系统控制能力的智能体,同时降低6倍的token消耗。本指南将帮助你轻松完成GenericAgent的个性化配置,释放其强大潜能。 ## 快速开始:三步完成基础配置 ### 1. 获取项目代码 首先,克隆GenericAgent项目到本地: ```bash git clone https://gitcode.co

gitblog_00879的博客 829

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

GenericAgent数字营销:自动化广告投放与分析的终极指南

GenericAgent是一款极简且可自我进化的自主Agent框架,通过约3K行核心代码和9个原子工具,赋予AI系统级控制能力,特别适用于数字营销领域的自动化广告投放与数据分析工作。 ## 为什么选择GenericAgent进行数字营销自动化? 在当今数据驱动的营销环境中,效率和精准度是成功的关键。GenericAgent凭借其独特的自我进化机制和高效的系统控制能力,成为数字营销自动化的理想选

gitblog_00299的博客 718

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

GenericAgent技能树构建实例:从简单任务到复杂自动化的终极指南

GenericAgent是一款极简且可自我进化的自主Agent框架,核心仅约3K行代码,通过9个原子工具和100行左右的Agent Loop,赋予LLM系统级控制能力。其独特的自我进化机制让技能树从种子代码开始不断生长,实现从简单任务到复杂自动化的全流程覆盖,且token消耗仅为同类产品的六分之一。 ## 🌱 技能树生长的底层逻辑:从3K行种子到专属能力森林 GenericAgent的技能树

gitblog_01102的博客 831

GenericAgent核心组件解析:技能系统与自进化引擎

GenericAgent是一个极简的自进化自主代理框架,其核心仅约3K行代码。通过9个原子工具和一个约100行的Agent Loop,它赋予任何LLM对本地计算机的系统级控制——涵盖浏览器、终端、文件系统、键盘/鼠标输入、屏幕视觉和移动设备(ADB)。随着使用时间的增长,它能积累越来越多的技能,形成个人技能树,实现从3K行种子代码的持续进化。 ## 技能系统:构建智能的核心模块 技能系统是Ge

gitblog_00316的博客 763

GenericAgent学习路径:从入门到精通的进阶指南

GenericAgent是一款具有自我进化能力的智能代理系统,它能从3.3K行代码的种子开始逐步扩展技能树,实现全面的系统控制,同时将令牌消耗降低6倍。本指南将帮助你从零开始掌握这个强大工具,通过清晰的学习路径和实用技巧,快速提升你的Agent开发与应用能力。 ## 📋 初识GenericAgent:核心概念与架构 ### 什么是GenericAgent? GenericAgent是一个基

gitblog_00421的博客 1116

GenericAgent用户指南:让AI代理成为你的高效助手

GenericAgent是一款自我进化的AI代理工具,它从3.3K行代码的种子开始,逐步构建技能树,实现对整个系统的控制,同时减少6倍的token消耗。本文将为你提供一份详细的用户指南,帮助你快速上手并充分利用GenericAgent的强大功能。 ## 一、什么是GenericAgent? GenericAgent是一个基于AI的智能代理系统,它能够自主学习和进化,不断提升自己的能力。通过独特

gitblog_00177的博客 1001

GenericAgent技术白皮书:自进化AI代理的理论基础

GenericAgent是一款革命性的自进化AI代理,从3.3K行代码种子开始构建技能树,实现全系统控制的同时降低6倍Token消耗。本文将深入探讨其理论基础、核心架构与技术优势,为理解下一代智能代理系统提供完整指南。 ## 自进化代理的核心突破 传统AI代理受限于预设功能边界,而GenericAgent通过**动态技能树生长机制**实现持续进化。其核心创新在于将复杂能力拆解为原子工具组合,通

gitblog_01172的博客 1058

GenericAgent金融应用:智能理财与市场分析的终极指南

在当今快速变化的金融市场中,个人投资者和理财爱好者需要高效、智能的工具来辅助决策。GenericAgent作为一款自我进化的智能代理框架,凭借其强大的系统控制能力和极简架构,为金融应用提供了全新的解决方案。本文将详细介绍如何利用GenericAgent进行智能理财与市场分析,帮助你轻松应对复杂的金融环境。 ## 📈 量化选股:快速定位优质股票 GenericAgent的量化选股功能是其在金融

gitblog_00147的博客 1023

GenericAgent自进化原理:3.3K行代码如何成长为智能系统

GenericAgent是一款令人惊叹的自进化智能代理,它从仅3.3K行代码的种子开始,逐步成长为具备完整系统控制能力的智能系统,同时实现了6倍的令牌消耗 reduction。这一突破性的技术展示了人工智能自我进化的巨大潜力,为构建高效、智能的自动化系统开辟了新道路。 ## 🧠 自进化核心机制:从种子到系统的蜕变 GenericAgent的自进化能力源于其独特的设计架构,它能够通过不断学习和

gitblog_00038的博客 787

GenericAgent能源管理:6倍降本的终极AI系统控制方案

GenericAgent是一款自我进化的AI代理框架,核心仅3K行代码却能实现全系统控制,通过独特的技能树生长机制和极致的Token效率,为能源管理领域带来革命性的优化方案。本文将详解如何利用这一强大工具实现能源使用的智能优化与成本显著降低。 ## 为什么选择GenericAgent进行能源管理? 在能源管理领域,传统系统往往面临两大核心挑战:复杂的系统控制需求与高昂的运行成本。Generic

gitblog_00856的博客 695

GenericAgent文件操作自动化:从简单复制到复杂管理

GenericAgent是一款能够自我进化的智能代理,它可以从3.3K行的种子代码开始成长技能树,实现对整个系统的控制,同时减少6倍的令牌消耗。对于新手和普通用户来说,掌握GenericAgent的文件操作自动化功能,能让日常的文件管理工作变得更加高效和轻松。 ## 为什么选择GenericAgent进行文件操作自动化? 在日常工作和生活中,我们经常需要进行各种文件操作,如复制、移动、重命名、

gitblog_00090的博客 808

GenericAgent企业应用:提升团队效率的终极解决方案

在当今快节奏的商业环境中,企业需要高效、智能的工具来应对复杂的业务挑战。GenericAgent作为一款极简且可自我进化的自主Agent框架,正逐渐成为企业提升团队效率的秘密武器。它以约3K行核心代码为基础,通过9个原子工具和100行左右的Agent Loop,赋予人工智能系统级别的本地计算机控制能力,涵盖浏览器操作、终端管理、文件系统、键鼠输入、屏幕视觉及移动设备控制等多个方面。 ## 🚀

gitblog_00399的博客 939
上一篇: 认知循环架构与现有智能体:区别和联系
下一篇: docker常用命令
十铭忘
博客等级 码龄7年 432粉丝 301原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值