added reasoning checkbox

This commit is contained in:
Radek Davidek 2026-03-26 18:33:24 +01:00
parent 9350d13525
commit f5a52a93c3
5 changed files with 102 additions and 9 deletions

View File

@ -1,5 +1,5 @@
#Llama Runner Configuration
#Wed Mar 25 12:59:21 CET 2026
#Thu Mar 26 18:27:22 CET 2026
windowHeight=1189
windowWidth=711
windowX=1849

View File

@ -17,7 +17,8 @@
"modelPath": "/home/kamma/models/Nemotron-Cascade-2-30B-A3B.Q8_0.gguf",
"chatTemplateKwargs": "{\"enable_thinking\": false}",
"ngl": -1,
"fit": false
"fit": false,
"reasoning": false
},
"Qwen3.5-q6k-180k": {
"host": "0.0.0.0",
@ -37,7 +38,8 @@
"modelPath": "/home/kamma/models/Qwen3.5-35B-A3B-Q6_K.gguf",
"chatTemplateKwargs": "{\"enable_thinking\": false}",
"ngl": 999,
"fit": false
"fit": false,
"reasoning": false
},
"QwenCoderNext-160k": {
"host": "0.0.0.0",
@ -57,7 +59,8 @@
"modelPath": "/home/kamma/models/Qwen3-Coder-Next-UD-Q2_K_XL.gguf",
"chatTemplateKwargs": "{\"enable_thinking\": false}",
"ngl": 999,
"fit": false
"fit": false,
"reasoning": false
},
"Nemotron Cascade 180k": {
"host": "0.0.0.0",
@ -77,7 +80,8 @@
"modelPath": "/home/kamma/models/Nemotron-Cascade-2-30B-A3B.Q5_K_M.gguf",
"chatTemplateKwargs": "{\"enable_thinking\": false}",
"ngl": 999,
"fit": false
"fit": false,
"reasoning": false
},
"Qwen3.5 q6xl 160k": {
"host": "0.0.0.0",
@ -97,7 +101,8 @@
"modelPath": "/home/kamma/models/Qwen3.5-35B-A3B-UD-Q6_K_XL.gguf",
"chatTemplateKwargs": "{\"enable_thinking\": false}",
"ngl": -1,
"fit": true
"fit": true,
"reasoning": false
},
"gpt-oss-20b-160k": {
"host": "0.0.0.0",
@ -117,7 +122,8 @@
"modelPath": "/home/kamma/models/gpt-oss-20b-F16.gguf",
"chatTemplateKwargs": "{\"enable_thinking\": false}",
"ngl": 999,
"fit": false
"fit": false,
"reasoning": false
},
"gpt-oss-120b-F16-16k": {
"host": "0.0.0.0",
@ -137,7 +143,8 @@
"modelPath": "/home/kamma/models/gpt-oss-120b-F16.gguf",
"chatTemplateKwargs": "{\"enable_thinking\": true}",
"ngl": -1,
"fit": true
"fit": true,
"reasoning": false
},
"GLM-Flash-UD-Q6KXL-180k": {
"host": "0.0.0.0",
@ -157,6 +164,70 @@
"modelPath": "/home/kamma/models/GLM-4.7-Flash-UD-Q6_K_XL.gguf",
"chatTemplateKwargs": "{\"enable_thinking\": false}",
"ngl": -1,
"fit": true
"fit": true,
"reasoning": false
},
"Qwen3-Coder-Next-UD-Q2KXL-160k": {
"host": "0.0.0.0",
"port": 3080,
"parallel": 1,
"threads": 99,
"flashAttention": true,
"kvUnified": true,
"cacheTypeK": "q8_0",
"cacheTypeV": "q8_0",
"temperature": 0.6,
"topP": 0.95,
"topK": 20,
"minP": 0.0,
"ctxSize": 160000,
"enableThinking": false,
"modelPath": "/home/kamma/models/Qwen3-Coder-Next-UD-Q2_K_XL.gguf",
"chatTemplateKwargs": "{\"enable_thinking\": true}",
"ngl": -1,
"fit": true,
"reasoning": false
},
"Qwen3-Coder-Next-UD-Q3KXL-160k": {
"host": "0.0.0.0",
"port": 3080,
"parallel": 1,
"threads": 99,
"flashAttention": true,
"kvUnified": true,
"cacheTypeK": "q8_0",
"cacheTypeV": "q8_0",
"temperature": 0.6,
"topP": 0.95,
"topK": 20,
"minP": 0.0,
"ctxSize": 160000,
"enableThinking": false,
"modelPath": "/home/kamma/models/Qwen3-Coder-Next-UD-Q3_K_XL.gguf",
"chatTemplateKwargs": "{\"enable_thinking\": true}",
"ngl": -1,
"fit": true,
"reasoning": false
},
"Qwen3-Coder-Next-UD-Q4KXL-160k": {
"host": "0.0.0.0",
"port": 3080,
"parallel": 1,
"threads": 99,
"flashAttention": true,
"kvUnified": true,
"cacheTypeK": "q8_0",
"cacheTypeV": "q8_0",
"temperature": 0.6,
"topP": 0.95,
"topK": 20,
"minP": 0.0,
"ctxSize": 160000,
"enableThinking": false,
"modelPath": "/home/kamma/models/Qwen3-Coder-Next-UD-Q4_K_XL.gguf",
"chatTemplateKwargs": "",
"ngl": -1,
"fit": true,
"reasoning": true
}
}

