Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Ejemplos de código para Amazon Bedrock con SDK AWS
Los siguientes ejemplos de código muestran cómo usar Amazon Bedrock con un kit de desarrollo de AWS software (SDK).
Las acciones son extractos de código de programas más grandes y deben ejecutarse en contexto. Mientras las acciones muestran cómo llamar a las funciones de servicio individuales, es posible ver las acciones en contexto en los escenarios relacionados y en los ejemplos entre servicios.
Los escenarios son ejemplos de código que muestran cómo llevar a cabo una tarea específica llamando a varias funciones dentro del mismo servicio.
Para obtener una lista completa de guías para desarrolladores del AWS SDK y ejemplos de código, consulteUso de este servicio con un AWS SDK. En este tema también se incluye información sobre cómo comenzar a utilizar el SDK y detalles sobre sus versiones anteriores.
Introducción
En los siguientes ejemplos de código se muestra cómo empezar a utilizar Amazon Bedrock.
- .NET
-
- AWS SDK for .NET
-
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)}");
}
}
}
- Go
-
- SDK para Go V2
-
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() {
sdkConfig, err := config.LoadDefaultConfig(context.TODO(), 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(context.TODO(), &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)
}
}
- JavaScript
-
- SDK para JavaScript (v3)
-
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
// SPDX-License-Identifier: Apache-2.0
import { fileURLToPath } from "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 (let 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();
}