Pular para o conteúdo principal

Criar ferramentas personalizadas do agente AI com funções Unity Catalog

Saiba como criar ferramentas do agente AI usando funções para executar lógica personalizada e realizar tarefas específicas.

O que é UCFunctionToolkit

A Databricks recomenda o uso de UCFunctionToolkit para criar e usar ferramentas de agente definidas com as funções do Unity Catalog.

UCFunctionToolkit é um componente key da biblioteca Unity Catalog AI Core que simplifica o processo de criação e uso de funções Unity Catalog como ferramentas em estruturas AI como LangChain. Ele serve como uma ponte entre as funções Unity Catalog e os agentes AI.

Uma vez configurado, o senhor pode criar funções Unity Catalog, envolvê-las com UCFunctionToolkit e usá-las como ferramentas em seus agentes AI. Essa abstração permite a criação consistente de ferramentas em toda a biblioteca de autoria e possibilita recursos como o rastreamento automático de funções de recuperação, facilitando a view recuperação de documentos e dados relacionados.

Consulte oUnity Catalog's AI Core biblioteca quickstart para obter mais informações e exemplos.

Definir uma função do Unity Catalog

Para usar UCFunctionToolkit, o senhor deve instalar a biblioteca Unity Catalog AI Core e qualquer pacote de integração necessário.

Python
## Install UCToolkit for LangChain with the Databricks extra
# Install the core package for databricks
%pip install unitycatalog-ai[databricks]

# Install the LangChain integration
%pip install unitycatalog-langchain[databricks]
nota

Este exemplo usa LangChain, o senhor deve instalar o pacote correto para sua biblioteca de agentes. Por exemplo, os agentes da OpenAI devem usar %pip install unitycatalog-openai[databricks]. Consulte Unity Catalog AI integrações.

Crie uma função do Unity Catalog que contenha a lógica da ferramenta.

Python
from unitycatalog.ai.core.databricks import DatabricksFunctionClient

client = DatabricksFunctionClient()

CATALOG = "my_catalog"
SCHEMA = "my_schema"

def add_numbers(number_1: float, number_2: float) -> float:
"""
A function that accepts two floating point numbers adds them,
and returns the resulting sum as a float.

Args:
number_1 (float): The first of the two numbers to add.
number_2 (float): The second of the two numbers to add.

Returns:
float: The sum of the two input numbers.
"""
return number_1 + number_2

function_info = client.create_python_function(
func=add_numbers,
catalog=CATALOG,
schema=SCHEMA,
)

Use a função como uma ferramenta

Depois de criar uma função, o senhor pode torná-la acessível para a biblioteca de autoria AI, envolvendo-a em um kit de ferramentas. O exemplo a seguir usa o LangChain, mas uma abordagem semelhante pode ser aplicada a outras estruturas:

Python
from unitycatalog.ai.langchain.toolkit import UCFunctionToolkit

# Define the UC function to be used as a tool
func_name = f"{CATALOG}.{SCHEMA}.add_numbers"

# Create a toolkit with the UC function
toolkit = UCFunctionToolkit(function_names=[func_name], client=client)

tools = toolkit.tools

Para obter mais informações sobre UCFunctionToolKit, consulte a documentaçãoUnity Catalog.