Partager via


Meilleures pratiques pour configurer votre agent de données

Cet article décrit les meilleures pratiques de configuration d’un agent de données pour fournir des réponses précises, pertinentes et utiles aux questions des utilisateurs. En définissant des instructions spécifiques au niveau de l’agent et à la source de données, vous pouvez guider la façon dont l’agent interprète les requêtes, sélectionne des sources de données et génère des réponses. Vous allez apprendre à définir l’objectif de l’agent, à hiérarchiser les sources de données, à incorporer la terminologie clé et à fournir une logique de requête pour les scénarios courants. Ces conseils de configuration permettent de s’assurer que l’agent effectue de manière fiable dans différents environnements de données et besoins des utilisateurs.

Pour explorer les différents types de configurations d’agent de données, consultez les configurations de l’agent de données.

Préparez vos données pour l'IA

Pour vous assurer que l’agent de données peut générer des requêtes précises, il est important que vos sources de données, tables et colonnes utilisent des noms clairs et descriptifs. Évitez les étiquettes vagues ou génériques telles que Table1, col1ou flag, qui peuvent compliquer l’interprétation de l’intention de l’utilisateur par l’agent.

Moins efficace :

  • Noms de tables : Table1, Table2
  • Noms de colonnes : col1, status, flag

Mieux:

  • Noms de tables : CustomerOrders, , ProductCatalogSalesTransactions,OrderItems
  • Noms de colonnes : customer_email_address, order_submission_date, product_unit_price

Le nommage descriptif permet à l’agent de comprendre la structure des données et d’améliorer la qualité des requêtes générées.

2. Créer des agents spécialisés pour des domaines spécifiques

Pour une meilleure précision et pertinence, concevez des agents de données qui se concentrent sur un domaine ou un cas d'usage spécifique, plutôt que d'essayer de gérer un large éventail de questions. Les agents spécialisés peuvent être optimisés avec des instructions ciblées, des sources de données pertinentes et une terminologie spécifique au domaine, ce qui les rend plus fiables et efficaces.

Moins efficace : Agent de données à usage général qui répond à un large éventail de questions liées au client sur différents personnages utilisateur

Mieux: Agent de données adapté pour prendre en charge l’équipe de direction en combinant des insights provenant de plusieurs sources de données pour la préparation des réunions

En limitant le focus de l’agent, vous améliorez sa capacité à générer des réponses précises et à réduire l’ambiguïté dans l’interprétation des requêtes.

3. Réduire l’étendue de la source de données

Incluez uniquement les sources de données nécessaires pour répondre aux questions attendues de l’utilisateur. Dans chaque source de données, sélectionnez uniquement les tables et colonnes spécifiques pertinentes pour votre cas d’usage. Une configuration plus ciblée améliore la capacité de l’agent à générer des requêtes précises et efficaces.

Moins efficace : Connecter l'ensemble d'un Lakehouse ou d'un modèle avec toutes les tables et colonnes

Mieux: Sélection uniquement des tables et colonnes essentielles requises pour les requêtes courantes

Conseil / Astuce

Pour obtenir des résultats optimaux, limitez le nombre de tables à 25 ou moins pour une source de données donnée.

4. Soyez précis sur ce qu’il faut faire, pas seulement sur ce qu’il ne faut pas faire

Au lieu d’indiquer uniquement ce que l’agent doit éviter, fournissez des conseils clairs sur l’approche appropriée. Cela permet à l’agent de répondre plus efficacement et d’éviter toute ambiguïté dans la gestion des cas de périphérie.

Moins efficace : Ne fournissez pas d’informations de paiement obsolètes ou faites des hypothèses sur les données manquantes.
Mieux: Fournissez toujours les informations les plus récentes sur les salaires disponibles à partir du système officiel de paie. Si le paiement est manquant ou incomplet, informez l’employé que vous ne pouvez pas localiser les enregistrements actuels et recommandez-lui de contacter les RH pour obtenir de l’aide supplémentaire.

5. Définir des termes métier, des abréviations et des synonymes

Pour vous assurer que l’agent de données interprète correctement les questions, définissez les termes qui peuvent être ambigus, spécifiques à l’organisation ou spécifiques au domaine. Ces définitions aident l’agent à appliquer une logique cohérente et à générer des réponses précises, en particulier lorsque les questions utilisateur font référence à la terminologie interne ou aux concepts similaires.

Exemples de définition

  • Concepts similaires : "calendar year" vs. "fiscal year"
  • Conditions commerciales courantes : "quarter", "sales", "SKU", "shoes"
  • Abréviations ou acronymes : "NPS" (Net Promoter Score), "MAU" (Utilisateurs actifs mensuels)

