From 90c9a7e4fa55de972add61d0c749a1a41819bdde Mon Sep 17 00:00:00 2001 From: Jaakko Vanhala Date: Thu, 9 Apr 2026 22:44:03 +0300 Subject: [PATCH] =?UTF-8?q?Asetukset-v=C3=A4lilehti:=20kaikki=20LLM-parame?= =?UTF-8?q?trit=20muokattavissa=20UI:sta?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Uusi "Asetukset"-tab jossa: - System Prompt (tekstikenttä, Courier-fontti) - Temperature (slider 0-1.5, reaaliaikainen arvo) - Top-K (slider 1-100) - Repetition Penalty (slider 1.0-2.0) - Max Tokens (slider 64-4096) - Stop-sekvenssit (yksi per rivi) - Mallinvalinta (dropdown: 1.5B/3B/7B Q4/7B) - "Palauta oletukset" -nappi Kaikki tallentuvat localStorageen (kpn-settings). Jokainen parametri selitetty hint-tekstillä. Co-Authored-By: Claude Opus 4.6 (1M context) --- .../frontend/src/components/Settings.astro | 67 ++++++++++++++++++ network-poc/frontend/src/pages/index.astro | 68 +++++++++++++++++++ network-poc/frontend/src/styles/global.css | 28 ++++++++ 3 files changed, 163 insertions(+) create mode 100644 network-poc/frontend/src/components/Settings.astro diff --git a/network-poc/frontend/src/components/Settings.astro b/network-poc/frontend/src/components/Settings.astro new file mode 100644 index 0000000..9d7008e --- /dev/null +++ b/network-poc/frontend/src/components/Settings.astro @@ -0,0 +1,67 @@ + +
+
+

Asetukset

+

Kaikki kielimallin toimintaan vaikuttavat parametrit. Muutokset tallentuvat automaattisesti.

+ + +
+

System Prompt

+

Kielimallin perusohje joka lähetetään jokaisessa pyynnössä. Määrittää mallin käyttäytymisen.

+ +
+ + +
+

Sampling-parametrit

+

Kontrolloi miten malli valitsee seuraavan tokenin. Lue lisää oppaasta.

+
+
+ + +
0 = deterministic, 0.7 = balanced, 1.5 = creative
+
+
+ + +
Montako tokenia huomioidaan. 1 = greedy, 40 = oletus
+
+
+ + +
Estää toistoa. 1.0 = ei rangaistusta, 1.15 = oletus
+
+
+ + +
Vastauksen maksimipituus tokeneina
+
+
+
+ + +
+

Stop-sekvenssit

+

Generointi katkeaa kun malli tuottaa jonkin näistä. Yksi per rivi.

+ +
+ + +
+

Malli (Ollama)

+

Natiivisolmun käyttämä kielimalli. Muutos vaatii native-noden uudelleenkäynnistyksen.

+ +
+ + +
+ + Palauttaa kaikki parametrit oletusarvoihin +
+
+
diff --git a/network-poc/frontend/src/pages/index.astro b/network-poc/frontend/src/pages/index.astro index 2f7f391..6b432ba 100644 --- a/network-poc/frontend/src/pages/index.astro +++ b/network-poc/frontend/src/pages/index.astro @@ -5,6 +5,7 @@ import Terminal from "../components/Terminal.astro"; import Editor from "../components/Editor.astro"; import Guide from "../components/Guide.astro"; import AgentBar from "../components/AgentBar.astro"; +import Settings from "../components/Settings.astro"; --- @@ -30,6 +31,7 @@ import AgentBar from "../components/AgentBar.astro";
Agentit
Editor
Opas
+
Asetukset
@@ -41,6 +43,7 @@ import AgentBar from "../components/AgentBar.astro"; + diff --git a/network-poc/frontend/src/styles/global.css b/network-poc/frontend/src/styles/global.css index 2f67795..5abad7e 100644 --- a/network-poc/frontend/src/styles/global.css +++ b/network-poc/frontend/src/styles/global.css @@ -165,6 +165,34 @@ body { box-shadow: 0 0 25px rgba(88,166,255,0.8); } +/* Settings */ +.settings-section { + margin-bottom: 24px; padding: 16px; background: var(--panel); + border: 1px solid var(--border); border-radius: 6px; +} +.settings-title { color: #e6edf3; font-size: 15px; margin-bottom: 4px; } +.settings-desc { color: #8b949e; font-size: 13px; margin-bottom: 12px; } +.settings-label { color: var(--text); font-size: 13px; display: block; margin-bottom: 4px; } +.settings-val { color: var(--accent); font-weight: 600; float: right; } +.settings-hint { color: #8b949e; font-size: 11px; margin-top: 2px; } +.settings-textarea { + width: 100%; background: var(--bg); color: var(--text); + border: 1px solid var(--border); border-radius: 4px; + padding: 8px; font-size: 13px; font-family: 'Courier New', monospace; + resize: vertical; +} +.settings-select { + width: 100%; background: var(--bg); color: var(--text); + border: 1px solid var(--border); border-radius: 4px; + padding: 8px; font-size: 13px; +} +.settings-slider { + width: 100%; accent-color: var(--accent); +} +.settings-grid { + display: grid; grid-template-columns: 1fr 1fr; gap: 16px; +} + /* Animations */ @keyframes blink { 0%,100% { opacity:1 } 50% { opacity:0 } } @keyframes spin { to { transform: rotate(360deg) } }