在创建大模型应用评测任务前,您需先创建数据集并完成数据上报,根据模型评测需求将上报的数据进行解析配置,用于后续创建大模型测评任务时选用,本文为您介绍如何创建数据集并完成数据上报、解析配置。
登录DataTester产品控制台后,在左侧导航栏单击大模型测评>数据集管理,进入数据集页面,单击页面右上角的新建数据集。
在页面中配置数据集参数。
参数 | 配置说明 |
---|---|
数据集名称 & 数据集描述 | 自定义数据集名称与描述,用于标识、查找对应数据集。 |
接入对象类型 | 当前支持“文生文”类型的接入对象。 |
数据来源 | 如果您需要新增数据集,可选择“接口上报”、“Hiagent”即可。
|
模型类型选择 | 建议选择与待评测的大模型应用所使用的主要模型类型一致的模型类型,如果应用所使用的模型不在此下拉列表中,也可任意选择一个模型类型。 |
配置数据接入。
说明
创建Hiagent来源的数据集时,支持创建数据集时直接界面化配置Hiagent应用对接信息,后续系统会自动接入Hiagent数据。
参数 | 配置说明 |
---|---|
Host | 部署Hiagent时的网关地址(TopHost地址),您可联系Hiagent运维人员获取对应地址。 |
Access Key & Secret Access | 您可以登录Hiagent后,在账号中心查看对应的AK信息。 |
工作空间 & 应用 | 在下拉框中选择需要接入的工作空间与应用。 |
说明
创建接口上报来源的数据集时,数据集创建完成后,您需参考下文获取数据集ID信息,并开发对应的数据上报OpenAPI,后续通过调用OpenAPI上报接入数据。
完成数据集创建后,您可以在数据集列表页面查看到数据集ID,您查看并记录对应ID,用于后续测评数据的接入。
当前支持通过调用HTTP API将测评上报测评数据。OpenAPI的使用指导如下。
线上环境:https://tab.volces.com
接口描述:上报评测数据
请求路径:/evaluate/openapi/v1/log
请求方式:POST
请求所需参数:
参数 | 类型 | 是否必选 | 描述 |
---|---|---|---|
app_key | string | 是 | Datatester应用的AppKey,您可以在项目列表的项目详情中查看AppKey。 |
dataset_id | int | 否 | 数据集ID,创建数据集后在数据集列表查看生成数据集 ID 。 |
eval_id | int | 否 | 评测任务ID,您可以在上述步骤中获取已创建测评任务的任务ID。 |
contents | list[dict] | 是 | 评测消息内容,详情请参见下文的content内容配置要求。 |
local_time_ms | int | 否 | 事件上报毫秒时间戳,您需配置为测评消息事件发生的时间。如果未配置,则后续测评分析时对应事件的时间会默认补充为服务器消息接收时间。 |
如上述请求参数中填写dataset_id,content可为任意json格式
填写dataset_id,需先在页面创建数据集;上报数据后,数据保存至数据集,后续可将数据集关联至评测任务
如上述请求参数中填写eval_id,content格式需遵循下面的格式
填写eval_id,上报数据将直接用评测任务
参数 | 类型 | 是否必选 | 描述 |
---|---|---|---|
question | string | 否 | 问题 |
answer | string | 否 | 回答 |
contexts | list[string] | 否 | 召回上下文片段 |
ground_truth | string | 否 | 标准答案 |
custom | dict | 否 | 自定义字段,其中:
|
{ "app_key": "xxx", "eval_id": xx, "contents": [ { "question": "p值是什么??", "answer": "p值是当原假设为真时所得到的样本观察结果或更极端结果出现的概率。如果P值很小,说明这种情况发生的概率很小,但如果出现了,根据小概率原理,我们就有理由拒绝原假设。P值越小,说明实验发现的差异是因为抽样误差导致的概率越小,极大程度上还是由于本质上存在差异造成,我们拒绝原假设的理由越充分。", "contexts": [ "wins(B) + ties(A, B)]\n将上面的值代入到公式(1)中,即可求得检验统计量的值,进而求出p值(使用score代入进行计算时需要注意:X=avg(status)=2 * score;另外,上面的方差也可以直接由原始的方差公式变换求得,大家可以自己推导)。', '3. 计算统计量、检验阈值、置信区间及p值\n4. 得出结论:若p<0.05或|t|>阈值或置信区间包含0,则拒绝原假设;若p>0.05或|t|<=阈值或置信区间不包含0,则无法拒绝原假设。\n Note:有些其他的计算公式会假定两组的总体方差相等,在方差的计算方式上有区别,这类公式不推荐,因为该假设在AB实验应用中并不常见。\n**p-value**(后面还有个链接)\nP值就是当原假本观察结果或更极端结果出现的概率。如果P值很小,说明这种情况发生的概率很小,但如果出现了,根据小概率原理,我们就有理由拒绝原假设。P值越小,**说明实验发现的差异是因为抽样误差导致的概率越小,极大程度上还是由于本质上存在差异造成**,我们拒绝原假设的理由越充分。\n**区别实验的True effect 、effect 、MDE**\nTrue effect:两组总体参数的差异。\nEffect:两组样本均值差或者说实验组与对照组间的指标差。" ], "ground_truth": "p值是当原假设为真时所得到的样本观察结果或更极端结果出现的概率。如果P值很小,说明这种情况发生的概率很小,但如果出现了,根据小概率原理,我们就有理由拒绝原假设。P值越小,说明实验发现的差异是因为抽样误差导致的概率越小,极大程度上还是由于本质上存在差异造成,我们拒绝原假设的理由越充分。", "custom": { "cost_token": 123, "cost_time": 111 } } ] }
接口返回值:
参数 | 类型 | 描述 |
---|---|---|
code | int | 接口返回状态,200为成功 |
message | string | 接口返回信息,成功时默认为success |
data | string | 成功是返回ok |
{ "code": 0, "message": "success", "data": "ok" }
curl --location 'https://tab.volces.com/evaluate/openapi/v1/log' \ --header 'Content-Type: application/json' \ --data '{ "app_key": "5c64881c026e79318be99c6474******", "dataset_id": 1, "contents": [ { "input": { "messages": [ { "type": "assitant", "message": "你好" } ] }, "output": "你好" } ], "local_time_ms": 1724155352630 }'
说明
通过API上报的数据默认包含ID、input、output、local_time_ms这几个字段,如果您后续进行测评时还需使用数据集中的其他数据,可通过添加解析字段,将上报的JSON数据解析并添加为自定义字段。