GitHub Actions commited on
Commit ·
ec28ff9
1
Parent(s): 833bc64
feat(nemotron): refresh catalogue to Nemotron 3 Nano agentic family
Browse filesReplace stale Nemotron IDs (llama-3.1-nemotron-70b, super-49b-v1) with the
current small-first, tool-calling lineup verified on build.nvidia.com:
- nvidia/nemotron-3-nano-30b-a3b (MoE ~3B active, 1M ctx, agentic) - primary
- nvidia/nemotron-mini-4b-instruct (on-device SLM, function calling, Tiny Titan)
- nvidia/llama-3.1-nemotron-nano-8b-v1 (edge reasoning/agentic)
- nvidia/nemotron-nano-12b-v2-vl (multimodal VL - drives the vision tool)
- nvidia/llama-3.3-nemotron-super-49b-v1.5 (high-accuracy reasoning fallback)
Default model -> nemotron-3-nano-30b-a3b. Already auto-registered in app.py
when NVIDIA_API_KEY is set.
hearthnet/services/llm/backends/nemotron.py
CHANGED
|
@@ -14,22 +14,44 @@ from __future__ import annotations
|
|
| 14 |
from .base import BackendModel
|
| 15 |
from .openai_compat import OpenAICompatBackend
|
| 16 |
|
| 17 |
-
# Default cloud-hosted Nemotron models
|
|
|
|
|
|
|
|
|
|
|
|
|
| 18 |
_NEMOTRON_CLOUD_MODELS: list[BackendModel] = [
|
| 19 |
BackendModel(
|
| 20 |
-
|
| 21 |
-
|
| 22 |
-
|
|
|
|
|
|
|
| 23 |
requires_internet=True,
|
| 24 |
),
|
| 25 |
BackendModel(
|
|
|
|
| 26 |
name="nvidia/nemotron-mini-4b-instruct",
|
| 27 |
family="nemotron",
|
| 28 |
context_length=4_096,
|
| 29 |
requires_internet=True,
|
| 30 |
),
|
| 31 |
BackendModel(
|
| 32 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 33 |
family="llama",
|
| 34 |
context_length=128_000,
|
| 35 |
requires_internet=True,
|
|
@@ -45,7 +67,7 @@ class NemotronBackend(OpenAICompatBackend):
|
|
| 45 |
[[llm.backends]]
|
| 46 |
name = "nemotron"
|
| 47 |
url = "https://integrate.api.nvidia.com/v1" # or local NIM endpoint
|
| 48 |
-
model = "nvidia/
|
| 49 |
api_key_env = "NVIDIA_API_KEY"
|
| 50 |
|
| 51 |
The ``model`` key is optional; if omitted all default Nemotron models are
|
|
@@ -89,7 +111,7 @@ class NemotronBackend(OpenAICompatBackend):
|
|
| 89 |
super().__init__(
|
| 90 |
base_url=base_url,
|
| 91 |
api_key_env=api_key_env or "NVIDIA_API_KEY",
|
| 92 |
-
model=backend_models[0].name if backend_models else "nvidia/nemotron-
|
| 93 |
)
|
| 94 |
# Override the single-model list with the full catalogue
|
| 95 |
self.models = backend_models
|
|
|
|
| 14 |
from .base import BackendModel
|
| 15 |
from .openai_compat import OpenAICompatBackend
|
| 16 |
|
| 17 |
+
# Default cloud-hosted Nemotron models (verified on build.nvidia.com /
|
| 18 |
+
# integrate.api.nvidia.com). Ordered small-first so the agent prefers efficient,
|
| 19 |
+
# tool-calling reasoners. The 30B-a3b is a Mixture-of-Experts with only ~3B
|
| 20 |
+
# active params — it counts as a small/efficient agent model while reasoning
|
| 21 |
+
# like a much larger one.
|
| 22 |
_NEMOTRON_CLOUD_MODELS: list[BackendModel] = [
|
| 23 |
BackendModel(
|
| 24 |
+
# Nemotron 3 Nano — hybrid Mamba-Transformer MoE, 1M ctx, built for
|
| 25 |
+
# agentic reasoning, planning and tool calling. Primary agent brain.
|
| 26 |
+
name="nvidia/nemotron-3-nano-30b-a3b",
|
| 27 |
+
family="nemotron",
|
| 28 |
+
context_length=1_000_000,
|
| 29 |
requires_internet=True,
|
| 30 |
),
|
| 31 |
BackendModel(
|
| 32 |
+
# On-device SLM tuned for RAG + function calling — Tiny Titan eligible.
|
| 33 |
name="nvidia/nemotron-mini-4b-instruct",
|
| 34 |
family="nemotron",
|
| 35 |
context_length=4_096,
|
| 36 |
requires_internet=True,
|
| 37 |
),
|
| 38 |
BackendModel(
|
| 39 |
+
# Edge reasoning/agentic model for PC and edge.
|
| 40 |
+
name="nvidia/llama-3.1-nemotron-nano-8b-v1",
|
| 41 |
+
family="llama",
|
| 42 |
+
context_length=128_000,
|
| 43 |
+
requires_internet=True,
|
| 44 |
+
),
|
| 45 |
+
BackendModel(
|
| 46 |
+
# Multimodal vision-language Nano — drives the agent's vision tool.
|
| 47 |
+
name="nvidia/nemotron-nano-12b-v2-vl",
|
| 48 |
+
family="nemotron",
|
| 49 |
+
context_length=128_000,
|
| 50 |
+
requires_internet=True,
|
| 51 |
+
),
|
| 52 |
+
BackendModel(
|
| 53 |
+
# Larger reasoning/tool-calling model when raw accuracy matters.
|
| 54 |
+
name="nvidia/llama-3.3-nemotron-super-49b-v1.5",
|
| 55 |
family="llama",
|
| 56 |
context_length=128_000,
|
| 57 |
requires_internet=True,
|
|
|
|
| 67 |
[[llm.backends]]
|
| 68 |
name = "nemotron"
|
| 69 |
url = "https://integrate.api.nvidia.com/v1" # or local NIM endpoint
|
| 70 |
+
model = "nvidia/nemotron-3-nano-30b-a3b"
|
| 71 |
api_key_env = "NVIDIA_API_KEY"
|
| 72 |
|
| 73 |
The ``model`` key is optional; if omitted all default Nemotron models are
|
|
|
|
| 111 |
super().__init__(
|
| 112 |
base_url=base_url,
|
| 113 |
api_key_env=api_key_env or "NVIDIA_API_KEY",
|
| 114 |
+
model=backend_models[0].name if backend_models else "nvidia/nemotron-3-nano-30b-a3b",
|
| 115 |
)
|
| 116 |
# Override the single-model list with the full catalogue
|
| 117 |
self.models = backend_models
|