Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Use Databricks Unity Catalog para integrar funciones de SQL y Python como herramientas en flujos de trabajo llamaIndex. Esta integración combina la gobernanza del catálogo de Unity con las funcionalidades de LlamaIndex para indexar y consultar grandes conjuntos de datos para LAS VM.
Requisitos
- Instale Python 3.10 o superior.
Integración de herramientas de Catálogo de Unity con LlamaIndex
Ejecute el código siguiente en un cuaderno o script de Python para crear una herramienta de catálogo de Unity y usarla en un agente llamaIndex.
Instale el paquete de integración del catálogo de Unity de Databricks para LlamaIndex.
%pip install unitycatalog-llamaindex[databricks] dbutils.library.restartPython()
Cree una instancia del cliente de funciones del catálogo de Unity.
from unitycatalog.ai.core.base import get_uc_function_client client = get_uc_function_client()
Cree una función de catálogo de Unity escrita en 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 )
Cree una instancia de la función Catalog deUnity como un kit de herramientas y ejecútelo para comprobar que la herramienta se comporta correctamente.
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 la herramienta en LlamaIndex ReActAgent mediante la definición de la función Catalog de Unity como parte de una colección de herramientas LlamaIndex. A continuación, compruebe que el agente se comporta correctamente llamando a la colección de herramientas 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)`")