import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Manages an Amazon Bedrock evaluation job. An evaluation job assesses model or knowledge base performance using either automated metrics or human workers. * * > Amazon Bedrock does not support permanently deleting an evaluation job. Destroying this resource stops the job (if it is still running) using the [StopEvaluationJob](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_StopEvaluationJob.html) API, then removes it from Terraform state. Set `skipDestroy` to leave the job in its current state instead. * * ## Example Usage * * ### Automated Model Evaluation * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const example = new aws.bedrock.EvaluationJob("example", { * evaluationConfig: { * automated: { * datasetMetricConfigs: [{ * dataset: { * name: "Builtin.Bold", * }, * taskType: "Generation", * metricNames: ["Builtin.Robustness"], * }], * }, * }, * inferenceConfig: { * models: [{ * bedrockModel: { * modelIdentifier: "amazon.nova-micro-v1:0", * }, * }], * }, * outputDataConfig: { * s3Uri: `s3://${exampleAwsS3Bucket.id}/output/`, * }, * jobName: "example-job", * roleArn: exampleAwsIamRole.arn, * }); * ``` * * ## Import * * ### Identity Schema * * #### Required * * - `jobArn` (String) ARN of the evaluation job. * * Using `pulumi import`, import Bedrock Evaluation Job using the `jobArn`. For example: * * ```sh * $ pulumi import aws:bedrock/evaluationJob:EvaluationJob example arn:aws:bedrock:us-west-2:123456789012:evaluation-job/abcdefgh1234 * ``` */ export declare class EvaluationJob extends pulumi.CustomResource { /** * Get an existing EvaluationJob resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: EvaluationJobState, opts?: pulumi.CustomResourceOptions): EvaluationJob; /** * Returns true if the given object is an instance of EvaluationJob. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is EvaluationJob; /** * Whether the evaluation job evaluates a model or a knowledge base. Valid values: `ModelEvaluation`, `RagEvaluation`. */ readonly applicationType: pulumi.Output; /** * Date and time the evaluation job was created. */ readonly createdAt: pulumi.Output; /** * ARN of the customer managed KMS key to use to encrypt the evaluation job. */ readonly customerEncryptionKeyId: pulumi.Output; /** * Configuration for either an automated or human-based evaluation job. See `evaluationConfig` Block below. */ readonly evaluationConfig: pulumi.Output; /** * List of reasons the evaluation job failed to create, if applicable. */ readonly failureMessages: pulumi.Output; /** * Configuration for the inference model, or models, used for the evaluation job. See `inferenceConfig` Block below. */ readonly inferenceConfig: pulumi.Output; /** * ARN of the evaluation job. */ readonly jobArn: pulumi.Output; /** * Description of the evaluation job. */ readonly jobDescription: pulumi.Output; /** * Name for the evaluation job. Must be unique within your AWS account and Region, and consist of lowercase letters, numbers, and hyphens. */ readonly jobName: pulumi.Output; /** * Whether the evaluation job is automated or human-based. */ readonly jobType: pulumi.Output; /** * Date and time the evaluation job was last modified. */ readonly lastModifiedTime: pulumi.Output; /** * Configuration for the Amazon S3 location where the results of the evaluation job are stored. See `outputDataConfig` Block below. */ readonly outputDataConfig: pulumi.Output; /** * Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration. */ readonly region: pulumi.Output; /** * ARN of an IAM service role that Amazon Bedrock can assume to perform tasks on your behalf. See [Required permissions for model evaluations](https://docs.aws.amazon.com/bedrock/latest/userguide/model-evaluation-security.html). * * The following arguments are optional: */ readonly roleArn: pulumi.Output; /** * Whether to leave the evaluation job in its current state when destroying the resource, instead of stopping it. */ readonly skipDestroy: pulumi.Output; /** * Current status of the evaluation job. */ readonly status: pulumi.Output; /** * Map of tags to assign to the evaluation job. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. */ readonly tags: pulumi.Output<{ [key: string]: string; } | undefined>; readonly tagsAll: pulumi.Output<{ [key: string]: string; }>; readonly timeouts: pulumi.Output; /** * Create a EvaluationJob resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: EvaluationJobArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering EvaluationJob resources. */ export interface EvaluationJobState { /** * Whether the evaluation job evaluates a model or a knowledge base. Valid values: `ModelEvaluation`, `RagEvaluation`. */ applicationType?: pulumi.Input; /** * Date and time the evaluation job was created. */ createdAt?: pulumi.Input; /** * ARN of the customer managed KMS key to use to encrypt the evaluation job. */ customerEncryptionKeyId?: pulumi.Input; /** * Configuration for either an automated or human-based evaluation job. See `evaluationConfig` Block below. */ evaluationConfig?: pulumi.Input; /** * List of reasons the evaluation job failed to create, if applicable. */ failureMessages?: pulumi.Input[] | undefined>; /** * Configuration for the inference model, or models, used for the evaluation job. See `inferenceConfig` Block below. */ inferenceConfig?: pulumi.Input; /** * ARN of the evaluation job. */ jobArn?: pulumi.Input; /** * Description of the evaluation job. */ jobDescription?: pulumi.Input; /** * Name for the evaluation job. Must be unique within your AWS account and Region, and consist of lowercase letters, numbers, and hyphens. */ jobName?: pulumi.Input; /** * Whether the evaluation job is automated or human-based. */ jobType?: pulumi.Input; /** * Date and time the evaluation job was last modified. */ lastModifiedTime?: pulumi.Input; /** * Configuration for the Amazon S3 location where the results of the evaluation job are stored. See `outputDataConfig` Block below. */ outputDataConfig?: pulumi.Input; /** * Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration. */ region?: pulumi.Input; /** * ARN of an IAM service role that Amazon Bedrock can assume to perform tasks on your behalf. See [Required permissions for model evaluations](https://docs.aws.amazon.com/bedrock/latest/userguide/model-evaluation-security.html). * * The following arguments are optional: */ roleArn?: pulumi.Input; /** * Whether to leave the evaluation job in its current state when destroying the resource, instead of stopping it. */ skipDestroy?: pulumi.Input; /** * Current status of the evaluation job. */ status?: pulumi.Input; /** * Map of tags to assign to the evaluation job. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; tagsAll?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; timeouts?: pulumi.Input; } /** * The set of arguments for constructing a EvaluationJob resource. */ export interface EvaluationJobArgs { /** * Whether the evaluation job evaluates a model or a knowledge base. Valid values: `ModelEvaluation`, `RagEvaluation`. */ applicationType?: pulumi.Input; /** * ARN of the customer managed KMS key to use to encrypt the evaluation job. */ customerEncryptionKeyId?: pulumi.Input; /** * Configuration for either an automated or human-based evaluation job. See `evaluationConfig` Block below. */ evaluationConfig: pulumi.Input; /** * Configuration for the inference model, or models, used for the evaluation job. See `inferenceConfig` Block below. */ inferenceConfig: pulumi.Input; /** * Description of the evaluation job. */ jobDescription?: pulumi.Input; /** * Name for the evaluation job. Must be unique within your AWS account and Region, and consist of lowercase letters, numbers, and hyphens. */ jobName: pulumi.Input; /** * Configuration for the Amazon S3 location where the results of the evaluation job are stored. See `outputDataConfig` Block below. */ outputDataConfig: pulumi.Input; /** * Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration. */ region?: pulumi.Input; /** * ARN of an IAM service role that Amazon Bedrock can assume to perform tasks on your behalf. See [Required permissions for model evaluations](https://docs.aws.amazon.com/bedrock/latest/userguide/model-evaluation-security.html). * * The following arguments are optional: */ roleArn: pulumi.Input; /** * Whether to leave the evaluation job in its current state when destroying the resource, instead of stopping it. */ skipDestroy?: pulumi.Input; /** * Map of tags to assign to the evaluation job. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; timeouts?: pulumi.Input; } //# sourceMappingURL=evaluationJob.d.ts.map