跳到内容

metadata

Argilla 中的 Metadata 是一个字典,可以附加到记录。它用于存储关于记录的附加信息,这些信息不是记录的字段或响应的一部分。例如,记录的来源、创建日期或任何与记录相关的其他信息。Metadata 可以直接添加到记录中,也可以作为字典中的值。

使用示例

要在数据集内使用 metadata,您必须在数据集设置中定义 metadata 属性。metadata 属性是可以附加到记录的 metadata 属性列表。以下示例演示如何向数据集添加 metadata 以及如何从记录对象访问 metadata

import argilla as rg

dataset = Dataset(
    name="dataset_with_metadata",
    settings=Settings(
        fields=[TextField(name="text")],
        questions=[LabelQuestion(name="label", labels=["positive", "negative"])],
        metadata=[
            rg.TermsMetadataProperty(name="category", options=["A", "B", "C"]),
        ],
    ),
)
dataset.create()

然后,您可以向数据集添加记录,其中包含与数据集设置中定义的 metadata 属性相对应的 metadata

dataset_with_metadata.records.log(
    [
        {"text": "text", "label": "positive", "category": "A"},
        {"text": "text", "label": "negative", "category": "B"},
    ]
)

每种 MetadataProperty 类型的格式

根据 MetadataProperty 类型,metadata 可能需要以稍微不同的方式格式化。

rg.Records(
    fields={"text": "example"},
    metadata={"category": "A"}
)

# with multiple terms

rg.Records(
    fields={"text": "example"},
    metadata={"category": ["A", "B"]}
)
rg.Records(
    fields={"text": "example"},
    metadata={"category": 2.1}
)
rg.Records(
    fields={"text": "example"},
    metadata={"category": 42}
)