diff --git a/python/sglang/srt/openai_api/adapter.py b/python/sglang/srt/openai_api/adapter.py index 944a1c121..d13ad5ebf 100644 --- a/python/sglang/srt/openai_api/adapter.py +++ b/python/sglang/srt/openai_api/adapter.py @@ -715,7 +715,10 @@ def v1_generate_response( async def v1_completions(tokenizer_manager, raw_request: Request): - request_json = await raw_request.json() + try: + request_json = await raw_request.json() + except Exception as e: + return create_error_response("Invalid request body, error: ", str(e)) all_requests = [CompletionRequest(**request_json)] created = int(time.time()) adapted_request, request = v1_generate_request(all_requests) @@ -1379,7 +1382,10 @@ def v1_chat_generate_response( async def v1_chat_completions( tokenizer_manager, raw_request: Request, cache_report=False ): - request_json = await raw_request.json() + try: + request_json = await raw_request.json() + except Exception as e: + return create_error_response("Invalid request body, error: ", str(e)) all_requests = [ChatCompletionRequest(**request_json)] created = int(time.time()) adapted_request, request = v1_chat_generate_request(all_requests, tokenizer_manager) @@ -1800,7 +1806,10 @@ def v1_embedding_response(ret, model_path, to_file=False): async def v1_embeddings(tokenizer_manager, raw_request: Request): - request_json = await raw_request.json() + try: + request_json = await raw_request.json() + except Exception as e: + return create_error_response("Invalid request body, error: ", str(e)) all_requests = [EmbeddingRequest(**request_json)] adapted_request, request = v1_embedding_request(all_requests, tokenizer_manager)