---
url: >-
  https://adk.nht.io/api/@nhtio/adk/batteries/llm/gemini_generate_content/types/interfaces/GeminiRequestBuildInput.md
description: Everything `buildGeminiRequest` needs to assemble a request.
---

# Interface: GeminiRequestBuildInput

Defined in: [src/batteries/llm/gemini\_generate\_content/types.ts:295](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/llm/gemini_generate_content/types.ts#L295)

Everything `buildGeminiRequest` needs to assemble a request.

## Properties

| Property                                                                  | Type                                                                                                                                                                                | Description                                                                                             | Defined in                                                                                                                                                            |
| ------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|  `bucketOrder?`                          | [`ChatCompletionsBucketOrder`](../../../../type-aliases/ChatCompletionsBucketOrder.md)                                                                                              | Optional; `buildGeminiRequest` falls back to DEFAULT\_GEMINI\_BUCKET\_ORDER.                               | [src/batteries/llm/gemini\_generate\_content/types.ts:315](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/llm/gemini_generate_content/types.ts#L315) |
|  `decodeMedia?`                          | (`media`: [`Media`](../../../../../common/classes/Media.md)) => `Promise`<[`GeminiInlineData`](GeminiInlineData.md)>                                                              | Decode an attachment into `inlineData`. Attachments are skipped when absent.                            | [src/batteries/llm/gemini\_generate\_content/types.ts:327](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/llm/gemini_generate_content/types.ts#L327) |
|  `helpers`                                   | [`GeminiGenerateContentHelpers`](GeminiGenerateContentHelpers.md)                                                                                                                   | Resolved helper set; the assembler calls these rather than module globals.                              | [src/batteries/llm/gemini\_generate\_content/types.ts:325](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/llm/gemini_generate_content/types.ts#L325) |
|  `memories`                                 | `Iterable`<[`Memory`](../../../../../common/classes/Memory.md)>                                                                                                                   | Memories, rendered into the system instruction.                                                         | [src/batteries/llm/gemini\_generate\_content/types.ts:301](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/llm/gemini_generate_content/types.ts#L301) |
|  `messages`                                 | `Iterable`<[`Message`](../../../../../common/classes/Message.md)>                                                                                                                 | Conversation messages; `role: 'assistant'` maps to `'model'`.                                           | [src/batteries/llm/gemini\_generate\_content/types.ts:305](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/llm/gemini_generate_content/types.ts#L305) |
|  `renderedToolCallResults`   | `Map`<[`ToolCall`](../../../../../forge/classes/ToolCall.md), [`Record`](https://www.typescriptlang.org/docs/handbook/utility-types.html#recordkeys-type)<`string`, `unknown`>> | Pre-rendered tool results, keyed by the live ToolCall instance. Gemini requires objects, not strings.   | [src/batteries/llm/gemini\_generate\_content/types.ts:313](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/llm/gemini_generate_content/types.ts#L313) |
|  `replayCompatibility`           | readonly `string`\[]                                                                                                                                                                 | Replay tags whose opaque payloads may be sent back to this model.                                       | [src/batteries/llm/gemini\_generate\_content/types.ts:321](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/llm/gemini_generate_content/types.ts#L321) |
|  `retrievables`                         | `Iterable`<[`Retrievable`](../../../../../common/classes/Retrievable.md)>                                                                                                         | Retrievables, rendered into the system instruction.                                                     | [src/batteries/llm/gemini\_generate\_content/types.ts:303](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/llm/gemini_generate_content/types.ts#L303) |
|  `selfIdentity`                         | `string`                                                                                                                                                                            | Identity attributed to this agent's own thoughts.                                                       | [src/batteries/llm/gemini\_generate\_content/types.ts:317](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/llm/gemini_generate_content/types.ts#L317) |
|  `standingInstructions`         | `Iterable`<[`Tokenizable`](../../../../../common/classes/Tokenizable.md)>                                                                                                         | Standing instructions, rendered into the system instruction.                                            | [src/batteries/llm/gemini\_generate\_content/types.ts:299](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/llm/gemini_generate_content/types.ts#L299) |
|  `systemPrompt`                         | [`Tokenizable`](../../../../../common/classes/Tokenizable.md)                                                                                                                       | Base system text; becomes `systemInstruction`, never a `contents[]` turn.                               | [src/batteries/llm/gemini\_generate\_content/types.ts:297](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/llm/gemini_generate_content/types.ts#L297) |
|  `thoughts`                                 | `Iterable`<[`Thought`](../../../../../common/classes/Thought.md)>                                                                                                                 | Reasoning to replay, subject to [GeminiRequestBuildInput.thoughtSurfacing](#property-thoughtsurfacing). | [src/batteries/llm/gemini\_generate\_content/types.ts:307](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/llm/gemini_generate_content/types.ts#L307) |
|  `thoughtSignatureSentinel` | `string` | `false`                                                                                                                                                                 | Sentinel stamped on the first historical `functionCall` when none carries a signature.                  | [src/batteries/llm/gemini\_generate\_content/types.ts:323](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/llm/gemini_generate_content/types.ts#L323) |
|  `thoughtSurfacing`                 | `"all"` | `"all-self"` | `"latest-self"`                                                                                                                                          | Which reasoning to replay.                                                                              | [src/batteries/llm/gemini\_generate\_content/types.ts:319](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/llm/gemini_generate_content/types.ts#L319) |
|  `toolCalls`                               | `Iterable`<[`ToolCall`](../../../../../forge/classes/ToolCall.md)>                                                                                                                | Tool calls to replay; each becomes a `functionCall` + `functionResponse` pair.                          | [src/batteries/llm/gemini\_generate\_content/types.ts:309](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/llm/gemini_generate_content/types.ts#L309) |
|  `tools`                                       | [`ToolRegistry`](../../../../../forge/classes/ToolRegistry.md)                                                                                                                      | Tools offered this turn, rendered into `functionDeclarations`.                                          | [src/batteries/llm/gemini\_generate\_content/types.ts:311](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/llm/gemini_generate_content/types.ts#L311) |
|  `unsupportedMediaPolicy?`    | [`UnsupportedMediaPolicy`](../../../transformers_js/type-aliases/UnsupportedMediaPolicy.md)                                                                                         | What to do with a modality Gemini cannot accept.                                                        | [src/batteries/llm/gemini\_generate\_content/types.ts:329](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/llm/gemini_generate_content/types.ts#L329) |
|  `warn?`                                        | (`message`: `string`) => `void`                                                                                                                                                     | Non-fatal diagnostics sink.                                                                             | [src/batteries/llm/gemini\_generate\_content/types.ts:331](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/llm/gemini_generate_content/types.ts#L331) |
