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.
API de projets
L'API Amazon Bedrock Projects fournit une isolation au niveau de l'application pour vos charges de travail génératives basées sur l'IA grâce à la compatibilité OpenAI. APIs Les projets vous permettent d'organiser et de gérer vos applications d'IA en améliorant le contrôle d'accès, le suivi des coûts et l'observabilité au sein de votre organisation.
Note
Les projets ne peuvent être utilisés qu'avec des modèles qui utilisent la compatibilité OpenAI APIs contre l'extrémité du manteau rocheux. Si vous utilisez le point de terminaison bedrock-runtime, veuillez utiliser des profils d'inférence au lieu du balisage et de l'observabilité.
Qu'est-ce qu'un projet ?
Un projet est une limite logique utilisée pour isoler les charges de travail telles que les applications, les environnements ou les expériences au sein d'Amazon Bedrock. Les projets fournissent :
-
Isolation des accès : contrôlez qui peut accéder à des ressources de projet spécifiques à l'aide des politiques AWS Identity and Access Management (IAM)
-
Surveillance des coûts : suivez les dépenses au niveau du projet à l'aide des balises AWS et d'AWS Cost Explorer
Les projets vous permettent de gérer plusieurs charges de travail d'IA générative en production sans créer de comptes ou d'organisations AWS distincts, ce qui réduit la complexité opérationnelle tout en préservant la sécurité et la gouvernance.
Chaque compte AWS possède un projet par défaut auquel toutes les demandes d'inférence sont associées. Vous pouvez créer d'autres projets dans votre compte à l'aide de l'API Projects.
Quand utiliser les projets
Vous devez utiliser l'API Projects lorsque vous devez :
-
Organiser par structure d'entreprise : gérez l'utilisation de Bedrock en fonction de votre taxonomie organisationnelle, telle que les unités commerciales, les équipes, les applications ou les centres de coûts
-
Isolez les données sensibles : assurez-vous que les invites, les réponses et les données contextuelles d'une application ne sont pas accessibles aux autres applications
-
Suivez les coûts avec précision : surveillez et répartissez les dépenses liées à l'IA entre des équipes, des projets ou des environnements spécifiques
-
Appliquer les politiques d'accès : appliquez des autorisations IAM granulaires pour contrôler qui peut accéder à des charges de travail d'IA spécifiques
-
Augmentez les charges de travail de production : exécutez plusieurs applications de production avec des limites opérationnelles et une surveillance claires
Projets et profils d'inférence
L'API Projects et les profils d'inférence fournissent des fonctionnalités d'isolation, de balisage et de contrôle d'accès dans Amazon Bedrock, mais elles diffèrent en fonction de l'API que vous utilisez. Si vous utilisez OpenAI compatible APIs avec le point de terminaison Bedrock-mantle, qui utilise le moteur d'inférence Mantle, utilisez l'API Projects. Si vous utilisez Invoke ou Converse APIs avec le point de terminaison bedrock-runtime, utilisez des profils d'inférence. Bien que vous puissiez utiliser l'API Chat Completions avec les points de terminaison bedrock-mantle ou bedrock-runtime, nous vous recommandons d'utiliser le point de terminaison Mantle.
| Fonctionnalité | API de projets | Profils d'inférence |
|---|---|---|
| Soutenu APIs | Compatible avec OpenAI APIs (réponses, terminaisons de chat) | Native Bedrock APIs (Invoke, Converse), API compatible avec OpenAI (terminaisons de chat) |
| Endpoint | bedrock-mantle.{region}.api.aws |
bedrock-runtime.{region}.amazonaws.com |
| Cas d’utilisation | Applications utilisant des points de terminaison compatibles avec OpenAI | Applications utilisant le logiciel natif Bedrock APIs |
| Contrôle d’accès | Le projet en tant que ressource dans les politiques IAM | Politiques IAM relatives au profil d'inférence (ARN) |
| Suivi des coûts | Balises AWS sur les projets | Balises AWS sur les profils d'inférence |
Projets et comptes AWS
Les comptes AWS et les organisations AWS représentent les limites de facturation et de propriété au niveau de l'infrastructure. Les projets représentent la charge de travail et les limites des applications au sein d'un seul compte.
L'utilisation de projets au lieu de comptes AWS distincts permet de :
-
Configuration plus rapide : créez des projets en quelques secondes via des appels d'API
-
Complexité réduite : gérez plusieurs charges de travail sans augmenter le nombre de comptes
-
Opérations simplifiées : gestion centralisée au sein d'un seul compte
-
Réduction des frais généraux : pas besoin de rôles IAM entre comptes ni de partage de ressources
Commencer à utiliser des projets
Cette page explique comment créer votre premier projet, l'associer à des demandes d'inférence et gérer les ressources du projet.
Conditions préalables
Avant de commencer, assurez-vous de disposer des éléments suivants :
-
Un compte AWS avec accès à Amazon Bedrock
-
Autorisations IAM pour créer et gérer des projets Bedrock
-
Python 3.7 ou version ultérieure installé
-
Le SDK Python OpenAI installé :
pip install openai boto3 -
Une clé d'API pour l'authentification Amazon Bedrock
Étape 1 : Configuration de votre environnement
Configurez vos variables d'environnement avec vos informations d'identification Amazon Bedrock :
export OPENAI_API_KEY="<your-bedrock-key>" export OPENAI_BASE_URL="https://bedrock-mantle.<your-region>.api.aws/v1"
<your-region>Remplacez-le par votre région AWS (par exemple, us-east-1, us-west-2).
Note
Amazon Bedrock propose deux types de clés : à court terme et à long terme. Bien que vous puissiez utiliser des clés d'API à long terme pour explorer Amazon Bedrock, nous recommandons des clés à court terme pour les applications présentant des exigences de sécurité plus strictes. Si vous utilisez des clés à long terme avec des projets, notez que la politique par défaut associée aux clés à long terme vous permet uniquement d'obtenir et de répertorier des projets, mais pas de create/update/archive les répertorier. Si vous souhaitez utiliser votre clé à long terme pour gérer des projets, vous devrez attribuer des politiques IAM supplémentaires à vos clés pour permettre ces opérations.
Étape 2 : Découvrez les modèles disponibles
Utilisez l'list()API pour récupérer une liste de modèles compatibles avec l'API Projects :
curl -X GET $OPENAI_BASE_URL/models \ -H "Authorization: Bearer $OPENAI_API_KEY"
Étape 3 : Créez votre premier projet
Créez un projet à l'aide de l'API Create Project avec des balises pour le suivi des coûts et l'observabilité. Notez qu'à l'heure actuelle, seul cURL est pris en charge dans le SDK.
curl -X POST $OPENAI_BASE_URL/organization/projects \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "name": "Project ABC", "tags": { "Project": "CustomerChatbot", "Environment": "Production", "Owner": "TeamAlpha", "CostCenter": "21524" } }' -v
Réponse :
{ "arn": "arn:aws:bedrock-mantle:ap-northeast-1:673693429514:project/proj_5d5ykleja6cwpirysbb7", "created_at": 1772135628, "id": "proj_5d5ykleja6cwpirysbb7", "name": "Project ABC", "object": "organization.project", "status": "active", "tags": { "Owner": "TeamAlpha", "Project": "CustomerChatbot", "Environment": "Production", "CostCenter": "21524" } }
Remarques importantes :
-
Le paramètre géographique de la spécification de l'API OpenAI est ignoré par Amazon Bedrock.
-
La région est déterminée par la configuration de votre point de terminaison.
-
Le champ arn est spécifique à Amazon Bedrock et fournit l'ARN pour l'attachement à la politique IAM.
-
Les balises peuvent être spécifiées lors de la création du projet et sont renvoyées dans toutes les réponses du projet.
Étape 4 : Associez les demandes d'inférence à votre projet
Pour associer votre projet aux demandes d'inférence, fournissez l'ID du projet lors de la création du client :
Toutes les demandes d'inférence faites auprès de ce client seront associées au projet spécifié, garantissant ainsi une isolation, un suivi des coûts et un contrôle d'accès appropriés.
Étape 5 : Vérifiez la configuration de votre projet
Répertoriez tous les projets pour vérifier que votre projet a été créé avec succès :
curl -X GET $OPENAI_BASE_URL/organization/projects \ -H "Authorization: Bearer $OPENAI_API_KEY"
Réponse :
{ "data": [ { "arn": "arn:aws:bedrock-mantle:ap-northeast-1:673693429514:project/default", "created_at": 1764460800, "id": "default", "name": "default", "object": "organization.project", "status": "active", "tags": {} }, { "arn": "arn:aws:bedrock-mantle:ap-northeast-1:673693429514:project/proj_2z766pfxmkij5vwubv75", "created_at": 1771823259, "id": "proj_2z766pfxmkij5vwubv75", "name": "Project ABC", "object": "organization.project", "status": "active", "tags": {} } ], "first_id": "default", "has_more": false, "last_id": "proj_znaruqn723npmjqnxqfd", "object": "list" }
Étapes suivantes
Maintenant que vous avez créé votre premier projet, vous pouvez :
-
Configuration du contrôle d'accès : associez des politiques IAM pour restreindre l'accès au projet
-
Configurer le suivi des coûts : ajouter des balises AWS pour la répartition des coûts
-
Activer la surveillance : configurer les CloudWatch métriques et les alarmes
-
Création de projets supplémentaires : organisez les charges de travail par équipe, environnement ou application
Utilisation des projets
Cette page fournit des informations détaillées sur la gestion des projets tout au long de leur cycle de vie.
Création de projets
Création de projet de base
Créez un projet avec un nom, une description et des balises :
curl -X POST $OPENAI_BASE_URL/v1/organization/projects \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "name": "Development Environment", "tags": { "Project": "InternalTools", "Environment": "Development", "Owner": "TeamAlpha", "CostCenter": "30156" } }'
Vous pouvez avoir jusqu'à 1 000 projets par compte.
Conventions de dénomination recommandées
Utilisez des noms clairs et descriptifs qui reflètent la structure de votre organisation :
-
Par application : CustomerChatbot -Prod, -Dev InternalSearch
-
Par équipe : TeamAlpha -Production, -Experiments DataScience
-
Par environnement : Production-WebApp, Staging- MobileApp
-
Par centre de coûts : CostCenter -2152-Production
Lister des projets
Liste de tous les projets
Retrouvez tous les projets de votre compte :
curl -X GET $OPENAI_BASE_URL/organization/projects \ -H "Authorization: Bearer $OPENAI_API_KEY"
Récupération des détails du projet
Obtenez des informations détaillées sur un projet spécifique :
curl -X GET $OPENAI_BASE_URL/organization/projects/proj_5d5ykleja6cwpirysbb7 \ -H "Authorization: Bearer $OPENAI_API_KEY"
Mettre à jour des projets
Modifiez les propriétés du projet, telles que le nom :
curl -X POST $OPENAI_BASE_URL/organization/projects/proj_5d5ykleja6cwpirysbb7 \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "name": "Production Chatbot v2" }'
Gestion des balises de projet
Ajoutez de nouvelles balises ou mettez à jour les valeurs des balises existantes :
curl -X POST $OPENAI_BASE_URL/organization/projects/proj_5d5ykleja6cwpirysbb7 \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "add_tags": { "Application": "WebApp", "Version": "2.0", "Team": "Engineering" } }'
Supprimez des tags spécifiques à l'aide de leurs clés :
curl -X POST $OPENAI_BASE_URL/organization/projects/proj_5d5ykleja6cwpirysbb7 \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "remove_tag_keys": ["Version", "OldTagKey"] }'
Remarques importantes
-
Aucun remplacement complet : aucune opération ne permet de remplacer l'ensemble complet d'étiquettes en une seule fois. Vous devez spécifier de manière explicite les balises à ajouter et celles à supprimer.
-
Gestion des erreurs : mise en œuvre d'une gestion et d'une vérification appropriées des erreurs
Projets d'archivage
Archivez les projets qui ne sont plus utilisés :
curl -X POST $OPENAI_BASE_URL/organization/projects/proj_abc123/archive \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -H "Content-Type: application/json"
Important
Les projets archivés ne peuvent pas être utilisés pour de nouvelles demandes d'inférence, mais les données historiques et les indicateurs restent accessibles pendant 30 jours au maximum.
Utiliser des projets avec différents APIs
Bonnes pratiques
Structure de projet recommandée
Un projet par application : créez des projets distincts pour chaque application ou service distinct.
├── CustomerChatbot-Production ├── CustomerChatbot-Staging ├── CustomerChatbot-Development ├── InternalSearch-Production └── InternalSearch-Development
-
Environnements distincts : utilisez différents projets pour les environnements de développement, de préparation et de production.
-
Isolation des expériences : créez des projets dédiés aux expériences et proof-of-concepts.
Gestion du cycle de vie des projets
-
Créez des projets à un stade précoce : configurez des projets avant de déployer des applications
-
Utilisez une dénomination cohérente : respectez les conventions de dénomination de l'organisation
-
Documenter l'objectif du projet : inclure des descriptions claires
-
Audits réguliers : examiner et archiver périodiquement les projets non utilisés
-
Surveiller l'utilisation : suivre les indicateurs du projet pour identifier les opportunités d'optimisation