管理实战:Excel 批量导入、AI 用例生成与多轮会话维护)
AI AgentAI 应用后端前端大模型RAG【免费下载链接】nexentNexent is a zero-code platform for auto-generating production-grade AI agents using Harness Engineering principles — unified tools, skills, memory, and orchestration with built-in constraints, feedback loops, and control planes.项目地址https://gitcode.com/gh_mirrors/ne/nexent点击查看免费下载评测集Evaluation Set是 Nexent 智能体评估体系的基石——一组结构化的测试用例用于驱动对 Agent 的自动化评测。本文面向使用 Nexent 的开发者与评测工程师系统讲解如何在智能体开发 智能体评估的评测集页签中完成 Excel 批量导入、AI 辅助用例生成、用例的增删改查与导出并结合仓库源码解析导入解析、异步生成、数据校验与并发保护等底层实现帮助读者快速搭建并长期维护高质量、可复用的 Agent 基准测试集。评测集的核心概念与数据模型在 Nexent 中一条评测用例case至少必须包含一个问题query——即发送给智能体的用户输入。参考答案answer在数据层面是可选的但对于答案准确性Answer Accuracy、回答完整性Answer Completeness和事实准确性Factual Accuracy这三类评估器而言至关重要建议为需要精确打分的用例补齐参考答案。从源码看评测集与用例在数据库中由两张表承载见 db_models.pyevaluation_set_t评测集元数据记录评测集名称、描述、来源文件名source_filename、用例总数case_count以及 AI 生成状态generation_statusIDLE / GENERATING / DONE / FAILED与进度generation_progress0-100evaluation_set_case_t评测用例以 JSONB 存储inputs用户输入与label参考答案等标签并保存order_no集内顺序、session_id多轮会话标识与turn_order会话内轮次从 1 开始。用例在服务层被规范化为统一的字典结构见 evaluation_set_service.py 中_build_normalized_case的实现{ inputs: {query: 用户问题, session_id: s1, request_id: 1}, label: {answer: 参考答案}, session_id: s1, turn_order: 1, }从 Excel 批量导入用例操作路径进入智能体开发 智能体评估打开评测集页签点击上传填写评测集名称264 个字符和可选描述选择.xlsx或.xls文件上传也可以先点击下载模板用模板填写数据后再上传。后端上传接口位于 evaluation_set_app.py 的POST /evaluation-sets/upload支持一次上传多个文件每个文件先校验扩展名仅接受.xlsx/.xls与大小默认单文件不超过 20 MB通过环境变量MAX_EVALUATION_SET_FILE_SIZE_MB可调见 const.py随后统一解析并落库。支持的列名与中英文表头导入文件支持以下四个字段中英文表头均可字段中文列名是否必填说明session_id会话ID否多轮对话中同一会话的多条用例使用相同 IDrequest_id请求顺序否多轮对话中标记每一轮的顺序从 1 递增query问题是发送给智能体的用户输入answer答案否参考答案也可使用reference_output或expected_output从 evaluation_set_excel_utils.py 的表头别名映射表可以确认解析器实际接受的写法远比文档更宽容session_id还接受sessionid、会话id、会话IDrequest_id还接受turn_order、turnorder、turn、请求顺序query还接受问题answer还接受reference_output、referenceoutput、expected_output、expectedoutput、答案。此外ASCII 表头大小写不敏感如SESSION_ID、Query表头末尾带必填标记*也会被自动容忍如query*。这些行为均有对应的单元测试覆盖见 test_evaluation_set_excel_utils.py。模板与示例数据下载模板GET /evaluation-sets/template生成的.xlsx文件布局为第 1 行字段填写说明中文模板注明「问题必填*」与各字段的选填/必填语义第 2 行中英文表头会话ID | 请求顺序 | 问题 | 答案第 3 行起多轮会话示例数据例如会话ID请求顺序问题答案s1111等于几2s12再乘以3呢6s21中国首都是哪里北京模板生成逻辑见 evaluation_set_excel_utils.py其中「问题/query」列会被浅橙色高亮以提示必填。解析规则与多轮会话要求单轮用例session_id与request_id留空即可多轮用例同一会话内请求顺序必须连续递增从 1 开始系统会在创建评测集时校验若顺序不连续将直接拒绝导入见 evaluation_set_service.py空行自动跳过但任一数据行的query为空会报错Row N: query is required文件没有任何数据行或找不到表头行时导入失败数字单元格中的整数值会按整数解析1不会变成1.0详见 evaluation_set_excel_utils.py。使用 AI 生成评测集当没有现成测试数据时可以让 AI 基于业务场景自动生成评测用例在评测集页签中点击AI 生成评测集填写场景描述并选择生成模型选择将结果追加到已有评测集或输入名称创建新的评测集设置**生成数量1200 条**并开始生成。可选上下文知识库 / Agent / 参考文档为了让生成的用例更贴合真实业务可提供以下上下文知识库系统会先检索知识库内容作为素材生成的用例会围绕知识库中的概念、术语和场景展开Agent将 Agent 的配置、工具、技能和子智能体等信息注入上下文让用例覆盖 Agent 的真实能力面一个.docx参考文档作为业务素材补充。从 evaluation_set_service.py 的_do_kb_search可以看到知识库检索的完整链路先解析知识库名称 → 调用 LLM 规划检索 queryevaluation_plan_kb_queries模板→ 对每个 query 执行向量检索ES 模式使用cosineSimilarity脚本打分命中结果归一化为 0-1 后格式化→ 将检索结果组装进生成提示词。若检索失败则优雅降级仅凭场景描述和 Agent 配置继续生成不会中断任务。异步生成与状态流转生成任务在后台异步执行评测集列表会显示生成中Generating、就绪Ready或失败Failed状态。其底层实现要点见 evaluation_set_app.py 与 evaluation_set_service.py入口为POST /evaluation-sets/generate-cases-async通过config_thread_manager提交到后台线程池执行生成流程知识库检索进度 0→8→ 组装上下文与提示词10→ 调用 LLM 生成并解析50→ 逐条入库并上报进度70→99→ 完成后置为DONE100LLM 输出按 JSON 数组解析兼容 markdown 代码块包裹缺inputs.query或label.answer的脏数据会被过滤若返回数量超过请求数量只保留前count条生成失败时新建的评测集会被整体清理删除追加模式则只回滚本次生成追加的用例不影响原有数据_handle_generation_failure服务重启后处于GENERATING状态的“半成品”评测集会由 evaluation_set_db.py 的recover_interrupted_generations自动标记为FAILED并回滚追加用例。AI 生成的提示词模板见 generate_cases_system_zh.yaml其中约定了三类可评测的 answer 形态标准答案纯文本、评分标准检查清单【评分标准】- [ ]逐项判定和过程判定【过程判定】Step → 工具调用链路并要求至少 30% 为应用或推理类问题。重要提示AI 生成的问题和参考答案可能存在遗漏或错误。在将其作为正式基准集使用前请务必进行人工抽查与修正。查看与维护用例打开评测集的查看操作可以按问题搜索用例模糊匹配inputs.query字段对应接口GET /evaluation-sets/{id}/cases?query...添加单条用例编辑问题、答案、会话 ID 和请求顺序删除单条或批量删除用例导出为 ExcelGET /evaluation-sets/{id}/export导出格式与导入模板一致可再次导入实现“导出→修改→回传”的往返维护。多轮会话的强一致性校验维护多轮用例时系统会强制保证会话内轮次连续新增用例时turn_order必须等于该会话当前最大轮次 1否则报错编辑用例时若改动涉及session_id或turn_order同样会校验连续性删除多轮用例只能从会话尾部删起先删最后一轮批量删除后剩余轮次也必须保持从 1 开始的连续序列否则拒绝删除。这些校验逻辑见 evaluation_set_service.pyadd_evaluation_set_case_impl、L311-L373_validate_turn_continuity与 L395-L473删除及批量删除对应的错误码包括AGENT_EVALUATION_TURN_ORDER_MISMATCH、AGENT_EVALUATION_TURN_DELETE_NOT_LAST和AGENT_EVALUATION_TURN_DELETE_NOT_CONTIGUOUS。活跃评测任务对评测集的保护如果评测集正被运行中PENDING / RUNNING的评估任务引用系统会限制可能影响任务一致性的修改操作——增删改用例、追加生成用例乃至删除整个评测集都会被拦截并返回AGENT_EVALUATION_SET_IN_USE参见 evaluation_set_service.py 的count_active_runs_using_set与_check_set_not_in_use。已完成COMPLETED / FAILED的任务不在此列不会阻碍后续维护。因此对于需要长期维护、持续演进的基准集建议复制评测集或导出 Excel 备份后再进行大规模修改用备份副本运行“变更验证”确认新旧用例并存时的评测结果可对比将基准集与临时实验集分开管理避免实验性修改污染长期基准。数据限制速查以下是评测集相关的硬性限制官方文档与 evaluation_limits.py、const.py 中的常量一一对应项目当前限制文件格式仅支持.xlsx和.xls上传文件单个文件不超过 20 MB环境变量MAX_EVALUATION_SET_FILE_SIZE_MB可调评测集数量每个租户最多 50 个MAX_EVALUATION_SETS用例数量每个评测集最多 2,000 条MAX_CASES_PER_SET问题长度不超过 2,000 个字符CASE_QUERY_MAX_LEN参考答案长度不超过 5,000 个字符CASE_ANSWER_MAX_LEN评测集名称264 个字符SET_NAME_MIN_LEN/SET_NAME_MAX_LEN多轮会话一次评估运行时每个会话最多处理 10 轮MAX_TURNS_PER_SESSION从评测集到正式评估任务评测集就绪后即可在评估页中创建评估任务任务创建、评估器配置与结果分析的完整流程可参考同目录文档 create-task.md、evaluators.md 与 results.md。评测集的价值在于复用与沉淀通过 Excel 标准化导入与导出实现团队间共享通过 AI 生成快速扩充覆盖面再配合人工复核形成可信的基准资产最终驱动 Agent 能力的可量化迭代。赞分享AI AgentAI 应用后端前端大模型RAG【免费下载链接】nexentNexent is a zero-code platform for auto-generating production-grade AI agents using Harness Engineering principles — unified tools, skills, memory, and orchestration with built-in constraints, feedback loops, and control planes.项目地址https://gitcode.com/gh_mirrors/ne/nexent点击查看免费下载相关推荐Solon-AI聊天会话多轮对话管理与上下文维护Solon AI聊天会话多轮对话管理与上下文维护 引言为什么需要专业的会话管理 在AI应用开发中多轮对话管理是构建智能交互系统的核心挑战。传统的一次性请人工智能大模型AI AgentAgent 框架RAGMCP 服务后端kotaemon对话管理多轮会话上下文维护kotaemon对话管理多轮会话上下文维护 痛点为什么需要专业的对话上下文管理 在RAGRetrieval Augmented Generation检人工智能大模型RAG向量数据库后端ADK 评测集Evaluation Sets实战指南为 AI Agent 编写并运行自动化评测ADK 评测集Evaluation Sets实战指南为 AI Agent 编写并运行自动化评测 在基于 Google Agent Development人工智能AI Agent开发工具代码生成LLMOps上一篇如何永久保存微信聊天记录WeChatMsg开源工具完整指南下一篇3分钟实现Windows任务栏秒搜文件EverythingToolbar终极配置指南创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考