文件 AWS 開發套件範例 GitHub 儲存庫中有更多可用的 AWS SDK 範例
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用適用於 Python 的 SDK (Boto3) 的 Amazon Bedrock 範例
下列程式碼範例示範如何使用 AWS SDK for Python (Boto3) 搭配 Amazon Bedrock 來執行動作和實作常見案例。
Actions 是大型程式的程式碼摘錄,必須在內容中執行。雖然動作會告訴您如何呼叫個別服務函數,但您可以在其相關情境中查看內容中的動作。
案例是向您展示如何呼叫服務中的多個函數或與其他 AWS 服務組合來完成特定任務的程式碼範例。
每個範例都包含完整原始程式碼的連結,您可以在其中找到如何在內容中設定和執行程式碼的指示。
開始使用
下列程式碼範例示範如何開始使用 Amazon Bedrock。
- SDK for Python (Boto3)
-
注意
GitHub 上提供更多範例。尋找完整範例,並了解如何在 AWS 程式碼範例儲存庫
中設定和執行。 """ Lists the available Amazon Bedrock models. """ import logging import json import boto3 from botocore.exceptions import ClientError logging.basicConfig(level=logging.INFO) logger = logging.getLogger(__name__) def list_foundation_models(bedrock_client): """ Gets a list of available Amazon Bedrock foundation models. :return: The list of available bedrock foundation models. """ try: response = bedrock_client.list_foundation_models() models = response["modelSummaries"] logger.info("Got %s foundation models.", len(models)) return models except ClientError: logger.error("Couldn't list foundation models.") raise def main(): """Entry point for the example. Uses the AWS SDK for Python (Boto3) to create an Amazon Bedrock client. Then lists the available Bedrock models in the region set in the callers profile and credentials. """ bedrock_client = boto3.client(service_name="bedrock") fm_models = list_foundation_models(bedrock_client) for model in fm_models: print(f"Model: {model['modelName']}") print(json.dumps(model, indent=2)) print("---------------------------\n") logger.info("Done.") if __name__ == "__main__": main()
-
如需 API 詳細資訊,請參閱 SDK AWS for Python (Boto3) API 參考中的 ListFoundationModels。
-
動作
下列程式碼範例示範如何使用 GetFoundationModel
。
- SDK for Python (Boto3)
-
注意
GitHub 上提供更多範例。尋找完整範例,並了解如何在 AWS 程式碼範例儲存庫
中設定和執行。 取得基礎模型的詳細資訊。
def get_foundation_model(self, model_identifier): """ Get details about an Amazon Bedrock foundation model. :return: The foundation model's details. """ try: return self.bedrock_client.get_foundation_model( modelIdentifier=model_identifier )["modelDetails"] except ClientError: logger.error( f"Couldn't get foundation models details for {model_identifier}" ) raise
-
如需 API 詳細資訊,請參閱 SDK AWS for Python (Boto3) API 參考中的 GetFoundationModel。
-
下列程式碼範例示範如何使用 ListFoundationModels
。
- SDK for Python (Boto3)
-
注意
GitHub 上提供更多範例。尋找完整範例,並了解如何在 AWS 程式碼範例儲存庫
中設定和執行。 列出可用的 Amazon Bedrock 基礎模型。
def list_foundation_models(self): """ List the available Amazon Bedrock foundation models. :return: The list of available bedrock foundation models. """ try: response = self.bedrock_client.list_foundation_models() models = response["modelSummaries"] logger.info("Got %s foundation models.", len(models)) return models except ClientError: logger.error("Couldn't list foundation models.") raise
-
如需 API 詳細資訊,請參閱 SDK AWS for Python (Boto3) API 參考中的 ListFoundationModels。
-
案例
下列程式碼範例示範如何使用 Amazon Bedrock 和 Step Functions 建置和協調生成 AI 應用程式。
- SDK for Python (Boto3)
-
Amazon Bedrock Serverless Prompt Chaining 案例示範 AWS Step Functions、Amazon Bedrock 和 如何https://docs.aws.amazon.com/bedrock/latest/userguide/agents.html用於建置和協調複雜、無伺服器和高度可擴展的生成式 AI 應用程式。它包含下列工作範例:
-
撰寫給定小說的文章部落格分析。此範例說明簡單、循序的提示鏈。
-
產生有關指定主題的簡短案例。此範例說明 AI 如何反覆處理先前產生的項目清單。
-
建立前往指定目的地的週末假期行程。此範例說明如何平行處理多個不同的提示。
-
將電影想法貼到擔任電影製作者的人類使用者。此範例說明如何使用不同的推論參數平行處理相同的提示,如何恢復到鏈中的上一個步驟,以及如何將人工輸入包含在工作流程中。
-
根據使用者手頭的成分來規劃餐點。此範例說明提示鏈如何整合兩個不同的 AI 對話,其中兩個 AI 角色彼此進行爭論以改善最終結果。
-
尋找並摘要目前最熱門的 GitHub 儲存庫。此範例說明將多個與外部 APIs AI 代理程式鏈結。
如需設定和執行的完整原始程式碼和說明,請參閱 GitHub
上的完整專案。 此範例中使用的服務
Amazon Bedrock
Amazon Bedrock 執行期
Amazon Bedrock 代理程式
Amazon Bedrock 代理程式執行期
Step Functions
-