12 篇文章带有标签 “memory”

Claude Code 智能编程实战

什么是 Claude Code

应用于软件开发的各个阶段

1. 探索
(Discover)
2. 设计
(Design)
3. 构建
(Build)
4. 部署
(Deploy)
5. 维护与扩展
(Support & Scale)
探索代码库与历史
(Explore codebase and history)
规划项目
(Plan project)
实现代码
(Implement code)
自动化 CI/CD
(Automate CI/CD)
调试错误
(Debug errors)
搜索文档
(Search documentation)
制定技术规范
(Develop tech specs)
编写并执行测试
(Write and execute tests)
配置环境
(Configure environments)
大规模重构
(Large-scale refactor)
入职与环境配置
(Onboard & Setup)
定义架构
(Define architecture)
创建提交与 PR
(Create commits and PRs)
管理部署
(Manage deployments)
监控使用情况与性能
(Monitor usage & performance)

工具使用

内置工具列表

编码智能体的核心组件(Sebastian Raschka)

编码智能体的核心组件——编码智能体如何借助工具、记忆与仓库上下文,让大语言模型在实际应用中更高效

Sebastian Raschka 博士 2026年4月4日

本文将讲解编码智能体与智能体框架的整体设计:它们是什么、如何工作,以及各模块在实际中如何协同。读过我《从零构建大语言模型》《从零构建推理模型》两本书的读者经常问到智能体相关问题,因此我整理了这份可直接参考的说明。

总体而言,智能体之所以成为重要议题,是因为当下大语言模型实用系统的进步,不只在于模型本身更强,更在于我们如何使用模型。在许多真实场景中,模型外围的系统——如工具调用、上下文管理、记忆机制——与模型本身同等重要。这也解释了为何 Claude Code、Codex 这类系统,会比在普通聊天界面中使用同款模型显得能力强得多。

本文将拆解编码智能体的六大核心组件

Claude Code、Codex CLI 与其他编码智能体

你大概率熟悉 Claude Code 或 Codex CLI,简单来说,它们本质是智能体式编码工具:在大语言模型外层封装一层应用层(即智能体框架),让编码任务更便捷、性能更优。

编码智能体专为软件工程场景设计,其关键不只在于模型选择,更在于外围系统:仓库上下文、工具设计、提示词缓存稳定性、记忆能力、长会话连续性。

这个区分很重要,因为人们谈论大语言模型的编码能力时,常把模型、推理行为、智能体产品混为一谈。

Hermes 智能体全面研究报告与 OpenClaw 对比分析

1. Hermes 智能体基础认知与发展概况

1.1 技术定义与核心特征

Hermes Agent 是由 Nous Research 开发的开源自主 AI 智能体,于 2026 年 2 月正式发布,其核心定位为 "与你共同成长的智能体"(The agent that grows with you)(1)。与传统的 AI 聊天机器人或 IDE 绑定的代码补全工具不同,Hermes Agent 是一个运行在用户服务器上的自主智能体,具有持久记忆和自我改进能力,能够在运行过程中不断学习和进化。

Hermes Agent 的技术架构采用模块化单代理持久循环设计,核心是 run_agent.py 中的 AIAgent 类(约 9200 行代码),负责同步编排整个生命周期:输入→推理→工具执行→内存更新→输出。该系统支持 Linux、macOS 和 WSL2 平台,用户可以通过一条 curl 命令完成安装,无需任何前置依赖,体现了其设计的简洁性和易用性。

在技术栈方面,Hermes Agent 基于 Python 3.11 + 开发,使用 uv (Astral) 管理,主要依赖包括 openai SDK 进行 LLM 通信、rich 和 prompt_toolkit 构建终端 UI、SQLite FTS5 实现会话持久化(97)。

Claude Managed Agents(托管智能体)开发者参考指南

Claude Managed Agents 概览

这是一个运行在托管基础设施中的预构建、可配置智能体(Agent)框架,最适用于长时间运行的任务和异步工作。

Anthropic 提供了两种使用 Claude 构建应用的方式,分别适用于不同的使用场景:

Messages API Claude Managed Agents
定位 直接的模型提示词访问 运行在托管基础设施中的预构建、可配置智能体框架
最佳用途 自定义智能体循环和精细化控制 长时间运行的任务和异步工作
了解更多 Messages API 文档 Claude Managed Agents 文档

