你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

什么是 QnA Maker?

注意

Azure Open AI On Your Data 利用大型语言模型 (LLM) 生成与 QnA Maker 类似的结果。 如果要将 QnA Maker 项目迁移到 Azure Open AI On Your Data,请查看我们的指南

注意

QnA Maker 服务将于 2025 年 3 月 31 日停用。 问答功能的较新版本现已作为 Azure AI 语言的一部分提供。 有关语言服务中的问答功能,请参阅问答。 从 2022 年 10 月 1 日开始,你将无法创建新的 QnA Maker 资源。 有关将现有 QnA Maker 知识库迁移到问题解答的信息,请参阅迁移指南

注意

截至 2023 年 7 月,Azure AI 服务包含之前称为认知服务和 Azure 应用 AI 服务的所有内容。 定价不变。 Azure 计费、成本分析、价目表和价格 API 中将继续使用名称“认知服务”和“Azure 应用 AI”。 应用程序编程接口 (API) 或 SDK 没有中断性变更。

QnA Maker 是一种基于云的自然语言处理 (NLP) 服务,它可以基于数据创建自然对话层。 使用该服务可以基于自定义的信息知识库 (KB),针对任何输入查找最适当的回答。

QnA Maker 通常用于生成对话式客户端应用程序,其中包括社交媒体应用程序、聊天机器人和支持语音的桌面应用程序。

QnA Maker 不会存储客户数据。 所有客户数据(问题答案和聊天日志)都存储在客户部署了从属服务实例的区域中。 有关从属服务的详细信息,请参阅此处

本文档包含以下文章类型:

  • 快速入门是分步说明,可按照其调用服务,并在短时间内获得结果。
  • 操作指南包含以更具体的方式或自定义方式使用服务的说明。
  • 概念性文章对服务的功能和特性进行了深入说明。
  • 教程是较长的指南,向您演示了如何在更广泛的业务解决方案中使用该服务作为组件。

何时使用 QnA Maker

  • 包含静态信息时 - 如果回答知识库中包含静态信息,可使用 QnA Maker。 此知识库是根据你的需要自定义的,其内容是使用 PDF 和 URL 等文档生成的。
  • 想要对某个请求、问题或命令提供相同的回答时 - 如果不同的用户提交相同的问题,则返回相同的回答。
  • 想要基于元信息筛选静态信息时 - 添加元数据标记,以提供与客户端应用程序的用户和信息相关的附加筛选选项。 常见的元数据信息包括聊天内容、内容类型或格式、内容目的和内容新鲜度。
  • 想要管理包含静态信息的机器人聊天时 - 知识库提取用户的聊天文本或命令,并予以回答。 如果回答是预先确定的聊天流(在知识库中使用多轮次上下文表示)的一部分,则机器人可以轻松提供此流。

知识库是什么?

QnA Maker 将内容导入问题和回答对知识库。 导入过程提取有关结构化和半结构化内容部分之间的关系的信息,以暗示问题与回答对之间的关系。 可编辑这些问题与回答对,或添加新对。

问题与回答对的内容包括:

  • 问题的所有替代形式
  • 用于在搜索期间筛选回答选择的元数据标记
  • 用于继续优化搜索的跟进提示

带有元数据的示例问题和回答

发布知识库之后,客户端应用程序会将用户的问题发送到你的终结点。 QnA Maker 服务将处理问题,并以最佳回答做出响应。

以编程方式创建聊天机器人

发布 QnA Maker 知识库后,客户端应用程序会将问题发送到知识库终结点,并接收 JSON 响应形式的结果。 QnA Maker 的常用客户端应用程序是聊天机器人。

向机器人提问并从知识库内容获取回答

步骤 操作
1 客户端应用程序将用户的问题(用他们自己的语言表达的文本)“如何以编程方式更新我的知识库?”发送到知识库终结点。
2 QnA Maker 使用经过训练的知识库提供正确的回答,并提供可用于具体化搜索以获得最佳回答的任何后续提示。 QnA Maker 返回 JSON 格式的响应。
3 客户端应用程序使用 JSON 响应在如何继续聊天方面做出决策。 这些决策可能包括显示最相关的回答,以及提供更多选项用于优化搜索以获得最佳回答。

生成低代码聊天机器人

QnA Maker 门户提供完整的知识库创作体验。 可将文档以其当前格式导入到知识库。 这些文档(例如 FAQ、产品手册、电子表格或网页)将转换为问题和回答对。 系统将分析每个对以提供后续提示并将其连接到其他对。 最终的 markdown 格式支持丰富的表示形式,包括图像和链接。

通过分层排名实现高质量响应

QnA Maker 的系统采用分层排名方法。 数据存储在 Azure 搜索(同样充当第一个排名层)中。 然后,来自 Azure 搜索的最相关结果将通过 QnA Maker 的 NLP 重新排名模型传递,以生成最终结果和置信度评分。

多回合对话

QnA Maker 提供多轮次提示和主动学习来帮助你改善基本的问题和回答对。

多轮次提示使你有机会连接问题和回答对。 客户端应用程序可通过此连接提供最相关的回答,并提供更多问题来具体化搜索以获得最终回答。

知识库收到已发布终结点中用户的问题后,QnA Maker 将对这些实际问题应用主动学习,以建议对知识库做出哪些更改来提高质量。

开发生命周期

QnA Maker 提供可集成到整个开发生命周期的创作、训练、发布和协作权限。

开发周期的概念图

完成快速入门

我们提供了适用于大多数流行编程语言的快速入门,旨在让你了解基本设计模式并帮助你在 10 分钟以内运行代码。 请参阅以下列表,了解每项功能的快速入门。

后续步骤

QnA Maker 提供生成、管理和部署自定义知识库所需的全部功能。