huggingface/transformers · error · ValueError
batch_size must be provided, either as an argument or in cac
Error message
batch_size must be provided, either as an argument or in cache_config.
What it means
Error "batch_size must be provided, either as an argument or in cache_config." thrown in huggingface/transformers.
Source
Thrown at src/transformers/integrations/executorch.py:531
)
if not generation_config.use_cache:
raise AssertionError(
"The model must have caching enabled to be exported with static caching. "
"Please set `generation_config.use_cache=True`."
)
if generation_config.cache_implementation != "static":
raise AssertionError(
"The model must use a 'static' caching implementation to be exported with static caching. "
"Please set `generation_config.cache_implementation='static'`."
)
cache_config = {} if generation_config.cache_config is None else generation_config.cache_config
# Ensure batch_size and max_cache_len are set
if batch_size is None:
batch_size = cache_config.get("batch_size", None)
if batch_size is None:
raise ValueError("batch_size must be provided, either as an argument or in cache_config.")
if max_cache_len is None:
max_cache_len = cache_config.get("max_cache_len", None)
if max_cache_len is None:
raise ValueError("max_cache_len must be provided, either as an argument or in cache_config.")
# Infer device if not provided
if device is None:
device = cache_config.get("device", model.device)
# Initialize the static cache
self.model = model
self.static_cache = StaticCache(max_cache_len=max_cache_len, config=config)
# Since StaticSlidingWindow have dynamic control flow that cannot be avoided, we have to replace them here by
# simple StaticLayer... It means that any generation beyond the window is unfortunately unsupported
for i, layer in enumerate(self.static_cache.layers):
if isinstance(layer, StaticSlidingWindowLayer):
self.static_cache.layers[i] = StaticLayer(max_cache_len)
num_heads, head_dim = get_head_shapes(config)
dtype = self.model.dtypeView on GitHub (pinned to a597f97485)
Solutions
- Pass `batch_size` explicitly or include it in `cache_config`.
When it happens
Trigger: Raised in ExecuTorch export when batch_size is missing from both the arguments and cache_config.
Common situations: Static export requires a fixed batch size; none was supplied in either location.
AI-assisted analysis of huggingface/transformers@a597f97485 (2026-08-14).
Data as JSON: /api/errors/8a6154b2f0af0825.
Report an issue: GitHub.