From 84617abdeb1c746a5b159e2044e6ed90ffd8b2d6 Mon Sep 17 00:00:00 2001 From: oobabooga <112222186+oobabooga@users.noreply.github.com> Date: Thu, 19 Jun 2025 10:25:55 -0700 Subject: [PATCH] Properly fix the /v1/models endpoint --- extensions/openai/models.py | 9 +++++++++ extensions/openai/script.py | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/extensions/openai/models.py b/extensions/openai/models.py index 9c086a17..115149b0 100644 --- a/extensions/openai/models.py +++ b/extensions/openai/models.py @@ -18,6 +18,15 @@ def list_models(): return {'model_names': get_available_models()} +def list_models_openai_format(): + """Returns model list in OpenAI API format""" + model_names = get_available_models() + return { + "object": "list", + "data": [model_info_dict(name) for name in model_names] + } + + def model_info_dict(model_name: str) -> dict: return { "id": model_name, diff --git a/extensions/openai/script.py b/extensions/openai/script.py index f3b5b093..9440cb1e 100644 --- a/extensions/openai/script.py +++ b/extensions/openai/script.py @@ -180,7 +180,7 @@ async def handle_models(request: Request): is_list = request.url.path.split('?')[0].split('#')[0] == '/v1/models' if is_list: - response = OAImodels.list_models()['model_names'] + response = OAImodels.list_models_openai_format() else: model_name = path[len('/v1/models/'):] response = OAImodels.model_info_dict(model_name)