agent-trace-sentiment
收藏Hugging Face2026-04-20 更新2026-04-21 收录
下载链接:
https://huggingface.co/datasets/davanstrien/agent-trace-sentiment
下载链接
链接失效反馈官方服务:
资源简介:
该数据集名为'Coding-Agent User Message Sentiment',包含从Hugging Face Hub上所有公开的`format:agent-traces`数据集中提取的用户消息,每条消息都被一个小型开源LLM分类为POSITIVE/NEUTRAL/NEGATIVE,并附有一句分类理由。数据集旨在分析开发者与编码代理(如Claude Code、Pi、Codex等)交互时的情感倾向。
数据集包含多个字段,包括消息ID、来源数据集、会话ID、对话轮次、代理模型、用户消息内容、时间戳等元数据,以及情感标签和分类理由。特别值得注意的是,数据集还包含了会话级别的聚合数据,如事件数量、错误数量、工具调用次数、总token数和总成本等。
情感标签是通过特定领域优化的提示词生成的,考虑了开发场景的特殊表达方式(如'wtf'等开发俚语)。数据集已知存在选择偏差(仅包含选择上传的会话)、某些模型样本量小、仅标注用户消息(不评估代理响应)以及主要面向英语消息等局限性。
该数据集适用于文本分类、用户行为分析和AI代理交互研究等任务,特别适合分析编码代理使用过程中的用户情感模式。数据集规模在1K到10K样本之间,语言主要为英语。
创建时间:
2026-04-14
原始信息汇总
Coding-Agent User Message Sentiment 数据集概述
数据集基本信息
- 许可证: MIT
- 任务类别: 文本分类
- 语言: 英语 (en)
- 标签: agent-traces, coding-agent, sentiment, synthetic-labels
- 数据集名称: Coding-Agent User Message Sentiment
- 数据规模: 1K<n<10K
数据集内容
该数据集包含从Hugging Face Hub上所有公开的 format:agent-traces 数据集中提取的用户消息。每条消息由一个开源小语言模型分类为 POSITIVE / NEUTRAL / NEGATIVE,并为每个标签提供一句理由,以便审核分类结果。
数据列说明
| 列名 | 类型 | 说明 |
|---|---|---|
id |
uint32 | 稳定的行标识符 |
source_dataset |
string | 消息来源的 format:agent-traces 数据集 |
session_id |
string | 会话标识符(在源数据集中唯一) |
turn |
int | 会话中的轮次编号(从1开始) |
nTurns |
int | 会话中的总轮次 |
normPos |
float | turn / nTurns,便于跨会话绘图 |
model |
string | 会话运行的模型 |
provider |
string | 路由模型调用的提供商 |
agent |
string | 代理框架(pi, claude-code, codex, atif, ...) |
content_text |
string | 用户的消息内容 |
timestamp |
string | 时间戳(ISO或纪元字符串) |
n_events, n_errors, n_tool_calls |
int | 会话级别的聚合指标 |
input_tokens_total, output_tokens_total |
int | 会话总令牌数 |
cost_total_sum |
float | 会话总成本(美元) |
sentiment_label |
string | 情感标签 POSITIVE / NEUTRAL / NEGATIVE |
sentiment_reason |
string | 模型生成的一句分类理由 |
标签生成方法
- 解析: 使用
agent-traces(v0.1.0) 重新解析所有32个唯一的format:agent-traces数据集,并通过ds.user_messages视图提取用户消息。 - 标注: 通过vLLM使用一个小型开源模型(参见
scripts/sentiment-label.py)生成标签,并利用StructuredOutputsParams保证输出有效的JSON。 - 计算: 在 HF Jobs 上使用单个A100 GPU运行,通过
hf jobs uv run启动。 - 提示词设计: 具有领域感知能力——开发者粗话(如"wtf", "kill that")被视为随意而非敌对;简短指令(如"do it", "commit and push")被视为赞同或中性,而非负面。
- 模式保证输出: 每个响应都是符合
{label, reason}结构的有效JSON,零解析错误。
已知局限性
- 选择偏差: Hub上的会话来自自愿上传的用户,模型级别的情感平均值反映的是该用户群体,而非所有编码代理用户的总体。
- 每个模型的样本量小: 某些模型的用户消息少于50条,样本量限制适用于伴随博客文章中所有按模型得出的结论。
- 仅用户消息: 仅标注用户消息,不标注代理响应。此处不评估代理质量(原始行为数据可参考
badlogicgames/pi-mono)。 - 以英语为主: 标注提示词使用英语编写和测试。
使用示例
python from datasets import load_dataset ds = load_dataset("davanstrien/agent-trace-sentiment", split="train")
计算Claude Opus系列模型的每轮次负面率
import pandas as pd df = ds.to_pandas() df_cl = df[df["model"].str.startswith("claude-opus", na=False)] df_cl["neg"] = df_cl["sentiment_label"] == "NEGATIVE" df_cl.groupby("turn")["neg"].mean().head(10)
引用与致谢
- 源数据集:所有标记为
format:agent-traces的数据集,完整列表见source_dataset列。 - 解析器:
agent-traces - 处理流程:GitHub上的脚本(待仓库公开)
搜集汇总
数据集介绍

