diff options
| -rw-r--r-- | src/ollama_web/i18n/messages/en.json | 2 | ||||
| -rw-r--r-- | src/ollama_web/i18n/messages/ja.json | 2 | ||||
| -rw-r--r-- | src/ollama_web/templates/index.html | 28 | ||||
| -rw-r--r-- | tests/test_settings.py | 6 |
4 files changed, 22 insertions, 16 deletions
diff --git a/src/ollama_web/i18n/messages/en.json b/src/ollama_web/i18n/messages/en.json index 8bf3913..55183e8 100644 --- a/src/ollama_web/i18n/messages/en.json +++ b/src/ollama_web/i18n/messages/en.json @@ -125,7 +125,7 @@ "seed_value": "Fixed seed value", "advanced": "Advanced settings", "blank_omitted": "Blank options are not sent to Ollama.", - "stop_placeholder": "Enter one stop sequence per line" + "stop_placeholder": "Example (one per line):\n<|eot_id|>\n<|end_of_text|>" }, "messages": { "load_failed": "Failed to load settings.", diff --git a/src/ollama_web/i18n/messages/ja.json b/src/ollama_web/i18n/messages/ja.json index 12a9e4b..97a988d 100644 --- a/src/ollama_web/i18n/messages/ja.json +++ b/src/ollama_web/i18n/messages/ja.json @@ -125,7 +125,7 @@ "seed_value": "seed固定値", "advanced": "詳細設定", "blank_omitted": "空欄の項目はOllamaへ送信されません。", - "stop_placeholder": "停止文字列を1行に1件入力" + "stop_placeholder": "入力例(1行に1件):\n<|eot_id|>\n<|end_of_text|>" }, "messages": { "load_failed": "設定の読み込みに失敗しました。", diff --git a/src/ollama_web/templates/index.html b/src/ollama_web/templates/index.html index f30b32e..10d9aba 100644 --- a/src/ollama_web/templates/index.html +++ b/src/ollama_web/templates/index.html @@ -144,20 +144,20 @@ <summary>{{ t('settings.ollama.advanced') }}</summary> <p class="field-help">{{ t('settings.ollama.blank_omitted') }}</p> <div class="option-grid"> - <label class="settings-field"><span>num_keep</span><input data-option="num_keep" data-type="int" type="number" step="1" /></label> - <label class="settings-field"><span>num_predict</span><input data-option="num_predict" data-type="int" type="number" step="1" /></label> - <label class="settings-field"><span>top_k</span><input data-option="top_k" data-type="int" type="number" step="1" /></label> - <label class="settings-field"><span>top_p</span><input data-option="top_p" data-type="float" type="number" step="any" /></label> - <label class="settings-field"><span>min_p</span><input data-option="min_p" data-type="float" type="number" step="any" /></label> - <label class="settings-field"><span>typical_p</span><input data-option="typical_p" data-type="float" type="number" step="any" /></label> - <label class="settings-field"><span>tfs_z</span><input data-option="tfs_z" data-type="float" type="number" step="any" /></label> - <label class="settings-field"><span>repeat_last_n</span><input data-option="repeat_last_n" data-type="int" type="number" step="1" /></label> - <label class="settings-field"><span>repeat_penalty</span><input data-option="repeat_penalty" data-type="float" type="number" step="any" /></label> - <label class="settings-field"><span>presence_penalty</span><input data-option="presence_penalty" data-type="float" type="number" step="any" /></label> - <label class="settings-field"><span>frequency_penalty</span><input data-option="frequency_penalty" data-type="float" type="number" step="any" /></label> - <label class="settings-field"><span>mirostat</span><input data-option="mirostat" data-type="int" type="number" step="1" /></label> - <label class="settings-field"><span>mirostat_tau</span><input data-option="mirostat_tau" data-type="float" type="number" step="any" /></label> - <label class="settings-field"><span>mirostat_eta</span><input data-option="mirostat_eta" data-type="float" type="number" step="any" /></label> + <label class="settings-field"><span>num_keep</span><input data-option="num_keep" data-type="int" type="number" step="1" placeholder="24" /></label> + <label class="settings-field"><span>num_predict</span><input data-option="num_predict" data-type="int" type="number" step="1" placeholder="512" /></label> + <label class="settings-field"><span>top_k</span><input data-option="top_k" data-type="int" type="number" step="1" placeholder="40" /></label> + <label class="settings-field"><span>top_p</span><input data-option="top_p" data-type="float" type="number" step="any" placeholder="0.9" /></label> + <label class="settings-field"><span>min_p</span><input data-option="min_p" data-type="float" type="number" step="any" placeholder="0.05" /></label> + <label class="settings-field"><span>typical_p</span><input data-option="typical_p" data-type="float" type="number" step="any" placeholder="0.7" /></label> + <label class="settings-field"><span>tfs_z</span><input data-option="tfs_z" data-type="float" type="number" step="any" placeholder="1.0" /></label> + <label class="settings-field"><span>repeat_last_n</span><input data-option="repeat_last_n" data-type="int" type="number" step="1" placeholder="64" /></label> + <label class="settings-field"><span>repeat_penalty</span><input data-option="repeat_penalty" data-type="float" type="number" step="any" placeholder="1.1" /></label> + <label class="settings-field"><span>presence_penalty</span><input data-option="presence_penalty" data-type="float" type="number" step="any" placeholder="0.0" /></label> + <label class="settings-field"><span>frequency_penalty</span><input data-option="frequency_penalty" data-type="float" type="number" step="any" placeholder="0.0" /></label> + <label class="settings-field"><span>mirostat</span><input data-option="mirostat" data-type="int" type="number" step="1" placeholder="0" /></label> + <label class="settings-field"><span>mirostat_tau</span><input data-option="mirostat_tau" data-type="float" type="number" step="any" placeholder="5.0" /></label> + <label class="settings-field"><span>mirostat_eta</span><input data-option="mirostat_eta" data-type="float" type="number" step="any" placeholder="0.1" /></label> </div> <label class="settings-field" for="settings-stop"> <span>stop</span> diff --git a/tests/test_settings.py b/tests/test_settings.py index 6da1272..737c8fd 100644 --- a/tests/test_settings.py +++ b/tests/test_settings.py @@ -122,6 +122,12 @@ def test_settings_api_and_page_elements(tmp_path: Path) -> None: assert 'data-settings-screen="general"' in html assert 'data-settings-screen="ui"' in html assert 'data-settings-screen="ollama"' in html + num_keep = ( + 'data-option="num_keep" data-type="int" type="number" ' + 'step="1" placeholder="24"' + ) + assert num_keep in html + assert "<|eot_id|>" in html assert html.index('id="general-settings-btn"') < html.index('id="mcp-settings-btn"') finally: settings.data_dir = original_data_dir |
