luisrguerra commited on
Commit
cf01265
1 Parent(s): b3b942f

Update index.html

Browse files
Files changed (1) hide show
  1. index.html +91 -406
index.html CHANGED
@@ -1,413 +1,98 @@
1
  <!DOCTYPE html>
2
- <html>
3
  <head>
4
- <meta charset="UTF-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1">
6
- <title>SDXL</title>
7
- <link rel="icon" type="image/x-icon" href="favicon.ico">
8
- <!--Bootstrap -->
9
- <script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap/5.3.1/js/bootstrap.min.js" integrity="sha512-fHY2UiQlipUq0dEabSM4s+phmn+bcxSYzXP4vAXItBvBHU7zAM/mkhCZjtBEIJexhOMzZbgFlPLuErlJF2b+0g==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
10
- <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap/5.3.1/css/bootstrap.min.css" integrity="sha512-Z/def5z5u2aR89OuzYcxmDJ0Bnd5V1cKqBEbvLOiUNWdg9PQeXVvXLI90SE4QOHGlfLqUnDNVAYyZi8UwUTmWQ==" crossorigin="anonymous" referrerpolicy="no-referrer" />
11
- <!-- Material Design Icons -->
12
- <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/MaterialDesign-Webfont/7.2.96/css/materialdesignicons.min.css" integrity="sha512-LX0YV/MWBEn2dwXCYgQHrpa9HJkwB+S+bnBpifSOTO1No27TqNMKYoAn6ff2FBh03THAzAiiCwQ+aPX+/Qt/Ow==" crossorigin="anonymous" referrerpolicy="no-referrer" />
13
-
14
- <link rel="stylesheet" href="css/theme.css">
15
- </head>
16
- <body style="padding-inline: 0.8em;padding-block: 0.5em;">
17
- <label for="promptInput" class="form-label">Prompt:</label>
18
- <input type="text" id="promptInput" class="form-control" placeholder="Ex: pet" autocomplete="off">
19
- <br>
20
- <label for="negativePromptInput" class="form-label">Negative Prompt:</label>
21
- <input type="text" id="negativePromptInput" class="form-control" placeholder="Ex: cat" autocomplete="off">
22
- <br>
23
- <div class="row">
24
- <div class="col">
25
- <label for="styleSelect" class="form-label">Artistic style:</label>
26
- <select id="styleSelect" class="form-select">
27
- </select>
28
- </div>
29
- <div class="col">
30
- <label for="sizeSelect" class="form-label">Image dimensions:</label>
31
- <select id="sizeSelect" class="form-select">
32
- <option value="square">Square</option>
33
- <option value="portrait">Portrait</option>
34
- <option value="landscape">Landscape</option>
35
- <option value="stories">Stories</option>
36
- <option value="ultrawide">Ultrawide</option>
37
- </select>
38
- </div>
39
- </div>
40
- <br>
41
- <!--Advanced options-->
42
- <div class="accordion accordion-flush" id="accordionFlushAdvancedOptions">
43
- <div class="accordion-item">
44
- <h2 class="accordion-header">
45
- <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#flush-collapseOne" aria-expanded="false" aria-controls="flush-collapseOne">
46
- Advanced Options
47
- </button>
48
- </h2>
49
- <div id="flush-collapseOne" class="accordion-collapse collapse" data-bs-parent="#accordionFlushAdvancedOptions">
50
- <br>
51
- <!--Number of inference steps-->
52
- <label for="numInferenceStepsInput" class="form-label">Number of inference steps:</label>
53
- <input type="number" id="numInferenceStepsInput" class="form-control" value="20" placeholder="Number of inference steps" min="8" max="25">
54
- <br>
55
- <!--Guidance scale-->
56
- <label for="guidanceScaleInput" class="form-label">Guidance Scale:</label>
57
- <input type="number" id="guidanceScaleInput" class="form-control" value="7.5" placeholder="guidanceScale" min="4" max="10">
58
- <br>
59
- <!--Seed-->
60
- <label for="seedInput" class="form-label">Seed:</label>
61
- <input type="number" id="seedInput" class="form-control" value="0" placeholder="Seed" min="0">
62
- <br>
63
- <!--Refiner-->
64
- <label for="refinerSelect" class="form-label">Refiner:</label>
65
- <select id="refinerSelect" class="form-select">
66
- <option value="no_refiner">No refiner</option>
67
- <option value="expert_ensemble_refiner">Expert ensemble refiner</option>
68
- <option value="base_image_refiner">Base image refiner</option>
69
- </select>
70
- <br>
71
- <!--Sampler-->
72
- <label for="samplerSelect" class="form-label">Sampler:</label>
73
- <select id="samplerSelect" class="form-select">
74
- <option value="DDIM">DDIM</option>
75
- <option value="DPMSolverMultistep">DPMSolverMultistep</option>
76
- <option value="HeunDiscrete">HeunDiscrete</option>
77
- <option value="KarrasDPM">KarrasDPM</option>
78
- <option value="K_EULER_ANCESTRAL">K_EULER_ANCESTRAL</option>
79
- <option value="K_EULER">K_EULER</option>
80
- <option value="PNDM">PNDM</option>
81
- </select>
82
- <br>
83
- <!--Model-->
84
- <label style="display: none;" for="modelSelect" class="form-label">Model:</label>
85
- <select style="display: none;" id="modelSelect" class="form-select">
86
- <option value="stability-ai/sdxl">stability-ai/sdxl</option>
87
- </select>
88
- <!--Deepinfra API token-->
89
- <label for="authTokenInput" class="form-label">Deepinfra API token:</label>
90
- <input type="password" id="authTokenInput" class="form-control" placeholder="Deepinfra API token">
91
- </div>
92
- </div>
93
- </div>
94
- <br>
95
- <button id="generateButton" class="btn btn-outline">Generate image</button>
96
- <br><br>
97
- <div class="d-flex justify-content-center">
98
- <img id="generatedImage" style="max-width: 90vw;" width="512" class="justify-content-center">
99
- </div>
100
- </body>
101
- <script type="module">
102
-
103
- const modelName = 'stability-ai/sdxl';
104
-
105
- const stylesArray = [
106
- {
107
- name:'Default',
108
- prompt: '',
109
- negative_prompt: ''
110
- },
111
- {
112
- name:'Anime',
113
- prompt: ',anime style, [manga], [illustration], [artwork], [anime wallpaper],[anime fanart], [detailed anime background], anime studio,',
114
- negative_prompt: ',black and white,b&w, monochrome, 3d render, photography, photo, [cartoon], abstract art, poorly drawn, (text), (dialog bubble), (letters), [cartoon comics], [superhero comics], signature, [minimalist art], 3d model, amateur anime artist,canvas frame,bad art,ugly,nude,porn,naked,nsfw,hentai,'
115
- },
116
- {
117
- name:'Anime - Studio Ghibli',
118
- prompt: ',studio ghibli,[beautiful anime],',
119
- negative_prompt: ',black and white,ugly,deformed,photo,3d render,abstract,noisy,blurry,poorly drawn,(text), (dialog bubble), (letters), [superhero comics],signature,amateur,nude,porn,naked,nsfw,hentai,'
120
- },
121
- {
122
- name:'Realistic Anime',
123
- prompt: ',realistic anime, realistic manga, [illustration], [artwork], realistic anime illumination, realistic anime shading, [realistic anime Deviantart], [realistic anime Artstation], [realistic anime wallpaper],[realistic anime fanart], [realistic anime Pinterest], realistic and detailed anime background, realistic anime shadows,',
124
- negative_prompt: ',black and white,b&w, monochrome, 3d render, photography, photo, [cartoon], abstract art, poorly drawn, (text), (dialog bubble), (letters), [cartoon comics], [superhero comics], signature, [minimalist art], 3d model, amateur anime artist,canvas frame,bad art,ugly,nude,porn,naked,nsfw,hentai,'
125
- },
126
- {
127
- name:'Photo',
128
- prompt: ',sharp image, full hd, 1080p,4k, [8k] ,[uhd], high quality, detailed, high resolution, [high res],[RAW photo], [HDR], [hard shadows], [cinematic shot], [dramatic lighting], [soft lighting], [dslr], professional photographer,photorealistic, realistic,real,',
129
- negative_prompt: ',blurry, low res, low resolution, low quality,ugly,nude,porn,naked,nsfw,hentai,'
130
- },
131
- {
132
- name:'Realistic anatomy',
133
- prompt: ',realistic anatomy,',
134
- negative_prompt: ',amputee, deformed body, long neck, extra fingers, bad body proportions, mutated hands, mutilated, mutation, ugly, fused fingers, malformed limbs, extra heads, morbid, disfigured,'
135
- },
136
- {
137
- name:'Renaissance',
138
- prompt: ',renaissance painting style, [chiaroscuro],[detailed brushwork],[classical beauty],oil on canvas,[classical art],[historical art],oil painting,[fine details],[perspective],[masterpiece],[artwork style],[sharp image],[high resolution],[detailed],[professional style],[frescoes],',
139
- negative_prompt: ',(black and white),sepia,blurry, low res, low resolution, low quality,ugly,artist painting,artist drawing,(digital painting style),3d render,photo,nude,porn,naked,nsfw,'
140
- },
141
- {
142
- name:'Caravaggio',
143
- prompt: ',Caravaggio,Italian Baroque style, [chiaroscuro],[dramatic composition],oil painting,Renaissance art,',
144
- negative_prompt: ',nude,porn,naked,nsfw,'
145
- },
146
- {
147
- name:'Impressionism',
148
- prompt: ',impressionist painting style,[brushstrokes],[loose brushwork style],[natural light],[vibrant colors],[oil on canvas],',
149
- negative_prompt: ',(black and white),sepia, low res, low resolution, low quality,ugly,artist painting,artist drawing,(digital painting style),3d render,photo,nude,porn,naked,nsfw,'
150
- },
151
- {
152
- name:'Painting',
153
- prompt: ',(painting style),artwork style,[masterpiece],art style,[sharp image],[high resolution],[beautiful],[detailed],[professional style],',
154
- negative_prompt: ',blurry, low res, low resolution, low quality,ugly,artist painting,artist drawing,digital painting style,nude,porn,naked,nsfw,'
155
- },
156
- {
157
- name:'Illustration',
158
- prompt: ',illustration,artwork style,masterpiece,art style,sharp image,high resolution,beautiful,detailed,professional style,',
159
- negative_prompt: ',blurry, low res, low resolution, low quality,ugly,artist painting,artist drawing,nude,porn,naked,nsfw,'
160
- },
161
- {
162
- name: "Art Nouveau",
163
- prompt: ",Art Nouveau style,illustration,detailed,artwork,[vintage],[[realistic anatomy]],",
164
- negative_prompt: ",nude,porn,naked,nsfw,[deformed],[morbid],[disfigured],noisy,abstract,visual glitch,low contrast,blurry,"
165
- },
166
- {
167
- name: "Art Nouveau - Harrison Fisher",
168
- prompt: ",[Harrison Fisher],[[Gilded Age aesthetics]],",
169
- negative_prompt: ",nude,porn,naked,nsfw,[deformed],[morbid],[disfigured],"
170
- },
171
- {
172
- name: "Faded Polaroid Photo",
173
- prompt: ",Faded Polaroid Photo, analog, old faded photo, old polaroid,",
174
- negative_prompt: ",ugly, deformed, noisy, blurry, low contrast, vibrant, black and white,vibrant colors,"
175
- },
176
- {
177
- name: "Japanese Ink Drawing",
178
- prompt: ",Japanese Ink Drawing, ink drawing, inkwash, Japanese Ink Drawing,[masterpiece],[detailed],",
179
- negative_prompt: ",ugly, deformed, noisy, blurry, low contrast, colorful, vibrant,"
180
- },
181
- {
182
- name: "Rococo",
183
- prompt: ",Rococo, flamboyant, pastel colors, curved lines, elaborate detail, Rococo,",
184
- negative_prompt: ",ugly, deformed, noisy, blurry, low contrast,"
185
- },
186
- {
187
- name: "Sticker Designs",
188
- prompt: ",Vector Art Stickers, professional vector design, sticker designs, Sticker Sheet,",
189
- negative_prompt: ",ugly, deformed, noisy, blurry, low contrast,"
190
- },
191
- {
192
- name: "Art Deco",
193
- prompt: ",Art Deco, sleek, geometric forms, art deco style,",
194
- negative_prompt: ",ugly, deformed, noisy, blurry, low contrast,"
195
- },
196
- {
197
- name: "Flat 2D Art",
198
- prompt: ",Flat 2D Art, simple flat color, 2-dimensional, Flat 2D Art Style,",
199
- negative_prompt: ",ugly, deformed, noisy, blurry, low contrast, 3D render, photo, realistic,"
200
- },
201
- {
202
- name: "Baroque",
203
- prompt: ",Baroque, dramatic, exuberant, grandeur, baroque art,",
204
- negative_prompt: ",ugly, deformed, noisy, blurry, low contrast,"
205
- },
206
- {
207
- name: "Medievalism",
208
- prompt: ",Medievalism, inspired by The Middle Ages, medieval art, [elaborate patterns and decoration], Medievalism,",
209
- negative_prompt: ",ugly, deformed, noisy, blurry, low contrast,modern,"
210
- },
211
- {
212
- name: "Pencil Sketch Drawing",
213
- prompt: ",Pencil Sketch Drawing style, black and white drawing, graphite drawing style,",
214
- negative_prompt: ",ugly, deformed, noisy, blurry, low contrast,"
215
- },
216
- {
217
- name: "3D Model",
218
- prompt: ",professional 3d model,3d render, [octane render], highly detailed, [volumetric], [dramatic lighting],",
219
- negative_prompt: ",illustration,photo,ugly, deformed, noisy, low poly, blurry, painting,"
220
- },
221
- {
222
- name: "Analog Film",
223
- prompt: ",analog film photo, faded film, desaturated, 35mm photo, grainy, vignette, vintage, Kodachrome, Lomography, stained, highly detailed, found footage,",
224
- negative_prompt: ",painting, drawing, illustration, glitch, deformed, mutated, cross-eyed, ugly, disfigured,"
225
- },
226
- {
227
- name: "Comic Book",
228
- prompt: ",comic, graphic illustration, comic art, graphic novel art, vibrant, highly detailed,",
229
- negative_prompt: ",photograph, deformed, glitch, noisy, realistic, stock photo,"
230
- },
231
- {
232
- name: "Origami",
233
- prompt: ",origami style, paper art, pleated paper, folded, origami art, pleats, cut and fold, centered composition,",
234
- negative_prompt: ",noisy, sloppy, messy, grainy, highly detailed, ultra textured, photo,"
235
- },
236
- {
237
- name: "Pixel art",
238
- prompt: ",pixel-art, low-res, blocky, pixel art style, 8-bit graphics,",
239
- negative_prompt: ",3d render,sloppy, messy, blurry, noisy, highly detailed, ultra textured, photo, realistic,"
240
- },
241
- {
242
- name: "Watercolor",
243
- prompt: ",watercolor painting, [vibrant], [beautiful], [painterly], [detailed], [textural], [artistic],",
244
- negative_prompt: ",anime, photorealistic, photo, deformed, glitch, low contrast, noisy,ugly,3d render,photograph,blurry,low resolution,amateur,"
245
- },
246
- {
247
- name: "Expressionist",
248
- prompt: ",expressionist, [emotional], [dynamic], [distortion], [vibrant], [use of unusual colors], [detailed],",
249
- negative_prompt: ",realism, symmetry, quiet, calm, ,anime, photorealistic, photo, deformed, glitch, low contrast, noisy,ugly,3d render,photograph,blurry,low resolution,amateur,"
250
- },
251
- {
252
- name: "Vector",
253
- prompt: ",vector art style,[flat],[svg],[adobe illustrator],",
254
- negative_prompt: "3d render, photo, photorealistic, realistic cartoon, anime,"
255
- },
256
- {
257
- name: "Greek sculpture",
258
- prompt: ",greek sculpture,marble,",
259
- negative_prompt: ",3d render, illustration,anime,painting,ugly,blurry,low resolution, low quality, amateur,"
260
- },
261
- {
262
- name: "American Realism - Edward Hopper",
263
- prompt: ",Edward Hopper,[oil paint],",
264
- negative_prompt: ",3d render,anime,ugly,blurry,low resolution, low quality, amateur,photo,"
265
- },
266
- {
267
- name: "American Realism",
268
- prompt: ",American Realism,[oil paint],",
269
- negative_prompt: ",3d render,anime,ugly,blurry,low resolution, low quality, amateur,photo,"
270
- },
271
- {
272
- name: "Impasto",
273
- prompt: ",impasto,[paint],",
274
- negative_prompt: ",3d render,anime,ugly,blurry,low resolution, low quality, amateur,photo,abstract,"
275
- },
276
- {
277
- name: "Roman Mosaic",
278
- prompt: ",roman, mosaic,[art work],[detailed],",
279
- negative_prompt: "dirt,ugly,paint,"
280
- },
281
- {
282
- name: "Japanese traditional art",
283
- prompt: ",Ukiyo-e,traditional Japanese art,woman,",
284
- negative_prompt: ",anime,photo,digital,abstract,deformed,ugly,Katakana,Hiragana,Kanji,"
285
- },
286
- ]
287
-
288
- function loadingButton(boolean){
289
- if (boolean){
290
- document.getElementById('generateButton').innerHTML = '<span class="spinner-border spinner-border-sm" role="status" aria-hidden="true"></span> Loading...';
291
- document.getElementById('generateButton').disabled = true;
292
- } else {
293
- document.getElementById('generateButton').innerHTML = 'Generate image';
294
- document.getElementById('generateButton').disabled = false;
295
- }
296
- }
297
-
298
- function loadStyleSelect() {
299
- const styleSelect = document.getElementById('styleSelect');
300
-
301
- stylesArray.forEach(style => {
302
- const option = document.createElement('option');
303
- option.value = style.name;
304
- option.textContent = style.name;
305
- styleSelect.appendChild(option);
306
- });
307
- }
308
- loadStyleSelect();
309
 
