Class Attribution

java.lang.Object
com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessage
com.google.protobuf.GeneratedMessage
com.google.cloud.aiplatform.v1.Attribution
All Implemented Interfaces:
AttributionOrBuilder, com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Serializable

@Generated public final class Attribution extends com.google.protobuf.GeneratedMessage implements AttributionOrBuilder
 Attribution that explains a particular prediction output.
 
Protobuf type google.cloud.aiplatform.v1.Attribution
See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static final class 
    Attribution that explains a particular prediction output.

    Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessage

    com.google.protobuf.GeneratedMessage.ExtendableBuilder<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>,BuilderT extends com.google.protobuf.GeneratedMessage.ExtendableBuilder<MessageT,BuilderT>>, com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessage.ExtendableMessageOrBuilder<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessage.FieldAccessorTable, com.google.protobuf.GeneratedMessage.GeneratedExtension<ContainingT extends com.google.protobuf.Message,T extends Object>, com.google.protobuf.GeneratedMessage.UnusedPrivateParameter

    Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessage

    com.google.protobuf.AbstractMessage.BuilderParent

    Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessageLite

    com.google.protobuf.AbstractMessageLite.InternalOneOfEnum
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
     
    static final int
     
    static final int
     
    static final int
     
    static final int
     
    static final int
     
    static final int
     

    Fields inherited from class com.google.protobuf.GeneratedMessage

    alwaysUseFieldBuilders, loggedPre22TypeNames, unknownFields

    Fields inherited from class com.google.protobuf.AbstractMessage

    memoizedSize

    Fields inherited from class com.google.protobuf.AbstractMessageLite

    memoizedHashCode
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
     
    double
    Output only.
    double
    Output only.
     
     
    static final com.google.protobuf.Descriptors.Descriptor
     
    com.google.protobuf.Value
    Output only.
    com.google.protobuf.ValueOrBuilder
    Output only.
    double
    Output only.
    Output only.
    com.google.protobuf.ByteString
    Output only.
    int
    getOutputIndex(int index)
    Output only.
    int
    Output only.
    Output only.
    Output only.
    com.google.protobuf.ByteString
    Output only.
    com.google.protobuf.Parser<Attribution>
     
    int
     
    boolean
    Output only.
    int
     
    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
     
    final boolean
     
     
     
     
    newBuilderForType(com.google.protobuf.AbstractMessage.BuilderParent parent)
     
     
    parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
    parseFrom(byte[] data)
     
    parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
    parseFrom(com.google.protobuf.ByteString data)
     
    parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
    parseFrom(com.google.protobuf.CodedInputStream input)
     
    parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
     
    parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
     
    parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
    static com.google.protobuf.Parser<Attribution>
     
     
    void
    writeTo(com.google.protobuf.CodedOutputStream output)
     

    Methods inherited from class com.google.protobuf.GeneratedMessage

    canUseUnsafe, computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyList, emptyLongList, getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, isStringEmpty, makeExtensionsImmutable, makeMutableCopy, makeMutableCopy, mergeFromAndMakeImmutableInternal, newFileScopedGeneratedExtension, newInstance, newMessageScopedGeneratedExtension, parseDelimitedWithIOException, parseDelimitedWithIOException, parseUnknownField, parseUnknownFieldProto3, parseWithIOException, parseWithIOException, parseWithIOException, parseWithIOException, serializeBooleanMapTo, serializeIntegerMapTo, serializeLongMapTo, serializeStringMapTo, writeReplace, writeString, writeStringNoTag

    Methods inherited from class com.google.protobuf.AbstractMessage

    findInitializationErrors, getInitializationErrorString, hashFields, toString

    Methods inherited from class com.google.protobuf.AbstractMessageLite

    addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface com.google.protobuf.MessageLite

    toByteArray, toByteString, writeDelimitedTo, writeTo

    Methods inherited from interface com.google.protobuf.MessageOrBuilder

    findInitializationErrors, getAllFields, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
  • Field Details

    • BASELINE_OUTPUT_VALUE_FIELD_NUMBER

      public static final int BASELINE_OUTPUT_VALUE_FIELD_NUMBER
      See Also:
    • INSTANCE_OUTPUT_VALUE_FIELD_NUMBER

      public static final int INSTANCE_OUTPUT_VALUE_FIELD_NUMBER
      See Also:
    • FEATURE_ATTRIBUTIONS_FIELD_NUMBER

      public static final int FEATURE_ATTRIBUTIONS_FIELD_NUMBER
      See Also:
    • OUTPUT_INDEX_FIELD_NUMBER

      public static final int OUTPUT_INDEX_FIELD_NUMBER
      See Also:
    • OUTPUT_DISPLAY_NAME_FIELD_NUMBER

      public static final int OUTPUT_DISPLAY_NAME_FIELD_NUMBER
      See Also:
    • APPROXIMATION_ERROR_FIELD_NUMBER

      public static final int APPROXIMATION_ERROR_FIELD_NUMBER
      See Also:
    • OUTPUT_NAME_FIELD_NUMBER

      public static final int OUTPUT_NAME_FIELD_NUMBER
      See Also:
  • Method Details

    • getDescriptor

      public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
    • internalGetFieldAccessorTable

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessage
    • getBaselineOutputValue

      public double getBaselineOutputValue()
       Output only. Model predicted output if the input instance is constructed
       from the baselines of all the features defined in
       [ExplanationMetadata.inputs][google.cloud.aiplatform.v1.ExplanationMetadata.inputs].
       The field name of the output is determined by the key in
       [ExplanationMetadata.outputs][google.cloud.aiplatform.v1.ExplanationMetadata.outputs].
      
       If the Model's predicted output has multiple dimensions (rank > 1), this is
       the value in the output located by
       [output_index][google.cloud.aiplatform.v1.Attribution.output_index].
      
       If there are multiple baselines, their output values are averaged.
       
      double baseline_output_value = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      getBaselineOutputValue in interface AttributionOrBuilder
      Returns:
      The baselineOutputValue.
    • getInstanceOutputValue

      public double getInstanceOutputValue()
       Output only. Model predicted output on the corresponding [explanation
       instance][ExplainRequest.instances]. The field name of the output is
       determined by the key in
       [ExplanationMetadata.outputs][google.cloud.aiplatform.v1.ExplanationMetadata.outputs].
      
       If the Model predicted output has multiple dimensions, this is the value in
       the output located by
       [output_index][google.cloud.aiplatform.v1.Attribution.output_index].
       
      double instance_output_value = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      getInstanceOutputValue in interface AttributionOrBuilder
      Returns:
      The instanceOutputValue.
    • hasFeatureAttributions

      public boolean hasFeatureAttributions()
       Output only. Attributions of each explained feature. Features are extracted
       from the [prediction
       instances][google.cloud.aiplatform.v1.ExplainRequest.instances] according
       to [explanation metadata for
       inputs][google.cloud.aiplatform.v1.ExplanationMetadata.inputs].
      
       The value is a struct, whose keys are the name of the feature. The values
       are how much the feature in the
       [instance][google.cloud.aiplatform.v1.ExplainRequest.instances] contributed
       to the predicted result.
      
       The format of the value is determined by the feature's input format:
      
       * If the feature is a scalar value, the attribution value is a
       [floating number][google.protobuf.Value.number_value].
      
       * If the feature is an array of scalar values, the attribution value is
       an [array][google.protobuf.Value.list_value].
      
       * If the feature is a struct, the attribution value is a
       [struct][google.protobuf.Value.struct_value]. The keys in the
       attribution value struct are the same as the keys in the feature
       struct. The formats of the values in the attribution struct are
       determined by the formats of the values in the feature struct.
      
       The
       [ExplanationMetadata.feature_attributions_schema_uri][google.cloud.aiplatform.v1.ExplanationMetadata.feature_attributions_schema_uri]
       field, pointed to by the
       [ExplanationSpec][google.cloud.aiplatform.v1.ExplanationSpec] field of the
       [Endpoint.deployed_models][google.cloud.aiplatform.v1.Endpoint.deployed_models]
       object, points to the schema file that describes the features and their
       attribution values (if it is populated).
       
      .google.protobuf.Value feature_attributions = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      hasFeatureAttributions in interface AttributionOrBuilder
      Returns:
      Whether the featureAttributions field is set.
    • getFeatureAttributions

      public com.google.protobuf.Value getFeatureAttributions()
       Output only. Attributions of each explained feature. Features are extracted
       from the [prediction
       instances][google.cloud.aiplatform.v1.ExplainRequest.instances] according
       to [explanation metadata for
       inputs][google.cloud.aiplatform.v1.ExplanationMetadata.inputs].
      
       The value is a struct, whose keys are the name of the feature. The values
       are how much the feature in the
       [instance][google.cloud.aiplatform.v1.ExplainRequest.instances] contributed
       to the predicted result.
      
       The format of the value is determined by the feature's input format:
      
       * If the feature is a scalar value, the attribution value is a
       [floating number][google.protobuf.Value.number_value].
      
       * If the feature is an array of scalar values, the attribution value is
       an [array][google.protobuf.Value.list_value].
      
       * If the feature is a struct, the attribution value is a
       [struct][google.protobuf.Value.struct_value]. The keys in the
       attribution value struct are the same as the keys in the feature
       struct. The formats of the values in the attribution struct are
       determined by the formats of the values in the feature struct.
      
       The
       [ExplanationMetadata.feature_attributions_schema_uri][google.cloud.aiplatform.v1.ExplanationMetadata.feature_attributions_schema_uri]
       field, pointed to by the
       [ExplanationSpec][google.cloud.aiplatform.v1.ExplanationSpec] field of the
       [Endpoint.deployed_models][google.cloud.aiplatform.v1.Endpoint.deployed_models]
       object, points to the schema file that describes the features and their
       attribution values (if it is populated).
       
      .google.protobuf.Value feature_attributions = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      getFeatureAttributions in interface AttributionOrBuilder
      Returns:
      The featureAttributions.
    • getFeatureAttributionsOrBuilder

      public com.google.protobuf.ValueOrBuilder getFeatureAttributionsOrBuilder()
       Output only. Attributions of each explained feature. Features are extracted
       from the [prediction
       instances][google.cloud.aiplatform.v1.ExplainRequest.instances] according
       to [explanation metadata for
       inputs][google.cloud.aiplatform.v1.ExplanationMetadata.inputs].
      
       The value is a struct, whose keys are the name of the feature. The values
       are how much the feature in the
       [instance][google.cloud.aiplatform.v1.ExplainRequest.instances] contributed
       to the predicted result.
      
       The format of the value is determined by the feature's input format:
      
       * If the feature is a scalar value, the attribution value is a
       [floating number][google.protobuf.Value.number_value].
      
       * If the feature is an array of scalar values, the attribution value is
       an [array][google.protobuf.Value.list_value].
      
       * If the feature is a struct, the attribution value is a
       [struct][google.protobuf.Value.struct_value]. The keys in the
       attribution value struct are the same as the keys in the feature
       struct. The formats of the values in the attribution struct are
       determined by the formats of the values in the feature struct.
      
       The
       [ExplanationMetadata.feature_attributions_schema_uri][google.cloud.aiplatform.v1.ExplanationMetadata.feature_attributions_schema_uri]
       field, pointed to by the
       [ExplanationSpec][google.cloud.aiplatform.v1.ExplanationSpec] field of the
       [Endpoint.deployed_models][google.cloud.aiplatform.v1.Endpoint.deployed_models]
       object, points to the schema file that describes the features and their
       attribution values (if it is populated).
       
      .google.protobuf.Value feature_attributions = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      getFeatureAttributionsOrBuilder in interface AttributionOrBuilder
    • getOutputIndexList

      public List<Integer> getOutputIndexList()
       Output only. The index that locates the explained prediction output.
      
       If the prediction output is a scalar value, output_index is not populated.
       If the prediction output has multiple dimensions, the length of the
       output_index list is the same as the number of dimensions of the output.
       The i-th element in output_index is the element index of the i-th dimension
       of the output vector. Indices start from 0.
       
      repeated int32 output_index = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      getOutputIndexList in interface AttributionOrBuilder
      Returns:
      A list containing the outputIndex.
    • getOutputIndexCount

      public int getOutputIndexCount()
       Output only. The index that locates the explained prediction output.
      
       If the prediction output is a scalar value, output_index is not populated.
       If the prediction output has multiple dimensions, the length of the
       output_index list is the same as the number of dimensions of the output.
       The i-th element in output_index is the element index of the i-th dimension
       of the output vector. Indices start from 0.
       
      repeated int32 output_index = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      getOutputIndexCount in interface AttributionOrBuilder
      Returns:
      The count of outputIndex.
    • getOutputIndex

      public int getOutputIndex(int index)
       Output only. The index that locates the explained prediction output.
      
       If the prediction output is a scalar value, output_index is not populated.
       If the prediction output has multiple dimensions, the length of the
       output_index list is the same as the number of dimensions of the output.
       The i-th element in output_index is the element index of the i-th dimension
       of the output vector. Indices start from 0.
       
      repeated int32 output_index = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      getOutputIndex in interface AttributionOrBuilder
      Parameters:
      index - The index of the element to return.
      Returns:
      The outputIndex at the given index.
    • getOutputDisplayName

      public String getOutputDisplayName()
       Output only. The display name of the output identified by
       [output_index][google.cloud.aiplatform.v1.Attribution.output_index]. For
       example, the predicted class name by a multi-classification Model.
      
       This field is only populated iff the Model predicts display names as a
       separate field along with the explained output. The predicted display name
       must has the same shape of the explained output, and can be located using
       output_index.
       
      string output_display_name = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      getOutputDisplayName in interface AttributionOrBuilder
      Returns:
      The outputDisplayName.
    • getOutputDisplayNameBytes

      public com.google.protobuf.ByteString getOutputDisplayNameBytes()
       Output only. The display name of the output identified by
       [output_index][google.cloud.aiplatform.v1.Attribution.output_index]. For
       example, the predicted class name by a multi-classification Model.
      
       This field is only populated iff the Model predicts display names as a
       separate field along with the explained output. The predicted display name
       must has the same shape of the explained output, and can be located using
       output_index.
       
      string output_display_name = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      getOutputDisplayNameBytes in interface AttributionOrBuilder
      Returns:
      The bytes for outputDisplayName.
    • getApproximationError

      public double getApproximationError()
       Output only. Error of
       [feature_attributions][google.cloud.aiplatform.v1.Attribution.feature_attributions]
       caused by approximation used in the explanation method. Lower value means
       more precise attributions.
      
       * For Sampled Shapley
       [attribution][google.cloud.aiplatform.v1.ExplanationParameters.sampled_shapley_attribution],
       increasing
       [path_count][google.cloud.aiplatform.v1.SampledShapleyAttribution.path_count]
       might reduce the error.
       * For Integrated Gradients
       [attribution][google.cloud.aiplatform.v1.ExplanationParameters.integrated_gradients_attribution],
       increasing
       [step_count][google.cloud.aiplatform.v1.IntegratedGradientsAttribution.step_count]
       might reduce the error.
       * For [XRAI
       attribution][google.cloud.aiplatform.v1.ExplanationParameters.xrai_attribution],
       increasing
       [step_count][google.cloud.aiplatform.v1.XraiAttribution.step_count] might
       reduce the error.
      
       See [this introduction](/vertex-ai/docs/explainable-ai/overview)
       for more information.
       
      double approximation_error = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      getApproximationError in interface AttributionOrBuilder
      Returns:
      The approximationError.
    • getOutputName

      public String getOutputName()
       Output only. Name of the explain output. Specified as the key in
       [ExplanationMetadata.outputs][google.cloud.aiplatform.v1.ExplanationMetadata.outputs].
       
      string output_name = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      getOutputName in interface AttributionOrBuilder
      Returns:
      The outputName.
    • getOutputNameBytes

      public com.google.protobuf.ByteString getOutputNameBytes()
       Output only. Name of the explain output. Specified as the key in
       [ExplanationMetadata.outputs][google.cloud.aiplatform.v1.ExplanationMetadata.outputs].
       
      string output_name = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      getOutputNameBytes in interface AttributionOrBuilder
      Returns:
      The bytes for outputName.
    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessage
    • writeTo

      public void writeTo(com.google.protobuf.CodedOutputStream output) throws IOException
      Specified by:
      writeTo in interface com.google.protobuf.MessageLite
      Overrides:
      writeTo in class com.google.protobuf.GeneratedMessage
      Throws:
      IOException
    • getSerializedSize

      public int getSerializedSize()
      Specified by:
      getSerializedSize in interface com.google.protobuf.MessageLite
      Overrides:
      getSerializedSize in class com.google.protobuf.GeneratedMessage
    • equals

      public boolean equals(Object obj)
      Specified by:
      equals in interface com.google.protobuf.Message
      Overrides:
      equals in class com.google.protobuf.AbstractMessage
    • hashCode

      public int hashCode()
      Specified by:
      hashCode in interface com.google.protobuf.Message
      Overrides:
      hashCode in class com.google.protobuf.AbstractMessage
    • parseFrom

      public static Attribution parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Attribution parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Attribution parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Attribution parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Attribution parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Attribution parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Attribution parseFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static Attribution parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static Attribution parseDelimitedFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static Attribution parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseFrom

      public static Attribution parseFrom(com.google.protobuf.CodedInputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static Attribution parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • newBuilderForType

      public Attribution.Builder newBuilderForType()
      Specified by:
      newBuilderForType in interface com.google.protobuf.Message
      Specified by:
      newBuilderForType in interface com.google.protobuf.MessageLite
    • newBuilder

      public static Attribution.Builder newBuilder()
    • newBuilder

      public static Attribution.Builder newBuilder(Attribution prototype)
    • toBuilder

      public Attribution.Builder toBuilder()
      Specified by:
      toBuilder in interface com.google.protobuf.Message
      Specified by:
      toBuilder in interface com.google.protobuf.MessageLite
    • newBuilderForType

      protected Attribution.Builder newBuilderForType(com.google.protobuf.AbstractMessage.BuilderParent parent)
      Overrides:
      newBuilderForType in class com.google.protobuf.AbstractMessage
    • getDefaultInstance

      public static Attribution getDefaultInstance()
    • parser

      public static com.google.protobuf.Parser<Attribution> parser()
    • getParserForType

      public com.google.protobuf.Parser<Attribution> getParserForType()
      Specified by:
      getParserForType in interface com.google.protobuf.Message
      Specified by:
      getParserForType in interface com.google.protobuf.MessageLite
      Overrides:
      getParserForType in class com.google.protobuf.GeneratedMessage
    • getDefaultInstanceForType

      public Attribution getDefaultInstanceForType()
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder