Cours
Traitement de texte avec Snowflake Cortex AI
Les données textuelles constituent une part importante des tâches d'analyse de données modernes, allant des commentaires des clients aux documents d'entreprise. La capacité d'extraire, de résumer, de traduire et d'analyser des informations textuelles est essentielle pour prendre des décisions fondées sur des données. Snowflake Cortex AI simplifie le traitement de texte en fournissant un environnement avec peu ou pas de code pour l'utilisation de l'IA. Cet article présente les fonctions fondamentales de Cortex AI et fournit ensuite quelques conseils pratiques pour la mise en œuvre.
Snowflake Cortex AI lui-même est une suite puissante d'outils d'IA et d'apprentissage automatique intégrés dans le Cloud de données Snowflake. Il dispose d'un support intégré pour les fonctions du modèle de la langue large (LLM) telles que Meta Llama 3 et Mistral Large modèles.
Snowflake Cortex AI est un excellent moyen pour les praticiens des données de tous niveaux de commencer avec l'IA, car il fournit des fonctions d'IA préconstruites en SQL, ne nécessite pas d'API externe et évolue avec l'infrastructure de données Snowflake.
Si vous êtes novice en matière de Snowflake, je vous recommande de suivre la formation suivante Introduction à Snowflake SQL .
Comprendre les fonctions de traitement de texte de Snowflake Cortex AI
Snowflake Cortex AI fournit une suite d'outils intégrés conçus pour rendre le traitement de texte plus efficace. Du résumé à la traduction en passant par l'analyse des sentiments et l'analyse syntaxique des documents, ces fonctions permettent aux utilisateurs d'extraire des informations à partir de grands volumes de texte directement dans Snowflake. Examinons ces capacités et la manière dont elles peuvent être appliquées dans des scénarios réels.
Fonctions du grand modèle de langue (LLM)
Snowflake Cortex AI propose des fonctions de modèle de langage étendu (LLM) permettant d'effectuer efficacement diverses tâches liées au texte.
Par exemple, la fonction COMPLETE
permet aux utilisateurs d'envoyer une invite à un modèle particulier (tel que Llama3 ou Mistral) et d'obtenir une réponse en retour, de la même manière que vous pourriez utiliser ChatGPT sur le web.
Vous pouvez également utiliser des fonctions particulières telles que SUMMARIZE
et TRANSLATE
pour effectuer rapidement et facilement des tâches spécifiques. Ces fonctions permettent d'effectuer rapidement des résumés, des traductions et des analyses de sentiments. Si vous souhaitez en savoir plus sur les LLM en général, consultez le cours LLMs Concepts.
Document AI
Document AI est la fonctionnalité d'intelligence artificielle propriétaire de Snowflake conçue pour extraire et structurer des informations à partir de documents non structurés. À la base, il s'appuie sur Arctic-TILT, le modèle d'IA spécialisé de Snowflake, pour analyser du texte provenant de divers formats de documents et le convertir en données structurées et prêtes à être interrogées.
Avec Document AI, les utilisateurs peuvent :
- Téléchargez des documents (par exemple, des PDF, des rapports scannés, des factures).
- Posez des questions basées sur l'IA pour extraire des informations pertinentes.
- Automatisez les pipelines d'extraction de données pour rationaliser les flux de travail.
Bien que cet outil soit très puissant, il présente actuellement certaines limites en ce qui concerne les types de fichiers pris en charge, la taille des documents et la durée de traitement. Cependant, pour les organisations qui traitent de gros volumes de texte non structuré - tels que des documents juridiques, des contrats clients ou des états financiers - Document AI offre un moyen efficace de convertir le texte brut en bases de données Snowflake structurées, ce qui facilite considérablement l'analyse en aval.
Extrait de la documentation sur l'IA de Snowflake Document
Principales fonctionnalités de traitement de texte dans l'IA de Snowflake Cortex
Examinons brièvement les principales caractéristiques de l'IA de Snowflake Cortex et ce qu'elles permettent de faire. La section suivante présente quelques étapes (simples) pour l'utilisation de ces fonctions.
Résumé de texte
Le résumé de texte est réalisé à l'aide de la fonction SUMMARIZE
. En bref, il prend un ensemble donné de textes et en fournit rapidement un résumé. Par exemple, si vous lui confiez un article ou un rapport volumineux, il fournira les informations essentielles de ce texte.
Traduction du texte
La fonction TRANSLATE
permet une traduction transparente des langues. Il peut prendre en compte les commentaires des clients ou les tickets d'assistance qui ont été soumis dans une langue étrangère et les traduire en anglais. Il prend en charge une multitude de langues cibles telles que l'anglais, le français, le néerlandais, l'allemand, le japonais, le chinois, etc.
Analyse des sentiments
L'analyse des sentiments permet de discerner l'émotion ou le ton général d'un texte. Il permet de savoir si un élément est positif, négatif ou neutre. La fonction SENTIMENT
de Snowflake renvoie une valeur numérique comprise entre -1 et 1, -1 étant négatif, 1 étant positif et 0 étant généralement neutre.
Analyse de documents
L'analyse des documents est sans doute la fonctionnalité la plus complexe. Il prend un fichier de document qui est stocké quelque part et extrait des informations de ce document. Pour ce faire, nous pouvons utiliser la fonction PARSE_DOCUMENT
.
Mise en œuvre du traitement de texte avec Snowflake Cortex AI
Maintenant que nous avons exploré les capacités de traitement de texte de Cortex AI, voyons comment les mettre en œuvre, en commençant par la configuration de votre environnement.
Mise en place de votre environnement
Il y a quelques étapes à suivre pour utiliser Snowflake Cortex AI. Assurez-vous que les éléments suivants sont complets :
- Vous aurez besoin du fichier SNOWFLAKE.CORTEX_USER le rôle d'utilisateur de la base de données.
- Vos données doivent être stockées dans des formats formats compatibles avec Snowflake.
- Vous devez activer les fonctions de Cortex AI dans votre instance Snowflake.
Si vous ne disposez pas des autorisations nécessaires, adressez-vous à l'administrateur de votre base de données (ou, si vous êtes l'administrateur, attribuez-vous ces rôles) pour obtenir l'accès. Notez également qu'en raison des paramètres particuliers de votre organisation, certains modèles peuvent ne pas être disponibles pour vous.
Exemples pratiques
Passons en revue quelques exemples des fonctions clés du résumé, de la traduction et de l'analyse des sentiments. Nous utiliserons divers exemples de noms de tableaux et de colonnes. Supposons que le tableau dont nous tirons les données soit n'importe quel tableau de votre base de données Snowflake, et que la colonne contienne vos informations textuelles. Vous verrez rapidement à quel point il est facile d'exécuter ces fonctions dans Snowflake.
Résumer des données textuelles
Commençons par une tâche très courante qui consiste à résumer une série d'articles de presse.
-- Assume that the data is in the table ‘articles’
--We want to summarize all the text from all the articles we have in our database
SELECT SNOWFLAKE.CORTEX.SUMMARIZE(article_text) AS summary
FROM articles;
Traduire les tickets d'assistance
Une autre tâche courante consiste à traduire les tickets d'assistance qui ne sont pas tous rédigés dans votre langue locale. SNOWFLAKE.CORTEX.TRANSLATE(text, ‘source language’,’target language’)
est la syntaxe générale dans laquelle ’source language’
et ’target language’
sont écrits dans un code linguistique à deux lettres.
Si la langue source est une chaîne vide ’’
, la langue est automatiquement détectée.
/* We select from the table support_tickets
The column ticket_description has all the ticket text
We are going from ‘fr’ to ‘en’ */
SELECT SNOWFLAKE.CORTEX.TRANSLATE(ticket_description, 'fr', 'en') FROM support_tickets;
--If we leave the source language as just an empty string ‘’, it will automatically detect the language
SELECT SNOWFLAKE.CORTEX.TRANSLATE(ticket_description, '', 'en') FROM support_tickets;
Analyser les commentaires des clients
Enfin, examinons le sentiment de nos clients sur les médias sociaux à l'aide de SENTIMENT
.
--Select from the social_media_comments table
--provide the text to the SENTIMENT function.
SELECT SNOWFLAKE.CORTEX.SENTIMENT(comment_text) FROM social_media_comments;
Meilleures pratiques et considérations
Comme pour tout ce qui a trait à l'IA, nous devons nous assurer que nous disposons d'un ensemble de bonnes pratiques et de lignes directrices. En nous assurant que nous respectons les lois sur la confidentialité des données et en optimisant nos requêtes, nous bénéficierons de la meilleure expérience grâce à l'IA de Snowflake Cortex.
Confidentialité et sécurité des données
La confidentialité des données est l'un des éléments les plus critiques, en particulier lorsqu'il s'agit d'IA. Heureusement, Snowflake l'intègre dans votre environnement. Vous pouvez utiliser le cadre de contrôle d'accès de Snowflake pour vous assurer que vous respectez les meilleures pratiques d'accès et la conformité réglementaire.
- Assurer la conformité avec GDPR, CCPA et autres réglementations lors du traitement des données des utilisateurs.
- Utilisez les contrôles d'accès basés sur les rôles (RBAC) des contrôles d'accès basés sur les rôles (RBAC) pour limiter le traitement des textes sensibles.
Optimisation des performances
Les données non structurées peuvent être massives. En choisissant intelligemment la manière dont nous traitons les données, nous réduirons à la fois le temps d'exécution et les coûts. Essayez ces meilleures pratiques pour optimiser les performances :
- Traitement par lots : Traitez le texte en vrac plutôt qu'une ligne à la fois.
- Stockage efficace : Stocker des documents volumineux de manière optimisée tableaux Snowflake optimisés.
- Indexation et mise en cache : Utilisez l'indexation pour les données textuelles fréquemment consultées.
Conclusion
Snowflake Cortex AI simplifie le traitement du texte en proposant des fonctions textuelles intégrées alimentées par l'IA directement au sein de Snowflake SQL. Grâce à ses fonctionnalités robustes de résumé, de traduction, d'analyse des sentiments et d'analyse des documents, les spécialistes des données de tous niveaux peuvent extraire sans effort des informations significatives à partir de textes.
En tirant parti d'outils d'IA prédéfinis, les entreprises peuvent débloquer des informations précieuses et prendre facilement des décisions fondées sur des données. Si vous souhaitez en savoir plus sur Snowflake et ses outils, consultez les ressources suivantes :
FAQ sur le traitement de texte par l'IA du Cortex de Snowflake
Dois-je avoir des connaissances préalables en IA ou en apprentissage automatique pour utiliser les fonctions de traitement de texte de Cortex AI ?
Non ! Snowflake Cortex AI est conçu pour les utilisateurs de tous les niveaux de compétence, y compris ceux qui ont peu ou pas d'expérience en matière d'IA.
Quelle est la précision des fonctions de traduction et d'analyse des sentiments de Snowflake Cortex AI ?
Cortex AI utilise de grands modèles linguistiques (LLM) pour la traduction et l'analyse des sentiments, ce qui permet d'obtenir une grande précision. Toutefois, les résultats peuvent varier en fonction du contexte, de la complexité de la langue et du jargon propre à l'industrie. Il est recommandé de valider les sorties pour les applications commerciales critiques.
Puis-je intégrer l'IA de Snowflake Cortex avec d'autres services d'IA ou outils externes ?
Oui ! Vous pouvez combiner les fonctions d'IA de Cortex avec Snowpark pour créer des flux de travail de ML avancés ou les intégrer dans Tableau ou PowerBI pour la visualisation des informations.
Quelles sont les meilleures pratiques pour utiliser efficacement l'IA de Snowflake Cortex ?
- Optimisez les requêtes en ne sélectionnant que les champs de texte nécessaires.
- Prétraiter les données textuelles pour éliminer le bruit avant d'appliquer les fonctions d'IA.
- Utilisez la mise en cache et l'indexation pour les résumés de textes fréquemment consultés.
- Surveillez les coûts des requêtes pour éviter les calculs inutiles.
Je suis un data scientist avec de l'expérience dans l'analyse spatiale, l'apprentissage automatique et les pipelines de données. J'ai travaillé avec GCP, Hadoop, Hive, Snowflake, Airflow et d'autres processus d'ingénierie et de science des données.
Les meilleurs cours de DataCamp
Cours
Introduction à la modélisation des données dans Snowflake
Cursus