github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/bedrockfoundation/getModels.go (about)

     1  // Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
     2  // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
     3  
     4  package bedrockfoundation
     5  
     6  import (
     7  	"context"
     8  	"reflect"
     9  
    10  	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal"
    11  	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    12  )
    13  
    14  // Data source for managing AWS Bedrock Foundation Models.
    15  //
    16  // ## Example Usage
    17  //
    18  // ### Basic Usage
    19  //
    20  // <!--Start PulumiCodeChooser -->
    21  // ```go
    22  // package main
    23  //
    24  // import (
    25  //
    26  //	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/bedrockfoundation"
    27  //	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    28  //
    29  // )
    30  //
    31  //	func main() {
    32  //		pulumi.Run(func(ctx *pulumi.Context) error {
    33  //			_, err := bedrockfoundation.GetModels(ctx, nil, nil)
    34  //			if err != nil {
    35  //				return err
    36  //			}
    37  //			return nil
    38  //		})
    39  //	}
    40  //
    41  // ```
    42  // <!--End PulumiCodeChooser -->
    43  //
    44  // ### Filter by Inference Type
    45  //
    46  // <!--Start PulumiCodeChooser -->
    47  // ```go
    48  // package main
    49  //
    50  // import (
    51  //
    52  //	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/bedrockfoundation"
    53  //	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    54  //
    55  // )
    56  //
    57  //	func main() {
    58  //		pulumi.Run(func(ctx *pulumi.Context) error {
    59  //			_, err := bedrockfoundation.GetModels(ctx, &bedrockfoundation.GetModelsArgs{
    60  //				ByInferenceType: pulumi.StringRef("ON_DEMAND"),
    61  //			}, nil)
    62  //			if err != nil {
    63  //				return err
    64  //			}
    65  //			return nil
    66  //		})
    67  //	}
    68  //
    69  // ```
    70  // <!--End PulumiCodeChooser -->
    71  func GetModels(ctx *pulumi.Context, args *GetModelsArgs, opts ...pulumi.InvokeOption) (*GetModelsResult, error) {
    72  	opts = internal.PkgInvokeDefaultOpts(opts)
    73  	var rv GetModelsResult
    74  	err := ctx.Invoke("aws:bedrockfoundation/getModels:getModels", args, &rv, opts...)
    75  	if err != nil {
    76  		return nil, err
    77  	}
    78  	return &rv, nil
    79  }
    80  
    81  // A collection of arguments for invoking getModels.
    82  type GetModelsArgs struct {
    83  	// Customization type to filter on. Valid values are `FINE_TUNING`.
    84  	ByCustomizationType *string `pulumi:"byCustomizationType"`
    85  	// Inference type to filter on. Valid values are `ON_DEMAND` and `PROVISIONED`.
    86  	ByInferenceType *string `pulumi:"byInferenceType"`
    87  	// Output modality to filter on. Valid values are `TEXT`, `IMAGE`, and `EMBEDDING`.
    88  	ByOutputModality *string `pulumi:"byOutputModality"`
    89  	// Model provider to filter on.
    90  	ByProvider *string `pulumi:"byProvider"`
    91  }
    92  
    93  // A collection of values returned by getModels.
    94  type GetModelsResult struct {
    95  	ByCustomizationType *string `pulumi:"byCustomizationType"`
    96  	ByInferenceType     *string `pulumi:"byInferenceType"`
    97  	ByOutputModality    *string `pulumi:"byOutputModality"`
    98  	ByProvider          *string `pulumi:"byProvider"`
    99  	// AWS region.
   100  	Id string `pulumi:"id"`
   101  	// List of model summary objects. See `modelSummaries`.
   102  	ModelSummaries []GetModelsModelSummary `pulumi:"modelSummaries"`
   103  }
   104  
   105  func GetModelsOutput(ctx *pulumi.Context, args GetModelsOutputArgs, opts ...pulumi.InvokeOption) GetModelsResultOutput {
   106  	return pulumi.ToOutputWithContext(context.Background(), args).
   107  		ApplyT(func(v interface{}) (GetModelsResult, error) {
   108  			args := v.(GetModelsArgs)
   109  			r, err := GetModels(ctx, &args, opts...)
   110  			var s GetModelsResult
   111  			if r != nil {
   112  				s = *r
   113  			}
   114  			return s, err
   115  		}).(GetModelsResultOutput)
   116  }
   117  
   118  // A collection of arguments for invoking getModels.
   119  type GetModelsOutputArgs struct {
   120  	// Customization type to filter on. Valid values are `FINE_TUNING`.
   121  	ByCustomizationType pulumi.StringPtrInput `pulumi:"byCustomizationType"`
   122  	// Inference type to filter on. Valid values are `ON_DEMAND` and `PROVISIONED`.
   123  	ByInferenceType pulumi.StringPtrInput `pulumi:"byInferenceType"`
   124  	// Output modality to filter on. Valid values are `TEXT`, `IMAGE`, and `EMBEDDING`.
   125  	ByOutputModality pulumi.StringPtrInput `pulumi:"byOutputModality"`
   126  	// Model provider to filter on.
   127  	ByProvider pulumi.StringPtrInput `pulumi:"byProvider"`
   128  }
   129  
   130  func (GetModelsOutputArgs) ElementType() reflect.Type {
   131  	return reflect.TypeOf((*GetModelsArgs)(nil)).Elem()
   132  }
   133  
   134  // A collection of values returned by getModels.
   135  type GetModelsResultOutput struct{ *pulumi.OutputState }
   136  
   137  func (GetModelsResultOutput) ElementType() reflect.Type {
   138  	return reflect.TypeOf((*GetModelsResult)(nil)).Elem()
   139  }
   140  
   141  func (o GetModelsResultOutput) ToGetModelsResultOutput() GetModelsResultOutput {
   142  	return o
   143  }
   144  
   145  func (o GetModelsResultOutput) ToGetModelsResultOutputWithContext(ctx context.Context) GetModelsResultOutput {
   146  	return o
   147  }
   148  
   149  func (o GetModelsResultOutput) ByCustomizationType() pulumi.StringPtrOutput {
   150  	return o.ApplyT(func(v GetModelsResult) *string { return v.ByCustomizationType }).(pulumi.StringPtrOutput)
   151  }
   152  
   153  func (o GetModelsResultOutput) ByInferenceType() pulumi.StringPtrOutput {
   154  	return o.ApplyT(func(v GetModelsResult) *string { return v.ByInferenceType }).(pulumi.StringPtrOutput)
   155  }
   156  
   157  func (o GetModelsResultOutput) ByOutputModality() pulumi.StringPtrOutput {
   158  	return o.ApplyT(func(v GetModelsResult) *string { return v.ByOutputModality }).(pulumi.StringPtrOutput)
   159  }
   160  
   161  func (o GetModelsResultOutput) ByProvider() pulumi.StringPtrOutput {
   162  	return o.ApplyT(func(v GetModelsResult) *string { return v.ByProvider }).(pulumi.StringPtrOutput)
   163  }
   164  
   165  // AWS region.
   166  func (o GetModelsResultOutput) Id() pulumi.StringOutput {
   167  	return o.ApplyT(func(v GetModelsResult) string { return v.Id }).(pulumi.StringOutput)
   168  }
   169  
   170  // List of model summary objects. See `modelSummaries`.
   171  func (o GetModelsResultOutput) ModelSummaries() GetModelsModelSummaryArrayOutput {
   172  	return o.ApplyT(func(v GetModelsResult) []GetModelsModelSummary { return v.ModelSummaries }).(GetModelsModelSummaryArrayOutput)
   173  }
   174  
   175  func init() {
   176  	pulumi.RegisterOutputType(GetModelsResultOutput{})
   177  }