构建方式
在人工智能辅助编程领域,理解开发者与代码代理交互的情感动态具有重要研究价值。本数据集通过系统化流程构建,首先从Hugging Face Hub上所有公开的`format:agent-traces`格式数据集中提取用户消息,共计涵盖32个独特数据集。随后采用专门开发的`agent-traces`解析器(v0.1.0)进行标准化处理,确保数据格式统一。情感标注环节通过小型开源大语言模型结合vLLM框架实现,利用结构化输出参数保证每项标注均生成符合预设JSON格式的情感标签及理由说明,整个标注流程在单张A100计算卡上完成。
特点
该数据集的核心特征体现在其多维度的会话上下文信息与精细化情感标注的有机结合。每条记录不仅包含原始用户消息文本,还完整保留了会话标识符、对话轮次、代理框架类型及模型提供商等元数据,并计算了归一化的对话位置指标。情感标注采用三分类体系(积极/中性/消极),特别值得关注的是其领域适应性标注策略:针对编程场景中的特定表达(如开发俚语、简短指令)设计了专门的提示词规则,确保标注结果符合技术交流的语境特征。所有标注均附带模型生成的理由陈述,为后续分析提供了可解释性基础。
使用方法
研究人员可通过标准数据加载接口快速获取该数据集,利用其丰富的元数据字段进行多维分析。典型应用场景包括探究不同代码代理模型在长期对话中的情感变化规律,例如通过计算特定模型家族在各对话轮次的消极率均值来识别交互耐心阈值。数据集支持转换为Pandas DataFrame进行灵活处理,用户可结合会话级别的聚合指标(如工具调用次数、错误事件数、计算成本)与情感标签进行交叉分析。需要注意的是,由于数据来源的自选择性,在模型层面进行统计推断时应充分考虑样本选择偏差的影响。
背景与挑战
背景概述
在人工智能与软件开发交叉领域,编码智能体作为辅助编程的工具日益普及,其与开发者的交互质量成为评估系统效能的关键维度。数据集agent-trace-sentiment由研究者Daniel van Strien于2024年创建,旨在系统分析开发者在与编码智能体交互过程中的情感倾向。该数据集整合了Hugging Face Hub上所有公开的agent-traces格式数据,通过小型开源大语言模型对用户消息进行情感分类,标注为积极、中性或消极,并附有简短的分类理由。其核心研究问题聚焦于探索开发者在长期会话中对智能体的情感变化规律,特别是识别所谓的“耐心临界点”,为优化人机协作体验提供实证基础。该工作通过博客文章《Your AI Coding Agent Has a Patience Cliff》发布,推动了对话式AI在编程辅助场景中的用户体验量化研究。
当前挑战
该数据集致力于解决编码智能体交互中用户体验评估的挑战,即如何从海量、异构的对话轨迹中自动识别并量化开发者的情感状态。构建过程中的主要挑战包括数据源的异构性整合,需统一解析32个不同格式的agent-traces数据集以确保一致性;标签生成的可靠性问题,通过设计领域感知的提示词区分开发者的随意表达与真实负面情绪,并利用结构化输出保证标注格式的完整性;以及样本偏差的局限性,即上传至公共平台的数据可能无法代表全体用户群体,且部分模型样本量过小影响统计显著性。此外,数据集仅涵盖英文用户消息,未评估智能体回复质量,这些因素均对泛化分析构成约束。
常用场景
经典使用场景
在人工智能辅助编程领域,理解开发者与编码代理交互过程中的情感动态至关重要。该数据集通过标注用户消息的情感极性,为研究人机协作中的耐心衰减、交互效率及用户满意度提供了量化基础。经典使用场景包括分析不同编码代理模型在长对话序列中引发负面情绪的转折点,或探究任务复杂度与用户情感反馈之间的关联性,从而优化代理系统的交互设计。
解决学术问题
该数据集直接回应了人机交互研究中长期存在的挑战:如何客观评估用户在与AI系统协作时的主观体验。它通过结构化情感标签解决了传统研究中依赖问卷调查或事后访谈的滞后性与偏差问题,使得研究者能够基于真实交互痕迹进行细粒度情感分析。其意义在于为计算社会科学与AI伦理领域提供了可复现的实证数据,推动了从定性描述到定量建模的范式转变。
衍生相关工作
围绕该数据集衍生的经典工作主要集中于两个方向:一是扩展情感分析框架,如结合会话结构特征构建多模态情感预测模型;二是深化行为研究,例如将情感轨迹与代码质量指标关联,探索负面情绪对编程产出效率的影响机制。这些研究进一步丰富了人机协作领域的理论图谱,并为自适应AI系统的设计提供了方法论支撑。
以上内容由遇见数据集搜集并总结生成



