Учетные данные IAM
Overview
- AWS Bedrock: Полностью управляемый сервис, предоставляющий доступ к ведущим генеративным AI-моделям (например, Anthropic Claude, Amazon Nova) через AWS.
Узнать больше об AWS Bedrock. - Careti: Расширение VS Code, которое выступает в роли помощника по программированию, интегрируясь с AI-моделями, что позволяет разработчикам генерировать код, выполнять отладку и анализировать данные.
- Корпоративный фокус: Данное руководство предназначено для организаций с настроенными средами AWS (использующих IAM-роли, AWS SSO, AWS Organizations и т. д.) для обеспечения безопасного и соответствующего требованиям использования.
Step 1: Prepare Your AWS Environment
1.1 Create or Use an IAM Role/User
- Войдите в AWS Management Console:
AWS Console - Перейдите в IAM:
- Найдите IAM (Identity and Access Management) в AWS Console.
- Создайте нового IAM-пользователя или используйте AWS SSO вашей организации для получения выделенной роли с доступом к Bedrock.
- AWS IAM User Guide
1.2 Attach the Required Policies
Чтобы Careti мог взаимодействовать с AWS Bedrock, вашему IAM-пользователю или роли требуются определенные разрешения. Хотя управляемая политика AmazonBedrockLimitedAccess предоставляет полный доступ, для более ограниченной и безопасной настройки, следуя принципу наименьших привилегий, для основной функции вызова моделей в Careti достаточно следующих минимальных разрешений:
bedrock:InvokeModelbedrock:InvokeModelWithResponseStream
Вы можете создать кастомную IAM-политику с этими разрешениями и прикрепить ее к своему IAM-пользователю или роли.
Вариант 1: Минимальные разрешения (рекомендуется для Production и соблюдения принципа наименьших привилегий)
- В консоли AWS IAM создайте новую политику.
- Используйте JSON-редактор, чтобы добавить следующий документ политики:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": ["bedrock:InvokeModel", "bedrock:InvokeModelWithResponseStream"],
"Resource": "*" // Для повышения безопасности ограничьте доступ к конкретным ARN моделей, если это возможно.
}
]
} - Назовите политику (например,
ClineBedrockInvokeAccess) и прикрепите ее к своему IAM-пользователю или роли.
Вариант 2: Использование управляемой политики (более простая начальная настройка)
- В качестве альтернативы вы можете прикрепить управляемую политику AWS
AmazonBedrockLimitedAccess. Она предоставляет более широкие разрешения, включая возможность вывода списка моделей, управление ресурсами и другие функции Bedrock. Это может быть проще для начальной настройки или если вам требуются эти дополнительные возможности. Просмотреть детали политики AmazonBedrockLimitedAccess
Важные соображения:
- Список моделей в Careti: Минимальных разрешений (
bedrock:InvokeModel,bedrock:InvokeModelWithResponseStream) достаточно для того, чтобы Careti мог использовать модель, если вы укажете ID модели напрямую в настройках Careti. Если вы хотите, чтобы Careti динамически загружал список доступных моделей Bedrock, вам могут понадобиться дополнительные разрешения, такие какbedrock:ListFoundationModels. - Подписки AWS Marketplace: Для сторонних моделей (например, Anthropic Claude) убедитесь, что у вас есть активные подписки в AWS Marketplace. Обычно это настраивается в консоли AWS Bedrock в разделе "Model access" и может потребовать разрешений
aws-marketplace:Subscribe, если это не было сделано ранее. - Совет для Enterprise: Всегда применяйте принцип наименьших привилегий. Где возможно, ограничивайте ARN ресурсов в ваших IAM-политиках конкретными моделями или регионами. Используйте Service Control Policies (SCPs) для глобального управления в AWS Organizations.
Step 2: Verify Regional and Model Access
2.1 Choose and Confirm a Region
- Выберите регион:
AWS Bedrock доступен в нескольких регионах (например, US East, Europe, Asia Pacific). Выберите регион, который соответствует вашим требованиям по задержке и комплаенсу.
AWS Global Infrastructure - Проверьте доступ к моделям:
- В консоли AWS Bedrock подтвердите, что модели, необходимые вашей команде (например, Anthropic Claude, Amazon Nova), имеют статус "Access granted".
- Примечание: Для некоторых продвинутых моделей может потребоваться Inference Profile, если они недоступны по запросу (on-demand).
2.2 Set Up AWS Marketplace Subscriptions (if needed)
- Подпишитесь на сторонние модели:
- Перейдите в консоль AWS Bedrock и найдите раздел подписок на модели.
- Для моделей от сторонних поставщиков (например, Anthropic) примите условия использования, чтобы оформить подписку.
- AWS Marketplace
- Совет для Enterprise:
- Подписки на модели часто управляются централизованно. Уточните у вашей облачной команды, существует ли стандартный процесс оформления подписок.
Step 3: Configure the Careti VS Code Extension
3.1 Install and Open Careti
- Установите VS Code:
Скачайте с сайта VS Code. - Установите расширение Careti:
- Откройте VS Code.
- Перейдите в Extensions Marketplace (
Ctrl+Shift+XилиCmd+Shift+X). - Найдите Careti и установите его.
3.2 Configure Careti Settings
- Откройте настройки Careti:
- Нажмите на иконку настроек ⚙️, чтобы выбрать API Provider.
- Выберите AWS Bedrock в качестве API Provider:
- В выпадающем списке API Provider выберите AWS Bedrock.
- Введите ваши учетные данные AWS:
- Введите ваши Access Key и Secret Key (или используйте временные учетные данные, если используете AWS SSO).
- Укажите правильный AWS Region (например,
us-east-1или одобренный вашей организацией регион).
- Выберите модель:
- Выберите on-demand модель (например, anthropic.claude-3-5-sonnet-20241022-v2:0).
- Сохраните и протестируйте:
- Нажмите Done/Save, чтобы применить настройки.
- Проверьте интеграцию, отправив простой запрос (например, "Generate a Python function to check if a number is prime.").
Step 4: Security, Monitoring, and Best Practices
- Безопасный доступ:
- Отдавайте предпочтение AWS SSO/федерированным ролям вместо долгосрочных учетных данных IAM.
- AWS IAM Best Practices
- Сетевая безопасность:
- Рассмотрите возможность настройки AWS PrivateLink для безопасного подключения к Bedrock.
- Мониторинг и логирование:
- Включите AWS CloudTrail для логирования вызовов API Bedrock.
- Используйте CloudWatch для мониторинга метрик, таких как количество вызовов, задержка и использование токенов.
- Настройте алерты для обнаружения аномальной активности.
- Обработка ошибок и управление затратами:
- Реализуйте экспоненциальную задержку (exponential backoff) для обработки ошибок превышения лимитов (throttling).
- Используйте AWS Cost Explorer и настройте оповещения о счетах для отслеживания расходов.
AWS Cost Management
- Регулярный аудит и комплаенс:
- Периодически пересматривайте IAM-роли и логи CloudTrail.
- Следуйте внутренним политикам конфиденциальности данных и корпоративного управления.
Conclusion
Следуя этим шагам, ваша корпоративная команда сможет безопасно интегрировать AWS Bedrock с расширением Careti для VS Code для ускорения разработки:
- Подготовка среды AWS: Создайте или используйте безопасную IAM-роль/пользователя, прикрепите политику
AmazonBedrockLimitedAccessи обеспечьте необходимые разрешения. - Проверка региона и доступа к моделям: Подтвердите, что выбранный регион поддерживает нужные модели, и оформите подписку через AWS Marketplace, если это необходимо.
- Настройка Careti в VS Code: Установите и настройте Careti, используя ваши учетные данные AWS, и выберите подходящую модель.
- Внедрение безопасности и мониторинга: Используйте лучшие практики IAM, сетевой безопасности, мониторинга и управления затратами.
Для получения более подробной информации обратитесь к документации AWS Bedrock и координируйте действия со своей внутренней облачной командой. Приятной работы!
Это руководство будет обновляться по мере развития AWS Bedrock и Careti. Всегда обращайтесь к актуальной документации и внутренним политикам для получения свежей информации.