

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# IA générative dans les environnements d' SageMaker ordinateurs portables
<a name="jupyterai"></a>

[Jupyter AI](https://github.com/jupyterlab/jupyter-ai) est une extension open source permettant d' JupyterLab intégrer des fonctionnalités d'IA générative dans les ordinateurs portables Jupyter. Grâce à l’interface de chat et aux commandes magiques de Jupyter AI, les utilisateurs expérimentent le code généré à partir d’instructions en langage naturel, expliquent le code existant, posent des questions sur leurs fichiers locaux, génèrent des blocs-notes complets, etc. L'extension connecte les blocs-notes Jupyter à de grands modèles linguistiques (LLMs) que les utilisateurs peuvent utiliser pour générer du texte, du code ou des images, et pour poser des questions sur leurs propres données. Jupyter AI prend en charge les fournisseurs de modèles génératifs tels qu' AI21Anthropic ( AWS et JumpStart Amazon Bedrock), Cohere et OpenAI.

Vous pouvez également utiliser Amazon Q Developer comme solution prête à l’emploi. Au lieu d’avoir à configurer manuellement une connexion à un modèle, vous pouvez commencer à utiliser Amazon Q Developer avec une configuration minimale. Lorsque vous activez Amazon Q Developer, celui-ci devient le fournisseur de solutions par défaut de Jupyter AI. Pour plus d’informations sur l’utilisation d’Amazon Q Developer, consultez [SageMaker JupyterLab](studio-updated-jl.md).

Le package de l'extension est inclus dans les [versions 1.2 et ultérieures](https://github.com/aws/sagemaker-distribution/tree/main/build_artifacts/v1) d'[Amazon SageMaker Distribution](https://github.com/aws/sagemaker-distribution). Amazon SageMaker Distribution est un environnement Docker pour la science des données et le calcul scientifique utilisé comme image par défaut des instances de JupyterLab bloc-notes. Les utilisateurs de différents IPython environnements peuvent installer Jupyter AI manuellement.

Dans cette section, nous donnons un aperçu des fonctionnalités de Jupyter AI et expliquons comment configurer les modèles fournis par JumpStart Amazon Bedrock [JupyterLab](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-updated-jl.html)ou depuis les ordinateurs portables [Studio](https://docs.aws.amazon.com/sagemaker/latest/dg/studio.html) Classic. Pour des informations plus détaillées sur le projet Jupyter AI, consultez sa [documentation](https://jupyter-ai.readthedocs.io/en/latest/). Vous pouvez également consulter le billet de blog *[Generative AI in Jupyter](https://blog.jupyter.org/generative-ai-in-jupyter-3f7174824862)* pour obtenir un aperçu et des exemples des principales fonctionnalités de Jupyter AI.

Avant d'utiliser Jupyter AI et d'interagir avec vous LLMs, assurez-vous que vous remplissez les conditions préalables suivantes :
+ Pour les modèles hébergés par AWS, vous devez disposer de l'ARN de votre point de terminaison SageMaker AI ou avoir accès à Amazon Bedrock. Pour les autres fournisseurs de modèles, vous devez disposer de la clé d’API utilisée pour authentifier et autoriser les demandes adressées à votre modèle. Jupyter AI prend en charge un large éventail de fournisseurs de modèles et de modèles de langage. Consultez la liste des [modèles pris en charge](https://jupyter-ai.readthedocs.io/en/latest/users/index.html#model-providers) pour vous tenir au courant des derniers modèles disponibles. Pour plus d'informations sur le déploiement d'un modèle dans JumpStart, consultez la section [Déployer un modèle](https://docs.aws.amazon.com/sagemaker/latest/dg/jumpstart-deploy.html) dans la JumpStart documentation. Vous devez demander l’accès à [Amazon Bedrock](https://aws.amazon.com/bedrock/) pour l’utiliser en tant que fournisseur de modèles.
+ Assurez-vous que les bibliothèques Jupyter AI sont présentes dans votre environnement. Si ce n’est pas le cas, installez le package requis en suivant les instructions fournies dans [Installation de Jupyter AI](sagemaker-jupyterai-installation.md).
+ Familiarisez-vous avec les fonctionnalités de Jupyter AI dans [Accès aux fonctionnalités de Jupyter AI](sagemaker-jupyterai-overview.md).
+ Configurez les modèles cibles que vous souhaitez utiliser en suivant les instructions fournies dans [Configuration de votre fournisseur de modèles](sagemaker-jupyterai-model-configuration.md).

Après avoir effectué les étapes préalables requises, vous pouvez passer à [Utiliser Jupyter AI dans JupyterLab ou Studio Classic](sagemaker-jupyterai-use.md).

**Topics**
+ [Installation de Jupyter AI](sagemaker-jupyterai-installation.md)
+ [Accès aux fonctionnalités de Jupyter AI](sagemaker-jupyterai-overview.md)
+ [Configuration de votre fournisseur de modèles](sagemaker-jupyterai-model-configuration.md)
+ [Utiliser Jupyter AI dans JupyterLab ou Studio Classic](sagemaker-jupyterai-use.md)

# Installation de Jupyter AI
<a name="sagemaker-jupyterai-installation"></a>

Pour utiliser Jupyter AI, vous devez d’abord installer le package Jupyter AI. Pour les utilisateurs d'[Amazon SageMaker AI Distribution](https://github.com/aws/sagemaker-distribution/tree/main/build_artifacts/v1), nous recommandons de sélectionner l'image de SageMaker distribution version 1.2 ou ultérieure. Aucune installation supplémentaire n’est nécessaire. Les utilisateurs d' JupyterLab in Studio peuvent choisir la version de leur Amazon SageMaker Distribution lors de la création d'un espace.

Pour les utilisateurs d'autres IPython environnements, la version du package Jupyter AI recommandé dépend de la version JupyterLab qu'ils utilisent.

La distribution Jupyter AI se compose de deux packages.
+ `jupyter_ai`: ce package fournit une JupyterLab extension et une interface utilisateur (UI) de chat native. Il agit comme un assistant conversationnel en utilisant le grand modèle de langage de votre choix.
+ `jupyter_ai_magics`: Ce package fournit IPython `%%ai` les commandes `%ai` magiques avec lesquelles vous pouvez invoquer un grand modèle de langage (LLM) à partir des cellules de votre bloc-notes.

**Note**  
L’installation de `jupyter_ai` installe également `jupyter_ai_magics`. Cependant, vous pouvez installer `jupyter_ai_magics` indépendamment sans JupyterLab ou`jupyter_ai`. Les commandes `%%ai` magiques `%ai` fonctionnent dans n'importe quel environnement de IPython noyau. Si vous installez uniquement `jupyter_ai_magics`, vous ne pouvez pas utiliser l’interface utilisateur du chat.

Pour les utilisateurs de JupyterLab 3, en particulier les utilisateurs de Studio Classic, nous recommandons d'installer `jupyter-ai` [la version 1.5.x](https://pypi.org/project/jupyter-ai/#history) ou toute version 1.x ultérieure. Cependant, nous vous recommandons vivement d'utiliser Jupyter AI avec JupyterLab 4. La `jupyter-ai` version compatible avec JupyterLab 3 peut ne pas permettre aux utilisateurs de définir des paramètres de modèle supplémentaires tels que la température, l'échantillonnage top-k et top-p, le nombre maximum de jetons ou la longueur maximale, ou les contrats de licence d'acceptation par l'utilisateur.

Pour les utilisateurs de JupyterLab 4 environnements qui n'utilisent pas SageMaker Distribution, nous recommandons d'installer la `jupyter-ai` [version 2.5.x](https://pypi.org/project/jupyter-ai/#history) ou toute version 2.x ultérieure.

Consultez les instructions d’installation dans la section *Installation* de la [documentation de Jupyter AI](https://jupyter-ai.readthedocs.io/en/latest/users/index.html#installation-via-pip).

# Accès aux fonctionnalités de Jupyter AI
<a name="sagemaker-jupyterai-overview"></a>

Vous pouvez accéder aux fonctionnalités de Jupyter AI de deux manières distinctes : en utilisant l’interface utilisateur de chat ou en utilisant des commandes magiques dans les blocs-notes.

## Depuis l’assistant IA de l’interface utilisateur de chat
<a name="sagemaker-jupyterai-overview-chatui"></a>

L’interface de chat vous met en relation avec Jupyternaut, un agent conversationnel qui utilise le modèle de langage de votre choix. 

Après avoir lancé une JupyterLab application installée avec Jupyter AI, vous pouvez accéder à l'interface de chat en choisissant l'icône de chat (![\[Icon of a rectangular shape with a curved arrow pointing to the upper right corner.\]](http://docs.aws.amazon.com/fr_fr/sagemaker/latest/dg/images/studio/icons/jupyterai/jupyterai-chat-ui.png)) dans le panneau de navigation de gauche. Les nouveaux utilisateurs sont invités à configurer leur modèle. Consultez [Configurez votre fournisseur de modèles dans l’interface utilisateur de chat](sagemaker-jupyterai-model-configuration.md#sagemaker-jupyterai-model-configuration-chatui) pour obtenir des instructions de configuration.

**À l’aide de l’interface utilisateur de chat, vous pouvez :**
+ **Répondre aux questions** : par exemple, vous pouvez demander à Jupyternaut de créer une fonction Python qui ajoute des fichiers CSV dans un compartiment Amazon S3. Vous pouvez ensuite affiner votre réponse à l’aide d’une question de suivi, par exemple en ajoutant un paramètre à la fonction pour choisir le chemin dans lequel les fichiers sont écrits. 
+ **Interaction avec les fichiers dans JupyterLab** : Vous pouvez inclure une partie de votre bloc-notes dans votre invite en la sélectionnant. Vous pouvez ensuite la remplacer par la réponse suggérée par le modèle ou copier manuellement la réponse dans votre presse-papiers.
+ **Générer des blocs-notes complets** à partir d’invites : en commençant votre invite par `/generate`, vous déclenchez un processus de génération de blocs-notes en arrière-plan sans interrompre votre utilisation de Jupyternaut. Un message contenant le lien vers le nouveau fichier s’affiche à la fin du processus.
+ **Tirer des leçons des fichiers locaux et poser des questions à leur sujet** : à l’aide de la commande `/learn`, vous pouvez enseigner au modèle de vectorisation de votre choix des informations sur des fichiers locaux, puis poser des questions sur ces fichiers à l’aide de la commande `/ask`. Jupyter AI stocke le contenu intégré dans une [base de données vectorielles FAISS](https://github.com/facebookresearch/faiss) locale, puis utilise la génération à enrichissement contextuel (RAG) pour fournir des réponses en fonction de ce qu’il a appris. Pour effacer toutes les informations précédemment apprises de votre modèle de vectorisation, utilisez `/learn -d`.

**Note**  
Amazon Q Developer n’est pas en mesure de générer des blocs-notes à partir de zéro.

Pour une liste complète des fonctionnalités et des instructions détaillées sur leur utilisation, consultez la documentation de l’[interface de chat Jupyter AI](https://jupyter-ai.readthedocs.io/en/latest/users/index.html#the-chat-interface). Pour découvrir comment configurer l’accès à un modèle dans Jupyternaut, consultez [Configurez votre fournisseur de modèles dans l’interface utilisateur de chat](sagemaker-jupyterai-model-configuration.md#sagemaker-jupyterai-model-configuration-chatui).

## À partir de cellules de bloc-notes
<a name="sagemaker-jupyterai-overview-magic-commands"></a>

À l'aide `%%ai` de commandes `%ai` magiques, vous pouvez interagir avec le modèle de langage de votre choix depuis les cellules de votre bloc-notes ou depuis n'importe quelle interface de ligne de IPython commande. La commande `%%ai` applique vos instructions à l’ensemble de la cellule, tandis que `%ai` les applique à une ligne spécifique.

L’exemple suivant illustre une commande magique `%%ai` invoquant un modèle Anthropic Claude pour générer un fichier HTML contenant l’image d’un carré blanc avec des bordures noires.

```
%%ai anthropic:claude-v1.2 -f html
Create a square using SVG with a black border and white fill.
```

Pour en savoir plus sur la syntaxe de chaque commande, utilisez `%ai help`. Pour répertorier les fournisseurs et les modèles pris en charge par l’extension, exécutez `%ai list`.

Pour une liste complète des fonctionnalités et des instructions détaillées sur leur utilisation, consultez la documentation sur les [commandes magiques](https://jupyter-ai.readthedocs.io/en/latest/users/index.html#the-ai-and-ai-magic-commands) de Jupyter AI. Vous pouvez notamment personnaliser le format de sortie de votre modèle à l’aide du paramètre `-f` ou `--format`, autoriser l’interpolation des variables dans les invites, y compris les variables `In` et `Out` spéciales, etc.

Pour découvrir comment configurer l’accès à un modèle, consultez [Configuration de votre fournisseur de modèles dans un bloc-notes](sagemaker-jupyterai-model-configuration.md#sagemaker-jupyterai-model-configuration-magic-commands). 

# Configuration de votre fournisseur de modèles
<a name="sagemaker-jupyterai-model-configuration"></a>

**Note**  
Dans cette section, nous partons du principe que le langage et les modèles de vectorisation que vous prévoyez d’utiliser sont déjà déployés. Pour les modèles fournis par AWS, vous devez déjà disposer de l'ARN de votre point de terminaison SageMaker AI ou avoir accès à Amazon Bedrock. Pour les autres fournisseurs de modèles, vous devez disposer de la clé d’API utilisée pour authentifier et autoriser les demandes adressées à votre modèle.  
Jupyter AI prend en charge un large éventail de fournisseurs de modèles et de modèles de langage. Consultez la liste des [modèles pris en charge](https://jupyter-ai.readthedocs.io/en/latest/users/index.html#model-providers) pour vous tenir au courant des derniers modèles disponibles. Pour plus d'informations sur le déploiement d'un modèle fourni par JumpStart, consultez la section [Déployer un modèle](https://docs.aws.amazon.com/sagemaker/latest/dg/jumpstart-deploy.html) dans la JumpStart documentation. Vous devez demander l’accès à [Amazon Bedrock](https://aws.amazon.com/bedrock/) pour l’utiliser en tant que fournisseur de modèles.

La configuration de Jupyter AI varie selon que vous utilisez l’interface utilisateur de chat ou les commandes magiques.

## Configurez votre fournisseur de modèles dans l’interface utilisateur de chat
<a name="sagemaker-jupyterai-model-configuration-chatui"></a>

**Note**  
Vous pouvez configurer plusieurs modèles LLMs et les intégrer en suivant les mêmes instructions. Toutefois, vous devez configurer au moins un **modèle de langage**.

**Pour configurer votre interface utilisateur de chat**

1. Dans JupyterLab, accédez à l'interface de discussion en choisissant l'icône de discussion (![\[Icon of a rectangular shape with a curved arrow pointing to the upper right corner.\]](http://docs.aws.amazon.com/fr_fr/sagemaker/latest/dg/images/studio/icons/jupyterai/jupyterai-chat-ui.png)) dans le panneau de navigation de gauche.

1. Choisissez l’icône de configuration (![\[Gear or cog icon representing settings or configuration options.\]](http://docs.aws.amazon.com/fr_fr/sagemaker/latest/dg/images/studio/icons/jupyterai/jupyterai-configure-models.png)) dans le coin supérieur droit du volet gauche. Cela ouvre le panneau de configuration de Jupyter AI.

1. Renseignez les champs relatifs à votre fournisseur de services.
   + **Pour les modèles fournis par JumpStart ou Amazon Bedrock**
     + Dans la liste déroulante des **modèles de langue**, sélectionnez `sagemaker-endpoint` les modèles déployés avec JumpStart ou `bedrock` pour les modèles gérés par Amazon Bedrock.
     + Les paramètres varient selon que votre modèle est déployé sur SageMaker AI ou Amazon Bedrock.
       + Pour les modèles déployés avec JumpStart :
         + Entrez le nom de votre point de **terminaison dans Nom du point** de terminaison, puis le nom Région AWS dans lequel votre modèle est déployé dans [**Nom de la région**](sagemaker-jupyterai-use.md#sagemaker-jupyterai-region-name). Pour récupérer l'ARN des points de terminaison de l' SageMaker IA, accédez à Inference [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/) and Endpoints, puis sélectionnez **Inference** and **Endpoints** dans le menu de gauche.
         + Collez le code JSON du [**schéma de demande**](sagemaker-jupyterai-use.md#sagemaker-jupyterai-request-schema) adapté à votre modèle, ainsi que le [**chemin de réponse**](sagemaker-jupyterai-use.md#sagemaker-jupyterai-response-path) correspondant pour analyser la sortie du modèle.
**Note**  
Vous trouverez le format de demande et de réponse de différents modèles de JumpStart base dans les [exemples de blocs-notes](https://github.com/aws/amazon-sagemaker-examples/tree/main/introduction_to_amazon_algorithms/jumpstart-foundation-models) suivants. Chaque bloc-notes porte le nom du modèle qu’il présente.
       + Pour les modèles gérés par Amazon Bedrock : ajoutez le AWS profil contenant vos AWS informations d'identification sur votre système (facultatif), puis le profil Région AWS dans lequel votre modèle est déployé dans le [**nom de la région**](sagemaker-jupyterai-use.md#sagemaker-jupyterai-region-name).
     + (Facultatif) Sélectionnez un [modèle de vectorisation](sagemaker-jupyterai-overview.md#sagemaker-jupyterai-embedding-model) auquel vous avez accès. Les modèles de vectorisation sont utilisés pour capturer des informations supplémentaires à partir de documents locaux, ce qui permet au modèle de génération de texte de répondre aux questions dans le contexte de ces documents.
     + Choisissez **Enregistrer les modifications** et naviguez jusqu’à l’icône de flèche gauche (![\[Left-pointing arrow icon, typically used for navigation or returning to a previous page.\]](http://docs.aws.amazon.com/fr_fr/sagemaker/latest/dg/images/studio/icons/jupyterai/jupyterai-return-to-chat.png)) située dans le coin supérieur gauche du volet gauche. Cela ouvre l’interface utilisateur de chat de Jupyter AI. Vous pouvez commencer à interagir avec votre modèle.
   + **Pour les modèles hébergés par des fournisseurs tiers**
     + Dans la liste déroulante des **modèles de langage**, sélectionnez votre identifiant de fournisseur. Vous trouverez les détails de chaque fournisseur, y compris son identifiant, dans la [liste des fournisseurs de modèles](https://jupyter-ai.readthedocs.io/en/latest/users/index.html#model-providers) de Jupyter AI.
     + (Facultatif) Sélectionnez un [modèle de vectorisation](sagemaker-jupyterai-overview.md#sagemaker-jupyterai-embedding-model) auquel vous avez accès. Les modèles de vectorisation sont utilisés pour capturer des informations supplémentaires à partir de documents locaux, ce qui permet au modèle de génération de texte de répondre aux questions dans le contexte de ces documents.
     + Insérez les clés d’API de vos modèles.
     + Choisissez **Enregistrer les modifications** et naviguez jusqu’à l’icône de flèche gauche (![\[Left-pointing arrow icon, typically used for navigation or returning to a previous page.\]](http://docs.aws.amazon.com/fr_fr/sagemaker/latest/dg/images/studio/icons/jupyterai/jupyterai-return-to-chat.png)) située dans le coin supérieur gauche du volet gauche. Cela ouvre l’interface utilisateur de chat de Jupyter AI. Vous pouvez commencer à interagir avec votre modèle.

L'instantané suivant est une illustration du panneau de configuration de l'interface utilisateur de chat configuré pour invoquer un modèle FLAN-T5-small fourni JumpStart et déployé dans AI. SageMaker 

![\[Panneau de configuration de l'interface utilisateur de chat configuré pour invoquer un modèle Flan-T5-small fourni par. JumpStart\]](http://docs.aws.amazon.com/fr_fr/sagemaker/latest/dg/images/studio/jupyterai/jupyterai-chatui-configuration.png)


### Transmission de paramètres de modèle supplémentaires et de paramètres personnalisés à votre demande
<a name="sagemaker-jupyterai-configuration-model-parameters"></a>

Votre modèle peut avoir besoin de paramètres supplémentaires, tels qu’un attribut personnalisé pour l’approbation du contrat utilisateur ou des ajustements d’autres paramètres du modèle tels que la température ou la longueur de réponse. Nous vous recommandons de configurer ces paramètres comme option de démarrage de votre JupyterLab application à l'aide d'une configuration du cycle de vie. Pour plus d'informations sur la façon de créer une configuration de cycle de vie et de l'associer à votre domaine ou à un profil utilisateur depuis la [console SageMaker AI](https://console.aws.amazon.com/sagemaker/), consultez la section [Créer et associer une configuration de cycle de vie](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-lcc.html). Vous pouvez choisir votre script LCC lorsque vous créez un espace pour votre JupyterLab application.

Utilisez le schéma JSON suivant pour configurer vos [paramètres supplémentaires](sagemaker-jupyterai-use.md#sagemaker-jupyterai-extra-model-params) :

```
{
  "AiExtension": {
    "model_parameters": {
      "<provider_id>:<model_id>": { Dictionary of model parameters which is unpacked and passed as-is to the provider.}
      }
    }
  }
}
```

Le script suivant est un exemple de fichier de configuration JSON que vous pouvez utiliser lors de la création d'une JupyterLab application LCC pour définir la longueur maximale d'un modèle [AI21Labs Jurassic-2 déployé](https://docs.aws.amazon.com/bedrock/latest/userguide/model-parameters-jurassic2.html) sur Amazon Bedrock. L’augmentation de la longueur de la réponse générée par le modèle peut empêcher la troncature systématique de la réponse de votre modèle.

```
#!/bin/bash
set -eux

mkdir -p /home/sagemaker-user/.jupyter

json='{"AiExtension": {"model_parameters": {"bedrock:ai21.j2-mid-v1": {"model_kwargs": {"maxTokens": 200}}}}}'
# equivalent to %%ai bedrock:ai21.j2-mid-v1 -m {"model_kwargs":{"maxTokens":200}}

# File path
file_path="/home/sagemaker-user/.jupyter/jupyter_jupyter_ai_config.json"

#jupyter --paths

# Write JSON to file
echo "$json" > "$file_path"

# Confirmation message
echo "JSON written to $file_path"

restart-jupyter-server

# Waiting for 30 seconds to make sure the Jupyter Server is up and running
sleep 30
```

Le script suivant est un exemple de fichier de configuration JSON permettant de créer une JupyterLab application LCC utilisée pour définir des paramètres de modèle supplémentaires pour un modèle [Anthropic Claude](https://docs.aws.amazon.com/bedrock/latest/userguide/model-parameters-claude.html) déployé sur Amazon Bedrock.

```
#!/bin/bash
set -eux

mkdir -p /home/sagemaker-user/.jupyter

json='{"AiExtension": {"model_parameters": {"bedrock:anthropic.claude-v2":{"model_kwargs":{"temperature":0.1,"top_p":0.5,"top_k":25
0,"max_tokens_to_sample":2}}}}}'
# equivalent to %%ai bedrock:anthropic.claude-v2 -m {"model_kwargs":{"temperature":0.1,"top_p":0.5,"top_k":250,"max_tokens_to_sample":2000}}

# File path
file_path="/home/sagemaker-user/.jupyter/jupyter_jupyter_ai_config.json"

#jupyter --paths

# Write JSON to file
echo "$json" > "$file_path"

# Confirmation message
echo "JSON written to $file_path"

restart-jupyter-server

# Waiting for 30 seconds to make sure the Jupyter Server is up and running
sleep 30
```

Une fois que vous avez rattaché votre LCC à votre domaine, ou profil utilisateur, ajoutez-le à votre espace lors du lancement de votre JupyterLab application. Pour vous assurer que votre fichier de configuration est mis à jour par la configuration LCC, exécutez `more ~/.jupyter/jupyter_jupyter_ai_config.json` dans un terminal. Le contenu du fichier doit correspondre au contenu du fichier JSON transmis à la configuration LCC.

## Configuration de votre fournisseur de modèles dans un bloc-notes
<a name="sagemaker-jupyterai-model-configuration-magic-commands"></a>

**Pour invoquer un modèle via Jupyter AI dans un ordinateur portable JupyterLab ou Studio Classic à l'aide des commandes magiques et `%%ai` `%ai`**

1. Installez les bibliothèques clientes spécifiques à votre fournisseur de modèles dans votre environnement de bloc-notes. Par exemple, lorsque vous utilisez des modèles OpenAI, vous devez installer la bibliothèque cliente `openai`. Vous trouverez la liste des bibliothèques clientes requises par fournisseur dans la colonne *Package(s) Python* de la [liste des fournisseurs de modèles](https://jupyter-ai.readthedocs.io/en/latest/users/index.html#model-providers) de Jupyter AI.
**Note**  
Pour les modèles hébergés par AWS, `boto3` est déjà installé dans l'image SageMaker AI Distribution utilisée par JupyterLab ou dans toute image Data Science utilisée avec Studio Classic.

1. 
   + **Pour les modèles hébergés par AWS**

     Assurez-vous que votre rôle d'exécution est autorisé à invoquer votre point de terminaison d' SageMaker IA pour les modèles fournis par Amazon Bedrock JumpStart ou que vous avez accès à celui-ci.
   + **Pour les modèles hébergés par des fournisseurs tiers**

     Exportez la clé d’API de votre fournisseur dans votre environnement de bloc-notes à l’aide de variables d’environnement. Vous pouvez utiliser la commande magique suivante. Remplacez `provider_API_key` dans la commande par la variable d’environnement trouvée dans la colonne *Variable d’environnement* de la [liste des fournisseurs de modèles](https://jupyter-ai.readthedocs.io/en/latest/users/index.html#model-providers) de Jupyter AI pour votre fournisseur.

     ```
     %env provider_API_key=your_API_key
     ```

# Utiliser Jupyter AI dans JupyterLab ou Studio Classic
<a name="sagemaker-jupyterai-use"></a>

Vous pouvez utiliser Jupyter AI dans JupyterLab ou Studio Classic en invoquant des modèles linguistiques depuis l'interface utilisateur du chat ou depuis des cellules du bloc-notes. Les sections suivantes fournissent des informations sur les étapes requises pour effectuer cette opération.

## Utiliser des modèles de langage depuis l’interface utilisateur de chat
<a name="sagemaker-jupyterai-use-chatui"></a>

Rédigez votre message dans la zone de texte de l’interface de chat pour commencer à interagir avec votre modèle. Pour effacer l’historique des messages, utilisez la commande `/clear`.

**Note**  
L’effacement de l’historique des messages n’efface pas le contexte de discussion avec le fournisseur de modèles.

## Utilisation des modèles de langage à partir de cellules de bloc-notes
<a name="sagemaker-jupyterai-use-magic-commands"></a>

Avant d'utiliser les `%ai` commandes `%%ai` et pour invoquer un modèle de langage, chargez l' IPython extension en exécutant la commande suivante dans une JupyterLab cellule de bloc-notes Studio Classic.

```
%load_ext jupyter_ai_magics
```
+ **Pour les modèles hébergés par AWS :**
  + Pour invoquer un modèle déployé dans l' SageMaker IA, passez la chaîne `sagemaker-endpoint:endpoint-name` à la commande `%%ai` magique avec les paramètres requis ci-dessous, puis ajoutez votre invite dans les lignes suivantes.

    Le tableau suivant répertorie les paramètres obligatoires et facultatifs lors de l'appel de modèles hébergés par SageMaker AI ou Amazon Bedrock.<a name="sagemaker-jupyterai-jumpstart-inference-params"></a>    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/sagemaker/latest/dg/sagemaker-jupyterai-use.html)

    La commande suivante invoque un modèle [Llama2-7b](https://sagemaker.readthedocs.io/en/stable/doc_utils/pretrainedmodels.html) hébergé par AI. SageMaker 

    ```
    %%ai sagemaker-endpoint:jumpstart-dft-meta-textgeneration-llama-2-7b -q {"inputs":"<prompt>","parameters":{"max_new_tokens":64,"top_p":0.9,"temperature":0.6,"return_full_text":false}} -n us-east-2 -p [0].generation -m {"endpoint_kwargs":{"CustomAttributes":"accept_eula=true"}} -f text
    Translate English to French:
    sea otter => loutre de mer
    peppermint => menthe poivrée
    plush girafe => girafe peluche
    cheese =>
    ```

    L'exemple suivant invoque un modèle Flan-T5-small hébergé par AI. SageMaker 

    ```
    %%ai sagemaker-endpoint:hf-text2text-flan-t5-small --request-schema={"inputs":"<prompt>","parameters":{"num_return_sequences":4}} --region-name=us-west-2 --response-path=[0]["generated_text"] -f text
    What is the atomic number of Hydrogen?
    ```
  + Pour appeler un modèle déployé dans Amazon Bedrock, transmettez la chaîne `bedrock:model-name` à la commande `%%ai` magique avec tout paramètre facultatif défini dans la liste des [paramètres d'appel des modèles hébergés par JumpStart Amazon Bedrock ou Amazon Bedrock](#sagemaker-jupyterai-jumpstart-inference-params), puis ajoutez votre invite dans les lignes suivantes.

    L'exemple suivant invoque un modèle [AI21 Labs Jurassic-2 hébergé](https://docs.aws.amazon.com/bedrock/latest/userguide/model-parameters-jurassic2.html) par Amazon Bedrock.

    ```
    %%ai bedrock:ai21.j2-mid-v1 -m {"model_kwargs":{"maxTokens":256}} -f code
    Write a function in python implementing a bubbble sort.
    ```
+ **Pour les modèles hébergés par des fournisseurs tiers**

  Pour invoquer un modèle hébergé par des fournisseurs tiers, transmettez la chaîne `provider-id:model-name` à la commande magique `%%ai` avec un [`Output format`](#sagemaker-jupyterai-output-format-params) en option, puis ajoutez votre invite dans les lignes suivantes. Vous trouverez les détails de chaque fournisseur, y compris son identifiant, dans la [liste des fournisseurs de modèles](https://jupyter-ai.readthedocs.io/en/latest/users/index.html#model-providers) de Jupyter AI.

  La commande suivante demande à un modèle Anthropic Claude de générer un fichier HTML contenant l’image d’un carré blanc avec des bordures noires.

  ```
  %%ai anthropic:claude-v1.2 -f html
  Create a square using SVG with a black border and white fill.
  ```