Partager via


Guide pratique pour déployer JAIS avec Azure Machine Learning studio

Dans cet article, vous apprenez à utiliser Azure Machine Learning studio pour déployer le modèle JAIS en tant que service avec une facturation basée sur le paiement à l’utilisation.

Le modèle JAIS est disponible dans Azure Machine Learning studio avec une facturation basée sur un jeton de type paiement à l’utilisation MaaS (modèles en tant que service).

Vous trouverez le modèle JAIS dans le catalogue de modèles en filtrant sur la collection JAIS.

Prérequis

  • Un abonnement Azure avec un moyen de paiement valide. Les abonnements Azure gratuits ou d’essai ne fonctionnent pas. Si vous ne disposez pas d’un abonnement Azure, commencez par créer un compte Azure payant.

  • Un espace de travail Azure Machine Learning. Si vous ne les avez pas, suivez les étapes dans l’article Démarrage rapide : Créer des ressources d’espace de travail pour les créer. L’offre de modèle de déploiement d’API serverless pour JAIS est uniquement disponible avec des espaces de travail créés dans ces régions :

    • USA Est
    • USA Est 2
    • Centre-Nord des États-Unis
    • États-Unis - partie centrale méridionale
    • USA Ouest
    • USA Ouest 3
    • Suède Centre

    Pour obtenir la liste des régions disponibles pour chacun des modèles prenant en charge les déploiements de points de terminaison d’API serverless, consultez Disponibilité des régions pour les modèles dans les points de terminaison d’API serverless.

  • Les contrôles d’accès en fonction du rôle (RBAC) Azure sont utilisés pour octroyer l’accès aux opérations dans Azure AI Studio. Pour effectuer les étapes décrites dans cet article, votre compte d’utilisateur doit avoir le Rôle de développeur Azure AI sur le groupe de ressources. Pour plus d’informations sur les autorisations, consultez Contrôle d’accès en fonction du rôle dans Azure AI Studio.

JAIS 30b Chat

JAIS 30b Chat est un LLM auto-régressif bilingue pour l’arabeet l’anglais. Les versions paramétrées utilisent le réglage précis supervisé (SFT). Le modèle est affiné avec des paires de réponses rapides en arabe et en anglais. Les ensembles de données de réglage fin comprenaient une large gamme de données pédagogiques dans divers domaines. Le modèle couvre un large éventail de tâches courantes, notamment la réponse aux questions, la génération de code et le raisonnement sur le contenu textuel. Pour améliorer les performances en arabe, l’équipe Core42 a développé un jeu de données interne en arabe ainsi que la traduction de certaines instructions open source de l’anglais vers l’arabe.

Longueur du contexte : JAIS 30b Chat prend en charge une longueur de contexte de 8 K.

Entrée : l’entrée du modèle est uniquement du texte.

Sortie : le modèle génère uniquement du texte.

Important

Cette fonctionnalité est actuellement disponible en préversion publique. Cette préversion est fournie sans contrat de niveau de service et n’est pas recommandée pour les charges de travail de production. Certaines fonctionnalités peuvent être limitées ou non prises en charge.

Pour plus d’informations, consultez Conditions d’Utilisation Supplémentaires relatives aux Évaluations Microsoft Azure.

Déployer avec paiement à l’utilisation

Certains modèles du catalogue de modèles peuvent être déployés en tant que service avec paiement à l’utilisation, ce qui permet de les consommer en tant qu’API sans les héberger sur votre abonnement, tout en conservant les besoins des organisations de sécurité et de conformité de l’entreprise. Cette option de déploiement ne nécessite pas de quota à partir de votre abonnement.

Le modèle JAIS 30b Chat mentionné précédemment peut être déployé en tant que service avec un paiement à l’utilisation et est proposé par Core42 via la Place de marché Microsoft Azure. Core42 peut modifier ou mettre à jour les conditions d’utilisation et la tarification de ce modèle.

Créer un déploiement