310
- document.getElementById('generateButton').addEventListener('click', generateImage);
311
- async function generateImage(){
312
- const authTokenTemp = document.getElementById('authTokenInput').value;
313
- let prompt = document.getElementById('promptInput').value;
314
- let negativePrompt = document.getElementById('negativePromptInput').value;
315
- let height = 512;
316
- let width = 512;
317
- const style = document.getElementById('styleSelect').value;
318
- const size = document.getElementById('sizeSelect').value;
319
- const guidanceScale = document.getElementById('guidanceScaleInput').value;
320
- const numInferenceSteps = document.getElementById('numInferenceStepsInput').value;
321
- const seed = document.getElementById('seedInput').value;
322
- const model = document.getElementById('modelSelect').value;
323
- const refiner = document.getElementById('refinerSelect').value;
324
- const sampler = document.getElementById('samplerSelect').value;
325
-
326
- if (size === 'square'){
327
- height = 1024;
328
- width = 1024;
329
- } else if (size === 'portrait'){
330
- height = 1024;
331
- width = 768;
332
- } else if (size === 'landscape'){
333
- height = 768;
334
- width = 1024;
335
- } else if (size === 'stories'){
336
- height = 1024;
337
- width = 512;
338
- } else if (size === 'ultrawide'){
339
- height = 512;
340
- width = 1024;
341
- }
342
-
343
- const selectedStyleObj = stylesArray.find(styleObj => styleObj.name === style);
344
- if (selectedStyleObj) {
345
- prompt += selectedStyleObj.prompt;
346
- negativePrompt += selectedStyleObj.negative_prompt;
347
- }
348
-
349
- const formData = new FormData();
350
- formData.append('prompt', prompt);
351
- formData.append('negative_prompt', negativePrompt);
352
- formData.append('height', height);
353
- formData.append('width', width);
354
- formData.append('guidance_scale', guidanceScale);
355
- formData.append('num_inference_steps', numInferenceSteps);
356
- formData.append('refine', refiner);
357
- formData.append('scheduler', sampler);
358
- if (seed > 0){
359
- formData.append('seed', seed);
360
- }
361
-
362
- if (authTokenTemp){
363
- localStorage.setItem('authToken', authTokenTemp);
364
- }
365
-
366
- function getAuthToken(){
367
- const authToken = localStorage.getItem('authToken');
368
- if (!authToken){
369
- alert('Please enter your Deepinfra API token.');
370
- return;
371
- }
372
- return authToken;
373
- }
374
-
375
 
376
- let requestOptions = {
377
- method: 'POST',
378
- headers: {
379
- 'Authorization': `bearer ${getAuthToken()}`,
380
- },
381
- body: formData
382
- };
383
-
384
- try {
385
- loadingButton(true);
386
- const url = `https://api.deepinfra.com/v1/inference/${model}`;
387
- const response = await fetch(url, requestOptions);
388
- const data = await response.json();
389
- loadingButton(false);
390
- console.log("API response:",data);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
391
 
392
- if (data.detail === 'User is not authorized to access this resource'){
393
- alert("User is not authorized to access the api service. Please check your Deepinfra API token.");
394
- console.error(data.detail);
395
- }
 
 
 
 
 
396
 
397
- if (data.error === "NSFW content detected. Try running it again, or try a different prompt."){
398
- alert("NSFW content detected. Try running it again, or try a different prompt.");
399
- console.error("NSFW content detected. Try running it again, or try a different prompt.");
400
- }
401
-
402
- if (data.output && data.output.length > 0) {
403
- const imageElement = document.getElementById('generatedImage');
404
- imageElement.src = data.output[0];
405
- }
406
- } catch (error) {
407
- alert('There was an error while making the api request. Make sure you have provided the deepinfra api key. Check the console for more information.');
408
- console.error('There was an error while making the api request:', error);
409
- loadingButton(false);
410
- }
411
- }
412
- </script>
413
  </html>
 
