Aller au contenu principal

Ajouter une ressource Genie Agent à une application Databricks

Ajoutez Genie Agents comme ressources Databricks Apps pour activer les queries en langage naturel dans vos applications. Les agents Genie fournissent une interface conversationnelle pour l'exploration de données, permettant aux utilisateurs de poser des questions commerciales en langage naturel et de recevoir des insights basés sur SQL à partir de vos datasets organisés.

Lorsque vous ajoutez un Genie Agent en tant que ressource, votre application peut :

  • Convertir les requêtes en langage naturel des utilisateurs en SQL
  • Accédez au contexte métier et aux métadonnées préconfigurés.
  • Utiliser des queries d'exemple organisées et des définitions de données
  • Générez des réponses basées sur les datasets de votre organisation.

Ajoutez une ressource Genie Agent

Avant d'ajouter un Genie Agent en tant que ressource, passez en revue les prérequis des ressources de l'application.

  1. Dans la section **Ressources d'application** lorsque vous créez ou modifiez une application, cliquez sur **+ Ajouter une ressource** > **Genie Agent**.

  2. Choisissez un Genie Agent dans la liste des espaces disponibles dans votre Workspace.

  3. Sélectionnez le niveau d'autorisation de votre application :

    • Peut consulter : accorde à l’application l’autorisation de lire la configuration et les métadonnées de l’agent Genie Agent.
    • Peut exécuter : accorde à l'application l'autorisation de soumettre des requêtes à l'Genie Agent et de recevoir des réponses.
    • Peut modifier : donne à l’application l’autorisation de modifier la configuration de Genie Agent.
    • **Peut gérer :** accorde à l'application un accès administratif complet à Genie Agent.
  4. (Facultatif) Spécifiez une clé de ressource personnalisée, c’est ainsi que vous référencez le Genie Agent dans la configuration de votre application. La clé default est genie-space.

Lorsque vous ajoutez une ressource Genie Agent :

  • Databricks accorde au service principal de votre application les autorisations spécifiées sur l'agent Genie sélectionné.
  • L'application peut envoyer des requêtes en langage naturel à l'agent et recevoir des réponses structurées avec des requêtes SQL et des résultats.
  • L'application accède au contexte métier organisé de l'agent, y compris les métadonnées, les exemples de requêtes et les définitions de données.
  • L'accès est limité à l'agent sélectionné uniquement. Votre application ne peut pas accéder à d'autres agents Genie, à moins que vous ne les ajoutiez en tant que ressources distinctes.
remarque

Le Service Principal de l'application a également besoin d'autorisations appropriées sur les sources de données sous-jacentes que le Genie Agent interroge. Ceci inclut généralement les autorisations USE CATALOG, USE SCHEMA et SELECT sur les tables et vues Unity Catalog pertinentes.

Variables d'environnement

Lorsque vous déployez une application avec une ressource Genie Agent, Databricks expose l'ID d'espace via des variables d'environnement que vous pouvez référencer à l'aide du champ valueFrom dans votre configuration app.yaml.

Exemple de configuration :

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

Utilisation de l'ID d'espace dans votre application :

Python
import os
from databricks.sdk import WorkspaceClient

# Access the Genie Agent 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?"
)

Pour plus d'informations, consultez Accéder aux variables d'environnement depuis les ressources.

Supprimer une Ressource Genie Agent

Lorsque vous supprimez une ressource Genie Agent d'une app, le service principal de l'app perd l'accès à l'agent. Le Genie Agent lui-même reste inchangé et continue d'être disponible pour d'autres utilisateurs et applications disposant des autorisations appropriées.

Combiner les agents Genie avec d'autres ressources d'application

Combinez les agents Genie avec d'autres Ressources Databricks Apps pour créer des applications de données plus sophistiquées. Les modèles d'intégration courants comprennent :

Tableau de bord analytique en langage naturel

Utilisez les ressources suivantes pour exécuter l'analytique interactive :

  • Genie Agent : Convertit les questions d'utilisateur en requêtes SQL
  • **SQL Warehouse :** Exécute les query et renvoie les résultats pour la visualisation
  • Secrets : Stocke les clés API pour les outils de visualisation externes

Exemple de configuration :

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

Business Intelligence optimisée par l'IA

Utilisez les ressources suivantes pour l’intégration avec les modèles d’IA :

  • Genie Agent : génère la query initiale et le contexte de données
  • **Endpoint de déploiement de modèles :** Renvoie des résumés et des recommandations générés par l'IA
  • SQL Warehouse : exécute des requêtes analytiques complexes

Autorisations du service principal

Accordez au Service Principal de votre application les autorisations suivantes lors de l'intégration avec d'autres ressources d'application :

  • CAN RUN sur le Genie Agent
  • CAN USE sur le SQL Warehouse (si vous en utilisez un séparé de l'agent Genie Agent)
  • CAN QUERY sur les Endpoint de mise en service de modèles
  • USE CATALOG et USE SCHEMA sur les objets Unity Catalog pertinents
  • SELECT sur les tables que l'application interroge directement

Bonnes pratiques

Suivez ces bonnes pratiques lorsque vous travaillez avec des Ressources Genie Agent :

  • Accorder des autorisations minimales. N'accordez l'accès qu'aux agents Genie spécifiques dont votre application a besoin pour fonctionner.
  • Assurez-vous que le Genie Agent contient des datasets et des métadonnées bien organisés pour améliorer la qualité des réponses aux queries en langage naturel.
  • Testez les requêtes de votre application par rapport au Genie Agent pour vérifier qu'il peut générer des résultats précis pour les questions utilisateur attendues.
  • Surveillez les performances des query et ajustez les schémas d'interaction de votre application avec le Genie Agent pour optimiser les temps de réponse.
  • Mettez en œuvre la gestion des erreurs pour les cas où le Genie Agent ne peut pas interpréter ou répondre efficacement aux queries des utilisateurs.