

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 开始使用 Amazon Bedrock API 密钥：生成 30 天密钥并发出第一个 API 调用
<a name="getting-started-api-keys"></a>

本教程将引导您创建一个有效期为 30 天的长期 Amazon Bedrock API 密钥，并使用它通过 Python 发出简单的 [Converse](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_Converse.html) API 调用。这是无需设置复杂 AWS 凭证即可开始试用 Amazon Bedrock 的最快方法。

**警告**  
建议仅在 Amazon Bedrock 的探索和开发阶段使用长期 API 密钥。对于生产应用程序，请使用[长期访问密钥的替代方案](https://docs.aws.amazon.com/IAM/latest/UserGuide/security-creds-programmatic-access.html#security-creds-alternatives-to-long-term-access-keys)，例如 IAM 角色或临时凭证。

按照以下步骤创建长期 Amazon Bedrock API 密钥，该密钥将在 30 天后过期：

1. 使用有权使用 Amazon Bedrock 控制台的 IAM 身份登录。 AWS 管理控制台 然后，在 [https://console.aws.amazon.com/](https://console.aws.amazon.com/bedrock)bedrock 上打开 Amazon Bedrock 控制台。

1. 在左侧导航窗格中，选择 **API 密钥**。

1. 在**长期 API 密钥**选项卡中，选择**生成长期 API 密钥**。

1. 在 **API 密钥到期**部分中，选择 **30 天**。

1. 选择**生成**。您生成的密钥提供执行核心 Amazon Bedrock 操作的权限，如所附[AmazonBedrockLimitedAccess](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonBedrockLimitedAccess)策略所定义。

1. 复制生成的 API 密钥并妥善存储。在下一个步骤中，您需要用到该密钥。
**重要**  
API 密钥仅显示一次。在关闭对话框之前，请务必复制并保存密钥。请记住，您的 API 密钥将在 30 天后过期。您可以按照相同的步骤生成一个新的密钥，或者考虑在持续使用中改为采用更安全的身份验证方法。

1. 将 API 密钥设置为环境变量，方法是将其*\$1\$1api-key\$1*替换为生成的 API 密钥值，然后使用它以您选择的方法生成响应：

------
#### [ Python ]

   ```
   import boto3
   import os
   
   # Set the API key as an environment variable
   os.environ['AWS_BEARER_TOKEN_BEDROCK'] = "${api-key}"
   
   # Create the Bedrock client
   client = boto3.client(
       service_name="bedrock-runtime",
       region_name="us-east-1"
   )
   
   # Define the model and message
   model_id = "us.anthropic.claude-3-5-haiku-20241022-v1:0"
   messages = [{"role": "user", "content": [{"text": "Hello! Can you tell me about Amazon Bedrock?"}]}]
   
   # Make the API call
   response = client.converse(
       modelId=model_id,
       messages=messages,
   )
   
   # Print the response
   print(response['output']['message']['content'][0]['text'])
   ```

------
#### [ HTTP client using Python ]

   ```
   import requests
   
   url = "https://bedrock-runtime.us-east-1.amazonaws.com/model/us.anthropic.claude-3-5-haiku-20241022-v1:0/converse"
   
   payload = {
       "messages": [
           {
               "role": "user",
               "content": [{"text": "Hello"}]
           }
       ]
   }
   
   headers = {
       "Content-Type": "application/json",
       "Authorization": "Bearer ${api-key}"
   }
   
   response = requests.request("POST", url, json=payload, headers=headers)
   
   print(response.text)
   ```

------
#### [ HTTP request using cURL ]

   ```
   curl -X POST "https://bedrock-runtime.us-east-1.amazonaws.com/model/us.anthropic.claude-3-5-haiku-20241022-v1:0/converse" \
     -H "Content-Type: application/json" \
     -H "Authorization: Bearer ${api-key}" \
     -d '{
       "messages": [
           {
               "role": "user",
               "content": [{"text": "Hello"}]
           }
       ]
     }'
   ```

------

恭喜您！您已成功生成了 Amazon Bedrock API 密钥，并首次对 Amazon Bedrock 服务发出了 API 调用。在探索了更多的 Amazon Bedrock 操作之后，您应该过渡到更安全的身份验证方法，例如短期 Amazon Bedrock API 密钥或 AWS全局临时证书。要了解更多信息，请参阅以下资源：
+ **探索其他模型**：在[Amazon Bedrock 基础模型信息](foundation-models-reference.md)中了解 Amazon Bedrock 提供的其他基础模型，并在您的代码中更改 `model_id` 以进行试用。
+ **了解模型推理**：通过在[使用模型推理提交提示并生成响应](inference.md)中阅读有关概念和 Amazon Bedrock 提供的选项的信息，了解如何通过模型推理生成响应。
+ **使用更安全的身份验证方法进行生产规划** — 在 “构建” 章节中详细了解 Amazon Bedrock API 密钥以及如何创建更安全的短期 Amazon Bedrock API 密钥。准备好构建生产应用程序时，还应查看[长期访问密钥的替代方案，以](https://docs.aws.amazon.com/IAM/latest/UserGuide/security-creds-programmatic-access.html#security-creds-alternatives-to-long-term-access-keys)获得更安全的选项，这些选项还允许访问其他 AWS 服务。