View File

@ -43,6 +43,8 @@ public class CommandBuilder {
cmd.append(" --fit on");
}
cmd.append(" --reasoning ").append(config.isReasoning() ? "on" : "off");
String modelPath = buildModelPath(config.getModelPath(), modelsDirPath);
cmd.append(" -m ").append(modelPath);

View File

@ -56,6 +56,7 @@ public class Main extends JFrame {
private JCheckBox flashAttnCheckBox;
private JCheckBox kvUnifiedCheckBox;
private JCheckBox fitCheckBox;
private JCheckBox reasoningCheckBox;
private JComboBox<String> cacheTypeKComboBox;
private JComboBox<String> cacheTypeVComboBox;
private JTextField tempField;
@ -335,6 +336,7 @@ public class Main extends JFrame {
config.setFlashAttention(flashAttnCheckBox.isSelected());
config.setKvUnified(kvUnifiedCheckBox.isSelected());
config.setFit(fitCheckBox.isSelected());
config.setReasoning(reasoningCheckBox.isSelected());
config.setCacheTypeK((String) cacheTypeKComboBox.getSelectedItem());
config.setCacheTypeV((String) cacheTypeVComboBox.getSelectedItem());
config.setTemperature(Double.parseDouble(tempField.getText()));
@ -381,6 +383,7 @@ public class Main extends JFrame {
kwargsField.setText(config.getChatTemplateKwargs());
setNglFieldText(String.valueOf(config.getNgl()));
fitCheckBox.setSelected(config.isFit());
reasoningCheckBox.setSelected(config.isReasoning());
toggleFitMode();
} catch (IOException e) {
@ -796,6 +799,17 @@ public class Main extends JFrame {
fitCheckBox.addActionListener(e -> toggleFitMode());
panel.add(fitCheckBox, gbc);
gbc.gridx = 0;
gbc.gridy = 9;
gbc.weightx = 0;
panel.add(new JLabel("Reasoning:"), gbc);
gbc.gridx = 1;
gbc.weightx = 1.0;
reasoningCheckBox = new JCheckBox("Reasoning", false);
reasoningCheckBox.addActionListener(e -> updateCommandPreview());
panel.add(reasoningCheckBox, gbc);
return panel;
}

View File

@ -26,6 +26,7 @@ public class ModelConfig implements Serializable {
private String chatTemplateKwargs;
private int ngl;
private boolean fit;
private boolean reasoning;
public ModelConfig() {
this.host = "0.0.0.0";
@ -46,6 +47,7 @@ public class ModelConfig implements Serializable {
this.chatTemplateKwargs = "";
this.ngl = 999;
this.fit = false;
this.reasoning = false;
}
// Getters and setters
@ -103,6 +105,9 @@ public class ModelConfig implements Serializable {
public boolean isFit() { return fit; }
public void setFit(boolean fit) { this.fit = fit; }
public boolean isReasoning() { return reasoning; }
public void setReasoning(boolean reasoning) { this.reasoning = reasoning; }
@Override
public String toString() {
return "ModelConfig{" +
@ -124,6 +129,7 @@ public class ModelConfig implements Serializable {
", chatTemplateKwargs='" + chatTemplateKwargs + '\'' +
", ngl=" + ngl +
", fit=" + fit +
", reasoning=" + reasoning +
'}';
}
}