Agentforce Testing API 开发者指南

简介: Testing API 程序化 Agent 测试完整指南。涵盖三种测试方式对比(Center/DX/API)、Metadata API 构建测试(AiEvaluationDefinition 结构、标准预期、质量指标)、JSONPath 自定义评估(字符串/数值比较)、AiAgentScorerDefinition 自定义评分器(业务逻辑 LLM 评估)、Connect API 运行测试(三端点:启动/状态/结果)、以及测试结果解读。

Testing API 开发者指南

测试方法和流程

要上线一个可信可靠的 Agent,必须进行充分测试。Agentforce Builder 适合测试单个对话,但测试大量语句耗时长。Testing API 可以程序化批量测试,自动化评估过程并在短时间内评估大量请求。

三种测试方式对比

方式接入方式格式自定义评估
Testing CenterUICSV❌
Agentforce DXCLIYAML✅
Testing APIMetadata + Connect APIXML✅

Testing API 工作流

  • 创建测试 —— 使用 Metadata API 构建 AiEvaluationDefinition 元数据,或使用 Agentforce DX 的 agent generate test-spec 生成 YAML 再转换为元数据

  • 部署测试 —— 使用 sf project deploy startagent test create 部署到 Sandbox

  • 运行测试 —— 使用 Connect API 的 REST 端点或 agent test run 执行测试并获取结果

重要约束:测试仅在 Sandbox 中可用;消耗 Einstein Requests 积分;最多 10 个并发 IN-PROGRESS 运行;每个 AiEvaluationDefinition 最多 1,000 个测试用例;由于测试服务的持续改进,重新运行的结果可能有所变化。

测试方法和流程

使用 Metadata API 构建测试

使用 AiEvaluationDefinition 元数据类型程序化定义测试。每个定义包含一组测试用例,具有输入(语句、上下文变量、对话历史)和预期结果。

构建测试

AiEvaluationDefinition 结构

字段说明
name测试定义的唯一 API 名称
subjectName被测试 Agent 的 API 名称
subjectType"AGENT"
subjectVersion测试版本(如 v1)
testCase[]测试用例数组,每个包含 number / inputs / expectation[]

测试用例输入

  • utterance(语句) —— 发送给 Agent 的文本:<utterance>Summarize the Global Media account</utterance>

  • contextVariable(上下文变量) —— 模拟生产环境上下文,如设置 EndUserLanguage 为 Spanish。大多数上下文变量在会话启动后不可变

  • conversationHistory(对话历史) —— 启用多轮对话测试。每个条目指定 role(user/agent)、message、index。Agent 消息必须包含 topic(使用的子代理)

结构和输入

标准预期结果(Standard Expectations)

预期类型验证内容
topic_sequence_matchAgent 是否使用了预期的子代理?需要 expectedValue
action_sequence_matchAgent 是否使用了预期的动作?值使用 JSON 数组格式。使用 [] 表示预期无动作
bot_response_rating语义比较 —— 评估核心含义而非精确文本匹配。即使措辞不同,只要核心含义匹配即可通过

质量指标(Quality Metrics)

指标说明评分
coherence响应是否易于理解、语法正确?PASS/FAILED
completeness响应是否包含所有必要信息?PASS/FAILED
conciseness响应是否简洁但全面?PASS/FAILED
output_latency_milliseconds响应时间(毫秒)—
instruction_adherence响应遵循子代理指令的程度HIGH/LOW/UNCERTAIN

标准预期和质量指标

自定义评估标准

使用 JSONPath 表达式对 Agent 响应中的特定字符串或数值进行精确验证。两种类型:string_comparison(文本)和 numeric_comparison(数值)。

自定义评估

字符串比较运算符

equals(直接匹配,区分大小写)、containsstartswithendswith

数值比较运算符

