# tinker.types.ModelInput ## *class* [**tinker.types.ModelInput**](https://github.com/thinking-machines-lab/tinker/blob/main/src/tinker/types/_pydantic_types/model_input.py#L8)(*[StrictBase](https://github.com/thinking-machines-lab/tinker/blob/main/src/tinker/_models.py#L76)*) **Fields:** - [**chunks**](https://github.com/thinking-machines-lab/tinker/blob/main/src/tinker/types/_pydantic_types/model_input.py#L9) (*List\[[ModelInputChunk](https://github.com/thinking-machines-lab/tinker/blob/main/src/tinker/types/model_input_chunk.py#L13)\]*) – Sequence of input chunks (formerly TokenSequence) ### [**from_ints**](https://github.com/thinking-machines-lab/tinker/blob/main/src/tinker/types/_pydantic_types/model_input.py#L13)(*tokens*) Create a ModelInput from a list of ints (tokens). **Parameters:** - [**tokens**](https://github.com/thinking-machines-lab/tinker/blob/main/src/tinker/types/_pydantic_types/model_input.py#L13) (*List[int]*) **Returns:** *[ModelInput](https://tinker-docs.thinkingmachines.ai/tinker/api-reference/types/modelinput/index.md)* ### [**to_ints**](https://github.com/thinking-machines-lab/tinker/blob/main/src/tinker/types/_pydantic_types/model_input.py#L19)() Convert the ModelInput to a list of ints (tokens) Throws exception if there are any non-token chunks **Returns:** *List[int]* ### *property* [**length**](https://github.com/thinking-machines-lab/tinker/blob/main/src/tinker/types/_pydantic_types/model_input.py#L31) Return the total context length used by this ModelInput. **Returns:** *int* ### [**empty**](https://github.com/thinking-machines-lab/tinker/blob/main/src/tinker/types/_pydantic_types/model_input.py#L38)() Create an empty ModelInput. **Returns:** *[ModelInput](https://tinker-docs.thinkingmachines.ai/tinker/api-reference/types/modelinput/index.md)* ### [**append**](https://github.com/thinking-machines-lab/tinker/blob/main/src/tinker/types/_pydantic_types/model_input.py#L44)(*chunk*) Add a new chunk, return a new ModelInput. **Parameters:** - [**chunk**](https://github.com/thinking-machines-lab/tinker/blob/main/src/tinker/types/_pydantic_types/model_input.py#L44) (*[ModelInputChunk](https://github.com/thinking-machines-lab/tinker/blob/main/src/tinker/types/model_input_chunk.py#L13)*) **Returns:** *[ModelInput](https://tinker-docs.thinkingmachines.ai/tinker/api-reference/types/modelinput/index.md)* ### [**append_int**](https://github.com/thinking-machines-lab/tinker/blob/main/src/tinker/types/_pydantic_types/model_input.py#L50)(*token*) Add a new token, return a new ModelInput. **Parameters:** - [**token**](https://github.com/thinking-machines-lab/tinker/blob/main/src/tinker/types/_pydantic_types/model_input.py#L50) (*int*) **Returns:** *[ModelInput](https://tinker-docs.thinkingmachines.ai/tinker/api-reference/types/modelinput/index.md)* ## Referenced by - [SamplingClient.compute_logprobs](https://tinker-docs.thinkingmachines.ai/tinker/api-reference/samplingclient/#compute_logprobs) - [SamplingClient.sample](https://tinker-docs.thinkingmachines.ai/tinker/api-reference/samplingclient/#sample) - [tinker.types.Datum](https://tinker-docs.thinkingmachines.ai/tinker/api-reference/types/datum/index.md) - [tinker_cookbook.completers.TinkerTokenCompleter.__call__](https://tinker-docs.thinkingmachines.ai/cookbook/api-reference/completers/tinkertokencompleter/#tinkertokencompleter-call) - [tinker_cookbook.completers.TokenCompleter.__call__](https://tinker-docs.thinkingmachines.ai/cookbook/api-reference/completers/tokencompleter/#tokencompleter-call) - [tinker_cookbook.preference.ComparisonRenderer.build_generation_prompt](https://tinker-docs.thinkingmachines.ai/cookbook/api-reference/preference/comparisonrenderer/#comparisonrenderer-build_generation_prompt) - [tinker_cookbook.preference.ComparisonRendererFromChatRenderer.build_generation_prompt](https://tinker-docs.thinkingmachines.ai/cookbook/api-reference/preference/comparisonrendererfromchatrenderer/#comparisonrendererfromchatrenderer-build_generation_prompt) - [tinker_cookbook.renderers.Renderer.build_generation_prompt](https://tinker-docs.thinkingmachines.ai/cookbook/api-reference/renderers/renderer/#renderer-build_generation_prompt) - [tinker_cookbook.renderers.Renderer.build_supervised_example](https://tinker-docs.thinkingmachines.ai/cookbook/api-reference/renderers/renderer/#renderer-build_supervised_example) - [tinker_cookbook.renderers.Renderer.build_supervised_examples](https://tinker-docs.thinkingmachines.ai/cookbook/api-reference/renderers/renderer/#renderer-build_supervised_examples) - [tinker_cookbook.rl.EnvFromMessageEnv.inject_messages](https://tinker-docs.thinkingmachines.ai/cookbook/api-reference/rl/envfrommessageenv/#envfrommessageenv-inject_messages)