链载Ai

标题: AI Agent [打印本页]

作者: 链载Ai    时间: 昨天 21:32
标题: AI Agent

写在前面

👀
在Trajectory的实现中,参照了一些开源的实现,主要是字节的trae Agent和langgraph的源码。这里在看字节的Trae agent的过程中,也顺带改了一个小bug,下一篇会讲下trae agent的源码解析,主要聚焦在几个方面:
另外下一步会看下PromptX的实现,据说是提出一个挑选工具的协议,看看PromptX这个项目是怎么实现的。
感兴趣的话,先关注吧,说实话,网上也很少有博主像我写的这么详细的。

背景

📌
Trajectory 是什么?它的核心价值是什么?
在 Agent 的语境下,Trajectory(轨迹)指的是 Agent 在处理一个任务或一次对话交互过程中的完整执行记录(轨迹)指的是 Agent 在处理一个任务或一次对话交互过程中的完整执行记录。它就像飞机的“黑匣子”,详细记录了从接收用户输入开始,到最终给出响应的每一步思考、决策和行动。

一个典型的 Trajectory 包含以下关键信息:
其核心价值主要体现在以下几个方面:
因此想基于 LangGraph 的 Agent 设计并实现一个健壮、可扩展的 Trajectory(轨迹)记录系统。该系统不仅能满足基本的调试、审计和归-档需求,还引入了分布式追踪理念,为 Agent 的行为提供了深度可观测性,最终实现了类似 LangSmith 的轨迹分组与追踪效果。

实现目标

核心目标是捕获 Agent在执行任务过程中的每一步关键信息,并将其结构化地记录下来。希望做到的功能:

设计与实现

设计

在实现 Trajectory 记录功能的过程中,我评估了多种技术方案,最终选择了一种基于“扫描 state['messages']”的模式Trajectory 记录功能的过程中,我评估了多种技术方案,最终选择了一种基于“扫描 state['messages']”的模式。这个决策是权衡了多种方案的利弊后做出的。

曾经考虑过的方案:

  1. 节点装饰器 (Node Decorator):最初,想为 LangGraph 中的每一个 Node(节点)都包裹一个装饰器。这个装饰器会在节点执行前后自动记录日志。





欢迎光临 链载Ai (https://www.lianzai.com/) Powered by Discuz! X3.5