Claude Managed Agents 为将 Claude 作为自主智能体运行提供了框架和基础设施。无需构建自己的智能体循环、工具执行环境和运行时,你即可获得一个全托管的环境,让 Claude 能够安全地读取文件、运行命令、浏览网页并执行代码。该框架支持内置的提示词缓存、压缩以及其他性能优化,以实现高质量、高效的智能体输出。

核心概念

Claude Managed Agents 基于四个核心概念构建:

LLM 智能体的外化:记忆、技能、协议与 Harness Engineering 统一综述

论文基础信息

核心观点

可靠的智能体能力不只是来自更强的模型本身,而是来自将认知负担系统性地转移到外部组件:

  • 记忆外化:解决跨会话状态延续问题
  • 技能外化:复用成熟的流程经验,避免每次都重新推理
  • 协议外化:标准化交互规则,让工具调用、多智能体协作更稳定
  • Harness(智能体引擎/管控框架) 是协调以上所有组件的统一运行层,是智能体系统的"认知环境"

什么是Harness?

Harness不是普通的工具链或者SDK,而是模型运行的完整认知环境

  • 模型本身只有通用推理能力,Harness决定了它能访问什么数据、能执行什么操作、怎么受到约束、怎么从错误中学习
  • 智能体的能力不是模型单独具备的,而是模型和Harness环境耦合之后共同产生的
  • Harness的核心作用是把零散的外部组件(内存、技能、协议)组合成连贯的智能行为,把无边界的推理任务转化为结构化的可控执行流程

OpenClaw 智能体工作区指南:构建记忆与人格

OpenClaw 智能体工作区,旨在构建一个具有独立人格、长期记忆和自治能力的 AI。

核心基于 Markdown 文件系统

  • 身份与原则 (BOOTSTRAP, SOUL, IDENTITY):确立 AI 的自我认知、名字与核心行为守则。
  • 持续性 (MEMORY, AGENTS):通过“每日日志”与“长期记忆”实现跨会话的知识积累,而非每次新鲜唤醒。
  • 伙伴与工具 (USER, TOOLS):记录人类偏好与本地环境配置,实现个性化与外部协作。
  • 自主性 (HEARTBEAT):在无指令时主动执行维护与状态检查。

总体而言,这套架构通过将记忆转化为持久化、可编辑的 Markdown 文件,实现了自主反思与知识沉淀的自治目标

DeepSeek Engram:类脑记忆存储与检索新范式

Engram 是一种旨在增强大语言模型性能的条件记忆(Conditional Memory)模块。传统的 Transformer 架构在处理静态知识检索时效率较低,往往需要通过复杂的计算来模拟记忆,而 Engram 通过现代化的 N-gram 哈希查找实现了常数级时间复杂度 O(1) 的知识获取。研究者揭示了一种 U 型缩放法则,证明在固定参数预算下,平衡条件计算(MoE)静态内存(Engram) 能显著提升模型在推理、代码及数学任务中的表现。实验分析表明,Engram 能减轻模型底层对基础模式的重复构建,从而释放更多算力用于处理全球上下文和深度推理。此外,Engram 的确定性寻址特性支持从主机内存预取数据,使其能在不增加硬件负担的情况下实现大规模参数扩张。最终,该技术为构建更高效、具备长文本处理能力的新一代稀疏模型提供了核心原语。

Engram 架构

记忆内存的参数就像是图书馆书架上的一本本百科全书,记录着世界上的事实;而 Engram 模块的参数就像是一位经验丰富的图书管理员。管理员通过训练(学习),能够根据你当前提出的研究课题(隐藏状态),迅速判断哪些百科全书的条目是有用的,哪些是由于名字相似而找错的(哈希冲突),并帮你把这些知识翻译成你研究报告能用的语言(投影整合)。

该模块通过检索静态 N-gram 记忆,并利用上下文感知门控(context-aware gating)将其

LangChain Blog: In the Loop

What is an agent?

“什么是代理?”

几乎每天都会有人问我这个问题。在 LangChain,我们构建工具来帮助开发者构建 LLM 应用程序,特别是那些充当推理引擎并与外部数据和计算源交互的应用程序。这包括通常被称为“代理”的系统。

每个人似乎对代理都有稍微不同的定义。我的定义可能比大多数人更技术性:

💡 代理是一个使用 LLM 来决定应用程序控制流的系统。

