结构化检索 AI 代理工具

本文介绍如何使用马赛克 AI 代理框架创建用于结构化数据检索的 AI 代理工具 。 若要允许代理查询结构化数据源(如 SQL 表),可以使用下列方法之一:

  • SQL Unity 目录函数:使用代理可以填充的参数定义 SQL 查询。 当查询具有已知的固定格式时,请使用此方法。

使用 Unity 目录 SQL 函数工具查询数据

当提前知道查询并且代理提供参数时,使用 Unity 目录 SQL 函数创建结构化检索工具。

以下示例创建一个名为lookup_customer_info的Unity Catalog函数,该函数允许AI代理从假设的customer_data 表检索结构化数据。

在 SQL 编辑器中运行以下代码。

CREATE OR REPLACE FUNCTION main.default.lookup_customer_info(
  customer_name STRING COMMENT 'Name of the customer whose info to look up'
)
RETURNS STRING
COMMENT 'Returns metadata about a particular customer, given the customer's name, including the customer's email and ID. The
customer ID can be used for other queries.'
RETURN SELECT CONCAT(
    'Customer ID: ', customer_id, ', ',
    'Customer Email: ', customer_email
  )
  FROM main.default.customer_data
  WHERE customer_name = customer_name
  LIMIT 1;

创建 Unity 目录工具后,将其添加到代理。 请参阅 “创建代理”工具

Genie 多代理系统

重要说明

此功能目前以公共预览版提供。

如果你不知道代理需要回答什么类型的查询,并且需要能够灵活查询多个表,请构建一个包含 Genie 代理的多代理系统。

有关详细信息,请参阅 在多代理系统中使用 Genie