BerriAI/litellm · error · NotImplementedError
video extension is not supported for Vertex AI
Error message
video extension is not supported for Vertex AI
What it means
Raised by VertexVeoConfig.transform_video_extension_request. Vertex AI Veo has no video-extension API in LiteLLM's provider config, so requesting an extension of an existing video raises NotImplementedError for this provider.
Source
Thrown at litellm/llms/vertex_ai/videos/transformation.py:780
id=video_id,
object="video",
status="processing",
model=model,
)
video_obj.usage = _build_vertex_video_usage_from_request_data(request_data)
return video_obj
def transform_video_extension_request(
self,
prompt,
video_id,
seconds,
api_base,
litellm_params,
headers,
extra_body=None,
):
raise NotImplementedError("video extension is not supported for Vertex AI")
def transform_video_extension_response(self, raw_response, logging_obj, custom_llm_provider=None):
raise NotImplementedError("video extension is not supported for Vertex AI")
def get_error_class(self, error_message: str, status_code: int, headers: dict | httpx.Headers) -> BaseLLMException:
from litellm.llms.vertex_ai.common_utils import VertexAIError
return VertexAIError(
status_code=status_code,
message=error_message,
headers=headers,
)
View on GitHub (pinned to 77b7c6c40c)
Solutions
- Generate the longer clip directly with video_generation using duration_seconds instead of extending
- Use a provider that implements transform_video_extension_request if extension is a hard requirement
Example fix
# before litellm.video_extension(video_id=vid, seconds=8, custom_llm_provider="vertex_ai") # after litellm.video_generation(prompt=same_prompt, model="vertex_ai/veo-3.0-generate-001", duration_seconds=8)
Defensive patterns
Strategy: validation
Validate before calling
EXTENSION_CAPABLE_PROVIDERS: set[str] = set() # vertex_ai not included
if provider not in EXTENSION_CAPABLE_PROVIDERS:
raise FeatureUnavailable(f"{provider} does not support video extension") Type guard
def provider_supports_extension(provider: str) -> bool:
return provider != "vertex_ai" Try / catch
try:
litellm.video_extension(video_id=vid, seconds=8, custom_llm_provider=provider)
except NotImplementedError:
if provider == "vertex_ai":
litellm.video_generation(prompt=orig_prompt, model="vertex_ai/veo-3.0-generate-001", duration_seconds=8)
else:
raise Prevention
- Gate extension actions behind a per-provider capability check
- For Veo, request the full duration at generation time instead of extending later
When it happens
Trigger: Calling litellm.video_extension(video_id=..., seconds=..., custom_llm_provider="vertex_ai") or the equivalent pass-through route.
Common situations: Porting extend-clip workflows from providers that support extension; generic video pipelines that call every operation for every provider.
Understand the failure class
Background: UnsupportedOperationException and "is not supported" errors: when a library deliberately refuses a call — this error's family across 30 libraries.
Related errors
- Video remix is not supported by Vertex AI Veo. Please use vi
- Video remix is not supported by Vertex AI Veo.
- Video list is not supported by Vertex AI Veo. Use the operat
- Video list is not supported by Vertex AI Veo.
- Video delete is not supported by Vertex AI Veo. Videos are a
AI-assisted analysis of BerriAI/litellm@77b7c6c40c (2026-08-18).
Data as JSON: /api/errors/4a9537a8af7a4a16.
Report an issue: GitHub.