{"record":{"id":"2fa4fd24f64ff135","repo":"sgl-project/sglang","slug":"audio-sampling-rate-must-be-set-in-processor-confi","errorCode":null,"errorMessage":"audio_sampling_rate must be set in processor_config or audio_config","messagePattern":"audio_sampling_rate must be set in processor_config or audio_config","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"python/sglang/srt/multimodal/processors/mimo_v2.py","lineNumber":1556,"sourceCode":"            if (\n                rope_scaling.get(\"type\", None) == \"default\"\n                and rope_scaling.get(\"mrope_section\", None) is not None\n            ):\n                rope_type = \"mrope\"\n\n        processor_config = self._normalize_config_dict(\n            getattr(hf_config, \"processor_config\", {}), \"processor_config\"\n        )\n        audio_config = self._normalize_config_dict(\n            getattr(hf_config, \"audio_config\", None), \"audio_config\"\n        )\n        self.audio_sample_rate = processor_config.get(\"audio_sampling_rate\")\n        if self.audio_sample_rate is None:\n            self.audio_sample_rate = audio_config.get(\n                \"sampling_rate\"\n            ) or audio_config.get(\"sample_rate\")\n        if self.audio_sample_rate is None:\n            raise ValueError(\n                \"audio_sampling_rate must be set in processor_config or audio_config\"\n            )\n\n        self.IM_START_TOKEN_ID = self._require_config_value(\n            processor_config, \"vision_start_token_id\"\n        )\n        self.IM_END_TOKEN_ID = self._require_config_value(\n            processor_config, \"vision_end_token_id\"\n        )\n        self.IM_TOKEN_ID = self._require_config_value(\n            processor_config, \"image_token_id\"\n        )\n        self.VIDEO_TOKEN_ID = self._require_config_value(\n            processor_config, \"video_token_id\"\n        )\n        self.vision_start_token_id = self.IM_START_TOKEN_ID\n        self.vision_end_token_id = self.IM_END_TOKEN_ID\n","sourceCodeStart":1538,"sourceCodeEnd":1574,"githubUrl":"https://github.com/sgl-project/sglang/blob/0132848349585cfe6aae51c4941cbae872505f8a/python/sglang/srt/multimodal/processors/mimo_v2.py#L1538-L1574","documentation":"Raised in MiMoProcessor.__init__ when no audio sampling rate can be resolved: processor_config['audio_sampling_rate'] is absent and audio_config provides neither 'sampling_rate' nor 'sample_rate'. The audio feature extractor cannot resample/interpret waveforms without it.","triggerScenarios":"Loading a MiMo-V2 checkpoint whose preprocessor/processor config lacks audio_sampling_rate while the HF audio_config also has no rate fields, then constructing the processor (i.e., at server/model startup with audio enabled).","commonSituations":"Checkpoints shipped without audio config sections; configs using a different key name (e.g. 'samplingrate' or nested); older checkpoint revisions predating the audio pipeline.","solutions":["Set processor_config.audio_sampling_rate (commonly 16000) in preprocessor_config.json or the override passed to MiMoProcessor","If an audio_config exists, add sampling_rate under the expected key","Use a checkpoint revision that ships complete audio config"],"exampleFix":"# before: preprocessor_config.json has no audio key\n# after\n{\"audio_sampling_rate\": 16000, \"fps\": 2.0, ...}  # in preprocessor_config.json","handlingStrategy":"validation","validationCode":"rate = processor_config.get('audio_sampling_rate') or (audio_config or {}).get('sampling_rate') or (audio_config or {}).get('sample_rate')\nassert rate is not None, 'set processor_config.audio_sampling_rate (e.g. 16000)'","typeGuard":null,"tryCatchPattern":"try:\n    proc = MiMoProcessor(hf_config, server_args, _processor)\nexcept ValueError as e:\n    if 'audio_sampling_rate' in str(e):\n        processor_config['audio_sampling_rate'] = 16000\n        proc = MiMoProcessor(hf_config, server_args, _processor)\n    else:\n        raise","preventionTips":["Include audio_sampling_rate in deployment config for audio-enabled models","Validate audio config keys at startup","Use checkpoints with complete audio sections"],"tags":["audio","config","sampling-rate","initialization"],"backgroundTag":"missing-config-value","analyzedSha":"0132848349585cfe6aae51c4941cbae872505f8a","analyzedAt":"2026-08-28T05:10:05.995Z","schemaVersion":2},"datasetVersion":"2026-08-28T06:17:29.519Z"}