DOCUMENTATION
/
Prise en main
Guides
Développeur
Référence
Versions
Tutoriels
Snowflake Open Catalog
Statut
  1. Aperçu
    • Catalogue Snowflake Horizon
      • Applications et outils pour se connecter à Snowflake
      • Entrepôts virtuels
      • Bases de données, tables et vues
      • Types de données
        • Intégration des données
          1. Snowflake Openflow
            1. A propos d'Openflow
              • Comprendre les coûts Openflow
                • Configurer Openflow
                  • Connecter vos sources de données à l'aide de connecteurs Openflow
                    1. À propos des connecteurs Openflow
                      • Openflow Connector pour Amazon Ads
                        1. À propos du connecteur
                          • Définir le connecteur
                          • Openflow Connector pour Box
                            1. À propos du connecteur
                              • Définir le connecteur
                              • Openflow Connector pour Excel
                                1. À propos du connecteur
                                  • Définir le connecteur
                                  • Connecteur Openflow pour Google Ads
                                    1. À propos du connecteur
                                      • Définir le connecteur
                                      • Connecteur Openflow pour Google Drive
                                        1. À propos du connecteur
                                          • Définir le connecteur
                                          • Openflow Connector pour Google Sheets
                                            1. À propos du connecteur
                                              • Définir le connecteur
                                              • Openflow Connector pour HubSpot
                                                1. À propos du connecteur
                                                  • Définir le connecteur
                                                  • Openflow Connector pour Jira Cloud
                                                    1. À propos du connecteur
                                                      • Définir le connecteur
                                                      • Connecteur Openflow pour Kafka
                                                        1. À propos du connecteur
                                                          • Configurer le connecteur (noyau)
                                                          • Réglage des performances
                                                          • Openflow Connector pour Kinesis
                                                            1. À propos du connecteur
                                                              • Définir le connecteur
                                                              • Openflow Connector pour LinkedIn Ads
                                                                1. À propos du connecteur
                                                                  • Définir le connecteur
                                                                  • Openflow Connector pour Meta Ads
                                                                    1. À propos du connecteur
                                                                      • Définir le connecteur
                                                                      • Connecteur Openflow pour Microsoft Dataverse
                                                                        1. À propos du connecteur
                                                                          • Définir le connecteur
                                                                          • Openflow Connector pour MySQL
                                                                            1. À propos du connecteur
                                                                              • Définir le connecteur
                                                                              • Openflow Connector pour PostgreSQL
                                                                                1. À propos du connecteur
                                                                                  • Définir le connecteur
                                                                                  • Openflow Connector pour SharePoint
                                                                                    1. À propos du connecteur
                                                                                      • Définir le connecteur
                                                                                      • Connecteur Openflow pour Slack
                                                                                        1. À propos du connecteur
                                                                                          • Définir le connecteur
                                                                                          • Openflow Connector pour Snowflake vers Kafka
                                                                                            1. À propos du connecteur
                                                                                              • Définir le connecteur
                                                                                              • Openflow Connector pour SQL Server
                                                                                                1. À propos du connecteur
                                                                                                  • Définir le connecteur
                                                                                                  • Connecteur Openflow pour Workday
                                                                                                    1. À propos du connecteur
                                                                                                      • Définir le connecteur
                                                                                                    2. Gérer Openflow
                                                                                                      • Surveiller Openflow
                                                                                                        • Résolution des problèmes d'Openflow
                                                                                                          • Processeurs
                                                                                                            • Contrôleurs
                                                                                                          • Chargement des données
                                                                                                          • Tables dynamiques
                                                                                                          • Flux et tâches
                                                                                                          • Déchargement des données
                                                                                                          • Outils de migration
                                                                                                          • Requêtes
                                                                                                          • Éléments de liste
                                                                                                          • Collaboration
                                                                                                          • Snowflake AI et ML
                                                                                                              1. Inférence interrégionale
                                                                                                                • Cortex AISQL
                                                                                                                • Cortex Agents
                                                                                                                • Cortex Analyst
                                                                                                                • Cortex Search
                                                                                                                    1. Interroger un Cortex Search Service
                                                                                                                      • Compréhension des coûts
                                                                                                                        • Tutoriels
                                                                                                                    2. Cortex Knowledge Extensions
                                                                                                                    3. Observabilité AI
                                                                                                                    4. Fonctions ML
                                                                                                                    5. Document AI
                                                                                                                    6. Débit provisionné
                                                                                                                      • Développement ML et Opérations ML
                                                                                                                    7. Alertes et notifications
                                                                                                                    8. Sécurité
                                                                                                                    9. Gouvernance des données
                                                                                                                    10. Confidentialité
                                                                                                                    11. Organisations et comptes
                                                                                                                    12. Continuité des affaires et récupération des données
                                                                                                                    13. Optimisation des performances
                                                                                                                    14. Coût et facturation
                                                                                                                    GuidesSnowflake AI et MLCortex Search

                                                                                                                    Cortex Search¶

                                                                                                                    La prise en charge de cette fonctionnalité est disponible pour les comptes dans la plupart des régions Snowflake. Consultez la section Disponibilité régionale pour une liste complète des régions.

                                                                                                                    Vue d’ensemble¶

                                                                                                                    Cortex Search permet une recherche « floue » à faible latence et de haute qualité sur vos données Snowflake. Cortex Search propose un large éventail d’expériences de recherche pour les utilisateurs de Snowflake, notamment les applications de génération augmentée par récupération (RAG) exploitant des Large Language Models (LLMs).

                                                                                                                    Cortex Search vous permet de démarrer avec un moteur de recherche hybride (vecteur et mot-clé) sur vos données textuelles en quelques minutes, sans avoir à vous soucier de l’intégration, de la maintenance de l’infrastructure, du réglage des paramètres de qualité de recherche ou des actualisations continues de l’index. Cela signifie que vous pouvez consacrer moins de temps au réglage de l’infrastructure et de la qualité de la recherche, et plus de temps au développement d’expériences de chat et de recherche de haute qualité en utilisant vos données. Découvrez les Tutoriels Cortex Search pour des instructions étape par étape sur l’utilisation de Cortex Search pour alimenter des applications de chat et de recherche AI.

                                                                                                                    Quand utiliser Cortex Search¶

                                                                                                                    Les deux principaux cas d’utilisation de Cortex Search sont la génération augmentée par récupération (RAG) et la recherche en entreprise.

                                                                                                                    • Moteur RAG pour les chatbots LLM : utilisez Cortex Search comme moteur RAG pour applications de chat avec vos données textuelles en exploitant la recherche sémantique pour des réponses personnalisées et contextualisées.

                                                                                                                    • Recherche en entreprise : utilisez Cortex Search comme backend pour une barre de recherche de haute qualité intégrée à votre application.

                                                                                                                    Cortex Search pour RAG¶

                                                                                                                    La génération augmentée par récupération (RAG) est une technique permettant de récupérer des données à partir d’une base de connaissances afin d’améliorer la réponse générée par un grand modèle linguistique. Le diagramme d’architecture suivant montre comment vous pouvez combiner Cortex Search avec les Fonctions LLM Cortex pour créer des chatbots d’entreprise avec RAG en utilisant vos données Snowflake comme base de connaissances.

                                                                                                                    Utilisation de Cortex Search pour RAG dans Snowflake

                                                                                                                    Cortex Search est le moteur de recherche qui fournit au modèle de langage étendu le contexte dont il a besoin pour renvoyer des réponses basées sur vos données propriétaires les plus récentes.

                                                                                                                    Exemple¶

                                                                                                                    Cet exemple vous guide à travers les étapes de création d’un Cortex Search Service et de son interrogation à l’aide de la REST API. Consultez la rubrique Interrogation d’un Cortex Search Service pour plus de détails sur l’interrogation du service.

                                                                                                                    Cet exemple utilise un exemple d’ensemble de données de transcription de support client.

                                                                                                                    Exécutez les commandes suivantes pour configurer l’exemple de base de données et le schéma.

                                                                                                                    CREATE DATABASE IF NOT EXISTS cortex_search_db;
                                                                                                                    
                                                                                                                    CREATE OR REPLACE WAREHOUSE cortex_search_wh WITH
                                                                                                                       WAREHOUSE_SIZE='X-SMALL';
                                                                                                                    
                                                                                                                    CREATE OR REPLACE SCHEMA cortex_search_db.services;
                                                                                                                    
                                                                                                                    Copy

                                                                                                                    Exécutez les commandes SQL suivantes pour créer la base de données.

                                                                                                                    CREATE OR REPLACE TABLE support_transcripts (
                                                                                                                        transcript_text VARCHAR,
                                                                                                                        region VARCHAR,
                                                                                                                        agent_id VARCHAR
                                                                                                                    );
                                                                                                                    
                                                                                                                    INSERT INTO support_transcripts VALUES
                                                                                                                        ('My internet has been down since yesterday, can you help?', 'North America', 'AG1001'),
                                                                                                                        ('I was overcharged for my last bill, need an explanation.', 'Europe', 'AG1002'),
                                                                                                                        ('How do I reset my password? The email link is not working.', 'Asia', 'AG1003'),
                                                                                                                        ('I received a faulty router, can I get it replaced?', 'North America', 'AG1004');
                                                                                                                    
                                                                                                                    Copy

                                                                                                                    Le suivi des modifications est nécessaire pour créer le service de recherche cortex. Si vous envisagez d’utiliser un rôle qui n’est pas propriétaire de cette table pour créer le service de recherche, exécutez l’instruction suivante pour activer le suivi des modifications sur la table :

                                                                                                                    ALTER TABLE support_transcripts SET
                                                                                                                      CHANGE_TRACKING = TRUE;
                                                                                                                    
                                                                                                                    Copy

                                                                                                                    Pour plus de détails sur l’activation du suivi des modifications, consultez Activer le suivi des modifications.

                                                                                                                    Créer le service¶

                                                                                                                    Vous pouvez créer un Cortex Search Service avec une seule requête SQL ou depuis le Studio AI & ML de Snowflake. Lorsque vous créez un Cortex Search Service, Snowflake effectue des transformations sur vos données sources pour les préparer à une diffusion à faible latence. Les sections suivantes montrent comment créer un service en utilisant à la fois SQL et dans le Studio AI & ML de Snowflake dans Snowsight.

                                                                                                                    Note

                                                                                                                    Lorsque vous créez un service de recherche, l’index de recherche est créé dans le cadre du processus de création. Cela signifie que l’instruction CREATE CORTEX SEARCH SERVICE peut prendre plus de temps à compléter pour des ensembles de données plus volumineux.

                                                                                                                    Utiliser SQL¶

                                                                                                                    L’exemple suivant montre comment créer un Cortex Search Service avec CREATE CORTEX SEARCH SERVICE sur l’exemple d’ensemble de données de transcription du support client créé dans la section précédente.

                                                                                                                    CREATE OR REPLACE CORTEX SEARCH SERVICE transcript_search_service
                                                                                                                      ON transcript_text
                                                                                                                      ATTRIBUTES region
                                                                                                                      WAREHOUSE = cortex_search_wh
                                                                                                                      TARGET_LAG = '1 day'
                                                                                                                      EMBEDDING_MODEL = 'snowflake-arctic-embed-l-v2.0'
                                                                                                                      AS (
                                                                                                                        SELECT
                                                                                                                            transcript_text,
                                                                                                                            region,
                                                                                                                            agent_id
                                                                                                                        FROM support_transcripts
                                                                                                                    );
                                                                                                                    
                                                                                                                    Copy

                                                                                                                    Cette commande déclenche la création du service de recherche pour vos données. Dans cet exemple :

                                                                                                                    • Les requêtes adressées au service rechercheront des correspondances dans la colonne transcript_text.

                                                                                                                    • Le paramètre TARGET_LAG indique que le Cortex Search Service vérifiera les mises à jour de la table de base support_transcripts environ une fois par jour.

                                                                                                                    • Les colonnes region et agent_id seront indexées afin qu’elles puissent être renvoyées avec les résultats des requêtes sur la colonne transcript_text.

                                                                                                                    • La colonne region sera disponible en tant que colonne de filtre lors de l’interrogation de la colonne transcript_text.

                                                                                                                    • L’entrepôt cortex_search_wh sera utilisé pour matérialiser les résultats de la requête spécifiée initialement et à chaque fois que la table de base est modifiée.

                                                                                                                    Note

                                                                                                                    • En fonction de la taille de l’entrepôt spécifié dans la requête et du nombre de lignes de votre table, l’exécution de cette commande CREATE peut prendre plusieurs heures.

                                                                                                                    • Snowflake recommande d’utiliser un entrepôt dédié dont la taille ne dépasse pas la taille MEDIUM pour chaque service.

                                                                                                                    • Les colonnes du champ ATTRIBUTES doivent être incluses dans la requête source, soit via une énumération explicite, soit via un caractère générique, ( * ) .

                                                                                                                    Utiliser Snowsight¶

                                                                                                                    Suivez ces étapes pour créer un Cortex Search Service dans Snowsight :

                                                                                                                    1. Connectez-vous à Snowsight.

                                                                                                                    2. Choisissez un rôle auquel est accordé le rôle SNOWFLAKE.CORTEX_USER de base de données.

                                                                                                                    3. Dans le menu de navigation, sélectionnez AI & ML » Studio.

                                                                                                                    4. Sélectionnez + Create dans la boîte Create a Cortex Search Service.

                                                                                                                    5. Sélectionnez un rôle et un entrepôt. Le rôle doit se voir attribué le rôle de base de données SNOWFLAKE.CORTEX_USER. L’entrepôt est utilisé pour matérialiser les résultats de la requête source lorsque le service est créé et actualisé.

                                                                                                                    6. Sélectionnez une base de données et un schéma dans lesquels le service est défini.

                                                                                                                    7. Saisissez un nom pour votre service, puis sélectionnez Let’s go.

                                                                                                                    8. Sélectionnez la table ou la vue contenant les données textuelles à indexer pour la recherche, puis sélectionnez Next. Pour cet exemple, sélectionnez la table support_transcripts.

                                                                                                                      Note

                                                                                                                      Si vous souhaitez spécifier plusieurs sources de données ou effectuer des transformations lors de la définition de votre service, utilisez SQL.

                                                                                                                    9. Sélectionnez les colonnes que vous souhaitez inclure dans les résultats de la recherche, transcript_text, region, et agent_id, puis sélectionnez Next.

                                                                                                                    10. Sélectionnez la colonne qui sera recherchée, transcript_text, puis sélectionnez Next.

                                                                                                                    11. Si vous souhaitez pouvoir filtrer vos résultats de recherche en fonction d’une ou plusieurs colonnes particulières, sélectionnez ces colonnes, puis sélectionnez Next. Si vous n’avez besoin d’aucun filtre, sélectionnez Skip this option. Pour cet exemple, vous pouvez ignorer cette étape.

                                                                                                                    12. Définissez votre latence cible, qui correspond au temps pendant lequel le contenu de votre service doit être en retard par rapport aux mises à jour des données de base, puis sélectionnez Create search service.

                                                                                                                    L’étape finale confirme que votre service a été créé et affiche le nom du service et sa source de données.

                                                                                                                    Note

                                                                                                                    Lorsque vous créez le service à partir de Snowsight, le nom du service est entre guillemets. Pour plus de détails sur ce que cela signifie lors du référencement du service dans SQL, consultez Identificateurs entre guillemets doubles.

                                                                                                                    Accorder des autorisations d’utilisation¶

                                                                                                                    Une fois le service et l’index créés, vous pouvez accorder l’utilisation du service, de sa base de données et de son schéma à d’autres rôles tels que customer_support.

                                                                                                                    GRANT USAGE ON DATABASE cortex_search_db TO ROLE customer_support;
                                                                                                                    GRANT USAGE ON SCHEMA services TO ROLE customer_support;
                                                                                                                    
                                                                                                                    GRANT USAGE ON CORTEX SEARCH SERVICE transcript_search_service TO ROLE customer_support;
                                                                                                                    
                                                                                                                    Copy

                                                                                                                    Prévisualiser le service¶

                                                                                                                    Pour confirmer que le service est correctement renseigné avec les données, vous pouvez prévisualiser le service via la fonction SEARCH_PREVIEW depuis un environnement SQL :

                                                                                                                    SELECT PARSE_JSON(
                                                                                                                      SNOWFLAKE.CORTEX.SEARCH_PREVIEW(
                                                                                                                          'cortex_search_db.services.transcript_search_service',
                                                                                                                          '{
                                                                                                                            "query": "internet issues",
                                                                                                                            "columns":[
                                                                                                                                "transcript_text",
                                                                                                                                "region"
                                                                                                                            ],
                                                                                                                            "filter": {"@eq": {"region": "North America"} },
                                                                                                                            "limit":1
                                                                                                                          }'
                                                                                                                      )
                                                                                                                    )['results'] as results;
                                                                                                                    
                                                                                                                    Copy

                                                                                                                    Exemple de réponse de requête réussie :

                                                                                                                    [
                                                                                                                      {
                                                                                                                      "transcript_text" : "My internet has been down since yesterday, can you help?",
                                                                                                                      "region" : "North America"
                                                                                                                      }
                                                                                                                    ]
                                                                                                                    
                                                                                                                    Copy

                                                                                                                    Cette réponse confirme que le service est rempli de données et fournit des résultats raisonnables pour la requête donnée.

                                                                                                                    Vous pouvez également utiliser la fonction de table CORTEX_SEARCH_DATA_SCAN pour inspecter le contenu du service.

                                                                                                                    SELECT
                                                                                                                      *
                                                                                                                    FROM
                                                                                                                      TABLE (
                                                                                                                        CORTEX_SEARCH_DATA_SCAN (
                                                                                                                          SERVICE_NAME => 'transcript_search_service'
                                                                                                                        )
                                                                                                                      );
                                                                                                                    
                                                                                                                    Copy
                                                                                                                    + ---------------------------------------------------------- + --------------- + -------- + ------------------------------ +
                                                                                                                    |                      transcript_text                       |     region      | agent_id | _GENERATED_EMBEDDINGS_MY_MODEL |
                                                                                                                    | ---------------------------------------------------------- | --------------- | -------- | ------------------------------ |
                                                                                                                    | 'My internet has been down since yesterday, can you help?' | 'North America' | 'AG1001' | [0.1, 0.2, 0.3, 0.4]           |
                                                                                                                    | 'I was overcharged for my last bill, need an explanation.' | 'Europe'        | 'AG1002' | [0.1, 0.2, 0.3, 0.4]           |
                                                                                                                    + ---------------------------------------------------------- + --------------- + -------- + ------------------------------ +
                                                                                                                    

                                                                                                                    Interrogez le service depuis votre application¶

                                                                                                                    Une fois que vous avez créé le service de recherche, accordé son utilisation à votre rôle et l’avez prévisualisé, vous pouvez désormais l’interroger à partir de votre application à l’aide de l”API Python.

                                                                                                                    Le code suivant montre l’utilisation de l’API Python pour récupérer le ticket d’assistance le plus pertinent pour une requête concernant internet issues, filtré pour renvoyer des résultats dans la région North America :

                                                                                                                    from snowflake.core import Root
                                                                                                                    from snowflake.snowpark import Session
                                                                                                                    
                                                                                                                    CONNECTION_PARAMETERS = {"..."}
                                                                                                                    
                                                                                                                    session = Session.builder.configs(CONNECTION_PARAMETERS).create()
                                                                                                                    root = Root(session)
                                                                                                                    
                                                                                                                    transcript_search_service = (root
                                                                                                                      .databases["cortex_search_db"]
                                                                                                                      .schemas["services"]
                                                                                                                      .cortex_search_services["transcript_search_service"]
                                                                                                                    )
                                                                                                                    
                                                                                                                    resp = transcript_search_service.search(
                                                                                                                      query="internet issues",
                                                                                                                      columns=["transcript_text", "region"],
                                                                                                                      filter={"@eq": {"region": "North America"} },
                                                                                                                      limit=1
                                                                                                                    )
                                                                                                                    print(resp.to_json())
                                                                                                                    
                                                                                                                    Copy

                                                                                                                    Exemple de réponse de requête réussie :

                                                                                                                    {
                                                                                                                      "results": [
                                                                                                                        {
                                                                                                                          "transcript_text": "My internet has been down since yesterday, can you help?",
                                                                                                                          "region": "North America"
                                                                                                                        }
                                                                                                                      ],
                                                                                                                      "request_id": "5d8eaa5a-800c-493c-a561-134c712945ba"
                                                                                                                    }
                                                                                                                    
                                                                                                                    Copy

                                                                                                                    Les Cortex Search Services renvoient toutes les colonnes spécifiées dans le champ columns de votre requête.

                                                                                                                    Privilèges requis¶

                                                                                                                    • Pour créer un Cortex Search Service, votre rôle doit avoir le rôle de base de données CORTEX_USER pour les fonctions LLM Cortex. Pour plus d’informations sur l’octroi et la révocation de ce rôle, consultez Privilèges requis pour les fonctions Cortex LLM.

                                                                                                                    • Pour interroger un Cortex Search Service, le rôle de l’utilisateur effectuant la requête doit disposer des privilèges USAGE sur le service lui-même, ainsi que sur la base de données et le schéma dans lesquels le service réside. Consultez Exigences en matière de contrôle d’accès à Cortex Search.

                                                                                                                    • Pour suspendre ou reprendre un Cortex Search Service à l’aide de la commande ALTER, le rôle de l’utilisateur qui interroge doit avoir le privilège OPERATE sur le service. Voir ALTER CORTEX SEARCH SERVICE.

                                                                                                                    Important

                                                                                                                    Les services Cortex Search Service effectuent des recherches avec les droits du propriétaire et suivent le même modèle de sécurité que les autres objets Snowflake qui s’exécutent avec les droits du propriétaire. Pour plus d’informations, voir Exigences en matière de contrôle d’accès à Cortex Search

                                                                                                                    Comprendre la qualité de Cortex Search¶

                                                                                                                    Cortex Search s’appuie sur un ensemble de modèles de récupération et de classement pour vous offrir un niveau élevé de qualité de recherche avec peu ou pas de réglage requis. Sous le capot, Cortex Search adopte une approche « hybride » pour récupérer et classer les documents. Chaque requête de recherche utilise :

                                                                                                                    • Recherche vectorielle pour récupérer des documents sémantiquement similaires.

                                                                                                                    • Recherche par mot-clé pour récupérer des documents lexicalement similaires.

                                                                                                                    • Reclassement sémantique pour reclasser les documents les plus pertinents dans le jeu de résultats.

                                                                                                                    Cette approche de recherche hybride, couplée à une étape de reclassement sémantique, permet d’obtenir une qualité de recherche élevée sur une large gamme d’ensembles de données et de requêtes.

                                                                                                                    Modèles de représentation vectorielle de Cortex Search¶

                                                                                                                    Cortex Search permet aux utilisateurs de sélectionner un modèle d’intégration hébergé qui sera exploité dans la zone de préparation de récupération de la recherche vectorielle. Les modèles d’intégration suivants sont disponibles dans Cortex Search.

                                                                                                                    Important

                                                                                                                    Le prix des modèles varie. Les prix du modèle canonique sont disponibles dans la Snowflake Service Consumption Table. Si un prix indiqué ci-dessous diffère du prix indiqué pour le modèle dans la Snowflake Service Consumption Table, cette dernière fait foi.

                                                                                                                    Nom du modèle

                                                                                                                    Dimensions de la sortie

                                                                                                                    Prise en charge des langages

                                                                                                                    Coût du crédit pour 1 million de jetons

                                                                                                                    Description

                                                                                                                    snowflake-arctic-embed-m-v1.5 (par défaut)

                                                                                                                    768

                                                                                                                    Anglais uniquement

                                                                                                                    0,03

                                                                                                                    Le modèle d’intégration le plus pratique de Snowflake, en anglais uniquement. Ce modèle open-source de 110 millions de paramètres permet d’obtenir les temps d’indexation les plus rapides parmi les modèles disponibles dans Cortex Search. Pour plus d’informations, consultez le billet de blog Arctic Embed 1.5 et la carte modèle Arctic Embed 1.5.

                                                                                                                    snowflake-arctic-embed-l-v2.0

                                                                                                                    1024

                                                                                                                    Multilingue

                                                                                                                    0,05

                                                                                                                    Le modèle d’intégration multilingue de Snowflake, au prix le plus avantageux. Ce modèle open-source de 568 millions de paramètres permet d’obtenir une qualité élevée sur les jeux de données anglais ou non. Pour plus d’informations, consultez le billet de blog Arctic Embed 2 et la carte modèle Arctic Embed 2.

                                                                                                                    voyage-multilingual-2

                                                                                                                    1024

                                                                                                                    Multilingue

                                                                                                                    0,07

                                                                                                                    Le modèle d’intégration multilingue de Voyage. Ce modèle permet d’obtenir une qualité élevée sur les jeux de données anglais ou non. Pour plus d’informations, consultez le billet de blog Voyage Multilingual 2

                                                                                                                    Certains modèles de représentation vectorielle ne sont disponibles que dans certaines régions du Cloud pour Cortex Search. Pour obtenir la liste des disponibilités par modèle et par région, voir Disponibilité régionale Cortex Search.

                                                                                                                    Chaque modèle présente des caractéristiques différentes en matière de performance, de coût et de qualité. Examinez attentivement les spécifications du modèle afin de déterminer le modèle le mieux adapté à votre charge de travail spécifique. Reportez-vous à la Snowflake Service Consumption Table pour avoir une vue plus précise du coût de chaque modèle en crédits par million de jetons.

                                                                                                                    Limites de jetons et division de texte¶

                                                                                                                    Pour des résultats de recherche optimaux avec Cortex Search, Snowflake recommande de diviser le texte de votre colonne de recherche en morceaux ne dépassant pas 512 jetons (environ 385 mots anglais). Lorsqu’une entrée dans la colonne de recherche contient plus de 512 jetons, Cortex Search effectue une récupération basée sur des mots-clés sur l’ensemble du corps du texte, mais utilise uniquement les 512 premiers jetons pour la récupération sémantique (c’est-à-dire basée sur des vecteurs).

                                                                                                                    Un jeton est une séquence de caractères et constitue la plus petite unité de texte pouvant être traitée par un modèle de langage de grande taille. À titre approximatif, un jeton équivaut à environ 3/4 d’un mot anglais, soit environ 4 caractères. Pour calculer le nombre exact de jetons dans une chaîne, vous pouvez utiliser la fonction Cortex COUNT_TOKENS. Par exemple, le calcul des jetons d’une chaîne à intégrer avec le modèle snowflake-arctic-embed-m-v1.5 :

                                                                                                                    SELECT SNOWFLAKE.CORTEX.COUNT_TOKENS('snowflake-arctic-embed-m', '<input_text>') as token_count
                                                                                                                    
                                                                                                                    Copy

                                                                                                                    Comprendre les limites des jetons de recherche sémantique¶

                                                                                                                    La recommandation de morceaux de taille 512 jetons ou moins est motivée par des recherches qui montrent qu”une taille de morceau plus petite entraîne généralement une meilleure qualité de récupération et de réponse du modèle LLM en aval. Bien qu’il existe aujourd’hui des modèles d’intégration à contexte plus long, tels que arctique-intégrer-m-long, Cortex Search opte pour un modèle d’intégration avec une fenêtre de contexte plus petite pour offrir une meilleure qualité de recherche dès le départ.

                                                                                                                    L’intuition derrière ce concept est qu’avec des morceaux plus petits, la récupération peut être plus précise pour une requête donnée. Cela est dû au fait qu’il y a moins de jetons sur lesquels « faire la moyenne » lors de la génération des intégrations vectorielles pour le morceau et la requête. De plus, avec des morceaux plus petits, le LLM en aval peut recevoir uniquement les informations dont il a besoin, car il y a moins de texte potentiellement bruyant fourni dans l’invite au modèle.

                                                                                                                    Vous pouvez trouver des recherches ici montrant que les petits morceaux fonctionnent généralement mieux sur des ensembles de données de type questions-réponses publics.

                                                                                                                    Actualise¶

                                                                                                                    Le contenu diffusé dans un Cortex Search Service est basé sur les résultats d’une requête spécifique. Lorsque les données sous-jacentes à un Cortex Search Service changent, le service est mis à jour pour refléter ces modifications. Ces mises à jour sont appelées actualisations. Ce processus est automatisé et consiste à analyser la requête qui sous-tend la table.

                                                                                                                    Les Cortex Search Services ont les mêmes propriétés d’actualisation que les tables dynamiques. Consultez la rubrique Comprendre l’initialisation et l’actualisation des tables dynamiques pour comprendre les caractéristiques d’actualisation d’un Cortex Search Service.

                                                                                                                    La requête source d’un Cortex Search Service doit être candidate à l’actualisation incrémentielle de la table dynamique. Pour plus de détails sur ces exigences, consultez Prise en charge de l’actualisation incrémentielle. Cette restriction est conçue pour empêcher tout coût incontrôlable indésirable associé au calcul d’intégration vectorielle. Pour plus d’informations sur les constructions qui ne sont pas prises en charge pour l’actualisation incrémentielle de la table dynamique, consultez Requêtes prises en charge pour les tables dynamiques.

                                                                                                                    Suspension de l’indexation et de la mise à disposition¶

                                                                                                                    De la même manière que les tables dynamiques, les Cortex Search Services suspendent automatiquement leur état d’indexation lorsqu’ils rencontrent cinq échecs d’actualisation consécutifs liés à la requête source. Si vous rencontrez cette défaillance pour votre service, vous pouvez voir l’erreur SQL lors de l’utilisation du DESCRIBE CORTEX SEARCH SERVICE ou du Vue CORTEX_SEARCH_SERVICES. La sortie des deux inclut les colonnes suivantes :

                                                                                                                    • La colonne INDEXING_STATE aura la valeur de SUSPENDED.

                                                                                                                    • La colonne INDEXING_ERROR contiendra l’erreur SQL spécifique rencontrée dans la requête source.

                                                                                                                    Une fois le problème racine résolu, vous pouvez reprendre le service avec ALTER CORTEX SEARCH SERVICE <name> RESUME INDEXING. Pour une syntaxe détaillée, voir ALTER CORTEX SEARCH SERVICE.

                                                                                                                    Considérations relatives aux clients¶

                                                                                                                    Un Cortex Search Service entraîne des coûts de la manière suivante :

                                                                                                                    Catégorie

                                                                                                                    Description

                                                                                                                    Calcul de l’entrepôt virtuel

                                                                                                                    Un Cortex Search Service nécessite un entrepôt virtuel pour actualiser le service : pour exécuter des requêtes sur les objets de base lorsqu’ils sont initialisés et actualisés, y compris l’orchestration des tâches d’intégration de texte et la création de l’index de recherche. Ces opérations utilisent des ressources de calcul, qui consomment des crédits. Si aucun changement n’est identifié lors d’une actualisation, les crédits de l’entrepôt virtuel ne sont pas consommés puisqu’il n’y a pas de nouvelles données à actualiser.

                                                                                                                    Calcul des jetons EMBED_TEXT

                                                                                                                    Un Cortex Search Service intègre automatiquement chaque ligne de texte dans la colonne de recherche spécifiée dans le paramètre ON dans l’espace vectoriel pour permettre une recherche sémantique, ce qui entraîne un coût de crédit par jeton intégré. Cela implique d’appeler EMBED_TEXT_768 ou EMBED_TEXT_1024 pour convertir chaque document en une série de nombres qui en encodent le sens. Les intégrations sont calculées à chaque fois qu’une ligne est insérée ou mise à jour. Les intégrations sont traitées de manière incrémentielle lors de l’évaluation de la requête source, de sorte que le coût d’intégration n’est engagé que pour les documents ajoutés ou modifiés. Voir Intégrations vectorielles pour plus d’informations sur les coûts de représentation vectorielle.

                                                                                                                    Calcul de service

                                                                                                                    Un Cortex Search Service utilise un calcul de service multi-locataire, séparé d’un entrepôt virtuel fourni par l’utilisateur, pour établir un service à faible latence et à haut débit. Le coût de calcul pour cette composante est calculé par GB par mois (GB/mo) de données indexées non compressées, les données indexées étant les données fournies par l’utilisateur dans la requête source de Cortex Search, plus les intégrations vectorielles calculées pour le compte de l’utilisateur. Vous supportez ces coûts tant que le service est disponible pour répondre aux requêtes, même si aucune requête n’est servie au cours d’une période donnée. Pour connaître le taux de crédit du service Cortex Search par GB/mo de données indexées, consultez la Snowflake Service Consumption Table.

                                                                                                                    Stockage

                                                                                                                    Les Cortex Search Services matérialisent la requête source dans une table stockée dans votre compte. Cette table est transformée en structures de données optimisées pour un service à faible latence, également stockées dans votre compte. Le stockage pour la table et les structures de données intermédiaires est basé sur un tarif forfaitaire par téraoctet (TB).

                                                                                                                    Calcul des services Cloud

                                                                                                                    Les Cortex Search Services utilisent le calcul Cloud Services pour identifier les changements dans les objets de base sous-jacents et déterminer si l’entrepôt virtuel doit être invoqué. Le coût de calcul des services Cloud est soumis à la contrainte selon laquelle Snowflake ne facture que si le coût quotidien des services Cloud est supérieur à 10 % du coût quotidien de l’entrepôt pour le compte.

                                                                                                                    Pour connaître les meilleures pratiques en matière de gestion des coûts d’un Cortex Search Service, voir Comprendre les coûts de Cortex Search Services.

                                                                                                                    Pour visualiser les coûts de consommation liés aux services AI pour chaque service Cortex Search Service de votre compte, agrégés quotidiennement, consultez la vue CORTEX_SEARCH_DAILY_USAGE_HISTORY

                                                                                                                    Limitations connues¶

                                                                                                                    L’utilisation de Cortex Search est soumise aux limitations suivantes :

                                                                                                                    • Taille de la table de base : Le résultat de la requête matérialisée dans le service de recherche doit avoir une taille inférieure à 100 millions de lignes pour maintenir une performance de service optimale. Si le résultat matérialisé de votre requête comporte plus de 100 millions de lignes, la requête de création échoue avec une erreur.

                                                                                                                      Note

                                                                                                                      Pour augmenter les limites de mise à l’échelle des lignes sur un Cortex Search Service au-dessus de 100 millions, veuillez contacter votre équipe de compte Snowflake.

                                                                                                                    • Constructions de requête : les requêtes sources du Cortex Search Service doivent respecter les mêmes restrictions de requête que les tables dynamiques. Veuillez consulter le Limites des tables dynamiques pour plus de détails.

                                                                                                                    • Réplication et clonage : les Cortex Search Services ne prennent pas en charge la réplication ou le clonage. La prise en charge de ces fonctionnalités sera disponible dans une future version.

                                                                                                                    Important

                                                                                                                    Pour chaque Cortex Search que vous créez, deux entités de table dynamique apparaissent dans l”UI de supervision Snowsight pour tables dynamiques. Ces deux entités sont au format _CORTEX_SEARCH_SOURCE_* et _CORTEX_SEARCH_REFRESH_*. Ces entités apparaissent également dans les vues du schéma d’informations des tables dynamiques, mais n’apparaissent pas dans les commandes SHOW/DESC des tables dynamiques. La sélection de l’une de ces entités dans l’UI Snowsight produit un message Dynamic Table not found. Il s’agit d’un comportement attendu. Les entités liées à Cortex Search seront supprimées de la surveillance de l’UI des tables dynamiques de Snowsight dans les futures versions du produit.

                                                                                                                    Disponibilité régionale¶

                                                                                                                    La prise en charge de cette fonctionnalité est disponible pour les comptes dans les régions Snowflake suivantes. La disponibilité de modèles de représentation vectorielle spécifiques dans une région est indiquée par une coche.

                                                                                                                    Fournisseur Cloud
                                                                                                                    Region
                                                                                                                    snowflake-arctic-embed-m-v1.5
                                                                                                                    snowflake-arctic-embed-l-v2.0
                                                                                                                    voyage-multilingual-2
                                                                                                                    AWS
                                                                                                                    US Ouest 2 (Oregon)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    AWS
                                                                                                                    US Est 2 (Ohio)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    AWS
                                                                                                                    US East 1 (N. du Nord)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    AWS
                                                                                                                    Canada (Centre)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    AWS
                                                                                                                    Amérique du Sud (São Paulo)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    AWS
                                                                                                                    Europe (Irlande)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    AWS
                                                                                                                    Europe (Londres)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    AWS
                                                                                                                    Europe Central 1 (Francfort)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    AWS
                                                                                                                    Europe (Stockholm)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    AWS
                                                                                                                    Asie-Pacifique (Tokyo)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    AWS
                                                                                                                    Asie Pacifique (Mumbai)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    AWS
                                                                                                                    Asie-Pacifique (Sydney)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    AWS
                                                                                                                    Asie-Pacifique (Jakarta)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    AWS
                                                                                                                    Asie-Pacifique (Seoul)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    Azure
                                                                                                                    Est US 2 (Virginie)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    Azure
                                                                                                                    Ouest US 2 (Washington)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    Azure
                                                                                                                    Sud-Central US (Texas)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    Azure
                                                                                                                    UK Sud (Londres)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    Azure
                                                                                                                    Europe du Nord (Irlande)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    Azure
                                                                                                                    Europe de l’Ouest (Pays-Bas)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    Azure
                                                                                                                    Suisse Nord (Zurich)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    Azure
                                                                                                                    Inde centrale (Pune)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    Azure
                                                                                                                    Japon Est (Tokyo, Saitama)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    Azure
                                                                                                                    Asie du Sud-Est (Singapour)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    Azure
                                                                                                                    Australie Est (Nouvelle-Galles du Sud)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    GCP
                                                                                                                    Europe Ouest 2 (Londres)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    GCP
                                                                                                                    Europe Ouest 3 (Francfort)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    GCP
                                                                                                                    Europe Ouest 4 (Pays-Bas)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    GCP
                                                                                                                    Moyen-Orient central 2 (Dammam)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    GCP
                                                                                                                    US Central 1 (Iowa)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    GCP
                                                                                                                    US East 4 (Virginie du Nord)

                                                                                                                    ✔

                                                                                                                    ✔

                                                                                                                    Note

                                                                                                                    Vous pouvez spécifier le paramètre d’inférence interrégionale dans l’une des régions ci-dessus pour accéder aux modèles qui ne sont pas directement pris en charge dans votre région par défaut.

                                                                                                                    Cortex Search est disponible dans les régions suivantes uniquement en utilisant l’inférence interrégionale. Pour utiliser Cortex Search avec l’inférence interrégionale, utilisez le paramètre d’inférence interrégionale.

                                                                                                                    • AWS Europe (Paris)

                                                                                                                    • AWS Europe (Zurich)

                                                                                                                    • AWS Asie-Pacifique (Singapour)

                                                                                                                    • AWS Asie-Pacifique (Osaka)

                                                                                                                    • Azure Canada Central (Toronto)

                                                                                                                    • Azure Central US (Iowa)

                                                                                                                    • Azure UAE Nord (Dubaï)

                                                                                                                    Note

                                                                                                                    Lors de l’utilisation de l’inférence interrégionale, la latence des requêtes entre les régions dépend de l’infrastructure du fournisseur Cloud et du statut du réseau. Snowflake vous recommande de tester votre cas d’utilisation spécifique avec l’inférence interrégionale activée.

                                                                                                                    Avis juridiques¶

                                                                                                                    La classification des données d’entrées et de sorties est présentée dans la table suivante.

                                                                                                                    Classification des données d’entrée

                                                                                                                    Classification des données de sortie

                                                                                                                    Désignation

                                                                                                                    Usage Data

                                                                                                                    Customer Data

                                                                                                                    Les fonctions généralement disponibles sont des fonctions AI couvertes. Les fonctions d’aperçu sont les fonctions AI d’aperçu. [1]

                                                                                                                    [1]

                                                                                                                    Représente le terme défini dans les conditions et la politique d’utilisation acceptable AI.

                                                                                                                    Pour plus d’informations, reportez-vous à Snowflake AI et ML.

                                                                                                                    Cette page a-t-elle été utile ?

                                                                                                                    Visitez Snowflake
                                                                                                                    Rejoindre la conversation
                                                                                                                    Développer avec Snowflake
                                                                                                                    Partagez vos commentaires
                                                                                                                    Lisez les dernières nouvelles sur notre blog
                                                                                                                    Obtenir votre certification Snowflake
                                                                                                                    Politique de confidentialitéConditions du site© 2025 Snowflake, Inc. Tous droits réservés.
                                                                                                                    1. Vue d’ensemble
                                                                                                                    2. Quand utiliser Cortex Search
                                                                                                                    3. Exemple
                                                                                                                    4. Privilèges requis
                                                                                                                    5. Comprendre la qualité de Cortex Search
                                                                                                                    6. Limites de jetons et division de texte
                                                                                                                    7. Actualise
                                                                                                                    8. Suspension de l’indexation et de la mise à disposition
                                                                                                                    9. Considérations relatives aux clients
                                                                                                                    10. Limitations connues
                                                                                                                    11. Disponibilité régionale
                                                                                                                    12. Avis juridiques
                                                                                                                    1. ALTER CORTEX SEARCH SERVICE
                                                                                                                    2. CREATE CORTEX SEARCH SERVICE
                                                                                                                    3. DESCRIBE CORTEX SEARCH SERVICE
                                                                                                                    4. DROP CORTEX SEARCH SERVICE
                                                                                                                    5. SHOW CORTEX SEARCH SERVICES
                                                                                                                    Langage: Français
                                                                                                                    • English
                                                                                                                    • Français
                                                                                                                    • Deutsch
                                                                                                                    • 日本語
                                                                                                                    • 한국어
                                                                                                                    • Português