Added top-k filtering to webapp. Minor README adjustments.

This commit is contained in:
2026-06-13 13:50:57 -04:00
parent c56e40c516
commit 2c5d683a72
4 changed files with 75 additions and 13 deletions
+19
View File
@@ -362,6 +362,25 @@ button.secondary:hover {
}
.advanced-opts {
margin-top: 0.5rem;
}
.advanced-opts summary {
cursor: pointer;
font-size: 0.78rem;
color: var(--muted);
user-select: none;
}
.advanced-opts summary:hover {
color: var(--highlight);
}
.advanced-opts label {
margin-top: 0.6rem;
}
.field-help {
display: block;
margin-top: 0.35rem;
+1 -1
View File
@@ -640,7 +640,7 @@ async function generate() {
angle: Number($("gen-angle").value),
grade: Number($("gen-grade").value),
temperature: Number($("gen-temperature").value),
top_k: 50,
top_k: Number($("gen-top-k").value),
max_new_tokens: 40,
};
const result = await fetchJson("/api/generate", {
+9
View File
@@ -41,6 +41,13 @@
<input id="gen-temperature" type="number" value="0.9" min="0.1" max="2.0" step="0.1" />
<span class="field-help">Lower = safer/common; higher = more creative/weird. Use temperature ≤ 2.</span>
</label>
<details class="advanced-opts">
<summary>Advanced sampling options</summary>
<label>Top-k
<input id="gen-top-k" type="number" value="50" min="1" max="500" step="1" />
<span class="field-help">Limits sampling to the top-k most likely tokens. Lower = more focused; set to 500 to effectively disable. Default 50.</span>
</label>
</details>
<button id="generate-btn">Generate</button>
</div>
@@ -116,6 +123,8 @@
<dl>
<dt>Temperature</dt>
<dd>Sampling randomness. Lower values are more conservative; higher values are more exploratory.</dd>
<dt>Top-k</dt>
<dd>Restricts each sampling step to the k most likely tokens. Lower values make the model more focused; higher values (up to 500) allow more variety.</dd>
<dt>Target V-grade</dt>
<dd>The grade token given to the generator. The generated route is also checked by the grade predictor.</dd>
<dt>Known climb</dt>