equalsgreater_than_or_equal(>=)、greater_than(>)、less_than(常用目标路径:

  • 动作输入:.function.input.query

  • 动作输出:.function.output.result

  • 嵌套输出:.function.output.additionalContext[0].value

注意:每个参数字段限 100 字符。设置 isReference=true 表示 value 是 JSONPath 表达式。先用 --verbose 运行测试查看 Generated Data JSON,再构建 JSONPath。

自定义评估类型和 JSONPath

创建自定义评分器(Custom Scorers)

使用 AiAgentScorerDefinition 定义针对业务需求的评估逻辑。评分器利用提示模板引擎通过 LLM 自动评估 Agent 行为,并将输出映射为通过/失败/不适用。

自定义评分器

核心字段

  • inputScope —— Session(整个会话)/ Interaction(单轮)/ Moment(单个动作)

  • dataType —— Text 或 Number

  • scorerVersion —— 版本配置(从 1 开始,最多 100 个版本),包含 versionNumber、status、agentAssociation(isActive/samplingRate)、engine(PromptTemplate 类型 + 引用)、outputEnumValue(Pass/Fail/NotApplicable 映射)

  • specification —— min/max/step/threshold(可选,>= threshold 为通过)

部署要点

  • 项目结构:aiAgentScorerDefinitions/<name>.aiAgentScorerDefinition

  • package.xml 中 GenAiPromptTemplate 必须排在 AiAgentScorerDefinition 之前(Metadata API 按顺序部署)

  • 可以添加新版本但不能删除已有版本;可以更新版本状态和 agentAssociation

评分器定义和部署

使用 Connect API 运行测试

Connect API 提供三个 REST 端点:启动测试(异步执行)、获取测试状态(轮询进度)、获取测试结果(详细报告)。

运行测试

设置 External Client App(ECA)

需要的 OAuth 范围:chatter_apiapiwebrefresh_token/offline_access。启用 Client Credentials Flow 和 JWT-based access tokens。

三个 Connect API 端点

`# 1. 启动测试(异步)
POST /services/data/v63.0/einstein/ai-evaluations/runs
Body: {"aiEvaluationDefinitionName": "{TEST_NAME}"}
Response: {"runId": "4KBSM00000000Xt4AI", "status": "NEW"}

2. 获取测试状态(轮询)

GET /services/data/v63.0/einstein/ai-evaluations/runs/{runId}
Response: {"status": "COMPLETED", "startTime": "...", "endTime": "..."}

3. 获取测试结果

GET /services/data/v63.0/einstein/ai-evaluations/runs/{runId}/results`
```

CLI 替代方案:sf agent test run --api-name MyTestsf api request rest <endpoint>

Connect API 设置和端点

理解测试结果

每个测试用例的结果包含三个核心部分:

1. generatedData —— Agent 的实际行为

  • actionsSequence —— 调用了哪些动作

  • outcome —— Agent 的响应文本

  • topic —— 使用了哪个子代理

2. testResults[] —— 每个预期的评估结果

  • name —— 测试类型(topic_sequence_match / action_sequence_match / bot_response_rating / coherence / ...)

  • actualValue / expectedValue —— 实际值和预期值

  • metricScore —— PASS / FAILED / HIGH / LOW / UNCERTAIN

  • metricExplainability —— 指标说明

3. 测试失败时的处理

使用 Agent Builder 预览面板进行对话式调试,追踪问题所在,根据需要调整指令、动作或子代理,然后重新运行测试。

核心要点:bot_response_rating 使用语义比较 —— 评估"要点"而非精确文本匹配。即使措辞不同,只要核心含义正确即可通过。这对处理措辞变化具有鲁棒性,同时仍能捕获根本性错误。

理解测试结果

程序化测试是大规模部署可信、可靠 Agent 的关键。通过 Metadata API 构建测试、Connect API 运行评估、自定义评分器验证业务逻辑,形成一个完整的自动化质量保障体系。

文章来源:https://www.salesforcecrm.cn/article/agentforce/agentforce-testing-api-guide.html

相关文章
|
2月前
|
运维 监控 前端开发
安卓云手机离线保活技术深度拆解 2026云端进程守护后台驻留避坑指南
云手机挂机掉线?根源在离线保活技术差异!2026年主流方案分三类:前端投屏(依赖本地,易断连)、进程轮询(高频心跳,风控高)、云端独立守护(解耦运行,无篡改、零特征,稳定长效)。桃心云手机采用原生解耦架构,兼顾稳定性与安全性,适配多开、矩阵、搬砖等全场景托管。(239字)
|
2月前
|
人工智能 前端开发 算法
别再只盯着Java八股文!大模型时代,测试岗面试题已经彻底变了
2026年测试面试已巨变:告别Java八股与LeetCode,转向AI工程能力实战。大厂聚焦Agent异常处理、Harness驾驭工程、大模型幻觉测试等真场景问题,考察候选人对AI系统的设计、落地与质量保障能力——不会建测试Agent,就难进一线团队。
|
2月前
|
设计模式 JSON 运维
Agentforce 客户聊天体验开发指南
构建 Agentforce 客户聊天体验的完整指南。涵盖 Enhanced Chat v2(内联模式/上下文事件/Custom Lightning Types)和 Custom Connections(通过 Agent API + AiSurface/AiResponseFormat 元数据实现结构化响应、原生 UI 组件渲染)。包含三种响应格式设计模式、部署顺序、客户端解析和故障排查。
118 0
Agentforce 客户聊天体验开发指南
|
2月前
|
存储 云安全 弹性计算
2026年阿里云服务器租用价格:轻量应用服务器38元1年起,云服务器99元1年起
2026年阿里云推出多档长期高性价比优惠活动,覆盖不同层级用户需求。新用户可每日10点/15点限量抢购轻量应用服务器,2核2G峰值200M带宽仅38元/年,2核4G低至9.9元/月或199元/年。新老用户同享“99计划”,2核2G 3M带宽经济型e实例99元/年,2核4G 5M带宽通用算力型u1实例199元/年,均支持续费同价。此外,第九代企业级实例c9i/g9i/r9i享6.4折起,企业迁云最高可获算力补贴,搭配通用优惠券还能享受折上折,是个人站长、中小企业低成本上云的优质选择。
|
2月前
|
存储 小程序 NoSQL
小程序分账系统架构实战:从 0 到 1 搭建银行级合规资金清算引擎
小程序平台经济交易规模持续高速增长,多商户联营、多级分润场景下,支付分账成为制约平台规模化经营的核心技术卡点。本文站在系统架构落地视角,完整拆解从零搭建小程序分账系统全流程:结合 2025-2026 小程序行业交易数据梳理业务痛点,横向对比支付通道、分账模式、数据存证三类核心技术方案,输出分层式分布式分账架构;重点讲解规则引擎、资金隔离、合规风控、高并发幂等四大工程实现细节;结合规模化生产项目验证数据,对比自研架构与成熟标准化分账体系的落地成本与稳定性,为小程序技术负责人、支付架构师提供可复用落地参考。 关键词:小程序分账、支付分账、分账系统架构、银行存管分账、合规分账方案
326 1
|
2月前
|
人工智能 数据可视化 安全
零基础本地AI部署实操:Ollama搭配Chatbox搭建DeepSeek大模型完整教程
在大模型应用快速普及的当下,多数用户依赖线上AI平台使用智能服务,不仅需要持续付费订阅会员,还会受到网络波动、带宽限制、数据上传泄露等问题的困扰。依托Ollama轻量化部署工具搭配Chatbox可视化客户端,普通个人电脑即可零门槛本地部署DeepSeek开源大模型,全程无需高端独立显卡,普通CPU设备即可稳定运行,支持完全离线推理、私有化数据交互、无次数限制对话,彻底摆脱线上平台的资费约束与网络依赖。整套部署流程适配Windows、macOS、Linux全主流操作系统,操作简单、适配性强,零基础用户也可独立完成搭建,是个人实现私有化AI应用、低成本体验本地大模型能力的最优方案之一。
411 0
|
2月前
|
存储 运维 算法
EVA存储双盘离线导致LUN丢失的数据恢复案例
客户业务存储采用EVA企业级虚拟化存储架构,整套设备由1台主控制器、3台磁盘扩展柜、28块FC硬盘组成。设备运行期间先后出现两块硬盘离线,直接引发存储层异常:部分LUN无法挂载访问,另有多组LUN元数据丢失,整套存储服务不可用,上层业务全部中断。
|
2月前
|
数据采集 人工智能 运维
比利时最高法院钓鱼赔付新规下银行风控与民事责任边界研究
2026年比利时最高法院就KBC银行钓鱼案作出里程碑判决,明确“点击仿冒链接”“忽略预警短信”等行为不构成法定“重大过失”,银行须全额赔付,并承担举证责任。本文以此为切入点,融合PSD2法规、司法标准与Python工程代码,构建“短信拦截—页面识别—交易风控”三层反钓鱼技术体系,推动银行从“追责客户”转向“强化技防”。
96 0
|
2月前
|
存储 安全 网络安全
FIDO 通行密钥域名绑定机制:SingPass 防钓鱼测试与国家级数字身份安全体系研究
新加坡SingPass通行密钥基于FIDO WebAuthn标准,通过域名源绑定、TEE硬件密钥隔离与非对称签名三层机制,从协议底层阻断仿冒站点、中间人劫持等钓鱼攻击。2026年上线后经CNA专项渗透测试验证,全面拦截四类主流钓鱼场景,为国家级数字身份系统提供原生抗钓鱼标准化范式。(239字)
130 0
|
2月前
|
安全 前端开发 网络安全
从微软OAuth漏洞看现代网络钓鱼的进化与防御
本文剖析卡巴斯基披露的新型OAuth钓鱼攻击:攻击者利用微软官方登录页(如microsoft.com/devicelogin)诱导用户授权,窃取access_token等令牌,绕过密码直接访问邮箱、OneDrive等数据。揭示“官方域名”背后的信任陷阱,强调警惕异常授权请求与定期审计应用权限。(239字)
121 0