Share via


Een Genie-ruimteresource toevoegen aan een Databricks-app

Voeg Genie-ruimten toe als bronnen voor Databricks-apps om natuurlijke taalvragen in uw applicaties mogelijk te maken. Genie-ruimten bieden 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-ruimte 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-ruimteresource toevoegen

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

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

Wanneer u een Genie-ruimteresource toevoegt:

  • Azure Databricks verleent de service-principal van uw app de opgegeven machtigingen voor de geselecteerde Genie-ruimte.
  • 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-ruimten, tenzij u ze als afzonderlijke resources toevoegt.

Opmerking

De service-principal van de app heeft ook de juiste machtigingen nodig voor de onderliggende gegevensbronnen waarop Genieruimte queries uitvoert. 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-ruimteresource implementeert, maakt Azure Databricks de ruimte-id beschikbaar via omgevingsvariabelen waarnaar u kunt verwijzen met behulp van het valueFrom veld 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-ruimteresource verwijderen

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

Genie-ruimten combineren met andere app-resources

Combineer Genie-ruimten 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:

  • Genieruimte: 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 ruimte
  • CAN USE in het SQL-warehouse (als u een andere dan de Genie-ruimte gebruikt)
  • 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

Best practices

Volg deze aanbevolen procedures wanneer u met Genie-ruimtebronnen werkt:

  • Minimale machtigingen verlenen. Geef alleen toegang tot de specifieke Genie-ruimten die uw app nodig heeft om te functioneren.
  • Zorg ervoor dat de Genie-ruimte 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-ruimte 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-ruimte om reactietijden te optimaliseren.
  • Implementeer foutafhandeling voor gevallen waarin de Genie-ruimte gebruikersquery's niet effectief kan interpreteren of erop kan reageren.