智能应用程序和 AI 常见问题解答(常见问题解答)

适用于:SQL Server 2025(17.x) 预览版Azure SQL 数据库Azure SQL 托管实例Microsoft Fabric 预览版中的 SQL 数据库

本文包含有关向量和嵌入 SQL 数据库引擎中的常见问题。

有关示例和示例,请访问 SQL AI 示例存储库

是否可以在 T-SQL 中完全创建检索扩充生成(RAG)解决方案?

可以,可以使用 T-SQL 创建 Retrieval-Augmented 代(RAG)解决方案。 这种类型的解决方案利用 SQL 数据库引擎的功能有效地管理和查询数据。 可以使用 T-SQL 实现必要的数据检索和处理逻辑,同时与外部 AI 服务集成以实现生成方面。 矢量可以本机存储在 SQL 引擎中,并且可以通过这种 sp_invoke_external_rest_endpoint方式连接到提供自然语言理解功能的 LLM。

为什么在 T-SQL 中完全创建 RAG 解决方案?

如果要改进现有应用程序,而无需重新构建它以支持 AI 功能,请使用 SQL 引擎内置功能直接在数据库查询中实现 AI 功能。 只需更新 T-SQL 代码即可合并 AI 功能,而不是对应用程序体系结构进行广泛的更改。

是否有使用 Azure SQL 或 Fabric SQL for RAG 的端到端示例?

当然,可在此处找到使用 Azure SQL 和 Fabric SQL 的 RAG 的端到端示例:

是否可以让 RAG 处理结构化数据,如列和行?

如果需要处理结构化数据,仍可以通过将 RAG 与其他技术(例如使用嵌入来表示结构化数据)结合使用来利用 RAG,从而通过 AI 模型可以理解的方式表示结构化数据。 这样,就可以对结构化数据执行检索和生成任务,同时仍受益于 RAG 的功能。

为什么将完整复杂架构发送到 LLM 会导致 SQL 生成不佳,以及如何修复它?

如果你有一个复杂的大型数据库架构,并且具有数百个表和视图,最好使用多代理方法来帮助降低干扰,并允许 AI 模型专注于架构的特定区域。 此处提供了完整的说明以及工作端到端示例:

是否可以使用托管标识连接到 Azure OpenAI?

是的,可以使用托管标识连接到 Azure OpenAI。 这样就可以安全地对 Azure OpenAI 服务进行身份验证和访问,而无需直接管理凭据。 有关详细信息,请参见:

我的数据是否由Microsoft用于训练模型?

否。 Microsoft不对训练模型使用数据。 有关详细信息,请参阅 “负责任的 AI”文档

Azure OpenAI 服务处理哪些数据?

有关详细信息,请参阅 Azure OpenAI 服务文档的数据、隐私和安全性

如何保护我的数据免受未经授权的 AI 代理访问?

Azure SQL 和 SQL Server 为精细访问安全性提供广泛的支持:

  • 数据库引擎权限入门:使用权限在精细级别控制对数据库对象的访问。
  • 行级安全性(RLS):根据执行查询用户的特征来控制对表中行的访问权限。 在此 视频中可以看到 RLS 的运行情况。
  • 动态数据掩码:通过将敏感数据屏蔽给非特权用户来限制敏感数据的公开。
  • Always Encrypted:通过对敏感数据进行静态加密和传输来保护敏感数据,确保只有经过授权的用户才能访问未加密的数据。

还可以使用 Azure SQL 和 SQL Server 中的审计功能来审核对数据库执行的任何操作。

SQL Server 审核 (数据库引擎)