Pour créer un déploiement :

  1. Accédez à Azure Machine Learning Studio.

  2. Sélectionnez l’espace de travail dans lequel vous voulez déployer vos modèles. Si vous souhaitez utiliser l’offre de déploiement de modèle avec paiement à l’utilisation, votre espace de travail doit appartenir à la région USA Est 2 ou Suède Centre.

  3. Recherchez JAIS et sélectionnez le modèle Jais-30b-chat dans le catalogue de modèles.

  4. Dans la page de présentation du modèle figurant dans le catalogue de modèles, sélectionnez Déployer.

    Capture d’écran montrant comment déployer un modèle avec l’option de paiement à l’utilisation.

  5. Dans l’Assistant Déploiement, sélectionnez le lien vers les Conditions d’utilisation de la Place de marché Azure pour en savoir plus sur les conditions d’utilisation.

  6. Vous pouvez également sélectionner l’onglet Tarifs et conditions pour en savoir plus sur les tarifs du modèle sélectionné.

  7. Si vous déployez le modèle pour la première fois dans l’espace de travail, vous devez abonner votre espace de travail à l’offre spécifique du modèle. Cette étape nécessite que votre compte dispose des autorisations de rôle de Développeur Azure AI dans le Groupe de ressources, comme mentionné dans les prérequis. Chaque espace de travail a de son propre abonnement à l’offre particulière de la Place de marché Azure, ce qui vous permet de contrôler et de surveiller les dépenses. Sélectionnez S’abonner et se Déployer. Vous ne pouvez actuellement avoir qu’un seul déploiement pour chaque modèle au sein d’un espace de travail.

    Capture d’écran montrant les conditions générales d’un modèle donné.

  8. Une fois que vous souscrivez l’espace de travail à l’offre particulière de la Place de marché Azure, les déploiements suivants de la même offre dans le même espace de travail ne nécessitent pas de s’abonner à nouveau. Si ce scénario s’applique à vous, vous devez sélectionner l’option Continuer à déployer.

    Capture d’écran montrant un projet déjà abonné à l’offre.

  9. Donnez un nom au déploiement. Ce nom va faire partie de l’URL de l’API de déploiement. Cette URL doit être unique dans chaque région Azure.

    Capture d’écran montrant comment indiquer le nom du déploiement à créer.

  10. Sélectionnez Déployer. Attendez que le déploiement soit terminé : vous êtes alors redirigé vers la page des points de terminaison serverless.

  11. Sélectionnez le point de terminaison pour ouvrir sa page Détails.

  12. Sélectionnez l’onglet Test pour commencer à interagir avec le modèle.

  13. Vous pouvez toujours trouver les détails, l’URL et les clés d’accès du point de terminaison en accédant à Espace de travail>Points de terminaison>Points de terminaison serverless.

  14. Notez l’URL cible et la clé secrète. Pour plus d’informations sur l’utilisation des API, consultez la section Référence.

Pour en savoir plus sur la facturation des modèles déployés avec paiement à l’utilisation, consultez Considérations relatives aux coûts et aux quotas pour les modèles JAIS déployés en tant que service.

Utiliser le modèle JAIS 30b Chat en tant que service

Ces modèles peuvent être consommés à l’aide de l’API de conversation.

  1. Dans votre espace de travail, sélectionnez l’onglet Points de terminaison à gauche.

  2. Accédez à l’onglet Points de terminaison serverless.

  3. Sélectionnez votre déploiement pour JAIS 30b Chat.

  4. Vous pouvez tester le déploiement dans l’onglet Test.

  5. Pour utiliser les API, copiez l’URL Cible et la valeur de Clé.

Pour plus d’informations sur l’utilisation des API, consultez la section Référence.

Référence de l'API Chat pour JAIS déployé en tant que service

v1/chat/completions

Requête

    POST /v1/chat/completions HTTP/1.1
    Host: <DEPLOYMENT_URI>
    Authorization: Bearer <TOKEN>
    Content-type: application/json

Schéma de requête v1/chat/completions

JAIS 30b Chat accepte les paramètres suivants pour un appel d’inférence de réponse v1/chat/completions :

Propriété Type Default Description
messages array None Entrée de texte à laquelle le modèle doit répondre.
max_tokens integer None Nombre maximal de jetons générés par le modèle dans le cadre de la réponse. Remarque : La définition d’une valeur faible peut entraîner des générations incomplètes. En l’absence de spécification, des jetons sont générés jusqu’à la fin de la séquence.
temperature float 0.3 Contrôle le caractère aléatoire du modèle. Les valeurs faibles favorisent le caractère déterministe du modèle, tandis que les valeurs élevées favorisent son caractère aléatoire.
top_p float None Probabilité cumulative des jetons de vocabulaire les plus probables du paramètre à conserver pour l’échantillonnage du noyau ; la valeur par défaut est Null.
top_k integer None Nombre de jetons de vocabulaire les plus probables à conserver pour le filtrage top-k ; la valeur par défaut est Null.

Un message système ou utilisateur prend en charge les propriétés suivantes :

Propriété Type Default Description
role enum Obligatoire role=system ou role=user.
content string Requis Entrée de texte à laquelle le modèle doit répondre.

Un message d’Assistant prend en charge les propriétés suivantes :

Propriété Type Default Description
role enum Obligatoire role=assistant
content string Requis Contenu du message de l’Assistant.

Schéma de réponse v1/chat/completions

La charge utile de réponse est un dictionnaire avec les champs suivants :

Clé Type Description
id string Identificateur unique de la saisie semi-automatique.
choices array Liste des choix d’achèvement générés pour les messages d’entrée.
created integer Horodatage Unix (en secondes) de la création de l’achèvement.
model string La model_id utilisée pour l’achèvement.
object string chat.completion.
usage object Statistiques d’utilisation pour la demande d’achèvement.

