rg.Suggestion
¶
用于与 Argilla 记录建议互动的类。建议通常由模型预测创建,与 Response
不同,后者通常由 UI 中的用户创建或从数据源作为标签使用。
使用示例¶
添加带有建议的记录¶
建议可以直接添加到记录中,也可以通过字典结构添加。以下示例演示如何将建议添加到记录对象,以及如何从记录对象访问建议
从字典中添加响应,其中键是问题名称,值是响应
dataset.records.log(
[
{
"text": "Hello World, how are you?",
"label": "negative", # this will be used as a suggestion
},
]
)
如果您的数据包含建议的分数,您也可以通过 mapping
参数添加它们。以下示例演示如何将带有分数的建议添加到记录对象
dataset.records.log(
[
{
"prompt": "Hello World, how are you?",
"label": "negative", # this will be used as a suggestion
"score": 0.9, # this will be used as the suggestion score
"model": "model_name", # this will be used as the suggestion agent
},
],
mapping={
"score": "label.suggestion.score",
"model": "label.suggestion.agent",
}, # `label` is the question name in the dataset settings
)
或者,直接实例化 Record
和相关的 Suggestions
对象,就像这样
dataset.records.log(
[
rg.Record(
fields={"text": "Hello World, how are you?"},
suggestions=[rg.Suggestion("negative", "label", score=0.9, agent="model_name")],
)
]
)
迭代带有建议的记录¶
与响应一样,可以通过问题名称作为记录的属性从 Record
访问建议。因此,如果问题名为 label
,则可以将建议作为 record.label
访问。以下示例演示如何从记录对象访问建议
我们还可以在迭代记录时使用 add
方法向记录添加建议
for record in dataset.records(with_suggestions=True):
if not record.suggestions["label"]: # (1)
record.suggestions.add(
rg.Suggestion("positive", "label", score=0.9, agent="model_name")
) # (2)
- 验证记录是否包含建议
- 如果记录尚未包含建议,则向记录添加建议
每种 Question
类型的格式¶
根据 Question
类型,可能需要以稍微不同的方式格式化响应。
Suggestion
¶
基类:Resource
用于与 Argilla 建议互动的类。建议通常是记录的模型预测。建议在用户界面中呈现为“提示”或“建议”,供用户查看并接受或拒绝。
属性
名称 | 类型 | 描述 |
---|---|---|
question_name |
str
|
建议所针对的问题的名称。 |
value |
str
|
建议的值 |
score |
float
|
建议的分数。例如,模型预测的概率。 |
agent |
str
|
创建建议的代理。例如,模型名称。 |
type |
str
|
建议的类型,可以是“model”或“human”。 |
源代码位于 src/argilla/suggestions.py
27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 |
|
value: Any
property
¶
建议的值。
question_name: Optional[str]
property
writable
¶
建议所针对的问题的名称。
type: Optional[Literal['model', 'human']]
property
¶
建议的类型,可以是“model”或“human”。
score: Optional[Union[float, List[float]]]
property
writable
¶
建议的分数。
agent: Optional[str]
property
writable
¶
创建建议的代理。
record: Optional[Record]
property
writable
¶
建议所针对的记录。