All files / src/models/adapters nemotron.ts

100% Statements 14/14
100% Branches 5/5
100% Functions 1/1
100% Lines 14/14

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 2310x   10x 10x 10x 10x   10x   10x 10x     4x 2x 2x 1x 1x 1x        
import { BaseModelAdapter } from "./base";
 
export class NemotronAdapter extends BaseModelAdapter {
  readonly idPattern = /(^|[\/_-])nemotron([\/_-]|$)/i;
  readonly defaultTemperature = 0.2;
  readonly toolTemperature = 0.1;
  readonly toolSystemMessage =
    "You are an expert AI programming assistant. Provide correct, concise, production-ready code. When tools are available, answer with concise user-facing text or a valid tool call. Do not wrap tool arguments in markdown fences, backticks, or explanatory prose.";
 
  readonly supportedReasoningModes = ["none", "medium", "high"];
  readonly reasoningParameterFormat = "reasoning_effort" as const;
 
  applyReasoningMode(request: import("../../types").NimChatRequest, mode: string): void {
    if (mode === "none") {
      request.reasoning_effort = "none";
    } else if (mode === "medium") {
      request.reasoning_effort = "medium";
    } else if (mode === "high") {
      request.reasoning_effort = "high";
    }
  }
}