Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Wählen Sie ein Tool basierend auf den Daten, die Ihr Agent benötigt, und darauf, wer die Abfrage schreibt:
| Ihr Agent muss | Verwenden |
|---|---|
| Beantworten Sie Geschäftsfragen im gesamten Workspace | Genie One MCP |
| Einen kuratierten Genie Agent mit Python abfragen | KI-Bridge-Tools |
| SQL schreiben und ausführen | Databricks SQL MCP |
| Führe eine vordefinierte Abfrage mit Parametern aus | Unity Catalog-Funktionstools |
Daten mit Genie One abfragen
Azure Databricks empfiehlt das Genie One MCP für Agenten, die Geschäftsfragen im gesamten Arbeitsbereich in natürlicher Sprache beantworten. Es verwendet Genie Ontology, um Geschäftsbegriffe zu interpretieren und fragt Ihre Arbeitsflächendaten mithilfe der Berechtigungen des Aufrufers ab.
Folgen Sie Verwenden von MCP-Tools in einem Python-Agenten und setzen Sie server_url auf die Genie One MCP-URL:
https://<workspace-hostname>/ai-gateway/mcp-services/system.ai.genie_one_mcp
Ersetzen Sie <workspace-hostname> durch Ihren Workspace-Hostnamen. Dann stellen Sie Ihrem Agenten eine Frage zu Ihren Daten, zum Beispiel: "Was waren im letzten Quartal die Top 10 Kunden nach Umsatz?"
Für Claude Code oder Codex installieren Sie Databricks AI Tools und nutzen Sie die Data Discovery Skill, die Genie One über die Databricks CLI abfragt.
Einen bestimmten Genie-Agenten mit Python abfragen
Nutze AI Bridge, um einen bestimmten Genie Agent als Werkzeug in deinem Python-Agenten bereitzustellen. AI Bridge verarbeitet Anfragen, Polling und Abfrageergebnisse über die Genie API.
Für Claude Code oder Codex installiere Databricks AI Tools , um die Genie Agents Fähigkeit über die Databricks CLI zu nutzen.
Bevor du anfängst
- Benutze Python 3.12. Für die lokale Entwicklung melden Sie sich mit der Databricks-CLI an, und verwenden Sie dabei das
DEFAULT-Profil, damit die Python-Clients Ihre Zugangsdaten finden können. - Wählen Sie einen Genie Agent , auf den Ihre Identität Zugriff hat, mit den erforderlichen Lager- und Datenberechtigungen. Kopieren Sie die Space-ID aus Einstellungen und ersetzen Sie
<genie-agent-id>durch diese ID. - Ersetzen Sie
<model-endpoint>durch einen Azure Databricks-Modell-Endpunkt, der Tool-Aufrufe unterstützt und bei dem Sie die Berechtigung zur Abfrage haben. - Führe den Installationsbefehl für dein Framework in einem Terminal aus. Verwenden Sie in einem Notebook
%pipund starten Sie Python nach der Installation neu. Führe Beispiele in einem Notizbuch mitawaitaus, das Top-Levelawaitunterstützt.
Führe deinen Agenten aus
Beide Beispiele ermöglichen dem Modell, ask_genie aufzurufen und das Ergebnis in seiner Antwort zu verwenden. Der Genie Client von databricks-ai-bridge kann auch als Python-Funktionstool in anderen Frameworks gewrappt werden. Der OpenAI Agents SDK-Tab zeigt diesen Client ohne LangChain-Abhängigkeit an.
LangGraph
Dieses Beispiel verpackt den GenieAgent Helfer von AI Bridge als LangChain-Werkzeug.
pip install --upgrade databricks-langchain langgraph
from databricks_langchain import ChatDatabricks
from databricks_langchain.genie import GenieAgent
from langchain_core.tools import tool
from langgraph.prebuilt import create_react_agent
genie = GenieAgent(genie_space_id="<genie-agent-id>")
@tool
def ask_genie(question: str) -> str:
"""Ask the configured Genie Agent a question about its business data."""
response = genie.invoke({
"messages": [{"role": "user", "content": question}]
})
return response["messages"][-1].content
agent = create_react_agent(
ChatDatabricks(endpoint="<model-endpoint>"),
tools=[ask_genie],
)
result = agent.invoke({
"messages": [{
"role": "user",
"content": "Use Genie to find total sales last month.",
}]
})
print(result["messages"][-1].content)
OpenAI Agents SDK
Dieses Beispiel verwendet den AI-Bridge-Client Genie und den function_tool Decorator des OpenAI Agents SDK. Das Modell läuft auf Azure Databricks.
pip install --upgrade databricks-ai-bridge databricks-openai openai-agents
from agents import Agent, Runner, function_tool
from agents import set_default_openai_api, set_default_openai_client
from agents.tracing import set_trace_processors
from databricks_ai_bridge.genie import Genie
from databricks_openai import AsyncDatabricksOpenAI
set_default_openai_client(AsyncDatabricksOpenAI())
set_default_openai_api("chat_completions")
set_trace_processors([])
genie = Genie(space_id="<genie-agent-id>", return_pandas=False)
@function_tool
def ask_genie(question: str) -> str:
"""Ask the configured Genie Agent a question about its business data."""
return genie.ask_question(question).result
agent = Agent(
name="Data analyst",
instructions="Use ask_genie to answer questions about business data.",
model="<model-endpoint>",
tools=[ask_genie],
)
result = await Runner.run(agent, "What were total sales last month?")
print(result.final_output)
Überprüfen Sie die Ausgabe oder Traces des Agenten, um zu bestätigen, dass er ask_genie aufruft und das Ergebnis verwendet. Diese Beispiele starten für jeden Tool-Call ein neues Genie-Gespräch. Um den Kontext zu erhalten, speichern Sie die zurückgegebene Konversations-ID für jede Benutzerkonversation und geben Sie sie beim nächsten Aufruf weiter:
-
GenieAgent: Lesen Sieresponse["conversation_id"]und fügen Sie"messages"zusammen mit"conversation_id"in das nächste Eingabewörterbuch ein. -
Genie: Lesen Sieresponse.conversation_idund geben Sie es alsconversation_idanask_question()weiter.
Für Client-Optionen und Implementierungsdetails siehe das AI Bridge-Repository, einschließlich des GenieAgent Helfers und des Genie Clients.
Wenn du deinen Agenten auf Databricks Apps hostest, füge den Genie Agent als App-Ressource mit Can Run-Berechtigung hinzu. Der Service Principal der App benötigt außerdem Zugriff auf den Modell-Endpunkt sowie das zugrunde liegende Warehouse und die Daten.
Führe SQL mit dem Databricks SQL MCP aus
Nutze das Databricks SQL MCP, wenn dein Agent SQL gegen deine Unity-Catalog-Tabellen schreiben und ausführen muss.
Um system.ai.sandbox, system.ai.web_search oder system.ai.dbsql zu verwenden, muss ein Kontoadministrator die Unity Gateway-Beta auf der Previews-Seite in der Kontokonsole aktivieren. Siehe Kontovorschauen verwalten.
Befolgen Sie MCP-Tools in einem Python-Agenten verwenden und setze Sie server_url auf:
https://<workspace-hostname>/ai-gateway/mcp-services/system.ai.dbsql
Ersetzen Sie <workspace-hostname> durch Ihren Workspace-Hostnamen. Bitten Sie den Agenten, SELECT 1 AS result auszuführen, und bestätigen Sie, dass dies das Tool aufruft und 1 zurückgibt.
Für Coding-Agenten verwenden Sie die Einrichtungsanleitung Ihres Agenten. Für Lagerauswahl und SQL-spezifische Optionen siehe die Databricks SQL MCP-Referenz.
Führe eine vordefinierte Abfrage mit einer Unity-Catalog-Funktion aus
Erstellen Sie ein strukturiertes Abruftool mithilfe von Unity Catalog SQL-Funktionen, wenn die Abfrage rechtzeitig bekannt ist und der Agent die Parameter bereitstellt.
Das folgende Beispiel erzeugt eine Unity-Catalog-Funktion namens lookup_customer_info. Es wird angenommen, dass du eine Tabelle customer_data mit customer_name, customer_id, und customer_email Spalten hast.
Überprüfen Sie die Funktionsanforderungen und Berechtigungen. Ersetzen Sie my_catalog.my_schema durch einen Katalog und ein Schema, in dem Sie Funktionen erstellen können, und passen Sie die Tabellen- und Spaltennamen an Ihre Daten an. Führen Sie folgenden Code in einem SQL-Editor aus:
CREATE FUNCTION my_catalog.my_schema.lookup_customer_info(
customer_name_input 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 my_catalog.my_schema.customer_data
WHERE customer_name = customer_name_input
LIMIT 1;
Teste die Funktion mit einem Kundennamen aus deiner Tabelle:
SELECT my_catalog.my_schema.lookup_customer_info('Example Customer');
Dann verwende Unity Catalog AI, um die Funktion zu deinem Agenten hinzuzufügen. Dieser Leitfaden enthält Beispiele aus LangGraph, OpenAI, Anthropic und LlamaIndex.
Verwenden Sie Genie in einem Multi-Agenten-System
Informationen zur Abstimmung von Genie-Agenten mit anderen Agenten und Tools finden Sie unter Supervisor Agent. Für bestehende Model Serving-Integrationen siehe Use Genie in Multi-Agent-Systemen.
Abfrage eines Genie-Agenten mit MCP (Legacy)
Für eine bestehende MCP-Integration mit einem bestimmten Genie Agent siehe die alte Genie Agent MCP-Referenz für deren URL und Anforderungen. Für neue Python-Agenten verwenden Sie die AI-Bridge-Tool-Beispiele.