人工智能大模型模型评测Agent 评测数据集RAG【免费下载链接】locomo项目地址https://gitcode.com/gh_mirrors/lo/locomo点击查看免费下载LoCoMo 是一个面向大模型LLM的长程对话记忆评测基准benchmark包含 10 段超长双人对话和 1,986 条人工标注的问答对。本文带你彻底弄懂 LoCoMo 评测指标 F1、EMExact Match与 BERTScore 的计算原理、五种题型各自的计分规则以及如何用几条命令跑通完整评测流程 。1️⃣ 先认识 LoCoMo 数据集数据集主文件是 data/locomo10.json每条样本包含字段说明conversation按时间排序的多个 session含speaker、dia_id、text部分轮次带图片 captionqa问答标注question、answer、category题型、evidence证据对话位置observation/session_summary由 gpt-3.5-turbo 生成的观察与摘要用于 RAG 检索评测event_summary事件摘要任务的 ground truth 标注1,986 个问答按category分为五类直接决定了评测方式category题型数量占比4单跳事实检索 single-hop retrieval84142.3%1多跳推理 multi-hop retrieval28214.2%2时间推理 temporal reasoning32116.1%5对抗题 adversarial44622.4%3开放域知识 open-domain knowledge964.8%2️⃣ 快速上手环境配置与一键评测所有脚本先加载 scripts/env.sh在里面填写OPENAI_API_KEY、GOOGLE_API_KEY、ANTHROPIC_API_KEY或HF_TOKEN并确认数据路径DATA_FILE_PATH./data/locomo10.json即可。不同模型对应一键脚本bash scripts/evaluate_gpts.sh # OpenAI 系列模型 bash scripts/evaluate_claude.sh # Anthropic 系列模型 bash scripts/evaluate_gemini.sh # Google Gemini 系列模型 bash scripts/evaluate_hf_llm.sh # Huggingface 开源模型llama3、mistral 等 bash scripts/evaluate_rag_gpts.sh # RAG 检索增强模式核心入口是 task_eval/evaluate_qa.py它逐样本调用模型作答把预测写入{model}_prediction字段随后调用eval_question_answering()逐题打分并把分数如gpt-4-turbo_f1回写到输出 JSON见 task_eval/evaluate_qa.py#L99-L113。3️⃣ F1 是怎么算的先看「答案归一化」三个指标都先经过同一套归一化 normalize_answer转小写、去掉所有标点去掉冠词 a / an / the / and压缩多余空白之后按题型走不同分支task_eval/evaluation.py#L189-L241F1对归一化后的词做 Porter 词干化running和runs视为同词统计预测与标准答案的词重叠数计算 precision、recall 再取调和平均f1_score。EMExact Match比较归一化后两侧词集合是否完全相等exact_match_score多个标准答案取最大值。注意它允许词序不同所以比字符串全等更宽松。多答案处理答案里用逗号分隔多个子答案时如 Psychology, counseling certificationf1()会对每个标准子答案分别取最优 F1 再求平均task_eval/evaluation.py#L141-L145。4️⃣ 五类题型的差异化计分策略题型计分方式原因4 单跳 / 2 时间推理直接算 F1答案是单一短语3 开放域知识只取答案;分隔后的第一段再算 F1开放域答案常有多候选避免苛刻1 多跳推理拆成子答案分别算 F1 再平均多跳答案由多个事实拼接部分正确应得分5 对抗题二值判定回答含no information available或not mentioned得 1 分否则 0 分考的是知道不知道说见 task_eval/evaluation.py#L217-L221这个设计很关键多跳题回答对一半能拿部分分而对抗题只认拒答这一个正确答案。5️⃣ BERTScore当字面不匹配时评估语义相似度当答案与标准答案措辞不同但语义一致时词重叠类指标会低估模型。LoCoMo 引入了 bert_score 作为语义补充基于 BERT 模型计算预测与标准答案的语义相似度langen开启rescale_with_baseline基线重标定让分数具有可比性取 P/R/F1 中的F1值负数截断为 0配套的还有 rougel_scoreROUGE-1 F 值以及面向多模态对话生成任务的 eval_dialogue_system同时输出 F1 与 RougeL。这些指标在 task_eval/evaluation_stats.py 中可被统一聚合。6️⃣ 结果聚合按题型与记忆长度双维度统计评测结束后analyze_aggr_acc 会输出两份关键报告按题型统计每类问题的数量、累计得分与准确率最后给出整体准确率按记忆长度统计利用evidence定位答案出处按对话累计长度每 1000 字符一档分桶统计准确率——这正是 LoCoMo 论文越靠前的记忆越难召回结论的数据基础。RAG 模式下还会额外输出recallrag_utils.py 中的检索召回检索到的 top-k 上下文覆盖了多少evidence证据位置用于区分检索没找对还是模型没答对。7️⃣ 实战小贴士 换--top-k 5 10 25 50和--retriever dragon等参数可对比不同检索策略完整示例见 scripts/evaluate_rag_gpts.sh评测开源大模型时加--use-4bit做 4bit 量化加载小显存也能跑 70B 模型输出的{model}_f1、{model}_recall字段逐题保留方便定位具体哪道题失分统计脚本支持直接重跑python3 task_eval/evaluation_stats.py无需重新调用 API。参考论文Evaluating Very Long-Term Conversational Memory of LLM AgentsACL 2024PDF 位于 static/paper/locomo.pdf。掌握 F1、EM、BERTScore 与五类题型的计分规则后你就能像论文作者一样科学、可复现地对比不同大模型在超长对话记忆场景下的真实表现了。赞分享人工智能大模型模型评测Agent 评测数据集RAG【免费下载链接】locomo项目地址https://gitcode.com/gh_mirrors/lo/locomo点击查看免费下载相关推荐JARVIS评估指标Rouge、F1、BertScore详解JARVIS评估指标Rouge、F1、BertScore详解 在大型语言模型LLM与机器学习社区的集成系统中评估任务执行质量至关重要。JARVIS作为连人工智能大模型AI Agent工具调用模型评测LXDUI核心功能详解容器、镜像与存储池一站式管理LXDUI核心功能详解容器、镜像与存储池一站式管理 LXDUI是一款专为Linux原生容器技术LXD/LXC打造的Web管理界面提供直观高效的容器生命周期管Logseq 快速上手用双向链接和块引用把笔记变成可查询的知识库Logseq 快速上手用双向链接和块引用把笔记变成可查询的知识库 你正在写一份会议记录想引用三个月前写下的一条结论却怎么都找不到那一页。Logseq 是一知识管理桌面应用前端跨平台创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
阅读完成 · 觉得有帮助?