跳到内容

TextGenerationToArgilla

在 Argilla 中创建一个文本生成数据集。

Step 在加载阶段在 Argilla 中创建一个数据集,然后将输入批次作为记录推送到其中。此数据集是一个文本生成数据集,其中每个输入有一个字段,然后是一个标签问题,用于评估完成质量是差(用 👎 表示)还是好(用 👍 表示)。

注意

此步骤旨在与 TextGeneration 步骤结合使用,并且不需要列映射,因为它将使用 instructiongeneration 列的默认值。

属性

  • dataset_name: Argilla 中数据集的名称。

  • dataset_workspace: 将在 Argilla 中创建数据集的工作区。默认为 None,这意味着它将在默认工作区中创建。

  • api_url: Argilla API 的 URL。默认为 None,这意味着它将从 ARGILLA_API_URL 环境变量中读取。

  • api_key: 用于向 Argilla 验证身份的 API 密钥。默认为 None,这意味着它将从 ARGILLA_API_KEY 环境变量中读取。

运行时参数

  • api_url: 用于 Argilla API 请求的基本 URL。

  • api_key: 用于验证对 Argilla API 请求的 API 密钥。

输入 & 输出列

graph TD
    subgraph Dataset
        subgraph Columns
            ICOL0[instruction]
            ICOL1[generation]
        end
    end

    subgraph TextGenerationToArgilla
        StepInput[Input Columns: instruction, generation]
    end

    ICOL0 --> StepInput
    ICOL1 --> StepInput

输入

  • instruction (str): 用于生成完成的指令。

  • generation (strList[str]): 基于输入指令生成的完成。

示例

将文本生成数据集推送到 Argilla 实例

from distilabel.steps import PreferenceToArgilla

to_argilla = TextGenerationToArgilla(
    num_generations=2,
    api_url="https://dibt-demo-argilla-space.hf.space/",
    api_key="api.key",
    dataset_name="argilla_dataset",
    dataset_workspace="my_workspace",
)
to_argilla.load()

result = next(
    to_argilla.process(
        [
            {
                "instruction": "instruction",
                "generation": "generation",
            }
        ],
    )
)
# >>> result
# [{'instruction': 'instruction', 'generation': 'generation'}]