Avec Claude in Amazon Bedrock, vous appelez Claude depuis votre propre compte AWS. Vous utilisez votre identifiant de connexion AWS, et l'utilisation est facturée sur votre facture AWS. Un court fichier Python vous permet d'obtenir une première réponse de Claude. Vous n'avez pas besoin de clé API Anthropic.
Avant de commencer, vous avez besoin d'un compte AWS, de Python 3.10 ou ultérieur, et de l'AWS CLI. L'AWS CLI est l'outil permettant d'utiliser AWS depuis un terminal.
Obtenir l'autorisation d'appeler Claude
Sur cette page, vous vous connectez en tant que rôle pour appeler Claude. Un rôle est un ensemble d'autorisations dans un compte AWS. Ce rôle est créé dans IAM Identity Center, le service d'AWS pour la connexion. IAM Identity Center est également l'endroit où vous vous connectez en tant que ce rôle.
Les étapes ci-dessous s'adressent à la personne qui administre votre compte AWS, donc si ce n'est pas vous, transmettez ces étapes à votre administrateur. Si vous n'avez jamais configuré IAM Identity Center, commencez par le guide de démarrage d'AWS pour IAM Identity Center(s’ouvre dans un nouvel onglet).
-
Créez un ensemble d'autorisations. Un ensemble d'autorisations contient les politiques qui définissent ce qu'un rôle peut faire. Suivez les étapes d'AWS pour créer un ensemble d'autorisations(s’ouvre dans un nouvel onglet). Ajoutez-y la politique gérée AWS
AmazonBedrockMantleInferenceAccess, qu'AWS fournit pour autoriser les appels à Claude in Amazon Bedrock. -
Ajoutez ces autorisations pour AWS Marketplace, la boutique d'AWS, au même ensemble d'autorisations.
aws-marketplace:Subscribeaws-marketplace:Unsubscribeaws-marketplace:ViewSubscriptions
Le premier appel à chaque modèle Claude dans un compte peut démarrer un abonnement à ce modèle via AWS Marketplace, et cet appel nécessite ces autorisations. Le compte doit également disposer d'un moyen de paiement configuré pour les achats AWS Marketplace. Ces autorisations ne sont nécessaires que pour la première utilisation d'un modèle dans un compte, vous pouvez donc les retirer de l'ensemble d'autorisations une fois l'abonnement terminé pour chaque modèle que le compte utilisera.
-
Attribuez l'ensemble d'autorisations à la personne qui appellera Claude. Faites-le dans le compte AWS depuis lequel elle appellera Claude, en suivant les étapes d'AWS pour attribuer l'accès aux comptes AWS(s’ouvre dans un nouvel onglet). Cette attribution crée le rôle dans ce compte, nommé d'après l'ensemble d'autorisations.
Se connecter depuis votre terminal
Demandez à votre administrateur les informations dont vous avez besoin pour vous connecter :
- Le compte AWS à utiliser.
- Le nom du rôle.
- L'URL de démarrage d'IAM Identity Center, l'adresse web où vous vous connectez.
- La Région AWS qui héberge IAM Identity Center. Une Région est l'un des endroits où AWS exécute ses services.
Vous vous connectez en tant que rôle avec l'AWS CLI. Si vous ne l'avez pas encore, installez l'AWS CLI(s’ouvre dans un nouvel onglet) d'abord. Puis suivez ces étapes dans l'ordre.
-
Configurez un profil de connexion. Un profil est un ensemble nommé de paramètres de connexion que la CLI enregistre. Exécutez cette commande :
bashaws configure ssoElle pose ses questions une à une. Répondez aux premières ainsi :
- Pour le nom de session, entrez un nom court, comme
my-sso. - Pour l'URL de démarrage, entrez celle que votre administrateur vous a donnée.
- Pour la Région qui héberge IAM Identity Center, entrez celle que votre administrateur vous a donnée.
- Pour les portées d'enregistrement, entrez
sso:account:access.
Ensuite, la commande ouvre votre navigateur, et vous vous y connectez. Si le navigateur ne s'ouvre pas, suivez les instructions affichées par la commande. Lorsque la commande liste les comptes AWS puis les rôles, sélectionnez le compte et le rôle indiqués par votre administrateur.
À la fin, elle demande les paramètres suivants :
- Pour la Région du profil, entrez
us-east-1, qui correspond à US East (N. Virginia). - Pour le format de sortie, entrez
json. - Pour le nom du profil, entrez
default. La CLI utilise le profildefaultlorsqu'une commande n'en nomme pas, de sorte que les commandes ci-dessous s'exécutent telles qu'écrites.
- Pour le nom de session, entrez un nom court, comme
-
Connectez-vous.
bashaws sso loginVotre navigateur s'ouvre. Terminez la connexion là-bas, et le terminal affiche une ligne qui commence par « Successfully logged into Start URL ». La CLI détient désormais vos identifiants. Les identifiants sont des clés de courte durée qui prouvent à AWS qui vous êtes. Lorsqu'ils expirent, exécutez à nouveau cette commande.
-
Vérifiez le compte et le rôle sous lesquels vous êtes connecté.
bashaws sts get-caller-identityDans la sortie,
Accountdoit correspondre à l'ID de votre compte AWS.Arnest le nom complet donné par AWS au rôle sous lequel vous êtes connecté, et il doit inclure le nom du rôle que vous avez choisi. Si l'un des deux est incorrect, exécutez à nouveauaws configure ssoet sélectionnez le bon compte et le bon rôle.
Obtenir une première réponse
Envoyez maintenant une requête à Claude depuis Python.
-
Installez le SDK Python d'Anthropic, avec sa prise en charge d'Amazon Bedrock. Le SDK est la bibliothèque d'Anthropic permettant d'appeler Claude depuis du code.
bashpip install -U "anthropic[bedrock]" -
Enregistrez ce fichier sous le nom
first_reply.py.pythonfrom anthropic import ( AnthropicBedrockMantle, ) client = AnthropicBedrockMantle( aws_region="us-east-1", ) message = client.messages.create( model="anthropic.claude-sonnet-5", max_tokens=1024, messages=[{ "role": "user", "content": "Hello, Claude", }], ) for block in message.content: if block.type == "text": print(block.text)Le fichier crée un client, l'objet par lequel votre code envoie les requêtes. Le client est destiné à Claude in Amazon Bedrock dans
us-east-1, la Région que vous avez indiquée pour votre profil.Le client trouve vos identifiants AWS par lui-même, y compris ceux issus de votre connexion IAM Identity Center, de sorte qu'aucune clé ne figure dans le fichier.
Le fichier envoie ensuite un message, « Hello, Claude », à Claude Sonnet 5. La ligne
modelnomme ce modèle par son ID de modèle. Enfin, le fichier affiche le texte de la réponse de Claude. -
Exécutez le fichier.
bashpython first_reply.pyLa réponse de Claude s'affiche dans votre terminal. Si Python s'arrête avec une erreur à la place, consultez « Si la requête échoue » ci-dessous.
-
Vérifiez à nouveau le compte. Dans le même terminal, exécutez
aws sts get-caller-identity. Cela indique sous quel compte et quel rôle vous êtes connecté. L'utilisation est facturée sur votre facture AWS, alors assurez-vous que le compte est bien celui indiqué par votre administrateur.
Si la requête échoue
Lorsqu'une requête échoue, le SDK lève une erreur, que Python affiche dans le terminal. Recherchez dans cette sortie PermissionDeniedError ou NotFoundError.
Une erreur d'autorisation
PermissionDeniedError signifie qu'AWS a refusé la requête avec le statut 403. Un statut est le nombre qu'un serveur renvoie pour indiquer comment une requête s'est déroulée. Les identifiants que vous avez envoyés ne sont pas autorisés à effectuer cette requête. Essayez ces solutions dans l'ordre :
- Reconnectez-vous, car votre connexion a peut-être expiré. Exécutez
aws sso login, puis exécutez à nouveaufirst_reply.py. - Demandez à votre administrateur de vérifier que le rôle et le compte disposent de tout ce qui est listé sous « Obtenir l'autorisation d'appeler Claude ».
- S'il s'agit du premier appel à Claude Sonnet 5 dans votre compte, attendez 2 minutes après la mise en place des autorisations, puis exécutez à nouveau
first_reply.py. L'abonnement au modèle peut prendre jusqu'à 2 minutes pour se terminer, et les appels peuvent être refusés tant qu'il n'est pas terminé.
Une erreur de ressource introuvable
NotFoundError signifie qu'AWS a répondu avec le statut 404 et n'a pas trouvé un élément nommé par la requête. Vérifiez l'ID du modèle dans first_reply.py. Les ID de modèle dans Claude in Amazon Bedrock commencent par anthropic., il doit donc s'écrire exactement anthropic.claude-sonnet-5.
Toute autre erreur
Recherchez toute autre erreur sur la page d'AWS consacrée aux codes d'erreur Amazon Bedrock(s’ouvre dans un nouvel onglet).
Et ensuite
Ensuite, suivez le cours Claude Platform 101(s’ouvre dans un nouvel onglet), qui enseigne le développement sur la Claude Platform. Plusieurs de ses leçons contiennent des exemples Python qui créent leur client avec anthropic.Anthropic().
Dans ces exemples, utilisez l'import, la ligne du client et l'ID de modèle de first_reply.py à la place. Certains des exemples du cours utilisent des fonctionnalités que Claude in Amazon Bedrock ne prend pas en charge, lesquelles sont listées sur la page de documentation Claude in Amazon Bedrock(s’ouvre dans un nouvel onglet).