翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
次のコード例は、 AWS Software Development Kit (SDK) で Amazon Bedrock を使用する方法を示しています。
アクションはより大きなプログラムからのコードの抜粋であり、コンテキスト内で実行する必要があります。アクションは個々のサービス機能を呼び出す方法を示していますが、コンテキスト内のアクションは、関連するシナリオで確認できます。
「シナリオ」は、1 つのサービス内から、または他の AWS のサービスと組み合わせて複数の関数を呼び出し、特定のタスクを実行する方法を示すコード例です。
AWS SDK 開発者ガイドとコード例の完全なリストについては、「」を参照してくださいAWS SDK での Amazon Bedrock の使用。このトピックには、使用開始方法に関する情報と、以前の SDK バージョンの詳細も含まれています。
開始方法
次のコード例は、Amazon Bedrock の使用を開始する方法を示しています。
- .NET
-
- SDK for .NET
-
注記
GitHub には、その他のリソースもあります。AWS コード例リポジトリ
で全く同じ例を見つけて、設定と実行の方法を確認してください。 using Amazon; using Amazon.Bedrock; using Amazon.Bedrock.Model; namespace ListFoundationModelsExample { /// <summary> /// This example shows how to list foundation models. /// </summary> internal class HelloBedrock { /// <summary> /// Main method to call the ListFoundationModelsAsync method. /// </summary> /// <param name="args"> The command line arguments. </param> static async Task Main(string[] args) { // Specify a region endpoint where Amazon Bedrock is available. For a list of supported region see https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-bedrock.html#bedrock-regions AmazonBedrockClient bedrockClient = new(RegionEndpoint.USWest2); await ListFoundationModelsAsync(bedrockClient); } /// <summary> /// List foundation models. /// </summary> /// <param name="bedrockClient"> The Amazon Bedrock client. </param> private static async Task ListFoundationModelsAsync(AmazonBedrockClient bedrockClient) { Console.WriteLine("List foundation models with no filter"); try { ListFoundationModelsResponse response = await bedrockClient.ListFoundationModelsAsync(new ListFoundationModelsRequest() { }); if (response?.HttpStatusCode == System.Net.HttpStatusCode.OK) { foreach (var fm in response.ModelSummaries) { WriteToConsole(fm); } } else { Console.WriteLine("Something wrong happened"); } } catch (AmazonBedrockException e) { Console.WriteLine(e.Message); } } /// <summary> /// Write the foundation model summary to console. /// </summary> /// <param name="foundationModel"> The foundation model summary to write to console. </param> private static void WriteToConsole(FoundationModelSummary foundationModel) { Console.WriteLine($"{foundationModel.ModelId}, Customization: {String.Join(", ", foundationModel.CustomizationsSupported)}, Stream: {foundationModel.ResponseStreamingSupported}, Input: {String.Join(", ", foundationModel.InputModalities)}, Output: {String.Join(", ", foundationModel.OutputModalities)}"); } } }
-
API の詳細については、「AWS SDK for .NET API リファレンス」の「ListFoundationModels」を参照してください。
-
- Go
-
- SDK for Go V2
-
注記
GitHub には、その他のリソースもあります。AWS コード例リポジトリ
で全く同じ例を見つけて、設定と実行の方法を確認してください。 package main import ( "context" "fmt" "github.com/aws/aws-sdk-go-v2/config" "github.com/aws/aws-sdk-go-v2/service/bedrock" ) const region = "us-east-1" // main uses the AWS SDK for Go (v2) to create an Amazon Bedrock client and // list the available foundation models in your account and the chosen region. // This example uses the default settings specified in your shared credentials // and config files. func main() { ctx := context.Background() sdkConfig, err := config.LoadDefaultConfig(ctx, config.WithRegion(region)) if err != nil { fmt.Println("Couldn't load default configuration. Have you set up your AWS account?") fmt.Println(err) return } bedrockClient := bedrock.NewFromConfig(sdkConfig) result, err := bedrockClient.ListFoundationModels(ctx, &bedrock.ListFoundationModelsInput{}) if err != nil { fmt.Printf("Couldn't list foundation models. Here's why: %v\n", err) return } if len(result.ModelSummaries) == 0 { fmt.Println("There are no foundation models.") } for _, modelSummary := range result.ModelSummaries { fmt.Println(*modelSummary.ModelId) } }
-
API の詳細については、「AWS SDK for Go API リファレンス」の「ListFoundationModels
」を参照してください。
-
- JavaScript
-
- SDK for JavaScript (v3)
-
注記
GitHub には、その他のリソースもあります。AWS コード例リポジトリ
で全く同じ例を見つけて、設定と実行の方法を確認してください。 import { fileURLToPath } from "node:url"; import { BedrockClient, ListFoundationModelsCommand, } from "@aws-sdk/client-bedrock"; const REGION = "us-east-1"; const client = new BedrockClient({ region: REGION }); export const main = async () => { const command = new ListFoundationModelsCommand({}); const response = await client.send(command); const models = response.modelSummaries; console.log("Listing the available Bedrock foundation models:"); for (const model of models) { console.log("=".repeat(42)); console.log(` Model: ${model.modelId}`); console.log("-".repeat(42)); console.log(` Name: ${model.modelName}`); console.log(` Provider: ${model.providerName}`); console.log(` Model ARN: ${model.modelArn}`); console.log(` Input modalities: ${model.inputModalities}`); console.log(` Output modalities: ${model.outputModalities}`); console.log(` Supported customizations: ${model.customizationsSupported}`); console.log(` Supported inference types: ${model.inferenceTypesSupported}`); console.log(` Lifecycle status: ${model.modelLifecycle.status}`); console.log(`${"=".repeat(42)}\n`); } const active = models.filter( (m) => m.modelLifecycle.status === "ACTIVE", ).length; const legacy = models.filter( (m) => m.modelLifecycle.status === "LEGACY", ).length; console.log( `There are ${active} active and ${legacy} legacy foundation models in ${REGION}.`, ); return response; }; // Invoke main function if this file was run directly. if (process.argv[1] === fileURLToPath(import.meta.url)) { await main(); }
-
API の詳細については、「AWS SDK for JavaScript API リファレンス」の「ListFoundationModels」を参照してください。
-
- Python
-
- 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 の詳細については、AWS SDK for Python (Boto3) API リファレンスの「ListFoundationModels」を参照してください。
-
- Swift
-
- SDK for Swift
-
注記
GitHub には、その他のリソースもあります。AWS コード例リポジトリ
で全く同じ例を見つけて、設定と実行の方法を確認してください。 import ArgumentParser import AWSClientRuntime import Foundation import AWSBedrock struct ExampleCommand: ParsableCommand { static var configuration = CommandConfiguration( commandName: "ListFoundationModels", abstract: """ This example demonstrates how to retrieve a list of the available foundation models from Amazon Bedrock. """, discussion: """ """ ) /// Construct a string listing the specified modalities. /// /// - Parameter modalities: An array of the modalities to list. /// /// - Returns: A string with a human-readable list of modalities. func buildModalityList(modalities: [BedrockClientTypes.ModelModality]?) -> String { var first = true var str = "" if modalities == nil { return "<none>" } for modality in modalities! { if !first { str += ", " } first = false str += modality.rawValue } return str } /// Construct a string listing the specified customizations. /// /// - Parameter customizations: An array of the customizations to list. /// /// - Returns: A string listing the customizations. func buildCustomizationList(customizations: [BedrockClientTypes.ModelCustomization]?) -> String { var first = true var str = "" if customizations == nil { return "<none>" } for customization in customizations! { if !first { str += ", " } first = false str += customization.rawValue } return str } /// Construct a string listing the specified inferences. /// /// - Parameter inferences: An array of inferences to list. /// /// - Returns: A string listing the specified inferences. func buildInferenceList(inferences: [BedrockClientTypes.InferenceType]?) -> String { var first = true var str = "" if inferences == nil { return "<none>" } for inference in inferences! { if !first { str += ", " } first = false str += inference.rawValue } return str } /// Called by ``main()`` to run the bulk of the example. func runAsync() async throws { // Always use the Region "us-east-1" to have access to the most models. let config = try await BedrockClient.BedrockClientConfiguration(region: "us-east-1") let bedrockClient = BedrockClient(config: config) let output = try await bedrockClient.listFoundationModels( input: ListFoundationModelsInput() ) guard let summaries = output.modelSummaries else { print("No models returned.") return } // Output a list of the models with their details. for summary in summaries { print("==========================================") print(" Model ID: \(summary.modelId ?? "<unknown>")") print("------------------------------------------") print(" Name: \(summary.modelName ?? "<unknown>")") print(" Provider: \(summary.providerName ?? "<unknown>")") print(" Input modalities: \(buildModalityList(modalities: summary.inputModalities))") print(" Output modalities: \(buildModalityList(modalities: summary.outputModalities))") print(" Supported customizations: \(buildCustomizationList(customizations: summary.customizationsSupported ))") print(" Supported inference types: \(buildInferenceList(inferences: summary.inferenceTypesSupported))") print("------------------------------------------\n") } print("\(summaries.count) models available.") } } /// The program's asynchronous entry point. @main struct Main { static func main() async { let args = Array(CommandLine.arguments.dropFirst()) do { let command = try ExampleCommand.parse(args) try await command.runAsync() } catch { ExampleCommand.exit(withError: error) } } }
-
API の詳細については、 AWS SDK for Swift API リファレンスのListFoundationModels
」を参照してください。
-
Hello Amazon Bedrock
次のコード例は、Amazon Bedrock の使用を開始する方法を示しています。
- .NET
-
- SDK for .NET
-
注記
GitHub には、その他のリソースもあります。AWS コード例リポジトリ
で全く同じ例を見つけて、設定と実行の方法を確認してください。 using Amazon; using Amazon.Bedrock; using Amazon.Bedrock.Model; namespace ListFoundationModelsExample { /// <summary> /// This example shows how to list foundation models. /// </summary> internal class HelloBedrock { /// <summary> /// Main method to call the ListFoundationModelsAsync method. /// </summary> /// <param name="args"> The command line arguments. </param> static async Task Main(string[] args) { // Specify a region endpoint where Amazon Bedrock is available. For a list of supported region see https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-bedrock.html#bedrock-regions AmazonBedrockClient bedrockClient = new(RegionEndpoint.USWest2); await ListFoundationModelsAsync(bedrockClient); } /// <summary> /// List foundation models. /// </summary> /// <param name="bedrockClient"> The Amazon Bedrock client. </param> private static async Task ListFoundationModelsAsync(AmazonBedrockClient bedrockClient) { Console.WriteLine("List foundation models with no filter"); try { ListFoundationModelsResponse response = await bedrockClient.ListFoundationModelsAsync(new ListFoundationModelsRequest() { }); if (response?.HttpStatusCode == System.Net.HttpStatusCode.OK) { foreach (var fm in response.ModelSummaries) { WriteToConsole(fm); } } else { Console.WriteLine("Something wrong happened"); } } catch (AmazonBedrockException e) { Console.WriteLine(e.Message); } } /// <summary> /// Write the foundation model summary to console. /// </summary> /// <param name="foundationModel"> The foundation model summary to write to console. </param> private static void WriteToConsole(FoundationModelSummary foundationModel) { Console.WriteLine($"{foundationModel.ModelId}, Customization: {String.Join(", ", foundationModel.CustomizationsSupported)}, Stream: {foundationModel.ResponseStreamingSupported}, Input: {String.Join(", ", foundationModel.InputModalities)}, Output: {String.Join(", ", foundationModel.OutputModalities)}"); } } }
-
API の詳細については、「AWS SDK for .NET API リファレンス」の「ListFoundationModels」を参照してください。
-
- Go
-
- SDK for Go V2
-
注記
GitHub には、その他のリソースもあります。AWS コード例リポジトリ
で全く同じ例を見つけて、設定と実行の方法を確認してください。 package main import ( "context" "fmt" "github.com/aws/aws-sdk-go-v2/config" "github.com/aws/aws-sdk-go-v2/service/bedrock" ) const region = "us-east-1" // main uses the AWS SDK for Go (v2) to create an Amazon Bedrock client and // list the available foundation models in your account and the chosen region. // This example uses the default settings specified in your shared credentials // and config files. func main() { ctx := context.Background() sdkConfig, err := config.LoadDefaultConfig(ctx, config.WithRegion(region)) if err != nil { fmt.Println("Couldn't load default configuration. Have you set up your AWS account?") fmt.Println(err) return } bedrockClient := bedrock.NewFromConfig(sdkConfig) result, err := bedrockClient.ListFoundationModels(ctx, &bedrock.ListFoundationModelsInput{}) if err != nil { fmt.Printf("Couldn't list foundation models. Here's why: %v\n", err) return } if len(result.ModelSummaries) == 0 { fmt.Println("There are no foundation models.") } for _, modelSummary := range result.ModelSummaries { fmt.Println(*modelSummary.ModelId) } }
-
API の詳細については、「AWS SDK for Go API リファレンス」の「ListFoundationModels
」を参照してください。
-
- JavaScript
-
- SDK for JavaScript (v3)
-
注記
GitHub には、その他のリソースもあります。AWS コード例リポジトリ
で全く同じ例を見つけて、設定と実行の方法を確認してください。 import { fileURLToPath } from "node:url"; import { BedrockClient, ListFoundationModelsCommand, } from "@aws-sdk/client-bedrock"; const REGION = "us-east-1"; const client = new BedrockClient({ region: REGION }); export const main = async () => { const command = new ListFoundationModelsCommand({}); const response = await client.send(command); const models = response.modelSummaries; console.log("Listing the available Bedrock foundation models:"); for (const model of models) { console.log("=".repeat(42)); console.log(` Model: ${model.modelId}`); console.log("-".repeat(42)); console.log(` Name: ${model.modelName}`); console.log(` Provider: ${model.providerName}`); console.log(` Model ARN: ${model.modelArn}`); console.log(` Input modalities: ${model.inputModalities}`); console.log(` Output modalities: ${model.outputModalities}`); console.log(` Supported customizations: ${model.customizationsSupported}`); console.log(` Supported inference types: ${model.inferenceTypesSupported}`); console.log(` Lifecycle status: ${model.modelLifecycle.status}`); console.log(`${"=".repeat(42)}\n`); } const active = models.filter( (m) => m.modelLifecycle.status === "ACTIVE", ).length; const legacy = models.filter( (m) => m.modelLifecycle.status === "LEGACY", ).length; console.log( `There are ${active} active and ${legacy} legacy foundation models in ${REGION}.`, ); return response; }; // Invoke main function if this file was run directly. if (process.argv[1] === fileURLToPath(import.meta.url)) { await main(); }
-
API の詳細については、「AWS SDK for JavaScript API リファレンス」の「ListFoundationModels」を参照してください。
-
- Python
-
- 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 の詳細については、AWS SDK for Python (Boto3) API リファレンスの「ListFoundationModels」を参照してください。
-
- Swift
-
- SDK for Swift
-
注記
GitHub には、その他のリソースもあります。AWS コード例リポジトリ
で全く同じ例を見つけて、設定と実行の方法を確認してください。 import ArgumentParser import AWSClientRuntime import Foundation import AWSBedrock struct ExampleCommand: ParsableCommand { static var configuration = CommandConfiguration( commandName: "ListFoundationModels", abstract: """ This example demonstrates how to retrieve a list of the available foundation models from Amazon Bedrock. """, discussion: """ """ ) /// Construct a string listing the specified modalities. /// /// - Parameter modalities: An array of the modalities to list. /// /// - Returns: A string with a human-readable list of modalities. func buildModalityList(modalities: [BedrockClientTypes.ModelModality]?) -> String { var first = true var str = "" if modalities == nil { return "<none>" } for modality in modalities! { if !first { str += ", " } first = false str += modality.rawValue } return str } /// Construct a string listing the specified customizations. /// /// - Parameter customizations: An array of the customizations to list. /// /// - Returns: A string listing the customizations. func buildCustomizationList(customizations: [BedrockClientTypes.ModelCustomization]?) -> String { var first = true var str = "" if customizations == nil { return "<none>" } for customization in customizations! { if !first { str += ", " } first = false str += customization.rawValue } return str } /// Construct a string listing the specified inferences. /// /// - Parameter inferences: An array of inferences to list. /// /// - Returns: A string listing the specified inferences. func buildInferenceList(inferences: [BedrockClientTypes.InferenceType]?) -> String { var first = true var str = "" if inferences == nil { return "<none>" } for inference in inferences! { if !first { str += ", " } first = false str += inference.rawValue } return str } /// Called by ``main()`` to run the bulk of the example. func runAsync() async throws { // Always use the Region "us-east-1" to have access to the most models. let config = try await BedrockClient.BedrockClientConfiguration(region: "us-east-1") let bedrockClient = BedrockClient(config: config) let output = try await bedrockClient.listFoundationModels( input: ListFoundationModelsInput() ) guard let summaries = output.modelSummaries else { print("No models returned.") return } // Output a list of the models with their details. for summary in summaries { print("==========================================") print(" Model ID: \(summary.modelId ?? "<unknown>")") print("------------------------------------------") print(" Name: \(summary.modelName ?? "<unknown>")") print(" Provider: \(summary.providerName ?? "<unknown>")") print(" Input modalities: \(buildModalityList(modalities: summary.inputModalities))") print(" Output modalities: \(buildModalityList(modalities: summary.outputModalities))") print(" Supported customizations: \(buildCustomizationList(customizations: summary.customizationsSupported ))") print(" Supported inference types: \(buildInferenceList(inferences: summary.inferenceTypesSupported))") print("------------------------------------------\n") } print("\(summaries.count) models available.") } } /// The program's asynchronous entry point. @main struct Main { static func main() async { let args = Array(CommandLine.arguments.dropFirst()) do { let command = try ExampleCommand.parse(args) try await command.runAsync() } catch { ExampleCommand.exit(withError: error) } } }
-
API の詳細については、 AWS SDK for Swift API リファレンスのListFoundationModels
」を参照してください。
-
- SDK for .NET
-
注記
GitHub には、その他のリソースもあります。AWS コード例リポジトリ
で全く同じ例を見つけて、設定と実行の方法を確認してください。 using Amazon; using Amazon.Bedrock; using Amazon.Bedrock.Model; namespace ListFoundationModelsExample { /// <summary> /// This example shows how to list foundation models. /// </summary> internal class HelloBedrock { /// <summary> /// Main method to call the ListFoundationModelsAsync method. /// </summary> /// <param name="args"> The command line arguments. </param> static async Task Main(string[] args) { // Specify a region endpoint where Amazon Bedrock is available. For a list of supported region see https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-bedrock.html#bedrock-regions AmazonBedrockClient bedrockClient = new(RegionEndpoint.USWest2); await ListFoundationModelsAsync(bedrockClient); } /// <summary> /// List foundation models. /// </summary> /// <param name="bedrockClient"> The Amazon Bedrock client. </param> private static async Task ListFoundationModelsAsync(AmazonBedrockClient bedrockClient) { Console.WriteLine("List foundation models with no filter"); try { ListFoundationModelsResponse response = await bedrockClient.ListFoundationModelsAsync(new ListFoundationModelsRequest() { }); if (response?.HttpStatusCode == System.Net.HttpStatusCode.OK) { foreach (var fm in response.ModelSummaries) { WriteToConsole(fm); } } else { Console.WriteLine("Something wrong happened"); } } catch (AmazonBedrockException e) { Console.WriteLine(e.Message); } } /// <summary> /// Write the foundation model summary to console. /// </summary> /// <param name="foundationModel"> The foundation model summary to write to console. </param> private static void WriteToConsole(FoundationModelSummary foundationModel) { Console.WriteLine($"{foundationModel.ModelId}, Customization: {String.Join(", ", foundationModel.CustomizationsSupported)}, Stream: {foundationModel.ResponseStreamingSupported}, Input: {String.Join(", ", foundationModel.InputModalities)}, Output: {String.Join(", ", foundationModel.OutputModalities)}"); } } }
-
API の詳細については、「AWS SDK for .NET API リファレンス」の「ListFoundationModels」を参照してください。
-