Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Use o Databricks Unity Catalog para integrar funções SQL e Python como ferramentas em fluxos de trabalho LlamaIndex. Essa integração combina a governança do Catálogo do Unity com os recursos do LlamaIndex para indexar e consultar grandes conjuntos de dados para LLMs.
Requisitos
- Instale o Python 3.10 ou superior.
Integrar ferramentas do Catálogo do Unity ao LlamaIndex
Execute o código a seguir em um notebook ou script Python para criar uma ferramenta do Catálogo do Unity e usá-lo em um agente LlamaIndex.
Instale o pacote de integração do Databricks Unity Catalog para LlamaIndex.
%pip install unitycatalog-llamaindex[databricks] dbutils.library.restartPython()Crie uma instância do cliente de funções do Catálogo Unity.
from unitycatalog.ai.core.base import get_uc_function_client client = get_uc_function_client()Crie uma função do Catálogo do Unity escrita em Python.
CATALOG = "your_catalog" SCHEMA = "your_schema" func_name = f"{CATALOG}.{SCHEMA}.code_function" def code_function(code: str) -> str: """ Runs Python code. Args: code (str): The Python code to run. Returns: str: The result of running the Python code. """ import sys from io import StringIO stdout = StringIO() sys.stdout = stdout exec(code) return stdout.getvalue() client.create_python_function( func=code_function, catalog=CATALOG, schema=SCHEMA, replace=True )Crie uma instância da função Catálogo daUnidade como um kit de ferramentas e execute-a para verificar se a ferramenta se comporta corretamente.
from unitycatalog.ai.llama_index.toolkit import UCFunctionToolkit import mlflow # Enable traces mlflow.llama_index.autolog() # Create a UCFunctionToolkit that includes the UC function toolkit = UCFunctionToolkit(function_names=[func_name]) # Fetch the tools stored in the toolkit tools = toolkit.tools python_exec_tool = tools[0] # Run the tool directly result = python_exec_tool.call(code="print(1 + 1)") print(result) # Outputs: {"format": "SCALAR", "value": "2\n"}Use a ferramenta em um LlamaIndex ReActAgent definindo a função catálogo do Unity como parte de uma coleção de ferramentas LlamaIndex. Em seguida, verifique se o agente se comporta corretamente chamando a coleção de ferramentas LlamaIndex.
from llama_index.llms.openai import OpenAI from llama_index.core.agent import ReActAgent llm = OpenAI() agent = ReActAgent.from_tools(tools, llm=llm, verbose=True) agent.chat("Please run the following python code: `print(1 + 1)`")