NIM API Duplicate Model issue

/v1/models endpoint returns duplicate entries for 3 models

Hi all,

I noticed that the NIM API at integrate.api.nvidia.com/v1/models is returning duplicate entries for 3 model IDs. Each duplicate is an identical copy — same id, object, created, and owned_by fields. This breaks the OpenAI-compatible /v1/models contract, which expects each model to appear exactly once.

Why this matters

This causes real problems for downstream clients. In my case, langchain-nvidia-ai-endpoints (ChatNVIDIA) crashes with an AssertionError when you try to use any of these models, because the library asserts at most one candidate match from the API response.

More broadly, any OpenAI-compatible client that indexes models by ID into a dict/map will silently drop duplicates, and clients that collect into a list and validate uniqueness will crash outright.

Affected models

I queried the endpoint on 2026-04-05T22:22:17Z and found:

Model ID Occurrences Entries identical?
nvidia/nemotron-3-super-120b-a12b 2 Yes
openai/gpt-oss-120b 2 Yes
openai/gpt-oss-20b 2 Yes

189 total entries returned, 186 unique model IDs. 3 models appear twice each.

Steps to reproduce

1. Count duplicates

curl -s -H "Authorization: Bearer $NVIDIA_API_KEY" \
  https://integrate.api.nvidia.com/v1/models | \
  python3 -c "
import json, sys
data = json.load(sys.stdin)['data']
ids = [m['id'] for m in data]
dupes = sorted(set(x for x in ids if ids.count(x) > 1))
print(f'Total entries: {len(data)}')
print(f'Unique model IDs: {len(set(ids))}')
print(f'Duplicate entries: {len(data) - len(set(ids))}')
for d in dupes:
    print(f'  {d} (appears {ids.count(d)}x)')
"

Output:

Total entries: 189
Unique model IDs: 186
Duplicate entries: 3
Duplicate model IDs (3):
  nvidia/nemotron-3-super-120b-a12b (appears 2x)
  openai/gpt-oss-120b (appears 2x)
  openai/gpt-oss-20b (appears 2x)

2. Inspect duplicate payloads

curl -s -H "Authorization: Bearer $NVIDIA_API_KEY" \
  https://integrate.api.nvidia.com/v1/models | \
  python3 -c "
import json, sys
data = json.load(sys.stdin)['data']
ids = [m['id'] for m in data]
for model_id in sorted(set(x for x in ids if ids.count(x) > 1)):
    entries = [m for m in data if m['id'] == model_id]
    print(f'\n{model_id}:')
    for i, e in enumerate(entries):
        print(f'  occurrence {i+1}: {json.dumps(e)}')
    identical = all(e == entries[0] for e in entries[1:])
    print(f'  identical: {identical}')
"

Output:

nvidia/nemotron-3-super-120b-a12b:
  occurrence 1: {"id": "nvidia/nemotron-3-super-120b-a12b", "object": "model", "created": 735790403, "owned_by": "nvidia"}
  occurrence 2: {"id": "nvidia/nemotron-3-super-120b-a12b", "object": "model", "created": 735790403, "owned_by": "nvidia"}
  identical: True

openai/gpt-oss-120b:
  occurrence 1: {"id": "openai/gpt-oss-120b", "object": "model", "created": 735790403, "owned_by": "openai"}
  occurrence 2: {"id": "openai/gpt-oss-120b", "object": "model", "created": 735790403, "owned_by": "openai"}
  identical: True

openai/gpt-oss-20b:
  occurrence 1: {"id": "openai/gpt-oss-20b", "object": "model", "created": 735790403, "owned_by": "openai"}
  occurrence 2: {"id": "openai/gpt-oss-20b", "object": "model", "created": 735790403, "owned_by": "openai"}
  identical: True

Expected behavior

Each model ID should appear exactly once in the /v1/models response. The OpenAI /v1/models spec defines the response as a list of model objects where id is the unique identifier.

Suggestion

Deduplicating the response at the API layer, keyed on model id, should be a straightforward fix. Since all current duplicates are identical, there’s no ambiguity about which entry to keep.

Has anyone else run into this? Would be curious to know if this is a known issue or something new.

Thanks!