Class GenerateContentConfig

  • All Implemented Interfaces:

    
    public abstract class GenerateContentConfig
    extends JsonSerializable
                        

    Optional model configuration parameters.

    For more information, see `Content generation parameters `_.

    • Constructor Detail

      • GenerateContentConfig

        GenerateContentConfig()
    • Method Detail

      • systemInstruction

         abstract Optional<Content> systemInstruction()

        Instructions for the model to steer it toward better performance. For example, "Answer as concisely as possible" or "Don't use technical terms in your response".

      • temperature

         abstract Optional<Float> temperature()

        Value that controls the degree of randomness in token selection. Lower temperatures are good for prompts that require a less open-ended or creative response, while higher temperatures can lead to more diverse or creative results.

      • topP

         abstract Optional<Float> topP()

        Tokens are selected from the most to least probable until the sum of their probabilities equals this value. Use a lower value for less random responses and a higher value for more random responses.

      • topK

         abstract Optional<Float> topK()

        For each token selection step, the ``top_k`` tokens with the highest probabilities are sampled. Then tokens are further filtered based on ``top_p`` with the final token selected using temperature sampling. Use a lower number for less random responses and a higher number for more random responses.

      • stopSequences

         abstract Optional<List<String>> stopSequences()

        List of strings that tells the model to stop generating text if one of the strings is encountered in the response.

      • responseLogprobs

         abstract Optional<Boolean> responseLogprobs()

        Whether to return the log probabilities of the tokens that were chosen by the model at each step.

      • logprobs

         abstract Optional<Integer> logprobs()

        Number of top candidate tokens to return the log probabilities for at each generation step.

      • presencePenalty

         abstract Optional<Float> presencePenalty()

        Positive values penalize tokens that already appear in the generated text, increasing the probability of generating more diverse content.

      • frequencyPenalty

         abstract Optional<Float> frequencyPenalty()

        Positive values penalize tokens that repeatedly appear in the generated text, increasing the probability of generating more diverse content.

      • seed

         abstract Optional<Integer> seed()

        When ``seed`` is fixed to a specific number, the model makes a best effort to provide the same response for repeated requests. By default, a random number is used.

      • responseMimeType

         abstract Optional<String> responseMimeType()

        Output response mimetype of the generated candidate text. Supported mimetype: - `text/plain`: (default) Text output. - `application/json`: JSON response in the candidates. The model needs to be prompted to output the appropriate response type, otherwise the behavior is undefined.

      • responseSchema

         abstract Optional<Schema> responseSchema()

        The `Schema` object allows the definition of input and output data types. These types can be objects, but also primitives and arrays. Represents a select subset of an [OpenAPI 3.0 schema object](https://spec.openapis.org/oas/v3.0.3#schema). If set, a compatible response_mime_type must also be set. Compatible mimetypes: `application/json`: Schema for JSON response.

        If `response_schema` doesn't process your schema correctly, try using `response_json_schema` instead.

      • responseJsonSchema

         abstract Optional<Object> responseJsonSchema()

        Optional. Output schema of the generated response. This is an alternative to `response_schema` that accepts [JSON Schema](https://json-schema.org/). If set, `response_schema` must be omitted, but `response_mime_type` is required. While the full JSON Schema may be sent, not all features are supported. Specifically, only the following properties are supported: - `$id` - `$defs` - `$ref` - `$anchor` - `type` - `format` - `title` - `description` - `enum` (for strings and numbers) - `items` - `prefixItems` - `minItems` - `maxItems` - `minimum` - `maximum` - `anyOf` - `oneOf` (interpreted the same as `anyOf`) - `properties` - `additionalProperties` - `required` The non-standard `propertyOrdering` property may also be set. Cyclic references are unrolled to a limited degree and, as such, may only be used within non-required properties. (Nullable properties are not sufficient.) If `$ref` is set on a sub-schema, no other properties, except for than those starting as a `$`, may be set.

      • tools

         abstract Optional<List<Tool>> tools()

        Code that enables the system to interact with external systems to perform an action outside of the knowledge and scope of the model.

      • enableEnhancedCivicAnswers

         abstract Optional<Boolean> enableEnhancedCivicAnswers()

        Enables enhanced civic answers. It may not be available for all models. This field is not supported in Gemini Enterprise Agent Platform.

      • modelArmorConfig

         abstract Optional<ModelArmorConfig> modelArmorConfig()

        Settings for prompt and response sanitization using the Model Armor service. If supplied, safety_settings must not be supplied.