定义自定义技能架构
你的自定义技能必须为 Azure AI 搜索技能组中的技能预期的输入和输出数据实现预期架构。
输入架构
自定义技能的输入架构定义了一个 JSON 结构,其中包含要处理的每个文档的记录。 每个文档都有独一无二的标识符,以及包含一个或多个输入的数据有效负载,如下所示:
{
"values": [
{
"recordId": "<unique_identifier>",
"data":
{
"<input1_name>": "<input1_value>",
"<input2_name>": "<input2_value>",
...
}
},
{
"recordId": "<unique_identifier>",
"data":
{
"<input1_name>": "<input1_value>",
"<input2_name>": "<input2_value>",
...
}
},
...
]
}
输出架构
自定义技能返回的结果的架构反映了输入架构。 假定输出包含每条输入记录的一条记录,其中包含技能产生的结果或发生的任何错误的详细信息。
{
"values": [
{
"recordId": "<unique_identifier_from_input>",
"data":
{
"<output1_name>": "<output1_value>",
...
},
"errors": [...],
"warnings": [...]
},
{
"recordId": "< unique_identifier_from_input>",
"data":
{
"<output1_name>": "<output1_value>",
...
},
"errors": [...],
"warnings": [...]
},
...
]
}
此架构中的输出值是一个可以包含任何 JSON 结构的属性包,反映了索引字段不一定是简单数据值但可以包含复杂类型的事实。