即使在这里,我也承认我的定义并不完美。人们通常认为代理是高级的、自主的、类人的——但如果是一个简单的系统,LLM 在两个不同路径之间进行路由呢?这符合我的技术定义,但不符合人们对代理应具备能力的普遍看法。很难准确定义什么是代理!

这就是为什么我非常喜欢 Andrew Ng 上周的推文。在推文中,他建议“与其争论哪些工作应被包括或排除为真正的代理,我们可以承认系统可以有不同程度的代理性。”就像自动驾驶汽车有不同的自动化级别一样,我们也可以将代理能力视为一个光谱。我非常同意这个观点,我认为 Andrew 表达得很好。将来,当有人问我什么是代理时,我会转而讨论什么是“代理性”。

什么是代理性(agentic)?

去年我在 TED 演讲中谈到了 LLM 系统,并使用下面的幻灯片讨论了 LLM 应用程序中存在的不同自主级别。

一个系统越“代理性”,LLM 决定系统行为的程度就越高。

使用 LLM 将输入路由到特定的下游工作流中具有一些小的“

LangChain 快速入门

LangChain

通过可组合性使用 LLM 构建应用程序

介绍

大型语言模型 (LLM) 正在成为一种变革性技术,使开发人员能够构建他们以前无法构建的应用程序。 但是,单独使用这些 LLM 往往不足以创建真正强大的应用程序——当您可以将它们与其他计算或知识来源相结合时,真正的力量就来了。

Documentation

安装

pip install langchain
# or
conda install langchain -c conda-forge

配置环境

使用 LangChain 通常需要与一个或多个模型提供者、数据存储、api 等集成。

对于这个例子,将使用 OpenAI 的 API

pip install openai
export OPENAI_API_KEY="..."

LLMs:从语言模型获得预测结果

在这个例子中,我们可能希望输出更加随机,所以将 temperature 设置的更高一些。

from langchain.llms import OpenAI

llm = OpenAI(temperature=0.9)

text = "一家生产彩色袜子的公司取什么名字好?"
print(llm(text))
可以取名为:Colorful Socks Factory。

提示模板(Prompt Templates):管理 LLM 的提示 from la

OpenVINO 神经网络性能分析

网络性能分析

查看每层的性能测量值,可以获得最耗时的层。

实现方式

通过配置收集指定设备上的性能分析

core = Core()
core.set_property(device_name, {"PERF_COUNT": "YES"})

通过推理请求获得性能分析数据

request = compiled_model.create_infer_request()
results = request.infer({0: input_tensor})
prof_info = request.get_profiling_info()

可视化性能分析 def print_infer_request_profiling_info(prof_info): column_max_widths = { 'node_name': 0, 'node_type': 0, 'exec_type': 0 } for node in prof_info: if len(node.node_name) > column_max_widths['node_name'] : column_max_widths['node_name'] = len(node.

Linux上查找系统信息

操作系统

Linux内核版本

  • uname
$ uname -r
4.18.0-147.5.1.el8_1.x86_64
  • /proc/version
$ cat /proc/version
Linux version 4.18.0-147.5.1.el8_1.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 8.3.1 20190507 (Red Hat 8.3.1-4) (GCC)) #1 SMP Wed Feb 5 02:00:39 UTC 2020
  • hostnamectl
$ hostnamectl | grep Kernel
            Kernel: Linux 4.18.0-147.5.1.el8_1.x86_64

查找CODENAME

$ cat /etc/os-release | grep VERSION_CODENAME 
VERSION_CODENAME=focal

操作系统信息

$ lsb_release -a
  • Ubuntu
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 20.04 LTS
Release:	20.04
Codename:	focal
  • CentOS
LSB Version:	:core-4.1-amd64:core-4.1-noarch
Distributor ID:	CentOS
Description:	CentOS Linux release 8.1.1911 (Core) 
Release:	8.1.1911
Codename:	Core

Linux系统禁用交换分区

Kubernetes集群为了不影响性能要禁用交换分区。

查看交换区信息

$ swapon --show

临时禁用 /proc/swaps 中的交换分区(系统重启后会失效)

$ sudo swapoff -a

启用 /etc/fstab 中的所有交换区

$ sudo swapon -a

禁用交换分区(系统重启后也有效)

$ sudo sed -i '/swap/s/^/#/' /etc/fstab

查看是否禁用交换分区(什么也不显示代表成功)

$ swapon

参考资料