tensorflow/models · error · NotImplementedError
Video classification do not support image bytes input.
Error message
Video classification do not support image bytes input.
What it means
Capability stub in the video-classification export module: inference_from_image_bytes is declared to complete the export-module interface but the video pipeline requires decoded frame tensors, so any attempt to build a concrete function from image-byte (serialized single-image) input hits this unconditional refusal.
Solutions
- Use input_type 'image_tensor' (decoded frames) for video classification serving.
- Decode video/image bytes to tensors on the client side before sending.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at official/vision/serving/video_classification.py:112 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of tensorflow/models@e006f5f0d5 (2026-08-24).
Data as JSON: /api/errors/dd61a9d60ff451bb.
Report an issue: GitHub.
Appendix: source
Thrown at official/vision/serving/video_classification.py:112
fn_output_signature={
video_input.IMAGE_KEY: tf.string,
})
return self.serve(inputs[video_input.IMAGE_KEY], tf.zeros([1, 1]))
@tf.function
def inference_from_image_tensors(
self, input_frames: tf.Tensor) -> Mapping[str, tf.Tensor]:
return self.serve(input_frames, tf.zeros([1, 1]))
@tf.function
def inference_from_image_audio_tensors(
self, input_frames: tf.Tensor,
input_audio: tf.Tensor) -> Mapping[str, tf.Tensor]:
return self.serve(input_frames, input_audio)
@tf.function
def inference_from_image_bytes(self, inputs: tf.Tensor):
raise NotImplementedError(
'Video classification do not support image bytes input.')
def serve(self, input_frames: tf.Tensor, input_audio: tf.Tensor):
"""Cast image to float and run inference.
Args:
input_frames: uint8 Tensor of shape [batch_size, None, None, 3]
input_audio: float32
Returns:
Tensor holding classification output logits.
"""
with tf.device('cpu:0'):
inputs = tf.map_fn(
self._preprocess_image, (input_frames),
fn_output_signature={
'image': tf.float32,
})View on GitHub (pinned to e006f5f0d5)