lemonade-sdk 8.1.4__py3-none-any.whl → 8.2.2__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of lemonade-sdk might be problematic. Click here for more details.
- lemonade/cache.py +6 -1
- lemonade/cli.py +47 -5
- lemonade/common/inference_engines.py +13 -4
- lemonade/common/status.py +4 -4
- lemonade/common/system_info.py +544 -1
- lemonade/profilers/agt_power.py +437 -0
- lemonade/profilers/hwinfo_power.py +429 -0
- lemonade/tools/accuracy.py +143 -48
- lemonade/tools/adapter.py +6 -1
- lemonade/tools/bench.py +26 -8
- lemonade/tools/flm/__init__.py +1 -0
- lemonade/tools/flm/utils.py +303 -0
- lemonade/tools/huggingface/bench.py +6 -1
- lemonade/tools/llamacpp/bench.py +146 -27
- lemonade/tools/llamacpp/load.py +30 -2
- lemonade/tools/llamacpp/utils.py +393 -33
- lemonade/tools/oga/bench.py +5 -26
- lemonade/tools/oga/load.py +60 -121
- lemonade/tools/oga/migration.py +403 -0
- lemonade/tools/report/table.py +76 -8
- lemonade/tools/server/flm.py +133 -0
- lemonade/tools/server/llamacpp.py +220 -553
- lemonade/tools/server/serve.py +684 -168
- lemonade/tools/server/static/js/chat.js +666 -342
- lemonade/tools/server/static/js/model-settings.js +24 -3
- lemonade/tools/server/static/js/models.js +597 -73
- lemonade/tools/server/static/js/shared.js +79 -14
- lemonade/tools/server/static/logs.html +191 -0
- lemonade/tools/server/static/styles.css +491 -66
- lemonade/tools/server/static/webapp.html +83 -31
- lemonade/tools/server/tray.py +158 -38
- lemonade/tools/server/utils/macos_tray.py +226 -0
- lemonade/tools/server/utils/{system_tray.py → windows_tray.py} +13 -0
- lemonade/tools/server/webapp.py +4 -1
- lemonade/tools/server/wrapped_server.py +559 -0
- lemonade/version.py +1 -1
- lemonade_install/install.py +54 -611
- {lemonade_sdk-8.1.4.dist-info → lemonade_sdk-8.2.2.dist-info}/METADATA +29 -72
- lemonade_sdk-8.2.2.dist-info/RECORD +83 -0
- lemonade_server/cli.py +145 -37
- lemonade_server/model_manager.py +521 -37
- lemonade_server/pydantic_models.py +28 -1
- lemonade_server/server_models.json +246 -92
- lemonade_server/settings.py +39 -39
- lemonade/tools/quark/__init__.py +0 -0
- lemonade/tools/quark/quark_load.py +0 -173
- lemonade/tools/quark/quark_quantize.py +0 -439
- lemonade_sdk-8.1.4.dist-info/RECORD +0 -77
- {lemonade_sdk-8.1.4.dist-info → lemonade_sdk-8.2.2.dist-info}/WHEEL +0 -0
- {lemonade_sdk-8.1.4.dist-info → lemonade_sdk-8.2.2.dist-info}/entry_points.txt +0 -0
- {lemonade_sdk-8.1.4.dist-info → lemonade_sdk-8.2.2.dist-info}/licenses/LICENSE +0 -0
- {lemonade_sdk-8.1.4.dist-info → lemonade_sdk-8.2.2.dist-info}/licenses/NOTICE.md +0 -0
- {lemonade_sdk-8.1.4.dist-info → lemonade_sdk-8.2.2.dist-info}/top_level.txt +0 -0
|
@@ -28,9 +28,11 @@ function loadModelSettings() {
|
|
|
28
28
|
const topKInput = document.getElementById('setting-top-k');
|
|
29
29
|
const topPInput = document.getElementById('setting-top-p');
|
|
30
30
|
const repeatInput = document.getElementById('setting-repeat-penalty');
|
|
31
|
+
const thinkingCheckbox = document.getElementById('enable-thinking');
|
|
32
|
+
|
|
31
33
|
|
|
32
34
|
// Check if DOM elements exist
|
|
33
|
-
if (!tempInput || !topKInput || !topPInput || !repeatInput) {
|
|
35
|
+
if (!tempInput || !topKInput || !topPInput || !repeatInput || !thinkingCheckbox) {
|
|
34
36
|
return;
|
|
35
37
|
}
|
|
36
38
|
|
|
@@ -47,11 +49,18 @@ function loadModelSettings() {
|
|
|
47
49
|
if (modelSettings.repeat_penalty !== undefined) {
|
|
48
50
|
repeatInput.value = modelSettings.repeat_penalty;
|
|
49
51
|
}
|
|
52
|
+
if (modelSettings.enable_thinking !== undefined) {
|
|
53
|
+
thinkingCheckbox.checked = modelSettings.enable_thinking;
|
|
54
|
+
|
|
55
|
+
} else {
|
|
56
|
+
thinkingCheckbox.checked = true; // default to enabled
|
|
57
|
+
|
|
58
|
+
}
|
|
50
59
|
}
|
|
51
60
|
|
|
52
61
|
// Auto-save model settings whenever inputs change
|
|
53
62
|
function setupAutoSaveSettings() {
|
|
54
|
-
const inputs = ['setting-temperature', 'setting-top-k', 'setting-top-p', 'setting-repeat-penalty'];
|
|
63
|
+
const inputs = ['setting-temperature', 'setting-top-k', 'setting-top-p', 'setting-repeat-penalty', 'enable-thinking'];
|
|
55
64
|
|
|
56
65
|
inputs.forEach(inputId => {
|
|
57
66
|
const input = document.getElementById(inputId);
|
|
@@ -63,6 +72,12 @@ function setupAutoSaveSettings() {
|
|
|
63
72
|
updateModelSettings();
|
|
64
73
|
});
|
|
65
74
|
}
|
|
75
|
+
const thinkingCheckbox = document.getElementById('enable-thinking');
|
|
76
|
+
if (thinkingCheckbox) {
|
|
77
|
+
thinkingCheckbox.addEventListener('change', function() {
|
|
78
|
+
updateModelSettings();
|
|
79
|
+
});
|
|
80
|
+
}
|
|
66
81
|
});
|
|
67
82
|
}
|
|
68
83
|
|
|
@@ -72,9 +87,10 @@ function updateModelSettings() {
|
|
|
72
87
|
const topKInput = document.getElementById('setting-top-k');
|
|
73
88
|
const topPInput = document.getElementById('setting-top-p');
|
|
74
89
|
const repeatInput = document.getElementById('setting-repeat-penalty');
|
|
90
|
+
const thinkingCheckbox = document.getElementById('enable-thinking');
|
|
75
91
|
|
|
76
92
|
// Check if DOM elements exist (might not be available if DOM isn't ready)
|
|
77
|
-
if (!tempInput || !topKInput || !topPInput || !repeatInput) {
|
|
93
|
+
if (!tempInput || !topKInput || !topPInput || !repeatInput || !thinkingCheckbox) {
|
|
78
94
|
return;
|
|
79
95
|
}
|
|
80
96
|
|
|
@@ -93,6 +109,7 @@ function updateModelSettings() {
|
|
|
93
109
|
if (repeatInput.value && repeatInput.value.trim() !== '') {
|
|
94
110
|
modelSettings.repeat_penalty = parseFloat(repeatInput.value);
|
|
95
111
|
}
|
|
112
|
+
modelSettings.enable_thinking = thinkingCheckbox.checked;
|
|
96
113
|
|
|
97
114
|
// Save to localStorage
|
|
98
115
|
localStorage.setItem('lemonade_model_settings', JSON.stringify(modelSettings));
|
|
@@ -107,6 +124,7 @@ function resetModelSettings() {
|
|
|
107
124
|
document.getElementById('setting-top-k').value = '';
|
|
108
125
|
document.getElementById('setting-top-p').value = '';
|
|
109
126
|
document.getElementById('setting-repeat-penalty').value = '';
|
|
127
|
+
document.getElementById('enable-thinking').checked = true;
|
|
110
128
|
|
|
111
129
|
localStorage.removeItem('lemonade_model_settings');
|
|
112
130
|
}
|
|
@@ -135,6 +153,9 @@ function getCurrentModelSettings() {
|
|
|
135
153
|
if (modelSettings.repeat_penalty !== undefined) {
|
|
136
154
|
currentSettings.repeat_penalty = modelSettings.repeat_penalty;
|
|
137
155
|
}
|
|
156
|
+
if (modelSettings.enable_thinking !== undefined) {
|
|
157
|
+
currentSettings.enable_thinking = modelSettings.enable_thinking;
|
|
158
|
+
}
|
|
138
159
|
|
|
139
160
|
console.log('getCurrentModelSettings returning:', currentSettings);
|
|
140
161
|
return currentSettings;
|