@java.lang.Override
  public int hashCode() {
    if (memoizedHashCode != 0) {
      return memoizedHashCode;
    }
    int hash = 41;
    hash = (19 * hash) + getDescriptor().hashCode();
    hash = (37 * hash) + MODEL_FIELD_NUMBER;
    hash = (53 * hash) + getModel().hashCode();
    if (getContentsCount() > 0) {
      hash = (37 * hash) + CONTENTS_FIELD_NUMBER;
      hash = (53 * hash) + getContentsList().hashCode();
    }
    if (hasSystemInstruction()) {
      hash = (37 * hash) + SYSTEM_INSTRUCTION_FIELD_NUMBER;
      hash = (53 * hash) + getSystemInstruction().hashCode();
    }
    hash = (37 * hash) + CACHED_CONTENT_FIELD_NUMBER;
    hash = (53 * hash) + getCachedContent().hashCode();
    if (getToolsCount() > 0) {
      hash = (37 * hash) + TOOLS_FIELD_NUMBER;
      hash = (53 * hash) + getToolsList().hashCode();
    }
    if (hasToolConfig()) {
      hash = (37 * hash) + TOOL_CONFIG_FIELD_NUMBER;
      hash = (53 * hash) + getToolConfig().hashCode();
    }
    if (!internalGetLabels().getMap().isEmpty()) {
      hash = (37 * hash) + LABELS_FIELD_NUMBER;
      hash = (53 * hash) + internalGetLabels().hashCode();
    }
    if (getSafetySettingsCount() > 0) {
      hash = (37 * hash) + SAFETY_SETTINGS_FIELD_NUMBER;
      hash = (53 * hash) + getSafetySettingsList().hashCode();
    }
    if (hasGenerationConfig()) {
      hash = (37 * hash) + GENERATION_CONFIG_FIELD_NUMBER;
      hash = (53 * hash) + getGenerationConfig().hashCode();
    }
    hash = (29 * hash) + getUnknownFields().hashCode();
    memoizedHashCode = hash;
    return hash;
  }
<pre>
Optional. Generation config.
</pre>

<code>
.google.cloud.vertexai.v1.GenerationConfig generation_config = 4 [(.google.api.field_behavior) = OPTIONAL];
</code>
java-vertexai/proto-google-cloud-vertexai-v1/src/main/java/com/google/cloud/vertexai/api/GenerateContentRequest.java