Een Genie Space-resource toevoegen aan een Databricks-app

Voeg Genie Spaces toe als Databricks Apps-resources om query's in natuurlijke taal in uw toepassingen mogelijk te maken. Genie Spaces biedt een gespreksinterface voor gegevensverkenning, zodat gebruikers zakelijke vragen kunnen stellen in het Engels en op SQL gebaseerde inzichten kunnen ontvangen van uw gecureerde gegevenssets.

Wanneer u een Genie Space als resource toevoegt, kan uw app het volgende doen:

  • Query's in natuurlijke taal van gebruikers converteren naar SQL
  • Vooraf geconfigureerde zakelijke context en metagegevens openen
  • Gecureerde voorbeeldquery's en gegevensdefinities gebruiken
  • Antwoorden genereren op basis van de gegevenssets van uw organisatie

Een Genie Space-resource toevoegen

Voordat u een Genie Space als resource toevoegt, controleert u de vereisten voor app-resources.

  1. Klik in de sectie App-resources wanneer u een app maakt of bewerkt op + Resource>Genie Space toevoegen.
  2. Kies een Genie Space in de lijst met beschikbare ruimten in uw werkruimte.
  3. Selecteer het machtigingsniveau voor uw app:
    • Kan bekijken: Verleent de app toestemming om de Genie Space-configuratie en metagegevens te lezen.
    • Kan worden uitgevoerd: Verleent de app toestemming om query's naar de Genie Space te verzenden en antwoorden te ontvangen.
    • Kan bewerken: Verleent de app toestemming om de Genie Space-configuratie te wijzigen.
    • Kan het volgende beheren: Verleent de app volledige beheerderstoegang tot de Genie Space.
  4. (Optioneel) Geef een aangepaste resourcesleutel op, zoals u verwijst naar de Genie-ruimte in uw app-configuratie. De standaardsleutel is genie-space.

Wanneer u een Genie Space-resource toevoegt:

  • Azure Databricks verleent de service-principal van uw app de opgegeven machtigingen voor de geselecteerde Genie Space.
  • De app kan query's in natuurlijke taal verzenden naar de ruimte en gestructureerde antwoorden ontvangen met SQL-query's en -resultaten.
  • De app heeft toegang tot de gecureerde bedrijfscontext van de ruimte, waaronder metagegevens, voorbeeldquery's en gegevensdefinities.
  • Toegang is alleen beperkt tot de geselecteerde ruimte. Uw app heeft geen toegang tot andere Genie Spaces, tenzij u ze toevoegt als afzonderlijke resources.

Opmerking

De service-principal van de app heeft ook de juiste machtigingen nodig voor de onderliggende gegevensbronnen die door Genie Space worden geraadpleegd. Dit omvat doorgaans USE CATALOG, USE SCHEMA en SELECT toegangsrechten voor de relevante Unity Catalog-tabellen en -weergaven.

Omgevingsvariabelen

Wanneer u een app met een Genie Space-resource implementeert, Azure Databricks de ruimte-id beschikbaar maakt via omgevingsvariabelen waarnaar u kunt verwijzen met behulp van het veld valueFrom in uw app.yaml-configuratie.

Voorbeeldconfiguratie:

env:
  - name: GENIE_SPACE_ID
    valueFrom: genie-space # Use your custom resource key if different

Gebruik de spatie-id in uw toepassing:

import os
from databricks.sdk import WorkspaceClient

# Access the Genie Space using the injected environment variable
space_id = os.getenv("GENIE_SPACE_ID")

# Initialize the workspace client
w = WorkspaceClient()

# Start a conversation with a natural language query
response = w.genie.start_conversation_and_wait(
    space_id=space_id,
    content="What were our top-selling products last quarter?"
)

# Process the response (responses contain attachments with text, queries, and so on)
for attachment in response.attachments:
    print(f"Genie response: {attachment.text.content}")

# Continue the conversation with additional questions
follow_up = w.genie.create_message_and_wait(
    space_id=space_id,
    conversation_id=response.conversation_id,
    content="Can you break that down by product category?"
)

Zie Toegang tot omgevingsvariabelen vanuit resources voor meer informatie.

Een Genie Space-resource verwijderen

Wanneer u een Genie Space-resource uit een app verwijdert, verliest de service-principal van de app de toegang tot de ruimte. De Genie Space zelf blijft ongewijzigd en blijft beschikbaar voor andere gebruikers en toepassingen met de juiste machtigingen.

Genie Spaces combineren met andere app-resources

Combineer Genie Spaces met andere Databricks Apps-resources om geavanceerdere gegevenstoepassingen te maken. Veelvoorkomende integratiepatronen zijn:

Analysedashboard voor natuurlijke taal

Gebruik de volgende resources samen om interactieve analyses uit te voeren:

  • Genie Space: Converteert gebruikersvragen naar SQL-query's
  • SQL Warehouse: Voert de query's uit en retourneert resultaten voor visualisatie
  • Geheimen: API-sleutels voor externe visualisatiehulpprogramma's opslaan

Voorbeeldconfiguratie:

env:
  - name: GENIE_SPACE_ID
    valueFrom: genie-space
  - name: SQL_WAREHOUSE_ID
    valueFrom: sql-warehouse
  - name: EXTERNAL_API_KEY
    valueFrom: viz-secret

AI-verbeterde bedrijfsintelligentie

Gebruik de volgende resources om te integreren met AI-modellen:

  • Genie Space: Hiermee worden de eerste query en gegevenscontext gegenereerd
  • Modelbedieningseindpunt: Geeft door AI gegenereerde samenvattingen en aanbevelingen terug
  • SQL Warehouse: Voert complexe analytische query's uit

Machtigingen voor service-principal

Verdeel de service-principal van uw app de volgende machtigingen bij het integreren met andere app-resources:

  • CAN RUN op de Genie Space
  • CAN USE in het SQL-magazijn (als u een apart magazijn gebruikt dan in de Genie Space)
  • CAN QUERY op eindpunten voor modelleringstoepassing
  • USE CATALOG en USE SCHEMA op relevante Unity Catalog-objecten
  • SELECT op tabellen waarop de app rechtstreeks opdrachten uitvoert

Beste praktijken

Volg deze aanbevolen procedures wanneer u met Genie Space-resources werkt:

  • Minimale machtigingen verlenen. Geef alleen toegang tot de specifieke Genie Spaces die uw app nodig heeft om te functioneren.
  • Zorg ervoor dat de Genie Space goed samengestelde gegevenssets en metagegevens bevat om de kwaliteit van queryreacties in natuurlijke taal te verbeteren.
  • Test de query's van uw app op de Genie Space om te controleren of deze nauwkeurige resultaten kan genereren voor verwachte gebruikersvragen.
  • Bewaak de queryprestaties en pas de interactiepatronen van uw app aan met de Genie Space om reactietijden te optimaliseren.
  • Implementeer foutafhandeling voor gevallen waarin de Genie Space gebruikersquery's niet effectief kan interpreteren of erop kan reageren.