Tâche ai_extract pour les jobs
Bêta
Cette fonctionnalité est en bêta. Pour l'utiliser, un administrateur de workspace doit activer Tâche de fonction IA Lakeflow depuis la page Aperçus . Consultez Gérer les aperçus Databricks.
Pour effectuer une extraction d’informations dans un job, utilisez une tâche ai_extract. La tâche exécute ai_extract sur chaque ligne d’une table Unity Catalog. La tâche extrait les champs que vous définissez à partir de textes ou de documents analysés et écrit le résultat pour chaque ligne dans une table Unity Catalog.
Une tâche ai_extract est un type de tâche de fonction d’IA. Dans l’API Jobs et les bundles d’automatisation déclarative, il s’agit d’un ai_function_task avec l’ensemble de fonctions ai_extract. Pour connaître les exigences et la façon dont les tâches de fonction d’IA traitent les données, voir Tâches de fonction d’IA pour les jobs.
Ajouter une tâche ai_extract
Pour ajouter une tâche ai_extract :
- Accédez à la tab Tâches dans l’interface utilisateur des jobs.
- Cliquez sur
Ajouter une tâche . Si le job n’a pas encore de tâches, cliquez sur
Ajouter un autre type de tâche .
- Sous Document intelligence , sélectionnez Information Extraction .
- Entrez un nom dans le champ Nom de la tâche . La valeur default est
extraction. - Sous Entrée , sélectionnez une table et la Colonne à partir de laquelle effectuer l’extraction. Pour extraire à partir de documents, analysez-les d’abord. Voir Utilisation avec d’autres fonctions IA.
- Sous Sortie , sélectionnez l’ Emplacement et, éventuellement, saisissez un Nom de table . Voir Sortie.
- (Facultatif) Ajoutez une colonne ID . Voir Colonne ID.
- Sous Schéma , définissez les champs à extraire. Voir Définir les champs à extraire.
- (Facultatif) Configurez les paramètres sous Paramètres facultatifs . Voir Paramètres facultatifs.
- (Facultatif) Pour configurer les threshold de tentatives, de durée d’exécution ou de backlog de streaming, ou les notifications, voir Paramètres de tâche avancés.
- Cliquez sur Enregistrer la tâche .
La tâche s'exécute la prochaine fois que le job s'exécute. Pour exécuter le job selon un calendrier, consultez Exécuter des jobs selon un calendrier. Pour modifier, cloner, désactiver ou supprimer cette tâche, consultez Configurer et modifier des tâches dans Lakeflow Jobs.
Définir les champs à extraire
Sous Schéma , ajoutez chaque champ à extraire, avec un nom, un type et une description optionnelle. Un champ d'objet contient des champs imbriqués, et un champ de tableau contient une liste de valeurs. Pour modifier les champs en JSON, cliquez sur JSON . Le JSON utilise le format attendu par ai_extract, qui liste également les types de champs supportés.
Au lieu d’ajouter vous-même les champs, vous pouvez effectuer l’une des opérations suivantes :
- Importer à partir de l’agent : copiez les champs, les instructions et les options d’un agent d’extraction d’informations Agent Bricks dans la tâche. La tâche ne reste pas liée à l’agent. Pour récupérer les modifications ultérieures apportées à l’agent, importez-le à nouveau.
- Définir avec Genie Code : rédigez les champs avec Genie Code, en fonction de la table et de la colonne d'entrée sélectionnées. Cette option est disponible après avoir sélectionné l'entrée et l' emplacement de sortie.
Réglages optionnels
Sous Paramètres facultatifs , vous pouvez configurer les éléments suivants :
- Mode précision : améliorez la précision pour les champs complexes et les longs documents.
- Scores de confiance : incluez un niveau de confiance pour chaque valeur extraite.
- Citations : incluez une référence au texte source pour chaque valeur extraite.
- Instructions : conseils appliqués à chaque champ, tels que les formats de date ou le contenu à ignorer.
- Version : la version
ai_extractsur laquelle la tâche est exécutée, indiquée pour référence. La version est pin, les exécutions planifiées ne changent donc pas lorsque la fonction est mise à jour.
Définir la tâche dans Declarative Automation Bundles
Les Declarative Automation Bundles vous permettent de définir le job dans des fichiers source, afin de pouvoir versionner, réviser et déployer des modifications pour celui-ci comme du code. L'exemple suivant définit un job avec une tâche ai_extract qui extrait la contrepartie, la date d'effet et la durée de renouvellement de chaque contrat dans une table, avec une citation pour chaque valeur. Le champ schema contient les champs à extraire sous forme de chaîne JSON. Pour extraire à partir de documents dans un volume, voir Utilisation avec d'autres fonctions IA. Pour créer le job avec l'API Jobs à la place, envoyez les mêmes paramètres de job à jobs/create.
# resources/extract_contract_fields.job.yml
resources:
jobs:
extract_contract_fields:
name: extract_contract_fields
tasks:
- task_key: extraction
ai_function_task:
delta_table:
table_name: main.legal.contracts
input_column: contract_text
merge_key_columns: [contract_id]
output:
catalog: main
schema: legal
ai_extract:
version: '2.1'
schema: |
{
"counterparty": {"type": "string", "description": "Legal name of the other party"},
"effective_date": {"type": "string", "description": "Date in YYYY-MM-DD format"},
"renewal_term_months": {"type": "integer", "description": "Length of the renewal term in months"}
}
instructions: Ignore text in exhibits and appendices.
enable_citations: true
Sortie
La colonne response de la table de sortie contient le résultat ai_extract complet pour chaque ligne sous forme de VARIANT, y compris les scores de confiance et les citations lorsque vous les activez. La tâche n'ajoute pas de colonne pour chaque valeur. Pour obtenir une valeur en tant que colonne, sélectionnez-la à partir de response dans une query. Pour le format, voir Résultats ai_extract. Pour les autres colonnes, voir Table de sortie.
Ressources supplémentaires
- Tâches de fonction IA pour les jobs: en savoir plus sur les tâches de fonction IA.
- Extraction d'informations: créer et tester un schéma d'extraction dans l'interface utilisateur d'Agent Bricks.