lemonade-sdk 8.0.2__py3-none-any.whl → 8.0.4__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/cli.py +2 -2
- lemonade/profilers/profiler.py +4 -1
- lemonade/tools/humaneval.py +1 -1
- lemonade/tools/mmlu.py +1 -1
- lemonade/tools/oga/load.py +3 -9
- lemonade/tools/perplexity.py +2 -2
- lemonade/tools/prompt.py +21 -6
- lemonade/tools/quark/quark_load.py +1 -1
- lemonade/tools/quark/quark_quantize.py +2 -2
- lemonade/tools/report/table.py +80 -0
- lemonade/tools/server/llamacpp.py +148 -16
- lemonade/tools/server/serve.py +73 -0
- lemonade/tools/server/static/styles.css +424 -4
- lemonade/tools/server/static/webapp.html +337 -38
- lemonade/tools/server/tray.py +25 -9
- lemonade/version.py +1 -1
- {lemonade_sdk-8.0.2.dist-info → lemonade_sdk-8.0.4.dist-info}/METADATA +33 -36
- {lemonade_sdk-8.0.2.dist-info → lemonade_sdk-8.0.4.dist-info}/RECORD +26 -26
- lemonade_server/model_manager.py +123 -36
- lemonade_server/pydantic_models.py +25 -1
- lemonade_server/server_models.json +53 -43
- {lemonade_sdk-8.0.2.dist-info → lemonade_sdk-8.0.4.dist-info}/WHEEL +0 -0
- {lemonade_sdk-8.0.2.dist-info → lemonade_sdk-8.0.4.dist-info}/entry_points.txt +0 -0
- {lemonade_sdk-8.0.2.dist-info → lemonade_sdk-8.0.4.dist-info}/licenses/LICENSE +0 -0
- {lemonade_sdk-8.0.2.dist-info → lemonade_sdk-8.0.4.dist-info}/licenses/NOTICE.md +0 -0
- {lemonade_sdk-8.0.2.dist-info → lemonade_sdk-8.0.4.dist-info}/top_level.txt +0 -0
|
@@ -89,7 +89,7 @@ body {
|
|
|
89
89
|
margin-bottom: 2em;
|
|
90
90
|
border-radius: 8px;
|
|
91
91
|
border: 1px solid #e0e0e0;
|
|
92
|
-
max-width:
|
|
92
|
+
max-width: 1000px;
|
|
93
93
|
width: 100%;
|
|
94
94
|
}
|
|
95
95
|
|
|
@@ -130,8 +130,8 @@ body {
|
|
|
130
130
|
.chat-container {
|
|
131
131
|
display: flex;
|
|
132
132
|
flex-direction: column;
|
|
133
|
-
height:
|
|
134
|
-
max-width:
|
|
133
|
+
height: 600px;
|
|
134
|
+
max-width: 800px;
|
|
135
135
|
margin: 0 auto;
|
|
136
136
|
border: 1px solid #e0e0e0;
|
|
137
137
|
border-radius: 8px;
|
|
@@ -188,6 +188,155 @@ body {
|
|
|
188
188
|
align-self: flex-start;
|
|
189
189
|
}
|
|
190
190
|
|
|
191
|
+
/* Markdown styling within chat bubbles */
|
|
192
|
+
.chat-bubble h1,
|
|
193
|
+
.chat-bubble h2,
|
|
194
|
+
.chat-bubble h3,
|
|
195
|
+
.chat-bubble h4,
|
|
196
|
+
.chat-bubble h5,
|
|
197
|
+
.chat-bubble h6 {
|
|
198
|
+
margin: 0.5em 0 0.3em 0;
|
|
199
|
+
color: inherit;
|
|
200
|
+
font-weight: bold;
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
.chat-bubble h1 { font-size: 1.4em; }
|
|
204
|
+
.chat-bubble h2 { font-size: 1.3em; }
|
|
205
|
+
.chat-bubble h3 { font-size: 1.2em; }
|
|
206
|
+
.chat-bubble h4 { font-size: 1.1em; }
|
|
207
|
+
.chat-bubble h5 { font-size: 1.05em; }
|
|
208
|
+
.chat-bubble h6 { font-size: 1em; }
|
|
209
|
+
|
|
210
|
+
.chat-bubble p {
|
|
211
|
+
margin: 0.5em 0;
|
|
212
|
+
line-height: 1.4;
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
.chat-bubble p:first-child {
|
|
216
|
+
margin-top: 0;
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
.chat-bubble p:last-child {
|
|
220
|
+
margin-bottom: 0;
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
.chat-bubble ul,
|
|
224
|
+
.chat-bubble ol {
|
|
225
|
+
margin: 0.5em 0;
|
|
226
|
+
padding-left: 1.5em;
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
.chat-bubble li {
|
|
230
|
+
margin: 0.2em 0;
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
.chat-bubble blockquote {
|
|
234
|
+
margin: 0.5em 0;
|
|
235
|
+
padding: 0.5em 1em;
|
|
236
|
+
border-left: 3px solid #ccc;
|
|
237
|
+
background: rgba(0,0,0,0.05);
|
|
238
|
+
border-radius: 4px;
|
|
239
|
+
font-style: italic;
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
.chat-bubble code {
|
|
243
|
+
background: rgba(0,0,0,0.1);
|
|
244
|
+
padding: 0.2em 0.4em;
|
|
245
|
+
border-radius: 3px;
|
|
246
|
+
font-family: 'Consolas', 'Monaco', 'Courier New', monospace;
|
|
247
|
+
font-size: 0.9em;
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
.chat-bubble pre {
|
|
251
|
+
background: rgba(0,0,0,0.05);
|
|
252
|
+
border: 1px solid rgba(0,0,0,0.1);
|
|
253
|
+
border-radius: 6px;
|
|
254
|
+
padding: 1em;
|
|
255
|
+
margin: 0.5em 0;
|
|
256
|
+
overflow-x: auto;
|
|
257
|
+
font-family: 'Consolas', 'Monaco', 'Courier New', monospace;
|
|
258
|
+
font-size: 0.9em;
|
|
259
|
+
line-height: 1.4;
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
.chat-bubble pre code {
|
|
263
|
+
background: none !important;
|
|
264
|
+
padding: 0 !important;
|
|
265
|
+
border-radius: 0 !important;
|
|
266
|
+
border: none !important;
|
|
267
|
+
font-size: inherit;
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
.chat-bubble table {
|
|
271
|
+
border-collapse: collapse;
|
|
272
|
+
margin: 0.5em 0;
|
|
273
|
+
font-size: 0.9em;
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
.chat-bubble th,
|
|
277
|
+
.chat-bubble td {
|
|
278
|
+
border: 1px solid #ddd;
|
|
279
|
+
padding: 0.3em 0.6em;
|
|
280
|
+
text-align: left;
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
.chat-bubble th {
|
|
284
|
+
background: rgba(0,0,0,0.05);
|
|
285
|
+
font-weight: bold;
|
|
286
|
+
}
|
|
287
|
+
|
|
288
|
+
.chat-bubble a {
|
|
289
|
+
color: #007acc;
|
|
290
|
+
text-decoration: none;
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
.chat-bubble a:hover {
|
|
294
|
+
text-decoration: underline;
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
.chat-bubble hr {
|
|
298
|
+
border: none;
|
|
299
|
+
border-top: 1px solid #ddd;
|
|
300
|
+
margin: 1em 0;
|
|
301
|
+
}
|
|
302
|
+
|
|
303
|
+
.chat-bubble strong {
|
|
304
|
+
font-weight: bold;
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
.chat-bubble em {
|
|
308
|
+
font-style: italic;
|
|
309
|
+
}
|
|
310
|
+
|
|
311
|
+
.chat-bubble del {
|
|
312
|
+
text-decoration: line-through;
|
|
313
|
+
}
|
|
314
|
+
|
|
315
|
+
/* Special styling for code blocks in LLM bubbles */
|
|
316
|
+
.chat-bubble.llm pre {
|
|
317
|
+
background: #f8f8f8;
|
|
318
|
+
border: 1px solid #e0e0e0;
|
|
319
|
+
}
|
|
320
|
+
|
|
321
|
+
/* Apply special styling to inline code elements */
|
|
322
|
+
.chat-bubble.llm code {
|
|
323
|
+
background: #f8f8f8;
|
|
324
|
+
border: 1px solid #e0e0e0;
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
/* Remove styling from code elements inside pre blocks */
|
|
328
|
+
.chat-bubble.llm pre code {
|
|
329
|
+
background: none !important;
|
|
330
|
+
border: none !important;
|
|
331
|
+
padding: 0 !important;
|
|
332
|
+
border-radius: 0 !important;
|
|
333
|
+
}
|
|
334
|
+
|
|
335
|
+
.chat-bubble.llm blockquote {
|
|
336
|
+
background: rgba(0,0,0,0.03);
|
|
337
|
+
border-left-color: #999;
|
|
338
|
+
}
|
|
339
|
+
|
|
191
340
|
.chat-input-row {
|
|
192
341
|
display: flex;
|
|
193
342
|
gap: 0.5em;
|
|
@@ -320,6 +469,14 @@ body {
|
|
|
320
469
|
background-color: #27ae60;
|
|
321
470
|
}
|
|
322
471
|
|
|
472
|
+
.model-label.embeddings {
|
|
473
|
+
background-color: #9b59b6;
|
|
474
|
+
}
|
|
475
|
+
|
|
476
|
+
.model-label.reranking {
|
|
477
|
+
background-color: #ca4747;
|
|
478
|
+
}
|
|
479
|
+
|
|
323
480
|
.model-labels-container {
|
|
324
481
|
display: flex;
|
|
325
482
|
align-items: center;
|
|
@@ -878,4 +1035,267 @@ body {
|
|
|
878
1035
|
|
|
879
1036
|
.register-form-row-tight .tooltip-icon:last-child:hover::before {
|
|
880
1037
|
transform: translateX(0) translateY(-2px);
|
|
881
|
-
}
|
|
1038
|
+
}
|
|
1039
|
+
|
|
1040
|
+
/* App Suggestions Section */
|
|
1041
|
+
.app-suggestions-section {
|
|
1042
|
+
margin-top: 2rem;
|
|
1043
|
+
padding: 1.5rem 0;
|
|
1044
|
+
text-align: center;
|
|
1045
|
+
border-top: 1px solid #e0e0e0;
|
|
1046
|
+
background: #fafafa;
|
|
1047
|
+
}
|
|
1048
|
+
|
|
1049
|
+
.suggestion-text {
|
|
1050
|
+
font-size: 1.1rem;
|
|
1051
|
+
color: #555;
|
|
1052
|
+
margin-bottom: 1.5rem;
|
|
1053
|
+
font-weight: 500;
|
|
1054
|
+
letter-spacing: 0.01em;
|
|
1055
|
+
}
|
|
1056
|
+
|
|
1057
|
+
.suggestion-highlight {
|
|
1058
|
+
font-size: 1.2rem;
|
|
1059
|
+
margin-right: 0.5rem;
|
|
1060
|
+
opacity: 0.8;
|
|
1061
|
+
}
|
|
1062
|
+
|
|
1063
|
+
.app-logos-grid {
|
|
1064
|
+
display: flex;
|
|
1065
|
+
justify-content: center;
|
|
1066
|
+
align-items: center;
|
|
1067
|
+
gap: 1rem;
|
|
1068
|
+
margin: 1rem 0;
|
|
1069
|
+
flex-wrap: nowrap;
|
|
1070
|
+
padding: 0 1rem;
|
|
1071
|
+
}
|
|
1072
|
+
|
|
1073
|
+
.app-logo-item {
|
|
1074
|
+
display: flex;
|
|
1075
|
+
align-items: center;
|
|
1076
|
+
justify-content: center;
|
|
1077
|
+
width: 60px;
|
|
1078
|
+
height: 60px;
|
|
1079
|
+
border-radius: 8px;
|
|
1080
|
+
background: #fff;
|
|
1081
|
+
padding: 0.3rem;
|
|
1082
|
+
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
|
|
1083
|
+
transition: transform 0.2s, box-shadow 0.2s;
|
|
1084
|
+
text-decoration: none;
|
|
1085
|
+
position: relative;
|
|
1086
|
+
}
|
|
1087
|
+
|
|
1088
|
+
.app-logo-img {
|
|
1089
|
+
width: 100%;
|
|
1090
|
+
height: 100%;
|
|
1091
|
+
object-fit: contain;
|
|
1092
|
+
border-radius: 4px;
|
|
1093
|
+
}
|
|
1094
|
+
|
|
1095
|
+
.app-logo-item:hover {
|
|
1096
|
+
transform: translateY(-3px);
|
|
1097
|
+
box-shadow: 0 6px 20px rgba(0,0,0,0.15);
|
|
1098
|
+
background: #fff;
|
|
1099
|
+
}
|
|
1100
|
+
|
|
1101
|
+
.app-name {
|
|
1102
|
+
font-size: 0.9rem;
|
|
1103
|
+
font-weight: 600;
|
|
1104
|
+
text-align: center;
|
|
1105
|
+
line-height: 1.2;
|
|
1106
|
+
transition: color 0.3s ease;
|
|
1107
|
+
}
|
|
1108
|
+
|
|
1109
|
+
/* Fallback styling for broken images */
|
|
1110
|
+
.app-logo-item.image-failed {
|
|
1111
|
+
background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
|
|
1112
|
+
border: 2px dashed #dee2e6;
|
|
1113
|
+
flex-direction: column;
|
|
1114
|
+
gap: 0.2rem;
|
|
1115
|
+
padding: 0.5rem;
|
|
1116
|
+
}
|
|
1117
|
+
|
|
1118
|
+
.app-logo-item.image-failed:hover {
|
|
1119
|
+
background: linear-gradient(135deg, #e9ecef 0%, #dee2e6 100%);
|
|
1120
|
+
border-color: #adb5bd;
|
|
1121
|
+
}
|
|
1122
|
+
|
|
1123
|
+
.app-logo-item.image-failed .app-logo-img {
|
|
1124
|
+
display: none;
|
|
1125
|
+
}
|
|
1126
|
+
|
|
1127
|
+
.app-logo-item.image-failed .app-name {
|
|
1128
|
+
display: block;
|
|
1129
|
+
font-size: 0.7rem;
|
|
1130
|
+
color: #6c757d;
|
|
1131
|
+
font-weight: 500;
|
|
1132
|
+
text-align: center;
|
|
1133
|
+
line-height: 1.1;
|
|
1134
|
+
word-wrap: break-word;
|
|
1135
|
+
overflow-wrap: break-word;
|
|
1136
|
+
hyphens: auto;
|
|
1137
|
+
}
|
|
1138
|
+
|
|
1139
|
+
/* Default hidden state for app names */
|
|
1140
|
+
.app-logo-item:not(.image-failed) .app-name {
|
|
1141
|
+
display: none;
|
|
1142
|
+
}
|
|
1143
|
+
|
|
1144
|
+
@media (max-width: 600px) {
|
|
1145
|
+
.app-logos-grid {
|
|
1146
|
+
gap: 0.5rem;
|
|
1147
|
+
padding: 0 0.5rem;
|
|
1148
|
+
}
|
|
1149
|
+
|
|
1150
|
+
.app-logo-item {
|
|
1151
|
+
width: 48px;
|
|
1152
|
+
height: 48px;
|
|
1153
|
+
}
|
|
1154
|
+
|
|
1155
|
+
.app-logo-img {
|
|
1156
|
+
border-radius: 3px;
|
|
1157
|
+
}
|
|
1158
|
+
|
|
1159
|
+
.suggestion-text {
|
|
1160
|
+
font-size: 0.9rem;
|
|
1161
|
+
margin-bottom: 0.5rem;
|
|
1162
|
+
}
|
|
1163
|
+
|
|
1164
|
+
.app-logo-item.image-failed .app-name {
|
|
1165
|
+
font-size: 0.6rem;
|
|
1166
|
+
line-height: 1.0;
|
|
1167
|
+
}
|
|
1168
|
+
|
|
1169
|
+
.app-logo-item.image-failed {
|
|
1170
|
+
padding: 0.3rem;
|
|
1171
|
+
}
|
|
1172
|
+
}
|
|
1173
|
+
|
|
1174
|
+
/* Think tokens styling */
|
|
1175
|
+
.think-tokens-container {
|
|
1176
|
+
margin: 0.5em 0;
|
|
1177
|
+
border-radius: 8px;
|
|
1178
|
+
overflow: hidden;
|
|
1179
|
+
border: 1px solid rgba(0,0,0,0.1);
|
|
1180
|
+
background: rgba(0,0,0,0.02);
|
|
1181
|
+
transition: all 0.2s ease;
|
|
1182
|
+
}
|
|
1183
|
+
|
|
1184
|
+
.think-tokens-header {
|
|
1185
|
+
background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
|
|
1186
|
+
padding: 0.6em 0.8em;
|
|
1187
|
+
cursor: pointer;
|
|
1188
|
+
display: flex;
|
|
1189
|
+
align-items: center;
|
|
1190
|
+
gap: 0.5em;
|
|
1191
|
+
border-bottom: 1px solid rgba(0,0,0,0.08);
|
|
1192
|
+
transition: all 0.2s ease;
|
|
1193
|
+
user-select: none;
|
|
1194
|
+
}
|
|
1195
|
+
|
|
1196
|
+
.think-tokens-header:hover {
|
|
1197
|
+
background: linear-gradient(135deg, #e9ecef 0%, #dee2e6 100%);
|
|
1198
|
+
}
|
|
1199
|
+
|
|
1200
|
+
.think-tokens-chevron {
|
|
1201
|
+
font-size: 0.8em;
|
|
1202
|
+
color: #666;
|
|
1203
|
+
transition: transform 0.2s ease;
|
|
1204
|
+
width: 12px;
|
|
1205
|
+
text-align: center;
|
|
1206
|
+
}
|
|
1207
|
+
|
|
1208
|
+
.think-tokens-label {
|
|
1209
|
+
font-size: 0.9em;
|
|
1210
|
+
font-weight: 600;
|
|
1211
|
+
color: #555;
|
|
1212
|
+
font-style: italic;
|
|
1213
|
+
}
|
|
1214
|
+
|
|
1215
|
+
.think-tokens-content {
|
|
1216
|
+
padding: 1em;
|
|
1217
|
+
background: rgba(0,0,0,0.03);
|
|
1218
|
+
border-top: 1px solid rgba(0,0,0,0.05);
|
|
1219
|
+
display: block;
|
|
1220
|
+
}
|
|
1221
|
+
|
|
1222
|
+
.think-tokens-container.collapsed .think-tokens-content {
|
|
1223
|
+
display: none;
|
|
1224
|
+
}
|
|
1225
|
+
|
|
1226
|
+
.think-tokens-container.collapsed .think-tokens-header {
|
|
1227
|
+
border-bottom: none;
|
|
1228
|
+
}
|
|
1229
|
+
|
|
1230
|
+
.main-response {
|
|
1231
|
+
margin-top: 0.5em;
|
|
1232
|
+
}
|
|
1233
|
+
|
|
1234
|
+
/* Ensure think tokens content inherits proper styling */
|
|
1235
|
+
.think-tokens-content h1,
|
|
1236
|
+
.think-tokens-content h2,
|
|
1237
|
+
.think-tokens-content h3,
|
|
1238
|
+
.think-tokens-content h4,
|
|
1239
|
+
.think-tokens-content h5,
|
|
1240
|
+
.think-tokens-content h6 {
|
|
1241
|
+
margin: 0.5em 0 0.3em 0;
|
|
1242
|
+
color: inherit;
|
|
1243
|
+
font-weight: bold;
|
|
1244
|
+
}
|
|
1245
|
+
|
|
1246
|
+
.think-tokens-content p {
|
|
1247
|
+
margin: 0.5em 0;
|
|
1248
|
+
line-height: 1.4;
|
|
1249
|
+
}
|
|
1250
|
+
|
|
1251
|
+
.think-tokens-content ul,
|
|
1252
|
+
.think-tokens-content ol {
|
|
1253
|
+
margin: 0.5em 0;
|
|
1254
|
+
padding-left: 1.5em;
|
|
1255
|
+
}
|
|
1256
|
+
|
|
1257
|
+
.think-tokens-content li {
|
|
1258
|
+
margin: 0.2em 0;
|
|
1259
|
+
}
|
|
1260
|
+
|
|
1261
|
+
.think-tokens-content blockquote {
|
|
1262
|
+
margin: 0.5em 0;
|
|
1263
|
+
padding: 0.5em 1em;
|
|
1264
|
+
border-left: 3px solid #ccc;
|
|
1265
|
+
background: rgba(0,0,0,0.05);
|
|
1266
|
+
border-radius: 4px;
|
|
1267
|
+
font-style: italic;
|
|
1268
|
+
}
|
|
1269
|
+
|
|
1270
|
+
.think-tokens-content code {
|
|
1271
|
+
background: rgba(0,0,0,0.1);
|
|
1272
|
+
padding: 0.2em 0.4em;
|
|
1273
|
+
border-radius: 3px;
|
|
1274
|
+
font-family: 'Consolas', 'Monaco', 'Courier New', monospace;
|
|
1275
|
+
font-size: 0.9em;
|
|
1276
|
+
}
|
|
1277
|
+
|
|
1278
|
+
.think-tokens-content pre {
|
|
1279
|
+
background: rgba(0,0,0,0.08);
|
|
1280
|
+
border: 1px solid rgba(0,0,0,0.1);
|
|
1281
|
+
border-radius: 6px;
|
|
1282
|
+
padding: 1em;
|
|
1283
|
+
margin: 0.5em 0;
|
|
1284
|
+
overflow-x: auto;
|
|
1285
|
+
font-family: 'Consolas', 'Monaco', 'Courier New', monospace;
|
|
1286
|
+
font-size: 0.9em;
|
|
1287
|
+
line-height: 1.4;
|
|
1288
|
+
}
|
|
1289
|
+
|
|
1290
|
+
.think-tokens-content pre code {
|
|
1291
|
+
background: none !important;
|
|
1292
|
+
padding: 0 !important;
|
|
1293
|
+
border-radius: 0 !important;
|
|
1294
|
+
border: none !important;
|
|
1295
|
+
font-size: inherit;
|
|
1296
|
+
}
|
|
1297
|
+
|
|
1298
|
+
@keyframes fadeIn {
|
|
1299
|
+
from { opacity: 0; transform: translateY(-5px); }
|
|
1300
|
+
to { opacity: 1; transform: translateY(0); }
|
|
1301
|
+
}
|