diff --git a/openhands/core/config/llm_config.py b/openhands/core/config/llm_config.py index cee22766df14..5497d7125823 100644 --- a/openhands/core/config/llm_config.py +++ b/openhands/core/config/llm_config.py @@ -102,3 +102,9 @@ def model_post_init(self, __context: Any): os.environ['OR_SITE_URL'] = self.openrouter_site_url if self.openrouter_app_name: os.environ['OR_APP_NAME'] = self.openrouter_app_name + + # Assign an API version for Azure models + # While it doesn't seem required, the format supported by the API without version seems old and will likely break. + # Azure issue: https://github.com/All-Hands-AI/OpenHands/issues/6777 + if self.model.startswith('azure') and self.api_version is None: + self.api_version = '2024-08-01-preview' diff --git a/openhands/runtime/impl/remote/remote_runtime.py b/openhands/runtime/impl/remote/remote_runtime.py index 70e4217e4718..7e1256d28303 100644 --- a/openhands/runtime/impl/remote/remote_runtime.py +++ b/openhands/runtime/impl/remote/remote_runtime.py @@ -153,6 +153,12 @@ def _check_existing_runtime(self) -> bool: return False self.log('debug', f'Error while looking for remote runtime: {e}') raise + except requests.exceptions.JSONDecodeError as e: + self.log( + 'error', + f'Invalid JSON response from runtime API: {e}. URL: {self.config.sandbox.remote_runtime_api_url}/sessions/{self.sid}. Response: {response}', + ) + raise if status == 'running': return True