跳至内容

API参考:数据集与数据点

在TensorZero中,数据集是可用于评估和优化配方等工作流程的数据集合。 您可以通过TensorZero用户界面创建和管理数据集,也可以通过TensorZero Gateway以编程方式实现。

数据集是数据点的命名集合。每个数据点归属于一个函数,其字段取决于函数的类型。广义上说,每个数据点基本反映了推理的结构,包含输入、可选输出以及其他相关元数据(例如标签)。

端点与方法

列出数据集中的数据点

该端点返回数据集中的数据点列表。 每个数据点是一个包含所有相关字段(例如输入、输出、标签)的对象。

  • 网关端点: GET /datasets/{dataset_name}/datapoints
  • 客户端方法: list_datapoints
  • Parameters:
    • dataset_name (字符串)
    • limit (整数, 可选参数, 默认值为100)
    • offset (整数, 可选参数, 默认值为0)

获取数据点

该接口返回指定ID的数据点,包含所有相关字段(例如输入、输出、标签)。

  • 网关端点: GET /datasets/{dataset_name}/datapoints/{datapoint_id}
  • 客户端方法: get_datapoint
  • Parameters:
    • dataset_name (字符串)
    • datapoint_id (字符串)

向数据集添加数据点(或创建数据集)

此端点将数据点列表添加到数据集中。 如果数据集不存在,将使用给定名称创建它。

  • 网关端点: POST /datasets/{dataset_name}/datapoints/bulk
  • 客户端方法: bulk_insert_datapoints
  • Parameters:
    • dataset_name (字符串)
    • datapoints (对象列表,详见下方)

对于chat功能,每个数据点对象必须包含以下字段:

  • function_name (字符串)
  • input (对象,与推理的input相同)
  • output (对象列表,可选,每个对象必须是一个内容块,类似于推理输出中的内容块)
  • allowed_tools (字符串列表,可选参数,与推理中的allowed_tools相同)
  • tool_choice (字符串, 可选参数, 与推理的tool_choice相同)
  • parallel_tool_calls (布尔值,可选,默认为 false)
  • tags (字符串到字符串的映射表,可选)

对于json函数,每个数据点对象必须包含以下字段:

  • function_name (字符串)
  • input (对象,与推理的input相同)
  • output (对象, 可选, 一个与函数output_schema匹配的对象)
  • output_schema (对象,可选,一个动态JSON模式,用于覆盖函数的输出模式)
  • tags (字符串到字符串的映射表,可选)

删除数据点

此端点执行软删除操作:数据点将被标记为过期,系统后续将不再使用该数据点(例如在列出数据点或运行评估时),但数据仍会保留在数据库中。

  • 网关端点: DELETE /datasets/{dataset_name}/datapoints/{datapoint_id}
  • 客户端方法: delete_datapoint
  • Parameters:
    • dataset_name (字符串)
    • datapoint_id (字符串)