Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions c/engine.cc
Original file line number Diff line number Diff line change
Expand Up @@ -396,6 +396,15 @@ void litert_lm_engine_settings_set_max_num_tokens(
max_num_tokens);
}
}

void litert_lm_engine_settings_set_max_num_images(
LiteRtLmEngineSettings* settings, int max_num_images) {
if (settings && settings->settings && max_num_images > 0) {
settings->settings->GetMutableMainExecutorSettings().SetMaxNumImages(
max_num_images);
}
}

void litert_lm_engine_settings_set_parallel_file_section_loading(
LiteRtLmEngineSettings* settings, bool parallel_file_section_loading) {
if (settings && settings->settings) {
Expand Down
12 changes: 12 additions & 0 deletions c/engine.h
Original file line number Diff line number Diff line change
Expand Up @@ -262,6 +262,18 @@ LITERT_LM_C_API_EXPORT
void litert_lm_engine_settings_set_max_num_tokens(
LiteRtLmEngineSettings* settings, int max_num_tokens);

// Sets the maximum number of images the model can handle in a single
// session. Required for multimodal vision models (e.g. Gemma 3 Nano,
// Gemma 4) — without this set on the C API path, vision input is
// silently ignored and the model hallucinates a response from text
// alone. Mirrors `EngineConfig.maxNumImages` in the Kotlin API.
//
// @param settings The engine settings.
// @param max_num_images The maximum number of images. Must be > 0.
LITERT_LM_C_API_EXPORT
void litert_lm_engine_settings_set_max_num_images(
LiteRtLmEngineSettings* settings, int max_num_images);

// Sets whether the engine should load different sections of the litertlm file
// in parallel. Defaults to true.
//
Expand Down