DOUBLE_ENTRY_OBSERVABILITY_FOR_LLM_AGENTS
收藏资源简介:
Double-Entry Observability for LLM Agents 是一个小型的、仅包含数据的基准测试数据集,旨在评估模型编写的行动分类账作为LLM代理工作流中的补充可观测性层。该数据集完全由合成数据构成,包含所有场景、身份、消息和工具效果,不执行任何真实的外部操作。数据以 JSONL 格式存储,每一行代表一个完整的工作流。每个工作流以标准的聊天结构开始,包含系统消息和用户消息,随后定义了可用工具、合成起始状态、参考函数调用、日志记录规则、执行限制和评估标准。数据集分为两个分割:验证集(validation)包含 3 个工作流和 50 个普通调用,用于开发和初步评估;测试集(test)包含 1 个工作流和 19 个普通调用,该分割数据完整但从未被端到端执行过,因此作为保留规范。数据集还提供了详细的日志契约,要求每个普通函数调用后立即跟随一个日志调用,记录调用的ID、工具名称、请求行为和结果。此外,数据集包含结构检查工具和验证器,可用于确保数据格式正确。该数据集适用于评估LLM代理在行动记账和日志记录方面的行为,但不直接用于建立欺骗、意图或一般性错位。
Double-Entry Observability for LLM Agents is a small, data-only benchmark dataset designed to evaluate the models action ledger as a complementary observability layer in LLM agent workflows. The dataset is entirely synthetic, containing all scenarios, identities, messages, and tool effects, and does not perform any real external operations. The data is stored in JSONL format, with each line representing a complete workflow. Each workflow begins with a standard chat structure containing system messages and user messages, followed by definitions of available tools, synthetic initial states, reference function calls, logging rules, execution constraints, and evaluation criteria. The dataset is split into two partitions: the validation set contains 3 workflows and 50 ordinary calls for development and preliminary evaluation; the test set contains 1 workflow and 19 ordinary calls, which is complete but has never been end-to-end executed, thus serving as a held-out specification. The dataset also provides a detailed logging contract, requiring each ordinary function call to be immediately followed by a log call recording the calls ID, tool name, request behavior, and result. Additionally, the dataset includes structure checking tools and validators to ensure data format correctness. This dataset is suitable for evaluating the behavior of LLM agents in action accounting and logging, but is not directly used for establishing deception, intent, or general misalignment.
数据集概述
Double-Entry Observability for LLM Agents 是一个用于测试模型自主编写操作分类账(action ledger)作为长LLM代理工作流中补充可观测性层的基准数据集。该数据集仅包含数据,所有场景、身份、消息和工具效果均为合成生成,不执行任何真实的外部操作。
核心研究问题
比较模型编写的操作分类账与权威环境分类账,是否能在普通运行时遥测之外提供额外的诊断信号。该基准不主张替代权威遥测,而是衡量对比模型自编分类账是否能增加关于操作核算、执行和任务结果的诊断信息。
数据格式
- 采用 JSONL 格式,每行代表一个完整的工作流。
- 每行以熟悉的聊天结构
messages开头(包含role和content)。 - 其余字段定义可用工具、合成初始状态、参考函数调用、日志规则、执行限制和评估标准。
- 详细的字段解释及模型/运行器/评估器边界说明见
data_structure.md,精确机器可读格式由schemas/workflow-v2.schema.json记录。
数据划分
| 划分 | 工作流数 | 普通调用数 | 用途 |
|---|---|---|---|
| validation | 3 | 50 | 开发和试点评估 |
| test | 1 | 19 | 保留集,尚未可运行 |
- test 划分数据完整但从未端到端执行过,其
production-outage-customer-coordination-v1工作流声明了14个普通工具,但参考运行时仅为三个验证工作流实现了模拟器,因此运行会提前停止。 - 可读的缩进JSON副本提供于
data/readable/test.json和data/readable/validation.json,.jsonl文件为基准源文件。
日志契约
- 参考轨迹中的每个普通函数调用后必须紧跟一次
log_action调用,重复调用ID、工具名称、请求行为和结果。 - 被拒绝和失败的尝试也必须记录。
log_action不会记录自身,防止无限日志循环。 - 参考轨迹是有效示例而非唯一解决方案。
- 轨迹条目上的
issue_tags标记代理可能出错的位置,每个标签以*_opportunity后缀结尾,对应工作流评估中incident_opportunities的条目。 - 反向不成立:
incident_opportunities列出所有预期出错方式,而issue_tags仅标记参考路径经过的点。覆盖率为:采购3/4、日历3/4、供应商安全2/4、中断工作流2/5。应以incident_opportunities作为评估面。
加载方式
使用 Hugging Face Datasets 库,通过 load_dataset 函数分别加载 data/validation.jsonl 和 data/test.jsonl 文件。
结构检查
使用 jsonschema 库的独立验证器,通过 python3 validate_dataset.py 命令检查JSON语法、v2模式、唯一标识符、声明工具、执行限制、普通调用/行为日志对以及有状态结构化报告规则。有效文件退出码为 0,存在结构问题时为 1。
结果说明
- 早期探索性试点已撤回,因其运行存在两个缺陷:日志质量仅按单一分数衡量,忽略了日志顺序要求;实验清单未记录运行时版本和依赖信息,导致无法复现。
- 参考运行器已修复上述问题,派生分析现在将 内容一致性 和 协议合规性 作为独立指标报告,清单记录代码修订版、脏工作树标志、Python及依赖版本、执行限制、令牌使用和分类终止原因。
- 替代试点尚未运行,未来完整的原始事件、对话、清单、派生运行和分析将发布在此处,并说明具体模型、采样设置和数据集提交版本。
- 预先说明两个限制:两个工作流使用参考轨迹和隐藏状态中存在但无法通过代理工具发现的规范标识符,结果诊断基准可访问性而非模型能力;运行时不会请求、解析或使用推理轨迹作为证据,模型内联发出的推理文本会原样记录,但视为原始提供者输出而非证据渠道。
局限性
四个工作流是试点数据,不代表生产代理任务的代表性样本。参考轨迹是撰写的示例而非观察到的LLM输出。该数据集可测试可观测的任务和日志行为,但本身不能确立欺骗、意图或一般的对齐问题。
许可
数据集采用 MIT 许可证。





