Current File : //proc/self/root/lib/python3/dist-packages/botocore/data/bedrock/2023-04-20/service-2.json
{
  "version":"2.0",
  "metadata":{
    "apiVersion":"2023-04-20",
    "endpointPrefix":"bedrock",
    "jsonVersion":"1.1",
    "protocol":"rest-json",
    "serviceFullName":"Amazon Bedrock",
    "serviceId":"Bedrock",
    "signatureVersion":"v4",
    "signingName":"bedrock",
    "uid":"bedrock-2023-04-20"
  },
  "operations":{
    "CreateModelCustomizationJob":{
      "name":"CreateModelCustomizationJob",
      "http":{
        "method":"POST",
        "requestUri":"/model-customization-jobs",
        "responseCode":201
      },
      "input":{"shape":"CreateModelCustomizationJobRequest"},
      "output":{"shape":"CreateModelCustomizationJobResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"ConflictException"},
        {"shape":"InternalServerException"},
        {"shape":"TooManyTagsException"},
        {"shape":"ServiceQuotaExceededException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Creates a fine-tuning job to customize a base model.</p> <p>You specify the base foundation model and the location of the training data. After the model-customization job completes successfully, your custom model resource will be ready to use. Training data contains input and output text for each record in a JSONL format. Optionally, you can specify validation data in the same format as the training data. Amazon Bedrock returns validation loss metrics and output generations after the job completes. </p> <p> Model-customization jobs are asynchronous and the completion time depends on the base model and the training/validation data size. To monitor a job, use the <code>GetModelCustomizationJob</code> operation to retrieve the job status.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/bedrock/latest/userguide/custom-models.html\">Custom models</a> in the Bedrock User Guide.</p>",
      "idempotent":true
    },
    "CreateProvisionedModelThroughput":{
      "name":"CreateProvisionedModelThroughput",
      "http":{
        "method":"POST",
        "requestUri":"/provisioned-model-throughput",
        "responseCode":201
      },
      "input":{"shape":"CreateProvisionedModelThroughputRequest"},
      "output":{"shape":"CreateProvisionedModelThroughputResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"TooManyTagsException"},
        {"shape":"ServiceQuotaExceededException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Creates a provisioned throughput with dedicated capacity for a foundation model or a fine-tuned model.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-service.html\">Provisioned throughput</a> in the Bedrock User Guide.</p>",
      "idempotent":true
    },
    "DeleteCustomModel":{
      "name":"DeleteCustomModel",
      "http":{
        "method":"DELETE",
        "requestUri":"/custom-models/{modelIdentifier}",
        "responseCode":200
      },
      "input":{"shape":"DeleteCustomModelRequest"},
      "output":{"shape":"DeleteCustomModelResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"ConflictException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Deletes a custom model that you created earlier. For more information, see <a href=\"https://docs.aws.amazon.com/bedrock/latest/userguide/custom-models.html\">Custom models</a> in the Bedrock User Guide.</p>",
      "idempotent":true
    },
    "DeleteModelInvocationLoggingConfiguration":{
      "name":"DeleteModelInvocationLoggingConfiguration",
      "http":{
        "method":"DELETE",
        "requestUri":"/logging/modelinvocations",
        "responseCode":200
      },
      "input":{"shape":"DeleteModelInvocationLoggingConfigurationRequest"},
      "output":{"shape":"DeleteModelInvocationLoggingConfigurationResponse"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Delete the invocation logging. </p>",
      "idempotent":true
    },
    "DeleteProvisionedModelThroughput":{
      "name":"DeleteProvisionedModelThroughput",
      "http":{
        "method":"DELETE",
        "requestUri":"/provisioned-model-throughput/{provisionedModelId}",
        "responseCode":200
      },
      "input":{"shape":"DeleteProvisionedModelThroughputRequest"},
      "output":{"shape":"DeleteProvisionedModelThroughputResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"ConflictException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Deletes a provisioned throughput. For more information, see <a href=\"https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-service.html\">Provisioned throughput</a> in the Bedrock User Guide.</p>",
      "idempotent":true
    },
    "GetCustomModel":{
      "name":"GetCustomModel",
      "http":{
        "method":"GET",
        "requestUri":"/custom-models/{modelIdentifier}",
        "responseCode":200
      },
      "input":{"shape":"GetCustomModelRequest"},
      "output":{"shape":"GetCustomModelResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Get the properties associated with a Amazon Bedrock custom model that you have created.For more information, see <a href=\"https://docs.aws.amazon.com/bedrock/latest/userguide/custom-models.html\">Custom models</a> in the Bedrock User Guide.</p>"
    },
    "GetFoundationModel":{
      "name":"GetFoundationModel",
      "http":{
        "method":"GET",
        "requestUri":"/foundation-models/{modelIdentifier}",
        "responseCode":200
      },
      "input":{"shape":"GetFoundationModelRequest"},
      "output":{"shape":"GetFoundationModelResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Get details about a Amazon Bedrock foundation model.</p>"
    },
    "GetModelCustomizationJob":{
      "name":"GetModelCustomizationJob",
      "http":{
        "method":"GET",
        "requestUri":"/model-customization-jobs/{jobIdentifier}",
        "responseCode":200
      },
      "input":{"shape":"GetModelCustomizationJobRequest"},
      "output":{"shape":"GetModelCustomizationJobResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Retrieves the properties associated with a model-customization job, including the status of the job. For more information, see <a href=\"https://docs.aws.amazon.com/bedrock/latest/userguide/custom-models.html\">Custom models</a> in the Bedrock User Guide.</p>"
    },
    "GetModelInvocationLoggingConfiguration":{
      "name":"GetModelInvocationLoggingConfiguration",
      "http":{
        "method":"GET",
        "requestUri":"/logging/modelinvocations",
        "responseCode":200
      },
      "input":{"shape":"GetModelInvocationLoggingConfigurationRequest"},
      "output":{"shape":"GetModelInvocationLoggingConfigurationResponse"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Get the current configuration values for model invocation logging.</p>"
    },
    "GetProvisionedModelThroughput":{
      "name":"GetProvisionedModelThroughput",
      "http":{
        "method":"GET",
        "requestUri":"/provisioned-model-throughput/{provisionedModelId}",
        "responseCode":200
      },
      "input":{"shape":"GetProvisionedModelThroughputRequest"},
      "output":{"shape":"GetProvisionedModelThroughputResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Get details for a provisioned throughput. For more information, see <a href=\"https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-service.html\">Provisioned throughput</a> in the Bedrock User Guide.</p>"
    },
    "ListCustomModels":{
      "name":"ListCustomModels",
      "http":{
        "method":"GET",
        "requestUri":"/custom-models",
        "responseCode":200
      },
      "input":{"shape":"ListCustomModelsRequest"},
      "output":{"shape":"ListCustomModelsResponse"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Returns a list of the custom models that you have created with the <code>CreateModelCustomizationJob</code> operation.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/bedrock/latest/userguide/custom-models.html\">Custom models</a> in the Bedrock User Guide.</p>"
    },
    "ListFoundationModels":{
      "name":"ListFoundationModels",
      "http":{
        "method":"GET",
        "requestUri":"/foundation-models",
        "responseCode":200
      },
      "input":{"shape":"ListFoundationModelsRequest"},
      "output":{"shape":"ListFoundationModelsResponse"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>List of Amazon Bedrock foundation models that you can use. For more information, see <a href=\"https://docs.aws.amazon.com/bedrock/latest/userguide/foundation-models.html\">Foundation models</a> in the Bedrock User Guide.</p>"
    },
    "ListModelCustomizationJobs":{
      "name":"ListModelCustomizationJobs",
      "http":{
        "method":"GET",
        "requestUri":"/model-customization-jobs",
        "responseCode":200
      },
      "input":{"shape":"ListModelCustomizationJobsRequest"},
      "output":{"shape":"ListModelCustomizationJobsResponse"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Returns a list of model customization jobs that you have submitted. You can filter the jobs to return based on one or more criteria.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/bedrock/latest/userguide/custom-models.html\">Custom models</a> in the Bedrock User Guide.</p>"
    },
    "ListProvisionedModelThroughputs":{
      "name":"ListProvisionedModelThroughputs",
      "http":{
        "method":"GET",
        "requestUri":"/provisioned-model-throughputs",
        "responseCode":200
      },
      "input":{"shape":"ListProvisionedModelThroughputsRequest"},
      "output":{"shape":"ListProvisionedModelThroughputsResponse"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>List the provisioned capacities. For more information, see <a href=\"https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-service.html\">Provisioned throughput</a> in the Bedrock User Guide.</p>"
    },
    "ListTagsForResource":{
      "name":"ListTagsForResource",
      "http":{
        "method":"POST",
        "requestUri":"/listTagsForResource",
        "responseCode":200
      },
      "input":{"shape":"ListTagsForResourceRequest"},
      "output":{"shape":"ListTagsForResourceResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>List the tags associated with the specified resource.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-service.html\">Tagging resources</a> in the Bedrock User Guide.</p>"
    },
    "PutModelInvocationLoggingConfiguration":{
      "name":"PutModelInvocationLoggingConfiguration",
      "http":{
        "method":"PUT",
        "requestUri":"/logging/modelinvocations",
        "responseCode":200
      },
      "input":{"shape":"PutModelInvocationLoggingConfigurationRequest"},
      "output":{"shape":"PutModelInvocationLoggingConfigurationResponse"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Set the configuration values for model invocation logging.</p>",
      "idempotent":true
    },
    "StopModelCustomizationJob":{
      "name":"StopModelCustomizationJob",
      "http":{
        "method":"POST",
        "requestUri":"/model-customization-jobs/{jobIdentifier}/stop",
        "responseCode":200
      },
      "input":{"shape":"StopModelCustomizationJobRequest"},
      "output":{"shape":"StopModelCustomizationJobResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"ConflictException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Stops an active model customization job. For more information, see <a href=\"https://docs.aws.amazon.com/bedrock/latest/userguide/custom-models.html\">Custom models</a> in the Bedrock User Guide.</p>",
      "idempotent":true
    },
    "TagResource":{
      "name":"TagResource",
      "http":{
        "method":"POST",
        "requestUri":"/tagResource",
        "responseCode":200
      },
      "input":{"shape":"TagResourceRequest"},
      "output":{"shape":"TagResourceResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"TooManyTagsException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Associate tags with a resource. For more information, see <a href=\"https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-service.html\">Tagging resources</a> in the Bedrock User Guide.</p>"
    },
    "UntagResource":{
      "name":"UntagResource",
      "http":{
        "method":"POST",
        "requestUri":"/untagResource",
        "responseCode":200
      },
      "input":{"shape":"UntagResourceRequest"},
      "output":{"shape":"UntagResourceResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Remove one or more tags from a resource. For more information, see <a href=\"https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-service.html\">Tagging resources</a> in the Bedrock User Guide.</p>"
    },
    "UpdateProvisionedModelThroughput":{
      "name":"UpdateProvisionedModelThroughput",
      "http":{
        "method":"PATCH",
        "requestUri":"/provisioned-model-throughput/{provisionedModelId}",
        "responseCode":200
      },
      "input":{"shape":"UpdateProvisionedModelThroughputRequest"},
      "output":{"shape":"UpdateProvisionedModelThroughputResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Update a provisioned throughput. For more information, see <a href=\"https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-service.html\">Provisioned throughput</a> in the Bedrock User Guide.</p>",
      "idempotent":true
    }
  },
  "shapes":{
    "AccessDeniedException":{
      "type":"structure",
      "members":{
        "message":{"shape":"NonBlankString"}
      },
      "documentation":"<p>The request is denied because of missing access permissions.</p>",
      "error":{
        "httpStatusCode":403,
        "senderFault":true
      },
      "exception":true
    },
    "BaseModelIdentifier":{
      "type":"string",
      "max":2048,
      "min":1,
      "pattern":"(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:(([0-9]{12}:custom-model/([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.]?[a-z0-9-]{1,63})([:][a-z0-9-]{1,63}){0,2})/[a-z0-9]{12})|(:foundation-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([:][a-z0-9-]{1,63}){0,2})))|([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.]?[a-z0-9-]{1,63})([:][a-z0-9-]{1,63}){0,2})|(([0-9a-zA-Z][_-]?)+)"
    },
    "BedrockModelId":{
      "type":"string",
      "max":140,
      "min":0,
      "pattern":"[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([a-z0-9-]{1,63}[.]){0,2}[a-z0-9-]{1,63}([:][a-z0-9-]{1,63}){0,2}(/[a-z0-9]{12}|)"
    },
    "Boolean":{
      "type":"boolean",
      "box":true
    },
    "BrandedName":{
      "type":"string",
      "max":20,
      "min":1,
      "pattern":".*"
    },
    "BucketName":{
      "type":"string",
      "max":63,
      "min":3
    },
    "CloudWatchConfig":{
      "type":"structure",
      "required":[
        "logGroupName",
        "roleArn"
      ],
      "members":{
        "logGroupName":{
          "shape":"LogGroupName",
          "documentation":"<p>The log group name.</p>"
        },
        "roleArn":{
          "shape":"RoleArn",
          "documentation":"<p>The role ARN.</p>"
        },
        "largeDataDeliveryS3Config":{
          "shape":"S3Config",
          "documentation":"<p>S3 configuration for delivering a large amount of data.</p>"
        }
      },
      "documentation":"<p>CloudWatch logging configuration.</p>"
    },
    "CommitmentDuration":{
      "type":"string",
      "enum":[
        "OneMonth",
        "SixMonths"
      ]
    },
    "ConflictException":{
      "type":"structure",
      "members":{
        "message":{"shape":"NonBlankString"}
      },
      "documentation":"<p>Error occurred because of a conflict while performing an operation.</p>",
      "error":{
        "httpStatusCode":400,
        "senderFault":true
      },
      "exception":true
    },
    "CreateModelCustomizationJobRequest":{
      "type":"structure",
      "required":[
        "jobName",
        "customModelName",
        "roleArn",
        "baseModelIdentifier",
        "trainingDataConfig",
        "outputDataConfig",
        "hyperParameters"
      ],
      "members":{
        "jobName":{
          "shape":"JobName",
          "documentation":"<p>Enter a unique name for the fine-tuning job.</p>"
        },
        "customModelName":{
          "shape":"CustomModelName",
          "documentation":"<p>Enter a name for the custom model.</p>"
        },
        "roleArn":{
          "shape":"RoleArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of an IAM role that Amazon Bedrock can assume to perform tasks on your behalf. For example, during model training, Amazon Bedrock needs your permission to read input data from an S3 bucket, write model artifacts to an S3 bucket. To pass this role to Amazon Bedrock, the caller of this API must have the <code>iam:PassRole</code> permission. </p>"
        },
        "clientRequestToken":{
          "shape":"IdempotencyToken",
          "documentation":"<p>Unique token value that you can provide. The GetModelCustomizationJob response includes the same token value.</p>",
          "idempotencyToken":true
        },
        "baseModelIdentifier":{
          "shape":"BaseModelIdentifier",
          "documentation":"<p>Name of the base model.</p>"
        },
        "customizationType":{
          "shape":"CustomizationType",
          "documentation":"<p>The customization type.</p>"
        },
        "customModelKmsKeyId":{
          "shape":"KmsKeyId",
          "documentation":"<p>The custom model is encrypted at rest using this key.</p>"
        },
        "jobTags":{
          "shape":"TagList",
          "documentation":"<p>Assign tags to the job.</p>"
        },
        "customModelTags":{
          "shape":"TagList",
          "documentation":"<p>Assign tags to the custom model.</p>"
        },
        "trainingDataConfig":{
          "shape":"TrainingDataConfig",
          "documentation":"<p>Information about the training dataset.</p>"
        },
        "validationDataConfig":{
          "shape":"ValidationDataConfig",
          "documentation":"<p>Information about the validation dataset. </p>"
        },
        "outputDataConfig":{
          "shape":"OutputDataConfig",
          "documentation":"<p>S3 location for the output data.</p>"
        },
        "hyperParameters":{
          "shape":"ModelCustomizationHyperParameters",
          "documentation":"<p>Parameters related to tuning the model.</p>"
        },
        "vpcConfig":{
          "shape":"VpcConfig",
          "documentation":"<p>VPC configuration (optional). Configuration parameters for the private Virtual Private Cloud (VPC) that contains the resources you are using for this job.</p>"
        }
      }
    },
    "CreateModelCustomizationJobResponse":{
      "type":"structure",
      "required":["jobArn"],
      "members":{
        "jobArn":{
          "shape":"ModelCustomizationJobArn",
          "documentation":"<p>ARN of the fine tuning job</p>"
        }
      }
    },
    "CreateProvisionedModelThroughputRequest":{
      "type":"structure",
      "required":[
        "modelUnits",
        "provisionedModelName",
        "modelId"
      ],
      "members":{
        "clientRequestToken":{
          "shape":"IdempotencyToken",
          "documentation":"<p>Unique token value that you can provide. If this token matches a previous request, Amazon Bedrock ignores the request, but does not return an error.</p>",
          "idempotencyToken":true
        },
        "modelUnits":{
          "shape":"PositiveInteger",
          "documentation":"<p>Number of model units to allocate.</p>"
        },
        "provisionedModelName":{
          "shape":"ProvisionedModelName",
          "documentation":"<p>Unique name for this provisioned throughput.</p>"
        },
        "modelId":{
          "shape":"ModelIdentifier",
          "documentation":"<p>Name or ARN of the model to associate with this provisioned throughput.</p>"
        },
        "commitmentDuration":{
          "shape":"CommitmentDuration",
          "documentation":"<p>Commitment duration requested for the provisioned throughput.</p>"
        },
        "tags":{
          "shape":"TagList",
          "documentation":"<p>Tags to associate with this provisioned throughput.</p>"
        }
      }
    },
    "CreateProvisionedModelThroughputResponse":{
      "type":"structure",
      "required":["provisionedModelArn"],
      "members":{
        "provisionedModelArn":{
          "shape":"ProvisionedModelArn",
          "documentation":"<p>The ARN for this provisioned throughput.</p>"
        }
      }
    },
    "CustomModelArn":{
      "type":"string",
      "max":1011,
      "min":20,
      "pattern":"arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:custom-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([a-z0-9-]{1,63}[.]){0,2}[a-z0-9-]{1,63}([:][a-z0-9-]{1,63}){0,2}/[a-z0-9]{12}"
    },
    "CustomModelName":{
      "type":"string",
      "max":63,
      "min":1,
      "pattern":"([0-9a-zA-Z][_-]?)+"
    },
    "CustomModelSummary":{
      "type":"structure",
      "required":[
        "modelArn",
        "modelName",
        "creationTime",
        "baseModelArn",
        "baseModelName"
      ],
      "members":{
        "modelArn":{
          "shape":"CustomModelArn",
          "documentation":"<p>The ARN of the custom model.</p>"
        },
        "modelName":{
          "shape":"CustomModelName",
          "documentation":"<p>The name of the custom model.</p>"
        },
        "creationTime":{
          "shape":"Timestamp",
          "documentation":"<p>Creation time of the model.</p>"
        },
        "baseModelArn":{
          "shape":"ModelArn",
          "documentation":"<p>The base model ARN.</p>"
        },
        "baseModelName":{
          "shape":"ModelName",
          "documentation":"<p>The base model name.</p>"
        },
        "customizationType":{
          "shape":"CustomizationType",
          "documentation":"<p>Specifies whether to carry out continued pre-training of a model or whether to fine-tune it. For more information, see <a href=\"https://docs.aws.amazon.com/bedrock/latest/userguide/custom-models.html\">Custom models</a>.</p>"
        }
      },
      "documentation":"<p>Summary information for a custom model.</p>"
    },
    "CustomModelSummaryList":{
      "type":"list",
      "member":{"shape":"CustomModelSummary"}
    },
    "CustomizationType":{
      "type":"string",
      "enum":[
        "FINE_TUNING",
        "CONTINUED_PRE_TRAINING"
      ]
    },
    "DeleteCustomModelRequest":{
      "type":"structure",
      "required":["modelIdentifier"],
      "members":{
        "modelIdentifier":{
          "shape":"ModelIdentifier",
          "documentation":"<p>Name of the model to delete.</p>",
          "location":"uri",
          "locationName":"modelIdentifier"
        }
      }
    },
    "DeleteCustomModelResponse":{
      "type":"structure",
      "members":{
      }
    },
    "DeleteModelInvocationLoggingConfigurationRequest":{
      "type":"structure",
      "members":{
      }
    },
    "DeleteModelInvocationLoggingConfigurationResponse":{
      "type":"structure",
      "members":{
      }
    },
    "DeleteProvisionedModelThroughputRequest":{
      "type":"structure",
      "required":["provisionedModelId"],
      "members":{
        "provisionedModelId":{
          "shape":"ProvisionedModelId",
          "documentation":"<p>The ARN or name of the provisioned throughput.</p>",
          "location":"uri",
          "locationName":"provisionedModelId"
        }
      }
    },
    "DeleteProvisionedModelThroughputResponse":{
      "type":"structure",
      "members":{
      }
    },
    "ErrorMessage":{
      "type":"string",
      "max":2048,
      "min":0
    },
    "FineTuningJobStatus":{
      "type":"string",
      "enum":[
        "InProgress",
        "Completed",
        "Failed",
        "Stopping",
        "Stopped"
      ]
    },
    "FoundationModelArn":{
      "type":"string",
      "pattern":"arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}::foundation-model/[a-z0-9-]{1,63}[.]{1}([a-z0-9-]{1,63}[.]){0,2}[a-z0-9-]{1,63}([:][a-z0-9-]{1,63}){0,2}"
    },
    "FoundationModelDetails":{
      "type":"structure",
      "required":[
        "modelArn",
        "modelId"
      ],
      "members":{
        "modelArn":{
          "shape":"FoundationModelArn",
          "documentation":"<p>The model ARN.</p>"
        },
        "modelId":{
          "shape":"BedrockModelId",
          "documentation":"<p>The model identifier.</p>"
        },
        "modelName":{
          "shape":"BrandedName",
          "documentation":"<p>The model name.</p>"
        },
        "providerName":{
          "shape":"BrandedName",
          "documentation":"<p>he model's provider name.</p>"
        },
        "inputModalities":{
          "shape":"ModelModalityList",
          "documentation":"<p>The input modalities that the model supports.</p>"
        },
        "outputModalities":{
          "shape":"ModelModalityList",
          "documentation":"<p>The output modalities that the model supports.</p>"
        },
        "responseStreamingSupported":{
          "shape":"Boolean",
          "documentation":"<p>Indicates whether the model supports streaming.</p>"
        },
        "customizationsSupported":{
          "shape":"ModelCustomizationList",
          "documentation":"<p>The customization that the model supports.</p>"
        },
        "inferenceTypesSupported":{
          "shape":"InferenceTypeList",
          "documentation":"<p>The inference types that the model supports.</p>"
        },
        "modelLifecycle":{
          "shape":"FoundationModelLifecycle",
          "documentation":"<p>Contains details about whether a model version is available or deprecated</p>"
        }
      },
      "documentation":"<p>Information about a foundation model.</p>"
    },
    "FoundationModelLifecycle":{
      "type":"structure",
      "required":["status"],
      "members":{
        "status":{
          "shape":"FoundationModelLifecycleStatus",
          "documentation":"<p>Specifies whether a model version is available (<code>ACTIVE</code>) or deprecated (<code>LEGACY</code>.</p>"
        }
      },
      "documentation":"<p>Details about whether a model version is available or deprecated.</p>"
    },
    "FoundationModelLifecycleStatus":{
      "type":"string",
      "enum":[
        "ACTIVE",
        "LEGACY"
      ]
    },
    "FoundationModelSummary":{
      "type":"structure",
      "required":[
        "modelArn",
        "modelId"
      ],
      "members":{
        "modelArn":{
          "shape":"FoundationModelArn",
          "documentation":"<p>The ARN of the foundation model.</p>"
        },
        "modelId":{
          "shape":"BedrockModelId",
          "documentation":"<p>The model Id of the foundation model.</p>"
        },
        "modelName":{
          "shape":"BrandedName",
          "documentation":"<p>The name of the model.</p>"
        },
        "providerName":{
          "shape":"BrandedName",
          "documentation":"<p>The model's provider name.</p>"
        },
        "inputModalities":{
          "shape":"ModelModalityList",
          "documentation":"<p>The input modalities that the model supports.</p>"
        },
        "outputModalities":{
          "shape":"ModelModalityList",
          "documentation":"<p>The output modalities that the model supports.</p>"
        },
        "responseStreamingSupported":{
          "shape":"Boolean",
          "documentation":"<p>Indicates whether the model supports streaming.</p>"
        },
        "customizationsSupported":{
          "shape":"ModelCustomizationList",
          "documentation":"<p>Whether the model supports fine-tuning or continual pre-training.</p>"
        },
        "inferenceTypesSupported":{
          "shape":"InferenceTypeList",
          "documentation":"<p>The inference types that the model supports.</p>"
        },
        "modelLifecycle":{
          "shape":"FoundationModelLifecycle",
          "documentation":"<p>Contains details about whether a model version is available or deprecated.</p>"
        }
      },
      "documentation":"<p>Summary information for a foundation model.</p>"
    },
    "FoundationModelSummaryList":{
      "type":"list",
      "member":{"shape":"FoundationModelSummary"}
    },
    "GetCustomModelRequest":{
      "type":"structure",
      "required":["modelIdentifier"],
      "members":{
        "modelIdentifier":{
          "shape":"ModelIdentifier",
          "documentation":"<p>Name or ARN of the custom model.</p>",
          "location":"uri",
          "locationName":"modelIdentifier"
        }
      }
    },
    "GetCustomModelResponse":{
      "type":"structure",
      "required":[
        "modelArn",
        "modelName",
        "jobArn",
        "baseModelArn",
        "trainingDataConfig",
        "outputDataConfig",
        "creationTime"
      ],
      "members":{
        "modelArn":{
          "shape":"ModelArn",
          "documentation":"<p>ARN associated with this model.</p>"
        },
        "modelName":{
          "shape":"CustomModelName",
          "documentation":"<p>Model name associated with this model.</p>"
        },
        "jobName":{
          "shape":"JobName",
          "documentation":"<p>Job name associated with this model.</p>"
        },
        "jobArn":{
          "shape":"ModelCustomizationJobArn",
          "documentation":"<p>Job ARN associated with this model.</p>"
        },
        "baseModelArn":{
          "shape":"ModelArn",
          "documentation":"<p>ARN of the base model.</p>"
        },
        "customizationType":{
          "shape":"CustomizationType",
          "documentation":"<p>The type of model customization.</p>"
        },
        "modelKmsKeyArn":{
          "shape":"KmsKeyArn",
          "documentation":"<p>The custom model is encrypted at rest using this key.</p>"
        },
        "hyperParameters":{
          "shape":"ModelCustomizationHyperParameters",
          "documentation":"<p>Hyperparameter values associated with this model.</p>"
        },
        "trainingDataConfig":{
          "shape":"TrainingDataConfig",
          "documentation":"<p>Information about the training dataset.</p>"
        },
        "validationDataConfig":{"shape":"ValidationDataConfig"},
        "outputDataConfig":{
          "shape":"OutputDataConfig",
          "documentation":"<p>Output data configuration associated with this custom model.</p>"
        },
        "trainingMetrics":{
          "shape":"TrainingMetrics",
          "documentation":"<p>The training metrics from the job creation.</p>"
        },
        "validationMetrics":{
          "shape":"ValidationMetrics",
          "documentation":"<p>The validation metrics from the job creation.</p>"
        },
        "creationTime":{
          "shape":"Timestamp",
          "documentation":"<p>Creation time of the model.</p>"
        }
      }
    },
    "GetFoundationModelRequest":{
      "type":"structure",
      "required":["modelIdentifier"],
      "members":{
        "modelIdentifier":{
          "shape":"ModelIdentifier",
          "documentation":"<p>The model identifier. </p>",
          "location":"uri",
          "locationName":"modelIdentifier"
        }
      }
    },
    "GetFoundationModelResponse":{
      "type":"structure",
      "members":{
        "modelDetails":{
          "shape":"FoundationModelDetails",
          "documentation":"<p>Information about the foundation model.</p>"
        }
      }
    },
    "GetModelCustomizationJobRequest":{
      "type":"structure",
      "required":["jobIdentifier"],
      "members":{
        "jobIdentifier":{
          "shape":"ModelCustomizationJobIdentifier",
          "documentation":"<p>Identifier for the customization job.</p>",
          "location":"uri",
          "locationName":"jobIdentifier"
        }
      }
    },
    "GetModelCustomizationJobResponse":{
      "type":"structure",
      "required":[
        "jobArn",
        "jobName",
        "outputModelName",
        "roleArn",
        "creationTime",
        "baseModelArn",
        "hyperParameters",
        "trainingDataConfig",
        "validationDataConfig",
        "outputDataConfig"
      ],
      "members":{
        "jobArn":{
          "shape":"ModelCustomizationJobArn",
          "documentation":"<p>The ARN of the customization job.</p>"
        },
        "jobName":{
          "shape":"JobName",
          "documentation":"<p>The name of the customization job.</p>"
        },
        "outputModelName":{
          "shape":"CustomModelName",
          "documentation":"<p>The name of the output model.</p>"
        },
        "outputModelArn":{
          "shape":"CustomModelArn",
          "documentation":"<p>The ARN of the output model.</p>"
        },
        "clientRequestToken":{
          "shape":"IdempotencyToken",
          "documentation":"<p>The token that you specified in the CreateCustomizationJob request.</p>"
        },
        "roleArn":{
          "shape":"RoleArn",
          "documentation":"<p>The ARN of the IAM role.</p>"
        },
        "status":{
          "shape":"ModelCustomizationJobStatus",
          "documentation":"<p>The status of the job. A successful job transitions from in-progress to completed when the output model is ready to use. If the job failed, the failure message contains information about why the job failed.</p>"
        },
        "failureMessage":{
          "shape":"ErrorMessage",
          "documentation":"<p>Information about why the job failed.</p>"
        },
        "creationTime":{
          "shape":"Timestamp",
          "documentation":"<p>Time that the resource was created.</p>"
        },
        "lastModifiedTime":{
          "shape":"Timestamp",
          "documentation":"<p>Time that the resource was last modified.</p>"
        },
        "endTime":{
          "shape":"Timestamp",
          "documentation":"<p>Time that the resource transitioned to terminal state.</p>"
        },
        "baseModelArn":{
          "shape":"FoundationModelArn",
          "documentation":"<p>ARN of the base model.</p>"
        },
        "hyperParameters":{
          "shape":"ModelCustomizationHyperParameters",
          "documentation":"<p>The hyperparameter values for the job. For information about hyperparameters for specific models, see <a href=\"https://docs.aws.amazon.com/bedrock/latest/userguide/model-customization-guidelines.html\">Guidelines for model customization</a>.</p>"
        },
        "trainingDataConfig":{"shape":"TrainingDataConfig"},
        "validationDataConfig":{"shape":"ValidationDataConfig"},
        "outputDataConfig":{
          "shape":"OutputDataConfig",
          "documentation":"<p>Output data configuration </p>"
        },
        "customizationType":{
          "shape":"CustomizationType",
          "documentation":"<p>The type of model customization.</p>"
        },
        "outputModelKmsKeyArn":{
          "shape":"KmsKeyArn",
          "documentation":"<p>The custom model is encrypted at rest using this key.</p>"
        },
        "trainingMetrics":{"shape":"TrainingMetrics"},
        "validationMetrics":{
          "shape":"ValidationMetrics",
          "documentation":"<p>The loss metric for each validator that you provided in the createjob request.</p>"
        },
        "vpcConfig":{
          "shape":"VpcConfig",
          "documentation":"<p>VPC configuration for the custom model job.</p>"
        }
      }
    },
    "GetModelInvocationLoggingConfigurationRequest":{
      "type":"structure",
      "members":{
      }
    },
    "GetModelInvocationLoggingConfigurationResponse":{
      "type":"structure",
      "members":{
        "loggingConfig":{
          "shape":"LoggingConfig",
          "documentation":"<p>The current configuration values.</p>"
        }
      }
    },
    "GetProvisionedModelThroughputRequest":{
      "type":"structure",
      "required":["provisionedModelId"],
      "members":{
        "provisionedModelId":{
          "shape":"ProvisionedModelId",
          "documentation":"<p>The ARN or name of the provisioned throughput.</p>",
          "location":"uri",
          "locationName":"provisionedModelId"
        }
      }
    },
    "GetProvisionedModelThroughputResponse":{
      "type":"structure",
      "required":[
        "modelUnits",
        "desiredModelUnits",
        "provisionedModelName",
        "provisionedModelArn",
        "modelArn",
        "desiredModelArn",
        "foundationModelArn",
        "status",
        "creationTime",
        "lastModifiedTime"
      ],
      "members":{
        "modelUnits":{
          "shape":"PositiveInteger",
          "documentation":"<p>The current number of model units requested to be available for this provisioned throughput.</p>"
        },
        "desiredModelUnits":{
          "shape":"PositiveInteger",
          "documentation":"<p>The desired number of model units that was requested to be available for this provisioned throughput.</p>"
        },
        "provisionedModelName":{
          "shape":"ProvisionedModelName",
          "documentation":"<p>The name of the provisioned throughput.</p>"
        },
        "provisionedModelArn":{
          "shape":"ProvisionedModelArn",
          "documentation":"<p>The ARN of the provisioned throughput.</p>"
        },
        "modelArn":{
          "shape":"ModelArn",
          "documentation":"<p>The ARN or name of the model associated with this provisioned throughput.</p>"
        },
        "desiredModelArn":{
          "shape":"ModelArn",
          "documentation":"<p>The ARN of the new model to asssociate with this provisioned throughput.</p>"
        },
        "foundationModelArn":{
          "shape":"FoundationModelArn",
          "documentation":"<p>ARN of the foundation model.</p>"
        },
        "status":{
          "shape":"ProvisionedModelStatus",
          "documentation":"<p>Status of the provisioned throughput. </p>"
        },
        "creationTime":{
          "shape":"Timestamp",
          "documentation":"<p>The timestamp of the creation time for this provisioned throughput. </p>"
        },
        "lastModifiedTime":{
          "shape":"Timestamp",
          "documentation":"<p>The timestamp of the last modified time of this provisioned throughput. </p>"
        },
        "failureMessage":{
          "shape":"ErrorMessage",
          "documentation":"<p>Failure message for any issues that the create operation encounters.</p>"
        },
        "commitmentDuration":{
          "shape":"CommitmentDuration",
          "documentation":"<p>Commitment duration of the provisioned throughput.</p>"
        },
        "commitmentExpirationTime":{
          "shape":"Timestamp",
          "documentation":"<p>Commitment expiration time for the provisioned throughput.</p>"
        }
      }
    },
    "IdempotencyToken":{
      "type":"string",
      "max":256,
      "min":1,
      "pattern":"[a-zA-Z0-9](-*[a-zA-Z0-9])*"
    },
    "InferenceType":{
      "type":"string",
      "enum":[
        "ON_DEMAND",
        "PROVISIONED"
      ]
    },
    "InferenceTypeList":{
      "type":"list",
      "member":{"shape":"InferenceType"}
    },
    "InternalServerException":{
      "type":"structure",
      "members":{
        "message":{"shape":"NonBlankString"}
      },
      "documentation":"<p>An internal server error occurred. Retry your request.</p>",
      "error":{"httpStatusCode":500},
      "exception":true,
      "fault":true
    },
    "JobName":{
      "type":"string",
      "max":63,
      "min":1,
      "pattern":"[a-zA-Z0-9](-*[a-zA-Z0-9\\+\\-\\.])*"
    },
    "KeyPrefix":{
      "type":"string",
      "max":1024,
      "min":0
    },
    "KmsKeyArn":{
      "type":"string",
      "max":2048,
      "min":1,
      "pattern":"arn:aws(-[^:]+)?:kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}"
    },
    "KmsKeyId":{
      "type":"string",
      "max":2048,
      "min":1,
      "pattern":"arn:aws(-[^:]+)?:kms:[a-zA-Z0-9-]*:[0-9]{12}:((key/[a-zA-Z0-9-]{36})|(alias/[a-zA-Z0-9-_/]+))"
    },
    "ListCustomModelsRequest":{
      "type":"structure",
      "members":{
        "creationTimeBefore":{
          "shape":"Timestamp",
          "documentation":"<p>Return custom models created before the specified time. </p>",
          "location":"querystring",
          "locationName":"creationTimeBefore"
        },
        "creationTimeAfter":{
          "shape":"Timestamp",
          "documentation":"<p>Return custom models created after the specified time. </p>",
          "location":"querystring",
          "locationName":"creationTimeAfter"
        },
        "nameContains":{
          "shape":"CustomModelName",
          "documentation":"<p>Return custom models only if the job name contains these characters.</p>",
          "location":"querystring",
          "locationName":"nameContains"
        },
        "baseModelArnEquals":{
          "shape":"ModelArn",
          "documentation":"<p>Return custom models only if the base model ARN matches this parameter.</p>",
          "location":"querystring",
          "locationName":"baseModelArnEquals"
        },
        "foundationModelArnEquals":{
          "shape":"FoundationModelArn",
          "documentation":"<p>Return custom models only if the foundation model ARN matches this parameter.</p>",
          "location":"querystring",
          "locationName":"foundationModelArnEquals"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>Maximum number of results to return in the response.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "nextToken":{
          "shape":"PaginationToken",
          "documentation":"<p>Continuation token from the previous response, for Amazon Bedrock to list the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "sortBy":{
          "shape":"SortModelsBy",
          "documentation":"<p>The field to sort by in the returned list of models.</p>",
          "location":"querystring",
          "locationName":"sortBy"
        },
        "sortOrder":{
          "shape":"SortOrder",
          "documentation":"<p>The sort order of the results.</p>",
          "location":"querystring",
          "locationName":"sortOrder"
        }
      }
    },
    "ListCustomModelsResponse":{
      "type":"structure",
      "members":{
        "nextToken":{
          "shape":"PaginationToken",
          "documentation":"<p>Continuation token for the next request to list the next set of results.</p>"
        },
        "modelSummaries":{
          "shape":"CustomModelSummaryList",
          "documentation":"<p>Model summaries.</p>"
        }
      }
    },
    "ListFoundationModelsRequest":{
      "type":"structure",
      "members":{
        "byProvider":{
          "shape":"Provider",
          "documentation":"<p>A Amazon Bedrock model provider.</p>",
          "location":"querystring",
          "locationName":"byProvider"
        },
        "byCustomizationType":{
          "shape":"ModelCustomization",
          "documentation":"<p>List by customization type.</p>",
          "location":"querystring",
          "locationName":"byCustomizationType"
        },
        "byOutputModality":{
          "shape":"ModelModality",
          "documentation":"<p>List by output modality type.</p>",
          "location":"querystring",
          "locationName":"byOutputModality"
        },
        "byInferenceType":{
          "shape":"InferenceType",
          "documentation":"<p>List by inference type.</p>",
          "location":"querystring",
          "locationName":"byInferenceType"
        }
      }
    },
    "ListFoundationModelsResponse":{
      "type":"structure",
      "members":{
        "modelSummaries":{
          "shape":"FoundationModelSummaryList",
          "documentation":"<p>A list of Amazon Bedrock foundation models.</p>"
        }
      }
    },
    "ListModelCustomizationJobsRequest":{
      "type":"structure",
      "members":{
        "creationTimeAfter":{
          "shape":"Timestamp",
          "documentation":"<p>Return customization jobs created after the specified time. </p>",
          "location":"querystring",
          "locationName":"creationTimeAfter"
        },
        "creationTimeBefore":{
          "shape":"Timestamp",
          "documentation":"<p>Return customization jobs created before the specified time. </p>",
          "location":"querystring",
          "locationName":"creationTimeBefore"
        },
        "statusEquals":{
          "shape":"FineTuningJobStatus",
          "documentation":"<p>Return customization jobs with the specified status. </p>",
          "location":"querystring",
          "locationName":"statusEquals"
        },
        "nameContains":{
          "shape":"JobName",
          "documentation":"<p>Return customization jobs only if the job name contains these characters.</p>",
          "location":"querystring",
          "locationName":"nameContains"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>Maximum number of results to return in the response.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "nextToken":{
          "shape":"PaginationToken",
          "documentation":"<p>Continuation token from the previous response, for Amazon Bedrock to list the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "sortBy":{
          "shape":"SortJobsBy",
          "documentation":"<p>The field to sort by in the returned list of jobs.</p>",
          "location":"querystring",
          "locationName":"sortBy"
        },
        "sortOrder":{
          "shape":"SortOrder",
          "documentation":"<p>The sort order of the results.</p>",
          "location":"querystring",
          "locationName":"sortOrder"
        }
      }
    },
    "ListModelCustomizationJobsResponse":{
      "type":"structure",
      "members":{
        "nextToken":{
          "shape":"PaginationToken",
          "documentation":"<p>Page continuation token to use in the next request.</p>"
        },
        "modelCustomizationJobSummaries":{
          "shape":"ModelCustomizationJobSummaries",
          "documentation":"<p>Job summaries.</p>"
        }
      }
    },
    "ListProvisionedModelThroughputsRequest":{
      "type":"structure",
      "members":{
        "creationTimeAfter":{
          "shape":"Timestamp",
          "documentation":"<p>Return provisioned capacities created after the specified time. </p>",
          "location":"querystring",
          "locationName":"creationTimeAfter"
        },
        "creationTimeBefore":{
          "shape":"Timestamp",
          "documentation":"<p>Return provisioned capacities created before the specified time. </p>",
          "location":"querystring",
          "locationName":"creationTimeBefore"
        },
        "statusEquals":{
          "shape":"ProvisionedModelStatus",
          "documentation":"<p>Return the list of provisioned capacities that match the specified status.</p>",
          "location":"querystring",
          "locationName":"statusEquals"
        },
        "modelArnEquals":{
          "shape":"ModelArn",
          "documentation":"<p>Return the list of provisioned capacities where their model ARN is equal to this parameter.</p>",
          "location":"querystring",
          "locationName":"modelArnEquals"
        },
        "nameContains":{
          "shape":"ProvisionedModelName",
          "documentation":"<p>Return the list of provisioned capacities if their name contains these characters.</p>",
          "location":"querystring",
          "locationName":"nameContains"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>THe maximum number of results to return in the response.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "nextToken":{
          "shape":"PaginationToken",
          "documentation":"<p>Continuation token from the previous response, for Amazon Bedrock to list the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "sortBy":{
          "shape":"SortByProvisionedModels",
          "documentation":"<p>The field to sort by in the returned list of provisioned capacities.</p>",
          "location":"querystring",
          "locationName":"sortBy"
        },
        "sortOrder":{
          "shape":"SortOrder",
          "documentation":"<p>The sort order of the results.</p>",
          "location":"querystring",
          "locationName":"sortOrder"
        }
      }
    },
    "ListProvisionedModelThroughputsResponse":{
      "type":"structure",
      "members":{
        "nextToken":{
          "shape":"PaginationToken",
          "documentation":"<p>Continuation token for the next request to list the next set of results.</p>"
        },
        "provisionedModelSummaries":{
          "shape":"ProvisionedModelSummaries",
          "documentation":"<p>List of summaries, one for each provisioned throughput in the response.</p>"
        }
      }
    },
    "ListTagsForResourceRequest":{
      "type":"structure",
      "required":["resourceARN"],
      "members":{
        "resourceARN":{
          "shape":"TaggableResourcesArn",
          "documentation":"<p>The ARN of the resource.</p>"
        }
      }
    },
    "ListTagsForResourceResponse":{
      "type":"structure",
      "members":{
        "tags":{
          "shape":"TagList",
          "documentation":"<p>An array of the tags associated with this resource.</p>"
        }
      }
    },
    "LogGroupName":{
      "type":"string",
      "max":512,
      "min":1
    },
    "LoggingConfig":{
      "type":"structure",
      "members":{
        "cloudWatchConfig":{
          "shape":"CloudWatchConfig",
          "documentation":"<p>CloudWatch logging configuration.</p>"
        },
        "s3Config":{
          "shape":"S3Config",
          "documentation":"<p>S3 configuration for storing log data.</p>"
        },
        "textDataDeliveryEnabled":{
          "shape":"Boolean",
          "documentation":"<p>Set to include text data in the log delivery.</p>"
        },
        "imageDataDeliveryEnabled":{
          "shape":"Boolean",
          "documentation":"<p>Set to include image data in the log delivery.</p>"
        },
        "embeddingDataDeliveryEnabled":{
          "shape":"Boolean",
          "documentation":"<p>Set to include embeddings data in the log delivery.</p>"
        }
      },
      "documentation":"<p>Configuration fields for invokation logging.</p>"
    },
    "MaxResults":{
      "type":"integer",
      "box":true,
      "max":1000,
      "min":1
    },
    "MetricFloat":{
      "type":"float",
      "box":true
    },
    "ModelArn":{
      "type":"string",
      "max":1011,
      "min":20,
      "pattern":"arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:(([0-9]{12}:custom-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}/[a-z0-9]{12})|(:foundation-model/[a-z0-9-]{1,63}[.]{1}([a-z0-9-]{1,63}[.]){0,2}[a-z0-9-]{1,63}([:][a-z0-9-]{1,63}){0,2}))"
    },
    "ModelCustomization":{
      "type":"string",
      "enum":[
        "FINE_TUNING",
        "CONTINUED_PRE_TRAINING"
      ]
    },
    "ModelCustomizationHyperParameters":{
      "type":"map",
      "key":{"shape":"String"},
      "value":{"shape":"String"}
    },
    "ModelCustomizationJobArn":{
      "type":"string",
      "max":1011,
      "min":0,
      "pattern":"arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:model-customization-job/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([a-z0-9-]{1,63}[.]){0,2}[a-z0-9-]{1,63}([:][a-z0-9-]{1,63}){0,2}/[a-z0-9]{12}"
    },
    "ModelCustomizationJobIdentifier":{
      "type":"string",
      "max":1011,
      "min":0,
      "pattern":"(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:model-customization-job/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([a-z0-9-]{1,63}[.]){0,2}[a-z0-9-]{1,63}([:][a-z0-9-]{1,63}){0,2}/[a-z0-9]{12})|([a-zA-Z0-9](-*[a-zA-Z0-9\\+\\-\\.])*)"
    },
    "ModelCustomizationJobStatus":{
      "type":"string",
      "enum":[
        "InProgress",
        "Completed",
        "Failed",
        "Stopping",
        "Stopped"
      ]
    },
    "ModelCustomizationJobSummaries":{
      "type":"list",
      "member":{"shape":"ModelCustomizationJobSummary"}
    },
    "ModelCustomizationJobSummary":{
      "type":"structure",
      "required":[
        "jobArn",
        "baseModelArn",
        "jobName",
        "status",
        "creationTime"
      ],
      "members":{
        "jobArn":{
          "shape":"ModelCustomizationJobArn",
          "documentation":"<p>ARN of the customization job.</p>"
        },
        "baseModelArn":{
          "shape":"ModelArn",
          "documentation":"<p>ARN of the base model.</p>"
        },
        "jobName":{
          "shape":"JobName",
          "documentation":"<p>Name of the customization job.</p>"
        },
        "status":{
          "shape":"ModelCustomizationJobStatus",
          "documentation":"<p>Status of the customization job. </p>"
        },
        "lastModifiedTime":{
          "shape":"Timestamp",
          "documentation":"<p>Time that the customization job was last modified.</p>"
        },
        "creationTime":{
          "shape":"Timestamp",
          "documentation":"<p>Creation time of the custom model. </p>"
        },
        "endTime":{
          "shape":"Timestamp",
          "documentation":"<p>Time that the customization job ended.</p>"
        },
        "customModelArn":{
          "shape":"CustomModelArn",
          "documentation":"<p>ARN of the custom model.</p>"
        },
        "customModelName":{
          "shape":"CustomModelName",
          "documentation":"<p>Name of the custom model.</p>"
        },
        "customizationType":{
          "shape":"CustomizationType",
          "documentation":"<p>Specifies whether to carry out continued pre-training of a model or whether to fine-tune it. For more information, see <a href=\"https://docs.aws.amazon.com/bedrock/latest/userguide/custom-models.html\">Custom models</a>.</p>"
        }
      },
      "documentation":"<p>Information about one customization job</p>"
    },
    "ModelCustomizationList":{
      "type":"list",
      "member":{"shape":"ModelCustomization"}
    },
    "ModelIdentifier":{
      "type":"string",
      "max":2048,
      "min":1,
      "pattern":"arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:(([0-9]{12}:custom-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}(([:][a-z0-9-]{1,63}){0,2})?/[a-z0-9]{12})|(:foundation-model/([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.]?[a-z0-9-]{1,63})([:][a-z0-9-]{1,63}){0,2})))|(([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.]?[a-z0-9-]{1,63})([:][a-z0-9-]{1,63}){0,2}))|(([0-9a-zA-Z][_-]?)+)"
    },
    "ModelModality":{
      "type":"string",
      "enum":[
        "TEXT",
        "IMAGE",
        "EMBEDDING"
      ]
    },
    "ModelModalityList":{
      "type":"list",
      "member":{"shape":"ModelModality"}
    },
    "ModelName":{
      "type":"string",
      "max":63,
      "min":1,
      "pattern":"([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63})"
    },
    "NonBlankString":{
      "type":"string",
      "pattern":"[\\s\\S]*"
    },
    "OutputDataConfig":{
      "type":"structure",
      "required":["s3Uri"],
      "members":{
        "s3Uri":{
          "shape":"S3Uri",
          "documentation":"<p>The S3 URI where the output data is stored.</p>"
        }
      },
      "documentation":"<p>S3 Location of the output data.</p>"
    },
    "PaginationToken":{
      "type":"string",
      "max":2048,
      "min":1,
      "pattern":"\\S*"
    },
    "PositiveInteger":{
      "type":"integer",
      "box":true,
      "min":1
    },
    "Provider":{
      "type":"string",
      "pattern":"[A-Za-z0-9- ]{1,63}"
    },
    "ProvisionedModelArn":{
      "type":"string",
      "pattern":"arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:provisioned-model/[a-z0-9]{12}"
    },
    "ProvisionedModelId":{
      "type":"string",
      "pattern":"((([0-9a-zA-Z][_-]?)+)|(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:provisioned-model/[a-z0-9]{12}))"
    },
    "ProvisionedModelName":{
      "type":"string",
      "max":63,
      "min":1,
      "pattern":"([0-9a-zA-Z][_-]?)+"
    },
    "ProvisionedModelStatus":{
      "type":"string",
      "enum":[
        "Creating",
        "InService",
        "Updating",
        "Failed"
      ]
    },
    "ProvisionedModelSummaries":{
      "type":"list",
      "member":{"shape":"ProvisionedModelSummary"}
    },
    "ProvisionedModelSummary":{
      "type":"structure",
      "required":[
        "provisionedModelName",
        "provisionedModelArn",
        "modelArn",
        "desiredModelArn",
        "foundationModelArn",
        "modelUnits",
        "desiredModelUnits",
        "status",
        "creationTime",
        "lastModifiedTime"
      ],
      "members":{
        "provisionedModelName":{
          "shape":"ProvisionedModelName",
          "documentation":"<p>The name of the provisioned throughput.</p>"
        },
        "provisionedModelArn":{
          "shape":"ProvisionedModelArn",
          "documentation":"<p>The ARN of the provisioned throughput.</p>"
        },
        "modelArn":{
          "shape":"ModelArn",
          "documentation":"<p>The ARN of the model associated with this provisioned throughput.</p>"
        },
        "desiredModelArn":{
          "shape":"ModelArn",
          "documentation":"<p>Desired model ARN.</p>"
        },
        "foundationModelArn":{
          "shape":"FoundationModelArn",
          "documentation":"<p>Foundation model ARN.</p>"
        },
        "modelUnits":{
          "shape":"PositiveInteger",
          "documentation":"<p>The number of model units allocated.</p>"
        },
        "desiredModelUnits":{
          "shape":"PositiveInteger",
          "documentation":"<p>Desired model units.</p>"
        },
        "status":{
          "shape":"ProvisionedModelStatus",
          "documentation":"<p>Status of the provisioned throughput.</p>"
        },
        "commitmentDuration":{
          "shape":"CommitmentDuration",
          "documentation":"<p>Commitment duration for the provisioned throughput.</p>"
        },
        "commitmentExpirationTime":{
          "shape":"Timestamp",
          "documentation":"<p>Commitment expiration time for the provisioned throughput.</p>"
        },
        "creationTime":{
          "shape":"Timestamp",
          "documentation":"<p>The time that this provisioned throughput was created. </p>"
        },
        "lastModifiedTime":{
          "shape":"Timestamp",
          "documentation":"<p>The time that this provisioned throughput was last modified. </p>"
        }
      },
      "documentation":"<p>Set of fields associated with a provisioned throughput.</p>"
    },
    "PutModelInvocationLoggingConfigurationRequest":{
      "type":"structure",
      "required":["loggingConfig"],
      "members":{
        "loggingConfig":{
          "shape":"LoggingConfig",
          "documentation":"<p>The logging configuration values to set.</p>"
        }
      }
    },
    "PutModelInvocationLoggingConfigurationResponse":{
      "type":"structure",
      "members":{
      }
    },
    "ResourceNotFoundException":{
      "type":"structure",
      "members":{
        "message":{"shape":"NonBlankString"}
      },
      "documentation":"<p>The specified resource ARN was not found. Check the ARN and try your request again.</p>",
      "error":{
        "httpStatusCode":404,
        "senderFault":true
      },
      "exception":true
    },
    "RoleArn":{
      "type":"string",
      "max":2048,
      "min":0,
      "pattern":"arn:aws(-[^:]+)?:iam::([0-9]{12})?:role/.+"
    },
    "S3Config":{
      "type":"structure",
      "required":["bucketName"],
      "members":{
        "bucketName":{
          "shape":"BucketName",
          "documentation":"<p>S3 bucket name.</p>"
        },
        "keyPrefix":{
          "shape":"KeyPrefix",
          "documentation":"<p>S3 prefix. </p>"
        }
      },
      "documentation":"<p>S3 configuration for storing log data.</p>"
    },
    "S3Uri":{
      "type":"string",
      "max":1024,
      "min":1,
      "pattern":"s3://[a-z0-9][\\.\\-a-z0-9]{1,61}[a-z0-9](/.*)?"
    },
    "SecurityGroupId":{
      "type":"string",
      "max":32,
      "min":0,
      "pattern":"[-0-9a-zA-Z]+"
    },
    "SecurityGroupIds":{
      "type":"list",
      "member":{"shape":"SecurityGroupId"},
      "max":5,
      "min":1
    },
    "ServiceQuotaExceededException":{
      "type":"structure",
      "members":{
        "message":{"shape":"NonBlankString"}
      },
      "documentation":"<p>The number of requests exceeds the service quota. Resubmit your request later.</p>",
      "error":{
        "httpStatusCode":400,
        "senderFault":true
      },
      "exception":true
    },
    "SortByProvisionedModels":{
      "type":"string",
      "enum":["CreationTime"]
    },
    "SortJobsBy":{
      "type":"string",
      "enum":["CreationTime"]
    },
    "SortModelsBy":{
      "type":"string",
      "enum":["CreationTime"]
    },
    "SortOrder":{
      "type":"string",
      "enum":[
        "Ascending",
        "Descending"
      ]
    },
    "StopModelCustomizationJobRequest":{
      "type":"structure",
      "required":["jobIdentifier"],
      "members":{
        "jobIdentifier":{
          "shape":"ModelCustomizationJobIdentifier",
          "documentation":"<p>Job identifier of the job to stop.</p>",
          "location":"uri",
          "locationName":"jobIdentifier"
        }
      }
    },
    "StopModelCustomizationJobResponse":{
      "type":"structure",
      "members":{
      }
    },
    "String":{"type":"string"},
    "SubnetId":{
      "type":"string",
      "max":32,
      "min":0,
      "pattern":"[-0-9a-zA-Z]+"
    },
    "SubnetIds":{
      "type":"list",
      "member":{"shape":"SubnetId"},
      "max":16,
      "min":1
    },
    "Tag":{
      "type":"structure",
      "required":[
        "key",
        "value"
      ],
      "members":{
        "key":{
          "shape":"TagKey",
          "documentation":"<p>Key for the tag.</p>"
        },
        "value":{
          "shape":"TagValue",
          "documentation":"<p>Value for the tag.</p>"
        }
      },
      "documentation":"<p>Definition of the key/value pair for a tag.</p>"
    },
    "TagKey":{
      "type":"string",
      "max":128,
      "min":1,
      "pattern":"[a-zA-Z0-9\\s._:/=+@-]*"
    },
    "TagKeyList":{
      "type":"list",
      "member":{"shape":"TagKey"},
      "max":200,
      "min":0
    },
    "TagList":{
      "type":"list",
      "member":{"shape":"Tag"},
      "max":200,
      "min":0
    },
    "TagResourceRequest":{
      "type":"structure",
      "required":[
        "resourceARN",
        "tags"
      ],
      "members":{
        "resourceARN":{
          "shape":"TaggableResourcesArn",
          "documentation":"<p>The ARN of the resource to tag.</p>"
        },
        "tags":{
          "shape":"TagList",
          "documentation":"<p>Tags to associate with the resource.</p>"
        }
      }
    },
    "TagResourceResponse":{
      "type":"structure",
      "members":{
      }
    },
    "TagValue":{
      "type":"string",
      "max":256,
      "min":0,
      "pattern":"[a-zA-Z0-9\\s._:/=+@-]*"
    },
    "TaggableResourcesArn":{
      "type":"string",
      "max":1011,
      "min":20,
      "pattern":".*(^[a-zA-Z0-9][a-zA-Z0-9\\-]*$)|(^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:([0-9]{12}|)((:(fine-tuning-job|model-customization-job|custom-model)/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([a-z0-9-]{1,63}[.]){0,2}[a-z0-9-]{1,63}([:][a-z0-9-]{1,63}){0,2}(/[a-z0-9]{12})$)|(:provisioned-model/[a-z0-9]{12}$))).*"
    },
    "ThrottlingException":{
      "type":"structure",
      "members":{
        "message":{"shape":"NonBlankString"}
      },
      "documentation":"<p>The number of requests exceeds the limit. Resubmit your request later.</p>",
      "error":{
        "httpStatusCode":429,
        "senderFault":true
      },
      "exception":true
    },
    "Timestamp":{
      "type":"timestamp",
      "timestampFormat":"iso8601"
    },
    "TooManyTagsException":{
      "type":"structure",
      "members":{
        "message":{"shape":"NonBlankString"},
        "resourceName":{
          "shape":"TaggableResourcesArn",
          "documentation":"<p>The name of the resource with too many tags.</p>"
        }
      },
      "documentation":"<p>The request contains more tags than can be associated with a resource (50 tags per resource). The maximum number of tags includes both existing tags and those included in your current request. </p>",
      "error":{
        "httpStatusCode":400,
        "senderFault":true
      },
      "exception":true
    },
    "TrainingDataConfig":{
      "type":"structure",
      "required":["s3Uri"],
      "members":{
        "s3Uri":{
          "shape":"S3Uri",
          "documentation":"<p>The S3 URI where the training data is stored.</p>"
        }
      },
      "documentation":"<p>S3 Location of the training data.</p>"
    },
    "TrainingMetrics":{
      "type":"structure",
      "members":{
        "trainingLoss":{
          "shape":"MetricFloat",
          "documentation":"<p>Loss metric associated with the custom job.</p>"
        }
      },
      "documentation":"<p>Metrics associated with the custom job.</p>"
    },
    "UntagResourceRequest":{
      "type":"structure",
      "required":[
        "resourceARN",
        "tagKeys"
      ],
      "members":{
        "resourceARN":{
          "shape":"TaggableResourcesArn",
          "documentation":"<p>The ARN of the resource to untag.</p>"
        },
        "tagKeys":{
          "shape":"TagKeyList",
          "documentation":"<p>Tag keys of the tags to remove from the resource.</p>"
        }
      }
    },
    "UntagResourceResponse":{
      "type":"structure",
      "members":{
      }
    },
    "UpdateProvisionedModelThroughputRequest":{
      "type":"structure",
      "required":["provisionedModelId"],
      "members":{
        "provisionedModelId":{
          "shape":"ProvisionedModelId",
          "documentation":"<p>The ARN or name of the provisioned throughput to update.</p>",
          "location":"uri",
          "locationName":"provisionedModelId"
        },
        "desiredProvisionedModelName":{
          "shape":"ProvisionedModelName",
          "documentation":"<p>The new name for this provisioned throughput.</p>"
        },
        "desiredModelId":{
          "shape":"ModelIdentifier",
          "documentation":"<p>The ARN of the new model to associate with this provisioned throughput.</p>"
        }
      }
    },
    "UpdateProvisionedModelThroughputResponse":{
      "type":"structure",
      "members":{
      }
    },
    "ValidationDataConfig":{
      "type":"structure",
      "required":["validators"],
      "members":{
        "validators":{
          "shape":"Validators",
          "documentation":"<p>Information about the validators.</p>"
        }
      },
      "documentation":"<p>Array of up to 10 validators.</p>"
    },
    "ValidationException":{
      "type":"structure",
      "members":{
        "message":{"shape":"NonBlankString"}
      },
      "documentation":"<p>Input validation failed. Check your request parameters and retry the request.</p>",
      "error":{
        "httpStatusCode":400,
        "senderFault":true
      },
      "exception":true
    },
    "ValidationMetrics":{
      "type":"list",
      "member":{"shape":"ValidatorMetric"}
    },
    "Validator":{
      "type":"structure",
      "required":["s3Uri"],
      "members":{
        "s3Uri":{
          "shape":"S3Uri",
          "documentation":"<p>The S3 URI where the validation data is stored.</p>"
        }
      },
      "documentation":"<p>Information about a validator.</p>"
    },
    "ValidatorMetric":{
      "type":"structure",
      "members":{
        "validationLoss":{
          "shape":"MetricFloat",
          "documentation":"<p>The validation loss associated with this validator.</p>"
        }
      },
      "documentation":"<p>The metric for the validator.</p>"
    },
    "Validators":{
      "type":"list",
      "member":{"shape":"Validator"},
      "max":10,
      "min":0
    },
    "VpcConfig":{
      "type":"structure",
      "required":[
        "subnetIds",
        "securityGroupIds"
      ],
      "members":{
        "subnetIds":{
          "shape":"SubnetIds",
          "documentation":"<p>VPC configuration subnets.</p>"
        },
        "securityGroupIds":{
          "shape":"SecurityGroupIds",
          "documentation":"<p>VPC configuration security group Ids.</p>"
        }
      },
      "documentation":"<p>VPC configuration.</p>"
    }
  },
  "documentation":"<p>Describes the API operations for creating and managing Amazon Bedrock models.</p>"
}
¿Qué es la limpieza dental de perros? - Clínica veterinaria


Es la eliminación del sarro y la placa adherida a la superficie de los dientes mediante un equipo de ultrasonidos que garantiza la integridad de las piezas dentales a la vez que elimina en profundidad cualquier resto de suciedad.

A continuación se procede al pulido de los dientes mediante una fresa especial que elimina la placa bacteriana y devuelve a los dientes el aspecto sano que deben tener.

Una vez terminado todo el proceso, se mantiene al perro en observación hasta que se despierta de la anestesia, bajo la atenta supervisión de un veterinario.

¿Cada cuánto tiempo tengo que hacerle una limpieza dental a mi perro?

A partir de cierta edad, los perros pueden necesitar una limpieza dental anual o bianual. Depende de cada caso. En líneas generales, puede decirse que los perros de razas pequeñas suelen acumular más sarro y suelen necesitar una atención mayor en cuanto a higiene dental.


Riesgos de una mala higiene


Los riesgos más evidentes de una mala higiene dental en los perros son los siguientes:

  • Cuando la acumulación de sarro no se trata, se puede producir una inflamación y retracción de las encías que puede descalzar el diente y provocar caídas.
  • Mal aliento (halitosis).
  • Sarro perros
  • Puede ir a más
  • Las bacterias de la placa pueden trasladarse a través del torrente circulatorio a órganos vitales como el corazón ocasionando problemas de endocarditis en las válvulas. Las bacterias pueden incluso acantonarse en huesos (La osteomielitis es la infección ósea, tanto cortical como medular) provocando mucho dolor y una artritis séptica).

¿Cómo se forma el sarro?

El sarro es la calcificación de la placa dental. Los restos de alimentos, junto con las bacterias presentes en la boca, van a formar la placa bacteriana o placa dental. Si la placa no se retira, al mezclarse con la saliva y los minerales presentes en ella, reaccionará formando una costra. La placa se calcifica y se forma el sarro.

El sarro, cuando se forma, es de color blanquecino pero a medida que pasa el tiempo se va poniendo amarillo y luego marrón.

Síntomas de una pobre higiene dental
La señal más obvia de una mala salud dental canina es el mal aliento.

Sin embargo, a veces no es tan fácil de detectar
Y hay perros que no se dejan abrir la boca por su dueño. Por ejemplo…

Recientemente nos trajeron a la clínica a un perro que parpadeaba de un ojo y decía su dueño que le picaba un lado de la cara. Tenía molestias y dificultad para comer, lo que había llevado a sus dueños a comprarle comida blanda (que suele ser un poco más cara y llevar más contenido en grasa) durante medio año. Después de una exploración oftalmológica, nos dimos cuenta de que el ojo tenía una úlcera en la córnea probablemente de rascarse . Además, el canto lateral del ojo estaba inflamado. Tenía lo que en humanos llamamos flemón pero como era un perro de pelo largo, no se le notaba a simple vista. Al abrirle la boca nos llamó la atención el ver una muela llena de sarro. Le realizamos una radiografía y encontramos una fístula que llegaba hasta la parte inferior del ojo.

Le tuvimos que extraer la muela. Tras esto, el ojo se curó completamente con unos colirios y una lentilla protectora de úlcera. Afortunadamente, la úlcera no profundizó y no perforó el ojo. Ahora el perro come perfectamente a pesar de haber perdido una muela.

¿Cómo mantener la higiene dental de tu perro?
Hay varias maneras de prevenir problemas derivados de la salud dental de tu perro.

Limpiezas de dientes en casa
Es recomendable limpiar los dientes de tu perro semanal o diariamente si se puede. Existe una gran variedad de productos que se pueden utilizar:

Pastas de dientes.
Cepillos de dientes o dedales para el dedo índice, que hacen más fácil la limpieza.
Colutorios para echar en agua de bebida o directamente sobre el diente en líquido o en spray.

En la Clínica Tus Veterinarios enseñamos a nuestros clientes a tomar el hábito de limpiar los dientes de sus perros desde que son cachorros. Esto responde a nuestro compromiso con la prevención de enfermedades caninas.

Hoy en día tenemos muchos clientes que limpian los dientes todos los días a su mascota, y como resultado, se ahorran el dinero de hacer limpiezas dentales profesionales y consiguen una mejor salud de su perro.


Limpiezas dentales profesionales de perros y gatos

Recomendamos hacer una limpieza dental especializada anualmente. La realizamos con un aparato de ultrasonidos que utiliza agua para quitar el sarro. Después, procedemos a pulir los dientes con un cepillo de alta velocidad y una pasta especial. Hacemos esto para proteger el esmalte.

La frecuencia de limpiezas dentales necesaria varía mucho entre razas. En general, las razas grandes tienen buena calidad de esmalte, por lo que no necesitan hacerlo tan a menudo e incluso pueden pasarse la vida sin requerir una limpieza. Sin embargo, razas pequeñas como el Yorkshire o el Maltés, deben hacérselas todos los años desde cachorros si se quiere conservar sus piezas dentales.

Otro factor fundamental es la calidad del pienso. Algunas marcas han diseñado croquetas que limpian la superficie del diente y de la muela al masticarse.

Ultrasonido para perros

¿Se necesita anestesia para las limpiezas dentales de perros y gatos?

La limpieza dental en perros no es una técnica que pueda practicarse sin anestesia general , aunque hay veces que los propietarios no quieren anestesiar y si tiene poco sarro y el perro es muy bueno se puede intentar…… , pero no se va a poder pulir ni acceder a todas la zona de la boca …. Además los limpiadores dentales van a irrigar agua y hay riesgo de aspiración a vías respiratorias si no se realiza una anestesia correcta con intubación traqueal . En resumen , sin anestesia no se va hacer una correcta limpieza dental.

Tampoco sirve la sedación ya que necesitamos que el animal esté totalmente quieto, y el veterinario tenga un acceso completo a todas sus piezas dentales y encías.

Alimentos para la limpieza dental

Hay que tener cierto cuidado a la hora de comprar determinados alimentos porque no todos son saludables. Algunos tienen demasiado contenido graso, que en exceso puede causar problemas cardiovasculares y obesidad.

Los mejores alimentos para los dientes son aquellos que están elaborados por empresas farmacéuticas y llevan componentes químicos con tratamientos específicos para el diente del perro. Esto implica no solo limpieza a través de la acción mecánica de morder sino también un tratamiento antibacteriano para prevenir el sarro.

Conclusión

Si eres como la mayoría de dueños, por falta de tiempo , es probable que no estés prestando la suficiente atención a la limpieza dental de tu perro. Por eso te animamos a que comiences a limpiar los dientes de tu perro y consideres atender a su higiene bucal con frecuencia.

Estas simples medidas pueden conllevar a que tu perro tenga una vida más larga y mucho más saludable.

Si te resulta imposible introducir un cepillo de dientes a tu perro en la boca, pásate con él por clínica Tus Veterinarios y te explicamos cómo hacerlo.

Necesitas hacer una limpieza dental profesional a tu mascota?
Llámanos al 622575274 o contacta con nosotros

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

¡Hola!