1
  <!DOCTYPE html>
2
+ <html lang="en">
3
  <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Guerra LLM Ranking</title>
7
+ <script src="https://cdn.jsdelivr.net/npm/chart.js@4.4.1/dist/chart.umd.min.js"></script>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8
 
9
+ </head>
10
+ <body>
11
+ <canvas id="radarChart" height="750"></canvas>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12
 
13
+ <script>
14
+ let data = {
15
+ labels: ['MMLU', 'MT-bench','Arena Elo'],
16
+ datasets: [
17
+ {
18
+ label: 'GPT-4-Turbo',
19
+ data: [null, 93.2,124.9],
20
+ borderWidth: 2
21
+ },
22
+ {
23
+ label: 'GPT-4-0314',
24
+ data: [86.4, 86.4,119.0],
25
+ borderWidth: 2
26
+ },
27
+ {
28
+ label: 'GPT-3.5-Turbo-0314',
29
+ data: [70.0, 79.4,112.3],
30
+ borderWidth: 2
31
+ },
32
+ {
33
+ label: 'Mistral Medium',
34
+ data: [75.3, 86.1,115.0],
35
+ borderWidth: 2
36
+ },
37
+ {
38
+ label: 'Mixtral 8x7B Instruct v0.1',
39
+ data: [70.6, 83.0,112.3],
40
+ borderWidth: 2
41
+ },
42
+ {
43
+ label: 'Claude 2.0',
44
+ data: [78.5, 80.6,113.1],
45
+ borderWidth: 2
46
+ },
47
+ {
48
+ label: 'Claude 1.0',
49
+ data: [77.0, 79.0,114.9],
50
+ borderWidth: 2
51
+ },
52
+ {
53
+ label: 'Claude Instant 1',
54
+ data: [73.4, 78.5,110.9],
55
+ borderWidth: 2
56
+ },
57
+ {
58
+ label: 'Gemini Pro',
59
+ data: [71.8, null,111.4],
60
+ borderWidth: 2
61
+ },
62
+ {
63
+ label: 'Yi 34B Chat',
64
+ data: [73.5, null,111.1],
65
+ borderWidth: 2
66
+ },
67
+ {
68
+ label: 'Falcon 180B Chat',
69
+ data: [68.0, null,103.1],
70
+ borderWidth: 2
71
+ },
72
+ {
73
+ label: 'LLama 2 70B Chat',
74
+ data: [63.0, 68.6,107.9],
75
+ borderWidth: 2
76
+ },
77
+ ]
78
+ };
79
 
80
+ let options = {
81
+ responsive: true,
82
+ maintainAspectRatio: false,
83
+ scale: {
84
+ ticks: {
85
+ stepSize: 10,
86
+ }
87
+ },
88
+ };
89
 
90
+ let ctx = document.getElementById('radarChart').getContext('2d');
91
+ new Chart(ctx, {
92
+ type: 'radar',
93
+ data: data,
94
+ options: options
95
+ });
96
+ </script>
97
+ </body>
 
 
 
 
 
 
 
 
98
  </html>