# ChatGenerationParams


## Fields

| Field                                                                                                                                                                                                                                       | Type                                                                                                                                                                                                                                        | Required                                                                                                                                                                                                                                    | Description                                                                                                                                                                                                                                 |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `provider`                                                                                                                                                                                                                                  | [OptionalNullable[components.ChatGenerationParamsProvider]](../components/chatgenerationparamsprovider.md)                                                                                                                                  | :heavy_minus_sign:                                                                                                                                                                                                                          | When multiple model providers are available, optionally indicate your routing preference.                                                                                                                                                   |
| `plugins`                                                                                                                                                                                                                                   | List[[components.ChatGenerationParamsPluginUnion](../components/chatgenerationparamspluginunion.md)]                                                                                                                                        | :heavy_minus_sign:                                                                                                                                                                                                                          | Plugins you want to enable for this request, including their settings.                                                                                                                                                                      |
| `route`                                                                                                                                                                                                                                     | [OptionalNullable[components.Route]](../components/route.md)                                                                                                                                                                                | :heavy_minus_sign:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |
| `user`                                                                                                                                                                                                                                      | *Optional[str]*                                                                                                                                                                                                                             | :heavy_minus_sign:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |
| `session_id`                                                                                                                                                                                                                                | *Optional[str]*                                                                                                                                                                                                                             | :heavy_minus_sign:                                                                                                                                                                                                                          | A unique identifier for grouping related requests (e.g., a conversation or agent workflow) for observability. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 128 characters. |
| `messages`                                                                                                                                                                                                                                  | List[[components.Message](../components/message.md)]                                                                                                                                                                                        | :heavy_check_mark:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |
| `model`                                                                                                                                                                                                                                     | *Optional[str]*                                                                                                                                                                                                                             | :heavy_minus_sign:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |
| `models`                                                                                                                                                                                                                                    | List[*str*]                                                                                                                                                                                                                                 | :heavy_minus_sign:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |
| `frequency_penalty`                                                                                                                                                                                                                         | *OptionalNullable[float]*                                                                                                                                                                                                                   | :heavy_minus_sign:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |
| `logit_bias`                                                                                                                                                                                                                                | Dict[str, *float*]                                                                                                                                                                                                                          | :heavy_minus_sign:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |
| `logprobs`                                                                                                                                                                                                                                  | *OptionalNullable[bool]*                                                                                                                                                                                                                    | :heavy_minus_sign:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |
| `top_logprobs`                                                                                                                                                                                                                              | *OptionalNullable[float]*                                                                                                                                                                                                                   | :heavy_minus_sign:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |
| `max_completion_tokens`                                                                                                                                                                                                                     | *OptionalNullable[float]*                                                                                                                                                                                                                   | :heavy_minus_sign:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |
| `max_tokens`                                                                                                                                                                                                                                | *OptionalNullable[float]*                                                                                                                                                                                                                   | :heavy_minus_sign:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |
| `metadata`                                                                                                                                                                                                                                  | Dict[str, *str*]                                                                                                                                                                                                                            | :heavy_minus_sign:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |
| `presence_penalty`                                                                                                                                                                                                                          | *OptionalNullable[float]*                                                                                                                                                                                                                   | :heavy_minus_sign:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |
| `reasoning`                                                                                                                                                                                                                                 | [Optional[components.Reasoning]](../components/reasoning.md)                                                                                                                                                                                | :heavy_minus_sign:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |
| `response_format`                                                                                                                                                                                                                           | [Optional[components.ChatGenerationParamsResponseFormatUnion]](../components/chatgenerationparamsresponseformatunion.md)                                                                                                                    | :heavy_minus_sign:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |
| `seed`                                                                                                                                                                                                                                      | *OptionalNullable[int]*                                                                                                                                                                                                                     | :heavy_minus_sign:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |
| `stop`                                                                                                                                                                                                                                      | [OptionalNullable[components.ChatGenerationParamsStop]](../components/chatgenerationparamsstop.md)                                                                                                                                          | :heavy_minus_sign:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |
| `stream`                                                                                                                                                                                                                                    | *Optional[bool]*                                                                                                                                                                                                                            | :heavy_minus_sign:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |
| `stream_options`                                                                                                                                                                                                                            | [OptionalNullable[components.ChatStreamOptions]](../components/chatstreamoptions.md)                                                                                                                                                        | :heavy_minus_sign:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |
| `temperature`                                                                                                                                                                                                                               | *OptionalNullable[float]*                                                                                                                                                                                                                   | :heavy_minus_sign:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |
| `tool_choice`                                                                                                                                                                                                                               | *Optional[Any]*                                                                                                                                                                                                                             | :heavy_minus_sign:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |
| `tools`                                                                                                                                                                                                                                     | List[[components.ToolDefinitionJSON](../components/tooldefinitionjson.md)]                                                                                                                                                                  | :heavy_minus_sign:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |
| `top_p`                                                                                                                                                                                                                                     | *OptionalNullable[float]*                                                                                                                                                                                                                   | :heavy_minus_sign:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |
| `debug`                                                                                                                                                                                                                                     | [Optional[components.Debug]](../components/debug.md)                                                                                                                                                                                        | :heavy_minus_sign:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |
| `image_config`                                                                                                                                                                                                                              | Dict[str, [components.ChatGenerationParamsImageConfig](../components/chatgenerationparamsimageconfig.md)]                                                                                                                                   | :heavy_minus_sign:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |
| `modalities`                                                                                                                                                                                                                                | List[[components.Modality](../components/modality.md)]                                                                                                                                                                                      | :heavy_minus_sign:                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                         |