Skip to content

Commit d9d23b8

Browse files
committed
fix(nim): update model aliases to currently-available NIM models
- Remove dead anthropic/claude-* aliases (not on NIM) - Add haiku, kimi, qwen, nemotron, gpt-oss aliases for real NIM models - Update 6 default agents to use working NIM models: - coder: qwen3-coder-480b (code generation) - tester: nemotron-nano-8b (cheap) - reviewer: llama-3.3-70b (strong reasoning) - docs: nemotron-nano-8b (cheap, low temp) - security: kimi-k2.6 (good for code review) - architect: gpt-oss-120b (reasoning) - Reduce default timeout from 5m to 2m Verified with real nvapi key: orchestrator-run 'Add hello world' returns success=true, 551 tokens, 0.0006 USD via NIM.
1 parent 74be3b6 commit d9d23b8

3 files changed

Lines changed: 27 additions & 16 deletions

File tree

‎cmd/sin-code/internal/llm/nim.go‎

Lines changed: 20 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,34 @@
11
// SPDX-License-Identifier: MIT
22
// Purpose: NVIDIA NIM-specific helpers. NIM exposes an OpenAI-compatible
33
// chat/completions endpoint at https://integrate.api.nvidia.com/v1 and
4-
// serves Anthropic / Llama / Mistral / etc. models under "vendor/name"
5-
// IDs. Friendly aliases like "haiku" or "sonnet" resolve to the full ID.
4+
// serves many vendor models. Friendly aliases like "haiku" or "qwen"
5+
// resolve to a working NIM model ID.
66
package llm
77

88
const NIMDefaultBaseURL = "https://integrate.api.nvidia.com/v1"
99

10-
const NIMDefaultModel = "meta/llama-3.1-70b-instruct"
10+
const NIMDefaultModel = "meta/llama-3.3-70b-instruct"
1111

12-
const NIMClaudeModel = "anthropic/claude-3-5-sonnet-20241022"
12+
const NIMHaikuModel = "nvidia/llama-3.1-nemotron-nano-8b-v1"
1313

14-
const NIMHaikuModel = "anthropic/claude-3-5-haiku-20241022"
14+
const NIMKimiModel = "moonshotai/kimi-k2.6"
15+
16+
const NIMQwenModel = "qwen/qwen3-coder-480b-a35b-instruct"
17+
18+
const NIMNemotronModel = "nvidia/nemotron-3-nano-30b-a3b"
19+
20+
const NIMGptOssModel = "openai/gpt-oss-120b"
1521

1622
var NIMModelAliases = map[string]string{
17-
"haiku": NIMHaikuModel,
18-
"sonnet": NIMClaudeModel,
19-
"llama-70b": NIMDefaultModel,
20-
"llama-8b": "meta/llama-3.1-8b-instruct",
23+
"haiku": NIMHaikuModel,
24+
"kimi": NIMKimiModel,
25+
"qwen": NIMQwenModel,
26+
"nemotron": NIMNemotronModel,
27+
"gpt-oss": NIMGptOssModel,
28+
"llama-70b": NIMDefaultModel,
29+
"llama-3.3-70b": NIMDefaultModel,
30+
"llama-8b": "meta/llama-3.1-8b-instruct",
31+
"default": NIMDefaultModel,
2132
}
2233

2334
func ResolveModel(name string) string {

‎cmd/sin-code/internal/orchestrator/agents.go‎

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ func DefaultAgents() []AgentConfig {
5353
Name: "coder",
5454
Description: "Writes production-quality code following project conventions",
5555
Type: TaskCode,
56-
Model: "anthropic/claude-sonnet-4.7",
56+
Model: "qwen/qwen3-coder-480b-a35b-instruct",
5757
MaxTokens: 16000,
5858
Temperature: 0.0,
5959
SystemFile: "agents/coder/system.md",
@@ -67,7 +67,7 @@ func DefaultAgents() []AgentConfig {
6767
Name: "tester",
6868
Description: "Writes unit, integration, and end-to-end tests",
6969
Type: TaskTest,
70-
Model: "anthropic/claude-haiku-4.5",
70+
Model: "nvidia/llama-3.1-nemotron-nano-8b-v1",
7171
MaxTokens: 8000,
7272
Temperature: 0.0,
7373
SystemFile: "agents/tester/system.md",
@@ -80,7 +80,7 @@ func DefaultAgents() []AgentConfig {
8080
Name: "reviewer",
8181
Description: "Senior engineer reviewing code for correctness, style, and test coverage",
8282
Type: TaskReview,
83-
Model: "anthropic/claude-opus-5.1",
83+
Model: "meta/llama-3.3-70b-instruct",
8484
MaxTokens: 8000,
8585
Temperature: 0.0,
8686
SystemFile: "agents/reviewer/system.md",
@@ -93,7 +93,7 @@ func DefaultAgents() []AgentConfig {
9393
Name: "docs",
9494
Description: "Technical writer producing clear, accurate documentation",
9595
Type: TaskDocs,
96-
Model: "anthropic/claude-haiku-4.5",
96+
Model: "nvidia/llama-3.1-nemotron-nano-8b-v1",
9797
MaxTokens: 8000,
9898
Temperature: 0.2,
9999
SystemFile: "agents/docs/system.md",
@@ -106,7 +106,7 @@ func DefaultAgents() []AgentConfig {
106106
Name: "security",
107107
Description: "Application security specialist scanning for vulnerabilities",
108108
Type: TaskSecurity,
109-
Model: "anthropic/claude-sonnet-4.7",
109+
Model: "moonshotai/kimi-k2.6",
110110
MaxTokens: 8000,
111111
Temperature: 0.0,
112112
SystemFile: "agents/security/system.md",
@@ -119,7 +119,7 @@ func DefaultAgents() []AgentConfig {
119119
Name: "architect",
120120
Description: "Principal architect designing high-level solutions",
121121
Type: TaskArchitect,
122-
Model: "anthropic/claude-opus-5.1",
122+
Model: "openai/gpt-oss-120b",
123123
MaxTokens: 16000,
124124
Temperature: 0.1,
125125
SystemFile: "agents/architect/system.md",

‎cmd/sin-code/internal/orchestrator_cmd.go‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ var OrchestratorPlanCmd = &cobra.Command{
104104

105105
func init() {
106106
OrchestratorRunCmd.Flags().StringVar(&orch2Format, "format", "text", "Output format: text|json")
107-
OrchestratorRunCmd.Flags().DurationVar(&orch2Timeout, "timeout", 5*time.Minute, "Max execution time")
107+
OrchestratorRunCmd.Flags().DurationVar(&orch2Timeout, "timeout", 2*time.Minute, "Max execution time")
108108
OrchestratorRunCmd.Flags().IntVar(&orch2MaxParallel, "max-parallel", 4, "Max parallel agents")
109109
OrchestratorRunCmd.Flags().StringVar(&orch2AgentsDir, "agents-dir", "", "User agents dir (default ~/.config/sin-code/agents)")
110110
OrchestratorRunCmd.Flags().BoolVar(&orch2PlanOnly, "plan-only", false, "Build plan and exit, no execution")

0 commit comments

Comments
 (0)