Où placer des définitions

  • Instructions au niveau de l’agent : utilisez-la pour les définitions qui s’appliquent à toutes les sources de données et requêtes (par exemple, ce qu’un « trimestre » représente).
  • Instructions de la source de données : utilisez-la pour les définitions spécifiques à la façon dont un terme est utilisé dans un jeu de données particulier (par exemple, « ventes » définies différemment entre les systèmes).

6. Utiliser des mots de début pour inciter la génération de requête

Dans vos instructions de source de données, vous pouvez inclure des indicateurs ou des fragments de syntaxe SQL/DAX/KQL pour guider le modèle vers la génération de requêtes dans un format spécifique. Ces « mots de début » aident l’agent à déduire la logique correcte lors de la traduction du langage naturel en code.

Moins efficace :
Recherchez tous les produits avec des noms contenant « vélo ».

Mieux:
Rechercher tous les produits avec des noms contenant « vélo »
LIKE '%bike%'

L'inclusion de fragments de syntaxe tels que LIKE '%...%' aide le modèle à reconnaître qu'une clause de correspondance est attendue dans la requête. Cette technique améliore la précision du SQL généré, en particulier lors de la gestion des correspondances partielles, des filtres ou des jointures.

7. Écrire des instructions claires et ciblées ; éviter les détails inutiles

Les instructions doivent être concises et délibérées. Incluez uniquement les informations nécessaires pour aider l’agent à générer des réponses précises. Évitez le contenu vague, obsolète ou trop large qui introduit une confusion ou dilue le focus de l’agent.

Moins efficace :

You are an HR data agent who should try to help employees with all kinds of questions about work. You have access to many systems, like the HRIS platform, old payroll databases from previous vendors, archived employee files, scanned PDF policy documents, and maybe even some spreadsheets that HR used in the past. If someone asks about their pay, you might want to look in one of the old systems if needed. Also, sometimes data isn't updated immediately, so just do your best. Remember that the company reorganized in 2017, so department names might be different before then. Try to be friendly, but also make sure you don’t seem robotic. Sometimes HR policies change, so answers might not always be the same depending on the date. Just explain if something seems complicated.

Pourquoi cela est-il moins efficace ?

  • L’étendue est trop large (« toutes sortes de questions sur le travail »)
  • Référence des sources obsolètes ou non fiables (par exemple, « anciennes bases de données de paie »)
  • Manque de hiérarchisation des sources de données
  • Introduit un contexte historique inutile
  • Crée une ambiguïté avec des expressions comme « faire votre mieux »
  • Manque de conseils clairs pour la gestion des données manquantes ou complexes

Mieux:

You are an HR Assistant Agent responsible for answering employee questions about employment status, job details, pay history, and leave balances.  
Use the official HR data warehouse to retrieve current and accurate records.  
If data is missing or unclear, inform the user and recommend they contact HR for further support.  
Keep responses concise, professional, and easy for employees to understand.

Pourquoi est-ce mieux ?

  • Clarifier l’étendue et les responsabilités de l’agent
  • Indique la source de données correcte sans surcharger avec des détails techniques
  • Fournit un comportement de secours clair
  • Établit le ton et le style de communication
  • Laisse les spécificités des tables aux directives de la source de données.

8. Écrire des instructions détaillées sur l’agent de données

Les instructions de l’agent définissent la façon dont l’agent interprète les questions utilisateur, sélectionne les sources de données et met en forme les réponses. Utilisez cette section pour décrire clairement le rôle de l’agent, le comportement attendu, le ton et la façon dont il doit gérer différents types de requêtes. Incluez des détails spécifiques sur les cas d’usage prévus, les sources de données préférées et le comportement de secours lorsque des informations sont manquantes.

Conseil / Astuce

Lors de l’écriture des instructions de votre agent, demandez-vous à quelqu’un qui ne connaît pas ces sources de données de comprendre quelles sources utiliser et comment les utiliser en fonction des instructions ? Si ce n’est pas le cas, modifiez les instructions pour inclure le contexte manquant.

Moins efficace :

You are an agent that helps with HR topics.  
Find answers if possible.  
Try not to give wrong information.  
If you cannot find something, you can tell the user to check elsewhere.  
Answer employee questions about work, pay, and other topics using available systems.  
Keep responses professional.

Mieux:

## Tone and style
Use clear, simple, and professional language.  
Sound friendly and helpful, like an internal HR support agent.  
Avoid technical jargon unless it's part of the business terminology used in the data.

## General knowledge
You are an HR Assistant Agent designed to help employees access accurate information about their employment, benefits, and pay.  
Only answer questions using the official HR data sources provided.  
If multiple records exist, prioritize the most recent and most official source.  
Do not guess or assume answers—if information is missing or unclear, advise the employee to contact HR directly.  

