Skip to content

feat: add NVIDIA NIM as a first-class inference provider - #171

Closed
taoleeh wants to merge 2 commits into
NousResearch:mainfrom
taoleeh:feat/nvidia-nim-provider
Closed

feat: add NVIDIA NIM as a first-class inference provider#171
taoleeh wants to merge 2 commits into
NousResearch:mainfrom
taoleeh:feat/nvidia-nim-provider

Conversation

@taoleeh

@taoleeh taoleeh commented Feb 28, 2026

Copy link
Copy Markdown

Adds NVIDIA NIM (https://build.nvidia.com) as a named inference provider alongside Nous Portal, Chutes.ai, and OpenRouter.

Changes

  • hermes_constants.py — add NVIDIA_BASE_URL, NVIDIA_API_KEY_ENV
  • hermes_cli/auth.py — add nvidia explicit branch + auto-detect in resolve_provider()
  • run_agent.py — resolve NVIDIA_API_KEY when base URL points at NVIDIA
  • hermes_cli/setup.py — add NVIDIA NIM option to setup wizard provider menu
  • hermes_cli/models.py — add NVIDIA_MODELS list with 10 NIM models
  • .env.example + README.md — document NVIDIA_API_KEY

Usage

hermes config set NVIDIA_API_KEY nvapi-...
hermes setup   # select NVIDIA NIM from provider menu

NVIDIA NIM exposes a fully OpenAI-compatible endpoint at https://integrate.api.nvidia.com/v1. No new dependencies required.

@teknium1

Copy link
Copy Markdown
Contributor

Can we absolutely confirm that both providers in this PR are indeed standard openai compliant apis?

@teknium1

Copy link
Copy Markdown
Contributor

Also OpenRouter and Nous Portal should stay above alternatives in the changes

@taoleeh

taoleeh commented Feb 28, 2026

Copy link
Copy Markdown
Author

Can we absolutely confirm that both providers in this PR are indeed standard openai compliant apis?

Both are fully OpenAI-compatible:

NVIDIA NIM: documented at https://docs.api.nvidia.com/nim/reference/llm-apis — identical /v1/chat/completions spec, standard Bearer token auth, supports tool calling
Chutes.ai: documented at https://chutes.ai/docs/examples/llm-chat#openai-compatible-api — OpenAI-compatible endpoint at https://llm.chutes.ai/v1, same spec

Both work with the existing openai Python SDK with zero changes beyond base_url and api_key. No new dependencies.
On ordering: will fix — Nous Portal and OpenRouter will be moved back to positions 1 and 2 in resolve_provider() auto-detection and the setup wizard menu.

taoleeh added 2 commits March 1, 2026 16:57
- Add CHUTES_BASE_URL, CHUTES_API_KEY_ENV constants to hermes_constants.py
- Add 'chutes' explicit branch and auto-detect in resolve_provider() (auth.py)
- Fall back to CHUTES_API_KEY when base_url points at chutes.ai (run_agent.py)
- Add Chutes.ai option to setup wizard provider menu (setup.py)
- Add CHUTES_MODELS list to models.py
- Add CHUTES_API_KEY to .env.example
- Update README providers table and env vars reference

Chutes.ai is OpenAI-compatible at https://llm.chutes.ai/v1.
Uses HuggingFace-style model slugs (e.g. NousResearch/Hermes-3-Llama-3.1-70B-Instruct).
- Add NVIDIA_BASE_URL, NVIDIA_API_KEY_ENV constants to hermes_constants.py
- Add 'nvidia' explicit branch and auto-detect in resolve_provider() (auth.py)
- Resolve NVIDIA_API_KEY when base_url points at nvidia (run_agent.py)
- Add NVIDIA NIM option to setup wizard provider menu (setup.py)
- Add NVIDIA_MODELS list to models.py
- Add NVIDIA_API_KEY to .env.example and README

NVIDIA NIM is OpenAI-compatible at https://integrate.api.nvidia.com/v1.
API keys from https://build.nvidia.com start with 'nvapi-'.
@taoleeh
taoleeh force-pushed the feat/nvidia-nim-provider branch from 8ec37b9 to 842f6fa Compare March 1, 2026 09:59
@teknium1

teknium1 commented Mar 9, 2026

Copy link
Copy Markdown
Contributor

I think lets just leave it for Custom OpenAI endpoint provider for now - I dont think NIM is a super popular provider platform

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants