Aller au contenu principal

Configurer l'accès aux ressources à partir des endpoints de mise en service de modèles

Cet article décrit comment configurer l'accès aux ressources externes et privées à partir des Endpoint de service de modèles. Model Serving prend en charge les variables d'environnement en texte brut et les variables d'environnement basées sur des secrets à l'aide des secrets Databricks.

Exigences

Pour les variables d'environnement basées sur les secrets,

  • Le créateur d'endpoint doit disposer d'un accès en lecture aux secrets Databricks référencés dans les configurations.
  • Vous devez stocker les informations d'identification, telles que votre clé API ou d'autres jetons, en tant que secret Databricks.

Ajouter des variables d'environnement en texte brut

Utilisez des variables d'environnement en texte brut pour définir des variables qui n'ont pas besoin d'être masquées. Vous pouvez définir des variables dans l'interface utilisateur de Serving, l'API REST ou le SDK lorsque vous créez ou mettez à jour un Endpoint.

Depuis l’interface utilisateur Serving, vous pouvez ajouter une variable d’environnement dans **Configurations avancées** :

Créer un Endpoint de service de modèle

Consigner les DataFrames de recherche de caractéristiques dans les tables d'inférence

Si vous avez activé les tables d'inférence sur votre Endpoint, vous pouvez consigner votre data frame de recherche automatique de fonctionnalités dans cette table d'inférence en utilisant ENABLE_FEATURE_TRACING. Ceci nécessite MLflow 2.14.0 ou une version supérieure.

Définissez ENABLE_FEATURE_TRACING comme variable d'environnement dans l'interface utilisateur de Serving, l'API REST ou le SDK lorsque vous créez ou mettez à jour un endpoint.

  1. Dans Configurations avancées , sélectionnez **+ Ajouter des variables d'environnement**.
  2. Saisissez ENABLE_FEATURE_TRACING comme nom d'environnement.
  3. Dans le champ de droite, saisissez true.

Créer un Endpoint de service de modèle

Ajouter des variables d'environnement basées sur des secrets

Vous pouvez stocker en toute sécurité les identifiants à l'aide des secrets Databricks et référencer ces secrets dans la mise à disposition de modèles à l'aide de variables d'environnement basées sur les secrets. Cela permet de récupérer les identifiants à partir des Endpoint de mise en service du modèle au moment du service.

Par exemple, vous pouvez transmettre des informations d'identification pour appeler OpenAI et d'autres endpoints de modèle externes ou accéder à des emplacements de stockage de données externes directement à partir de la diffusion de modèles.

Databricks recommande cette fonctionnalité pour le déploiement des variantes de modèles OpenAI et LangChain MLflow pour le service. Il est également applicable aux autres modèles SaaS nécessitant des informations d'identification, étant entendu que le modèle d'accès est basé sur l'utilisation de variables d'environnement, de clés API et de jetons.

Étape 1 : Créer un Secret Scope

Pendant le service de modèles, les secrets sont récupérés des secrets Databricks par le Secret Scope et la clé. Celles-ci sont attribuées aux noms de variables d'environnement secrètes qui peuvent être utilisées à l'intérieur du modèle.

Tout d'abord, créez un Secret Scope. Voir Gérer les Secret Scope.

Voici les commandes CLI :

Bash

databricks secrets create-scope my_secret_scope

Vous pouvez ensuite ajouter votre secret à un Secret Scope et à une clé souhaités, comme indiqué ci-dessous :

Bash

databricks secrets put-secret my_secret_scope my_secret_key

Les informations secrètes et le nom de la variable d'environnement peuvent ensuite être transmis à la configuration de votre Endpoint lors de la création du Endpoint ou comme mise à jour de la configuration d'un Endpoint existant.

Étape 2 : Ajouter des Secret Scope à la configuration de l'endpoint

Vous pouvez ajouter le Secret Scope à une variable d'environnement et transmettre cette variable à votre Endpoint lors de la création du Endpoint ou des mises à jour de configuration. Consultez Créer des Endpoints personnalisés de service de modèles.

Depuis l'interface utilisateur de Serving, vous pouvez ajouter une variable d'environnement dans les Configurations avancées . La variable d'environnement basée sur les secrets doit être fournie en utilisant la syntaxe suivante : {{secrets/scope/key}}. Sinon, la variable d'environnement est considérée comme une variable d'environnement en texte brut.

Créer un Endpoint de service de modèle

Après la création ou la mise à jour de l'Endpoint, le service de modèle récupère automatiquement la clé secrète du Secret Scope Databricks et renseigne la variable d'environnement que votre code d'inférence de modèle peut utiliser.

Exemple de Notebook

Consultez le Notebook suivant pour un exemple de configuration d'une clé API OpenAI pour une chaîne Retrieval QA LangChain déployée derrière les Endpoints de déploiement de modèles avec des variables d'environnement basées sur des secrets.

Configurer l'accès aux Ressources à partir du Notebook des Endpoint de service de modèles.

Ressource supplémentaire