在Azure认知搜索的SkillSet中,我们可以定义知识存储,以便将搜索结果保存到Azure表存储中。
例如,下面的技能组允许将搜索结果存储在Azure表存储中。
{
"name": "your-skillset",
"skills": [
…your skills
],
"cognitiveServices": {
… your cognitive services key info
},
"knowledgeStore": {
"storageConnectionString": "an Azure storage connection string",
"projections" : [
{
"tables": [
{ "tableName": "MainTable", "generatedKeyName": "SomeId", "source": "/document/EnrichedShape" },
{ "tableName": "KeyPhrases", "generatedKeyName": "KeyPhraseId", "source": "/document/EnrichedShape/*/KeyPhrases/*" },
{ "tableName": "Entities", "generatedKeyName": "EntityId", "source": "/document/EnrichedShape/*/Entities/*" }
]
},
{
"objects": [ ]
},
{
"files": [ ]
}
]
}
}
我已将storageConnectionString修改为Cosmos DB中的一个,希望将搜索结果投影到cosmos DB中,但是没有这样做,并显示错误消息,storageConnectionString不是表连接字符串。
通过配置技能组,是否可以将Azure搜索结果投影到Cosmos DB?
目前无法使用知识存储功能进行Cosmos DB的投影,但是作为将来可能的投影选项,它已在我们的雷达上出现。如果你对此有强烈的选择,可以在我们的用户语音论坛上请求此功能。
同时,如果你愿意做更多的设置工作,则可以始终实施自定义Web API技能,以使用所需的技能组数据执行任何操作,包括将其上传到其他数据接收器。