You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何自动化跨环境的问答(Q&N)导出与导入流程?

Language Studio问答(Q&N)环境迁移自动化方案

问题说明

  • 目前需手动通过Language Studio在不同环境间导出、导入问答(Q&N)内容,希望实现该流程自动化
  • Language Studio API仅提供获取答案的端点,未发现专门的导出/导入接口
  • 尝试使用Az.CognitiveServices PowerShell模块,发现模块无相关功能;该模块官方英文文档的核心内容翻译如下:

Az.CognitiveServices模块用于管理Azure认知服务资源,涵盖资源的创建、删除、更新,密钥与端点配置等操作,但未包含针对Language Studio问答库的导出、导入相关cmdlet。

可行解决方案

1. 底层API调用方案

Language Studio的手动导出/导入逻辑基于QnA Maker(已整合至Language Studio)的API,可直接调用以下核心接口实现自动化:

  • 导出:调用知识库导出接口,获取JSON格式的问答库内容
  • 导入:将导出的JSON内容通过知识库创建/更新接口,导入至目标环境

2. PowerShell实现脚本示例

# 配置源、目标环境参数
$sourceKey = "源环境认知服务密钥"
$sourceEndpoint = "源环境认知服务端点"
$sourceKBId = "源知识库ID"
$targetKey = "目标环境认知服务密钥"
$targetEndpoint = "目标环境认知服务端点"
$targetKBName = "目标知识库名称"

# 导出源知识库内容
$exportHeaders = @{
    "Ocp-Apim-Subscription-Key" = $sourceKey
}
$exportUrl = "$sourceEndpoint/qnamaker/v4.0/knowledgebases/$sourceKBId"
$kbContent = Invoke-RestMethod -Uri $exportUrl -Headers $exportHeaders -Method Get

# 导入至目标环境
$importHeaders = @{
    "Ocp-Apim-Subscription-Key" = $targetKey
    "Content-Type" = "application/json"
}
$importBody = @{
    name = $targetKBName
    qnaList = $kbContent.qnaList
    urls = @()
    files = @()
} | ConvertTo-Json -Depth 10
$importUrl = "$targetEndpoint/qnamaker/v4.0/knowledgebases/create"
Invoke-RestMethod -Uri $importUrl -Headers $importHeaders -Method Post -Body $importBody

3. 注意事项

  • 需确保源、目标环境的认知服务资源已启用Language Studio问答功能
  • 需提前获取对应环境的认知服务密钥、端点,以及源知识库ID
  • 若问答库包含外部文件或URL引用,需保证目标环境可正常访问这些资源

内容的提问来源于stack exchange,提问作者Don Chambers

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 17:17:37