# Choices ## Fields | Field | Type | Required | Description | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `FinishReason` | [components.FinishReason](../../models/components/finishreason.md) | :heavy_check_mark: | The reason the model stopped generating tokens. This will be `stop` if the model hit a natural stop point or a provided stop sequence,
`length` if the maximum number of tokens specified in the request was reached,
`content_filter` if content was omitted due to a flag from our content filters,
`tool_calls` if the model called a tool, or `function_call` (deprecated) if the model called a function.
| | `Index` | *int64* | :heavy_check_mark: | The index of the choice in the list of choices. | | `Message` | [components.ChatCompletionResponseMessage](../../models/components/chatcompletionresponsemessage.md) | :heavy_check_mark: | A chat completion message generated by the model. | | `Logprobs` | [components.Logprobs](../../models/components/logprobs.md) | :heavy_check_mark: | Log probability information for the choice. |