## Data source descriptions
- **Employee Data Warehouse**: Contains employment records including status, role, start date, and department.
- **Payroll System**: Contains pay history, compensation details, and tax withholding information.
- **Benefits Enrollment Database**: Includes information about health insurance, retirement plans, and other employee benefits.
- **HR Policy Lakehouse**: Stores official company policies, including holidays, leave policies, and onboarding documents.

## When asked about
- **Employment status (e.g., active, on leave, terminated)**: Use the *Employee Data Warehouse*  
- **Pay history or compensation**: Use the *Payroll System*  
- **Benefits and enrollment details**: Use the *Benefits Enrollment Database*  
- **Company holidays and leave of absence policies**: Use the *HR Policy Lakehouse*

9. Fournissez des instructions détaillées sur la source de données

Les instructions de source de données doivent être spécifiques, structurées et descriptives. Ils guident l’agent dans la création de requêtes précises en définissant la façon dont les données sont organisées, quelles tables et colonnes sont pertinentes et comment les relations entre les tables doivent être gérées.

Utilisez cette section pour décrire :

  • Objectif de la source de données
  • Quels types de questions il est destiné à répondre
  • Colonnes requises à inclure dans les réponses
  • Logique de liaison entre les tableaux
  • Formats de valeurs classiques (par exemple, abréviations et noms complets)

Conseil / Astuce

Imaginez un nouveau membre de l’équipe utilisant ce jeu de données pour la première fois : serait-il en mesure d’écrire une requête correcte en suivant ces instructions ?
Si ce n’est pas le cas, ajoutez le contexte manquant, clarifiez les hypothèses ou incluez des exemples de requêtes pour les guider.

Conseil / Astuce

L’agent de données ne peut pas voir les valeurs de ligne individuelles avant d’exécuter une requête.
Pour guider la logique de filtrage, incluez des exemples de valeurs et de formats classiques, par exemple, spécifier si une State colonne utilise des abréviations comme "CA" ou des noms complets comme "California".

Moins efficace :

## General instructions
Use the EmployeeData warehouse to find answers about employees.  
Try to get useful employee details when needed.

### Employment status
You can use the EmployeeStatusFact table.  
Join to EmployeeDim if necessary.

Mieux:

## General instructions
Use the EmployeeData data warehouse to answer questions related to employee details, employment status, pay history, and organizational structure.

When generating queries:
• Use EmployeeDim as the primary table for employee details.  
• Always include the following columns in the response (if available):  
  - EmployeeID  
  - EmployeeName  
  - EmploymentStatus  
  - JobTitle  
  - DepartmentName  
• Join other tables to EmployeeDim using EmployeeID unless otherwise specified.  
• Filter for the most recent records when applicable.  

Example values:
- EmploymentStatus: "Active", "On Leave", "Terminated"  
- DepartmentName: "Finance", "HR", "Engineering"  
- State: Use U.S. state abbreviations like "CA", "NY", "TX"

## When asked about

When asked about **employee status**, use the `EmployeeStatusFact` table.  
Join it to `EmployeeDim` on `EmployeeID`.  
Filter by the most recent `StatusEffectiveDate` and return the following columns: `EmploymentStatus`, `StatusEffectiveDate`, `EmployeeName`, and `DepartmentName`.

When asked about **current job title or department**, use the `EmployeeDim` table.  
Return `JobTitle` and `DepartmentName`.  
If multiple records exist, filter for the record where `IsCurrent = True`.

10. Utiliser des exemples de requêtes pour exprimer une logique de requête complexe

Utilisez des exemples de requêtes pour aider l’agent de données à comprendre comment construire des requêtes précises, en particulier lorsque la logique est complexe ou nuance. Ces exemples agissent en tant que modèles que l’agent peut généraliser, même si la question de l’utilisateur n’est pas une correspondance exacte.

  • Incluez des exemples de requêtes pour les types de questions courants ou représentatifs.
  • Concentrez-vous sur des exemples où la logique de requête implique le filtrage, les jointures, les agrégations ou la gestion des dates.
  • Conservez la structure claire et bien mise en forme à l’aide de la syntaxe correcte pour votre source de données (SQL, DAX ou KQL).
  • Vous n’avez pas besoin de faire correspondre mot pour mot les questions des utilisateurs ; les exemples doivent illustrer l’intention et la structure.

Conseil / Astuce

Fournir une requête bien formée est souvent plus claire et plus efficace que d’essayer d’expliquer une logique complexe par le biais de texte seul.

Utilisation des exemples de requêtes

Pour chaque question utilisateur, l’agent de données effectue une recherche de similarité vectorielle pour récupérer les 3 premières requêtes les plus pertinentes. Elles sont ensuite transmises à l’invite augmentée de l’agent pour guider la génération de requêtes.

Étapes suivantes