L’objet choices est un dictionnaire avec les champs suivants :

Clé Type Description
index integer Index de choix.
messages ou delta string Résultat de la complétion de conversation dans l’objet relatif aux messages. Quand le mode streaming est choisi, la clé delta est utilisée.
finish_reason string Raison pour laquelle le modèle a cessé de générer des jetons.

L’objet usage est un dictionnaire avec les champs suivants :

Clé Type Description
prompt_tokens integer Nombre de jetons dans l’invite.
completion_tokens integer Nombre de jetons générés lors de la saisie semi-automatique.
total_tokens integer Nombre total de jetons.

Exemples

Arabe

Demande :

    "messages": [
        {
        "role": "user",
        "content": "ما هي الأماكن الشهيرة التي يجب زيارتها في الإمارات؟"
        }
    ]

Réponse :

    {
        "id": "df23b9f7-e6bd-493f-9437-443c65d428a1",
        "choices": [
            {
                "index": 0,
                "finish_reason": "stop",
                "message": {
                    "role": "assistant",
                    "content": "هناك العديد من الأماكن المذهلة للزيارة في الإمارات! ومن أشهرها برج خليفة في دبي وهو أطول مبنى في العالم ، ومسجد الشيخ زايد الكبير في أبوظبي والذي يعد أحد أجمل المساجد في العالم ، وصحراء ليوا في الظفرة والتي تعد أكبر صحراء رملية في العالم وتجذب الكثير من السياح لتجربة ركوب الجمال والتخييم في الصحراء. كما يمكن للزوار الاستمتاع بالشواطئ الجميلة في دبي وأبوظبي والشارقة ورأس الخيمة، وزيارة متحف اللوفر أبوظبي للتعرف على تاريخ الفن والثقافة العالمية"
                }
            }
        ],
        "created": 1711734274,
        "model": "jais-30b-chat",
        "object": "chat.completion",
        "usage": {
            "prompt_tokens": 23,
            "completion_tokens": 744,
            "total_tokens": 767
        }
    }
Anglais

Demande :

    "messages": [
        {
        "role": "user",
        "content": "List the emirates of the UAE."
        }
    ]

Réponse :

    {
        "id": "df23b9f7-e6bd-493f-9437-443c65d428a1",
        "choices": [
            {
                "index": 0,
                "finish_reason": "stop",
                "message": {
                    "role": "assistant",
                    "content": "The seven emirates of the United Arab Emirates are: Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al-Quwain, Fujairah, and Ras Al Khaimah."
                }
            }
        ],
        "created": 1711734274,
        "model": "jais-30b-chat",
        "object": "chat.completion",
        "usage": {
            "prompt_tokens": 23,
            "completion_tokens": 60,
            "total_tokens": 83
        }
    }
Autres exemples d’inférence
Type d’échantillon Exemple de Notebook
CLI utilisant les requêtes web CURL et Python webrequests.ipynb
Kit de développement logiciel (SDK) OpenAI (expérimental) openaisdk.ipynb
LiteLLM litellm.ipynb

Coûts et quotas

Considérations relatives aux coûts et aux quotas pour les modèles déployés en tant que service

JAIS 30b Chat est déployé en tant que service et est proposé par Core42 via la Place de marché Azure et intégré à Azure AI Studio pour son utilisation. Vous trouverez la tarification de la Place de marché Azure lors du déploiement du modèle.

Chaque fois qu’un projet s’abonne à une offre donnée à partir de la Place de marché Azure, une nouvelle ressource est créée pour suivre les coûts associés à sa consommation. La même ressource est utilisée pour suivre les coûts associés à l’inférence; plusieurs compteurs sont cependant disponibles pour suivre chaque scénario indépendamment.

Pour plus d’informations sur le suivi des coûts, consultez Surveiller les coûts des modèles proposés dans la Place de marché Azure.

Le quota est géré par déploiement. Chaque déploiement a une limite de débit de 200 000 jetons par minute et 1 000 requêtes d’API par minute. Toutefois, nous limitons actuellement un déploiement par modèle par projet. Contactez le Support Microsoft Azure si les limites de débit actuelles ne suffisent pas pour vos scénarios.

Filtrage du contenu

Les modèles déployés en tant que service avec paiement à l’utilisation sont protégés par Azure AI Sécurité du Contenu. Avec la sécurité du contenu Azure AI, l’invite et la complétion sont soumises à un ensemble de modèles de classification visant à détecter et à empêcher la production d’un contenu nuisible. Le système de filtrage de contenu (préversion) détecte et prend des mesures sur des catégories spécifiques de contenu potentiellement dangereux dans les invites d’entrée et les exécutions de sortie. En savoir plus sur le filtrage de contenu ici.

Étapes suivantes