diff --git a/sam3/model/sam3_base_predictor.py b/sam3/model/sam3_base_predictor.py index 2d699fe19..bed703069 100644 --- a/sam3/model/sam3_base_predictor.py +++ b/sam3/model/sam3_base_predictor.py @@ -133,6 +133,14 @@ def start_session( init_kwargs["async_loading_frames"] = self.async_loading_frames if hasattr(self, "video_loader_type"): init_kwargs["video_loader_type"] = self.video_loader_type + + # Filter init_kwargs to only pass what the model's init_state() accepts + import inspect + + sig = inspect.signature(self.model.init_state) + valid_params = set(sig.parameters.keys()) + init_kwargs = {k: v for k, v in init_kwargs.items() if k in valid_params} + inference_state = self.model.init_state(**init_kwargs) if not session_id: