gmaterni commited on
Commit
13d722a
1 Parent(s): 6104c20

Upload folder using huggingface_hub

Browse files
static/javascript/rag_prompts.js CHANGED
@@ -2,163 +2,7 @@
2
 
3
  "use strict";
4
 
5
- // function promptDoc(documento, domanda, docName) {
6
- // return `
7
- // SYSTEM: Sei un assistente AI specializzato nell'analisi di documenti. Rispondi ESCLUSIVAMENTE in italiano. Non usare altre lingue in nessuna parte della risposta.
8
-
9
- // TASK: Analizza il documento ${docName} ed estrai le informazioni rilevanti per rispondere alla domanda fornita.
10
-
11
- // INSTRUCTIONS:
12
- // 1. Identifica la tipologia e lo scopo del documento (es. articolo scientifico, racconto, saggio, documento tecnico) e adatta l'analisi di conseguenza.
13
- // 2. Analizza attentamente il documento fornito e identifica le informazioni pertinenti alla domanda.
14
- // 3. Estrai i concetti chiave e fai inferenze ragionevoli.
15
- // 4. Focalizzati sull'estrazione di concetti chiave e inferenze rilevanti per la domanda.
16
- // 5. Seleziona citazioni specifiche direttamente collegate alla domanda.
17
- // 6. Prepara una risposta chiara e dettagliata.
18
- // 7. Inizia con una breve introduzione, sviluppa l'analisi, esponi le inferenze e concludi con una sintesi.
19
- // 8. Mantieni un tono oggettivo e uno stile fluido e coerente.
20
-
21
- // DOCUMENTO:
22
- // <<<INIZIO_DOCUMENTO>>>
23
- // ${documento}
24
- // <<<FINE_DOCUMENTO>>>
25
-
26
- // DOMANDA:
27
- // ${domanda}
28
-
29
- // OUTPUT_FORMAT:
30
- // La risposta dovrà essere strutturata nel seguente modo:
31
- // - Introduzione:
32
- // - Concetti chiave:
33
- // - Citazioni:
34
- // - Inferenze:
35
- // - Dettagli rilevanti:
36
- // - Sintesi:
37
-
38
- // RESPONSE:
39
- // `;
40
- // }
41
-
42
- // function promptBuildContext(informazioni, domanda) {
43
- // return `
44
- // SYSTEM: Sei un assitente AI specializzato nella riorganizzazione di informazioni come contesto nelle interrogazioni ad un LLM. Rispondi ESCLUSIVAMENTE in italiano. Non usare altre lingue in nessuna parte della risposta.
45
-
46
- // TASK: Analizza e riorganizza le informazioi rilevanti per rispondere alla domada fornite seguendo le istruzioni.
47
-
48
- // INSTRUCTIONS:
49
- // 1. Analizza attentamente le informazioi e identifica i temi e i concetti simili.
50
- // 2. Estrai i concetti chiave e fai inferenze ragionevoli.
51
- // 3. Organizza le informazioni in una struttura logica e coerente.
52
- // 4. Includi una breve introduzione che presenti i temi principali.
53
- // 5. Sviluppa l'analisi raggruppando le informazioni per argomenti correlati.
54
- // 6. Presenta le inferenze e le connessioni tra i diversi concetti.
55
- // 7. Includi, se rilevanti, dettagli come nomi propri, termini tecnici, date o luoghi che contribuiscono alla precisione del contesto.
56
- // 8. Concludi con una sintesi che riassuma i punti chiave e la struttura logica.
57
- // 9. Evidenzia le connessioni tra contenuti estratti da fonti diverse.
58
- // 10. Effettua un controllo finale per assicurarti che tutte le informazioni chiave siano state incluse.
59
- // 11. Mantieni uno stile fluido e coerente.
60
-
61
- // INFORAZIONI:
62
- // <<<INIZIO_INFORMAZIONI>>>
63
- // ${informazioni}
64
- // <<<FINE_INFORMAZIONI>>>
65
-
66
- // DOMANDA:
67
- // ${domanda}
68
-
69
- // OUTPUT_FORMAT:
70
- // La risposta dovrà essere strutturata nel seguente modo:
71
- // - Introduzione:
72
- // - Concetti chiave:
73
- // - Citazioni:
74
- // - Inferenze:
75
- // - Connessioni fra contenuti:
76
- // - Dettagli rilevanti:
77
- // - Sintesi:
78
-
79
- // RESPONSE:
80
- // `;
81
- // }
82
-
83
- // function promptWithContext(contesto, domanda) {
84
- // return `
85
- // SYSTEM: Sei un sistema AI specializzato nell'analisi semantica di informazioni estratte da documenti. Rispondi sempre ed esclusivamente in italiano.
86
-
87
- // TASK: Elabora la risposta alla domanda sulla base del contesto fornito.
88
-
89
- // INSTRUCTIONS:
90
- // 1. Analizza attentamente il contesto e identifica le informazioni pertinenti alla domanda.
91
- // 2. Estrai i concetti chiave e fai inferenze ragionevoli.
92
- // 3. Prepara una risposta chiara e dettagliata utilizzandoo al meglio il contesto.
93
- // 4. Inizia con una breve introduzione, sviluppa l'analisi, elabora le inferenze e concludi con una sintesi.
94
- // 5. Se la domanda richiede di citare le fonti, fai riferimento al documento fornito distinguendolo chiaramente da eventuali altre fonti citate all'interno del contesto stesso.
95
- // 6. Mantieni un tono oggettivo e uno stile fluido e coerente.
96
-
97
- // CONTESTO:
98
- // <<<INIZIO_CONTESTO>>>
99
- // ${contesto}
100
- // <<<FINE_CONTESTO>>>
101
-
102
- // DOMANDA:
103
- // ${domanda}
104
-
105
- // OUTPUT_FORMAT:
106
- // Rispondi con un testo piano suddiviso in paragrafi.Evita di usare etichette, elenchi o marcatori speciali.
107
-
108
- // RESPONSE:
109
- // `;
110
- // }
111
-
112
- // function promptThread(contesto, conversazione, richiesta) {
113
- // return `
114
- // SYSTEM: Sei un assistente AI versatile progettato per gestire conversazioni dinamiche e adattarti a varie richieste. Rispondi sempre in italiano.
115
-
116
- // TASK: Elabora la risposta alla richiesta sulla base del contesto fornito e della conversazione.
117
-
118
- // INSTRUCTIONS:
119
- // 1. Analizza attentamente il contesto, la conversazione precedente e la richiesta attuale.
120
- // 2. Interpreta l'intento dell'utente senza limitarti a categorie predefinite.
121
- // 3. Adatta la tua risposta in base all'intento percepito, sia esso una domanda, una richiesta di azione, un'istruzione specifica o altro.
122
- // 4. Mantieni una stretta coerenza con il contesto della conversazione.
123
- // 5. Basa la tua risposta principalmente sulle informazioni fornite nel contesto e nella conversazione.
124
- // 6. Evita divagazioni o argomentazioni non direttamente pertinenti alla richiesta o al contesto.
125
- // 7. Fai riferimento a informazioni precedenti quando sono pertinenti, citando specificamente la fonte.
126
- // 8. Se l'intento non è chiaro, chiedi gentilmente chiarimenti invece di fare supposizioni.
127
- // 9. Sii flessibile: se la richiesta implica un'azione specifica, adattati di conseguenza.
128
- // 10. Se è necessario integrare con conoscenze generali, specifica chiaramente quando lo stai facendo.
129
-
130
- // CONTESTO:
131
- // <<<BEGIN_CONTESTO>>>
132
- // ${contesto}
133
- // <<<END_CONTESTO>>>
134
-
135
- // <<<INIZIO_CONVERSAZIONE>>>
136
- // ${conversazione}
137
- // <<<FINE_CONVERSAZIONE>>>
138
-
139
- // RICHIESTA:
140
- // ${richiesta}
141
-
142
- // OUTPUT_FORMAT:
143
- // Rispondi con un testo piano suddiviso in paragrafi.Evita di usare etichette, elenchi o marcatori speciali.
144
-
145
- // RESPONSE:
146
- // `;
147
- // }
148
- // - Informazione 1:
149
- // Descrizione:
150
- // Punti chiave:
151
- // Elementi specifici:
152
-
153
- // - Informazione 2:
154
- // Descrizione:
155
- // Punti chiave:
156
- // Elementi specifici:
157
-
158
- // (Ripeti il formato per ogni informazione identificata)
159
-
160
-
161
- /////////////////
162
  function promptDoc(testo, domanda, docName) {
163
  return `
164
  SYSTEM: Sei un assistente AI specializzato nell'analisi documentale e nell'estrazione mirata di informazioni. Rispondi esclusivamente in italiano.
@@ -180,7 +24,17 @@ ${testo}
180
  <<<FINE_TESTO>>>
181
 
182
  OUTPUT_FORMAT:
183
- L'ouput deve essere organizzato sula base delle istruioni. L'output deve essere privo di formattazione aggiuntiva o commenti, concentrandosi sul contenuto informativo in modo conciso e diretto. La struttura deve facilitare l'elaborazione automatica da parte di un LLM, privilegiando chiarezza e coerenza delle informazioni sulla leggibilità umana.
 
 
 
 
 
 
 
 
 
 
184
 
185
  RESPONSE:
186
  `;
@@ -208,26 +62,129 @@ ${informazioni}
208
  <<<FINE_INFORMAZIONI>>>
209
 
210
  OUTPUT_FORMAT:
211
- L'ouput deve essere organizzato sula base delle istruioni. L'output deve essere privo di formattazione aggiuntiva o commenti, concentrandosi sul contenuto informativo in modo conciso e diretto. La struttura deve facilitare l'elaborazione automatica da parte di un LLM, privilegiando chiarezza e coerenza delle informazioni sulla leggibilità umana.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
212
 
213
  RESPONSE:
214
  `;
215
  }
216
- // - Informazione 1:
217
- // Descrizione:
218
- // Punti chiave:
219
- // Elementi rilevanti:
220
 
221
- // - Informazione 2:
222
- // Descrizione:
223
- // Punti chiave:
224
- // Elementi rilevanti:
225
 
226
- // (Ripeti il formato per ogni gruppo di informazioni
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
227
 
228
- // - Inferenze Logiche:
229
 
230
- // - Sintesi Finale:
231
 
232
 
233
  function promptWithContext(contesto, domanda) {
@@ -352,16 +309,15 @@ function getPayloadDoc(prompt) {
352
  inputs: prompt,
353
  parameters: {
354
  task: "text2text-generation",
355
- max_new_tokens: 1024,
356
- min_length:200,
357
  num_return_sequences: 1,
358
- temperature: 0.2,
359
  top_p: 0.85,
360
  top_k: 30,
361
  do_sample: false,
362
  no_repeat_ngram_size: 3,
363
  num_beams: 4,
364
- repetition_penalty: 1.5,
365
  return_full_text: false,
366
  details: false,
367
  max_time: 90.0,
@@ -381,15 +337,14 @@ function getPayloadBuildContext(prompt) {
381
  parameters: {
382
  task: "text2text-generation",
383
  max_new_tokens: 5000,
384
- min_length:400,
385
  num_return_sequences: 1,
386
- temperature: 0.7,//0.2
387
  top_p: 0.85,
388
  top_k: 30,
389
  do_sample: false,
390
  no_repeat_ngram_size: 4,
391
  num_beams: 6,
392
- repetition_penalty: 1.4,
393
  return_full_text: false,
394
  details: false,
395
  max_time: 180.0,
@@ -408,9 +363,9 @@ function getPayloadWithContext(prompt) {
408
  inputs: prompt,
409
  parameters: {
410
  task: "text2text-generation",
411
- max_new_tokens: 2048,
412
  num_return_sequences: 1,
413
- temperature: 0.3,
414
  top_p: 0.85,
415
  top_k: 30,
416
  do_sample: false,
@@ -435,9 +390,9 @@ function getPayloadThread(prompt) {
435
  inputs: prompt,
436
  parameters: {
437
  task: "text2text-generation",
438
- max_new_tokens: 2048,
439
  num_return_sequences: 1,
440
- temperature: 0.3,
441
  top_p: 0.85,
442
  top_k: 30,
443
  do_sample: false,
 
2
 
3
  "use strict";
4
 
5
+ /*
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6
  function promptDoc(testo, domanda, docName) {
7
  return `
8
  SYSTEM: Sei un assistente AI specializzato nell'analisi documentale e nell'estrazione mirata di informazioni. Rispondi esclusivamente in italiano.
 
24
  <<<FINE_TESTO>>>
25
 
26
  OUTPUT_FORMAT:
27
+ - Informazione 1:
28
+ Descrizione:
29
+ Punti chiave:
30
+ Elementi specifici:
31
+
32
+ - Informazione 2:
33
+ Descrizione:
34
+ Punti chiave:
35
+ Elementi specifici:
36
+
37
+ (Ripeti il formato per ogni informazione identificata)
38
 
39
  RESPONSE:
40
  `;
 
62
  <<<FINE_INFORMAZIONI>>>
63
 
64
  OUTPUT_FORMAT:
65
+ - Informazione 1:
66
+ Descrizione:
67
+ Punti chiave:
68
+ Elementi rilevanti:
69
+
70
+ - Informazione 2:
71
+ Descrizione:
72
+ Punti chiave:
73
+ Elementi rilevanti:
74
+
75
+ (Ripeti il formato per ogni gruppo di informazioni
76
+
77
+ - Inferenze Logiche:
78
+
79
+ - Sintesi Finale:
80
+
81
+ RESPONSE:
82
+ `;
83
+ }
84
+ */
85
+ //////////////////////
86
+
87
+ function promptDoc(testo, domanda, docName) {
88
+ return `
89
+ SYSTEM: Sei un assistente AI specializzato nell'analisi documentale e nell'estrazione mirata di informazioni. Rispondi esclusivamente in italiano.
90
+
91
+ TASK: Analizza il testo estratto dal documento "${docName}" e identifica gli elementi rilevanti per rispondere alla domanda: "${domanda}".
92
+
93
+ INSTRUCTIONS:
94
+ 1. Analizza attentamente il testo fornito.
95
+ 2. Identifica gli elementi utili per rispondere alla domanda ("${domanda}").
96
+ 3. Per ogni elemento individuato, fornisci un titolo ed una descrizione sintetica ma completa.
97
+ 4. Riporta dettagli specifici (dati, citazioni, eventi, personaggi, luoghi, ..) se corelati alla domanda.
98
+ 5. Se non ci sono informazioni rilevanti, rispondi con "NESSUNA INFORMAZIONE RILEVANTE".
99
+ 6. Assicurati di generare la risposta esattamente secondo il formato di output specificato.
100
+
101
+ DOMANDA: ${domanda}
102
+
103
+ TESTO DA ANALIZZARE:
104
+ <<<INIZIO_TESTO>>>
105
+ ${testo}
106
+ <<<FINE_TESTO>>>
107
+
108
+ OUTPUT_FORMAT: Genera una risposta strutturata come un elenco nel quale ogni elemento è costituito da un breve titolo e da una descrizione concisa ma completa.
109
 
110
  RESPONSE:
111
  `;
112
  }
 
 
 
 
113
 
 
 
 
 
114
 
115
+ function promptBuildContext(informazioni, domanda = "") {
116
+ return `
117
+ SYSTEM: Sei un assistente AI esperto nella sintesi e nell'organizzazione mirata di informazioni. Rispondi sempre ed esclusivamente in italiano.
118
+
119
+ TASK: Organizza e sintetizza le informazioni estratte da frammenti di testo di un documento, creando un contesto utile per rispondere alla domanda: "${domanda}".
120
+
121
+ INSTRUCTIONS:
122
+ 1. Analizza tutte le informazioni fornite.
123
+ 2. Seleziona e raggruppa le informazioni simili.
124
+ 3. Per ogni informazioni, genera una descrizione concisa.
125
+ 4. Elenca i punti chiave essenziali per comprendere il contesto.
126
+ 5. Riporta elementi specifici (dati, citazioni, eventi, luoghi, personaggi, ..) se utili.
127
+ 6. Elabora inferenze logiche basate sulle informazioni, se rilevanti per il contesto.
128
+ 7. Genera una sintesi finale.
129
+ 8. Assicurati di strutturare la tua risposta esattamente secondo il formato di output specificato.
130
+
131
+ INFORMAZIONI:
132
+ <<<INIZIO_INFORMAZIONI>>>
133
+ ${informazioni}
134
+ <<<FINE_INFORMAZIONI>>>
135
+
136
+ OUTPUT_FORMAT: Genera una risposta strutturata come un elenco nel quale ogni elemento è costituito da un breve titolo e da una descrizione concisa ma completa, alla fine dell'elenco aggiungi una sintesi globale ed eventuali inferenze logiche e collegamenti fra le varie informazioni.
137
+
138
+ RESPONSE:
139
+ `;
140
+ }
141
+
142
+ ////////////////////////////////////////////////////
143
+ /*
144
+ function promptDoc(testo, domanda, docName) {
145
+ return `
146
+ RUOLO: Sei un assistente AI specializzato nell'analisi documentale e nell'estrazione mirata di informazioni. Rispondi esclusivamente in italiano.
147
+
148
+ COMPITO: Analizza il testo estratto dal documento "${docName}" ed estrai tutti gli elementi (concetti, avvenimenti, temi, personaggi, date, luoghi, ecc.) utili per rispondere alla domanda: "${domanda}". Concentrati esclusivamente sulla selezione di elementi utili per rispondere alla domanda evitando commenti o divagazioni superflue. Evita di utilizzare markup, formattazione o altri artifizi grafici. Usa un linguaggio lineare e diretto, evitando ambiguità. Se non ci sono informazioni rilevanti, rispondi con "NESSUNA INFORMAZIONE RILEVANTE". Genera una risposta strutturata come un elenco nel quale ogni elemento è composto da un breve titolo e da una concisa ma completa descrizione. Ricorda di rispondere in italiano indipendentemente dal testo analizzato.
149
+
150
+ DOMANDA:"${domanda}"
151
+
152
+ TESTO DA ANALIZZARE:
153
+ <<<INIZIO>>>
154
+ ${testo}
155
+ <<<FINE>>>
156
+
157
+ RISPOSTA:
158
+ `;
159
+ }
160
+
161
+ function promptBuildContext(informazioni, domanda = "") {
162
+ return `
163
+ RUOLO: Sei un assistente AI esperto nella sintesi e nell'organizzazione mirata di informazioni. Rispondi sempre ed esclusivamente in italiano.
164
+
165
+ COMPITO: Analizza le informazioni fornite e riordinale logicamente raggruppando quelle simili. Concentrati sull'organizzazione della risposta in modo tale che sia utilizzabile come contesto per rispondere alla domanda: "${domanda}" e ad eventuali domande simili. Assicurati che non vada persa alcua informazione significativa. Evita di utilizzare markup, formattazione o caratteri grafici. Evita commenti e divagazioni superflue per il contesto. Usa un linguaggio lineare e diretto, evitando ambiguità. Genera una risposta strutturata come un elenco nel quale ogni elemento è cosituito da un breve titolo e da una descrizione concisa ma completa, alla fine dell'elenco aggiungi una sintesi globale ed eventuali inferenze logiche e collegamenti fra le varie informazioni.
166
+
167
+ INFORMAZIONI:
168
+ <<<INIZIO>>>
169
+ ${informazioni}
170
+ <<<FINE>>>
171
+
172
+ RISPOSTA:
173
+ `;
174
+ }
175
+ */
176
+ //////////////////////////
177
+
178
+
179
+
180
+
181
+
182
+
183
+
184
+
185
+
186
 
 
187
 
 
188
 
189
 
190
  function promptWithContext(contesto, domanda) {
 
309
  inputs: prompt,
310
  parameters: {
311
  task: "text2text-generation",
312
+ max_new_tokens: 2000,
 
313
  num_return_sequences: 1,
314
+ temperature: 0.4,
315
  top_p: 0.85,
316
  top_k: 30,
317
  do_sample: false,
318
  no_repeat_ngram_size: 3,
319
  num_beams: 4,
320
+ repetition_penalty: 1.2,
321
  return_full_text: false,
322
  details: false,
323
  max_time: 90.0,
 
337
  parameters: {
338
  task: "text2text-generation",
339
  max_new_tokens: 5000,
 
340
  num_return_sequences: 1,
341
+ temperature: 0.7,
342
  top_p: 0.85,
343
  top_k: 30,
344
  do_sample: false,
345
  no_repeat_ngram_size: 4,
346
  num_beams: 6,
347
+ repetition_penalty: 1.2,
348
  return_full_text: false,
349
  details: false,
350
  max_time: 180.0,
 
363
  inputs: prompt,
364
  parameters: {
365
  task: "text2text-generation",
366
+ max_new_tokens: 4000,
367
  num_return_sequences: 1,
368
+ temperature: 0.7,
369
  top_p: 0.85,
370
  top_k: 30,
371
  do_sample: false,
 
390
  inputs: prompt,
391
  parameters: {
392
  task: "text2text-generation",
393
+ max_new_tokens: 4048,
394
  num_return_sequences: 1,
395
+ temperature: 0.7,
396
  top_p: 0.85,
397
  top_k: 30,
398
  do_sample: false,
static/javascript/rag_rqs.js CHANGED
@@ -19,7 +19,7 @@
19
  */
20
 
21
  "use strict";
22
- const VERS = "0.1.51 (14-09-2024)";
23
 
24
  var xlog = console.log;
25
  var xerror = console.error;
 
19
  */
20
 
21
  "use strict";
22
+ const VERS = "0.1.53 (21-09-2024)";
23
 
24
  var xlog = console.log;
25
  var xerror = console.error;
static/js/ragrqs.min.js CHANGED
@@ -45,14 +45,15 @@ TIMEOUT_ERROR){UaLog.log("Error timeout Thread");continue}else throw g;}break}b=
45
  return a.join("\n\n")},isFirst(){return 2>this.rows.length}};function promptDoc(a,b,c){return`
46
  SYSTEM: Sei un assistente AI specializzato nell'analisi documentale e nell'estrazione mirata di informazioni. Rispondi esclusivamente in italiano.
47
 
48
- TASK: Analizza l'estratto del documento "${c}" e identifica le informazioni rilevanti per rispondere alla domanda: "${b}".
49
 
50
  INSTRUCTIONS:
51
- 1. Esamina il testo e identifica le informazioni utili per costruire un contesto relativo alla domanda.
52
- 2. Per ogni informazione rilevante, fornisci una breve descrizione.
53
- 3. Elenca i punti chiave pertinenti per ogni informazione.
54
- 4. Riporta elementi specifici (dati, citazioni, eventi) se utili per il contesto.
55
- 5. Struttura la risposta secondo il formato di output specificato.
 
56
 
57
  DOMANDA: ${b}
58
 
@@ -61,8 +62,7 @@ TESTO DA ANALIZZARE:
61
  ${a}
62
  <<<FINE_TESTO>>>
63
 
64
- OUTPUT_FORMAT:
65
- L'ouput deve essere organizzato sula base delle istruioni. L'output deve essere privo di formattazione aggiuntiva o commenti, concentrandosi sul contenuto informativo in modo conciso e diretto. La struttura deve facilitare l'elaborazione automatica da parte di un LLM, privilegiando chiarezza e coerenza delle informazioni sulla leggibilit\u00e0 umana.
66
 
67
  RESPONSE:
68
  `}function promptBuildContext(a,b=""){return`
@@ -71,22 +71,21 @@ SYSTEM: Sei un assistente AI esperto nella sintesi e nell'organizzazione mirata
71
  TASK: Organizza e sintetizza le informazioni estratte da frammenti di testo di un documento, creando un contesto utile per rispondere alla domanda: "${b}".
72
 
73
  INSTRUCTIONS:
74
- 1. Esamina tutte le informazioni fornite.
75
  2. Seleziona e raggruppa le informazioni simili.
76
- 3. Per ogni gruppo di informazioni rilevanti, genera una descrizione concisa.
77
  4. Elenca i punti chiave essenziali per comprendere il contesto.
78
- 5. Riporta elementi specifici (dati, citazioni, eventi) se utili.
79
- 6. Elimina le informazioni ridondanti, mantenendo solo la versione pi\u00f9 completa.
80
- 7. Elabora inferenze logiche basate sulle informazioni, se rilevanti per il contesto.
81
- 8. Genera una sintesi finale del contesto.
82
 
83
  INFORMAZIONI:
84
  <<<INIZIO_INFORMAZIONI>>>
85
  ${a}
86
  <<<FINE_INFORMAZIONI>>>
87
 
88
- OUTPUT_FORMAT:
89
- L'ouput deve essere organizzato sula base delle istruioni. L'output deve essere privo di formattazione aggiuntiva o commenti, concentrandosi sul contenuto informativo in modo conciso e diretto. La struttura deve facilitare l'elaborazione automatica da parte di un LLM, privilegiando chiarezza e coerenza delle informazioni sulla leggibilit\u00e0 umana.
90
 
91
  RESPONSE:
92
  `}function promptWithContext(a,b){return`
@@ -145,10 +144,10 @@ RICHIESTA: ${c}
145
  OUTPUT_FORMAT: Fornisci la risposta in testo semplice e lineare suddiviso in paragrafi.
146
 
147
  RESPONSE:
148
- `}function getPayloadDoc(a){return{inputs:a,parameters:{task:"text2text-generation",max_new_tokens:1024,min_length:200,num_return_sequences:1,temperature:.2,top_p:.85,top_k:30,do_sample:!1,no_repeat_ngram_size:3,num_beams:4,repetition_penalty:1.5,return_full_text:!1,details:!1,max_time:90,seed:42},options:{use_cache:!1,wait_for_model:!0}}}
149
- function getPayloadBuildContext(a){return{inputs:a,parameters:{task:"text2text-generation",max_new_tokens:5E3,min_length:400,num_return_sequences:1,temperature:.7,top_p:.85,top_k:30,do_sample:!1,no_repeat_ngram_size:4,num_beams:6,repetition_penalty:1.4,return_full_text:!1,details:!1,max_time:180,seed:42},options:{use_cache:!1,wait_for_model:!0}}}
150
- function getPayloadWithContext(a){return{inputs:a,parameters:{task:"text2text-generation",max_new_tokens:2048,num_return_sequences:1,temperature:.3,top_p:.85,top_k:30,do_sample:!1,no_repeat_ngram_size:4,num_beams:5,repetition_penalty:1.4,return_full_text:!1,details:!1,max_time:120,seed:42},options:{use_cache:!1,wait_for_model:!0}}}
151
- function getPayloadThread(a){return{inputs:a,parameters:{task:"text2text-generation",max_new_tokens:2048,num_return_sequences:1,temperature:.3,top_p:.85,top_k:30,do_sample:!1,no_repeat_ngram_size:4,num_beams:5,repetition_penalty:1.4,return_full_text:!1,details:!1,max_time:120,seed:42},options:{use_cache:!1,wait_for_model:!0}}};const VERS="0.1.51 (14-09-2024)";var xlog=console.log,xerror=console.error;const cancelRequest=()=>{confirm("Confermi Cancellazione Richeista ?")&&(HfRequest.cancelRequest(),hideSpinner())},showSpinner=()=>{const a=document.getElementById("spinner");a.classList.add("show-spinner");a.addEventListener("click",cancelRequest)},hideSpinner=()=>{const a=document.getElementById("spinner");a.classList.remove("show-spinner");a.removeEventListener("click",cancelRequest)};var tm;
152
  function openApp(){setTimeout(()=>{tm=umgm();wnds.init();Menu.init();TextInput.init();TextOutput.init();Rag.init();document.querySelector(".menu-btn").checked=!1;release();showHistory()},10)}function showHistory(){const a=ThreadMgr.getThread();setOutText(a)}function release(){document.querySelector(".release").innerHTML=VERS}const op0=async function(a){a=await requestGet("./help1.html");wnds.wdiv.show(a)};function showQuery(a){wnds.wpre.show(`\n${Rag.ragQuery}`)}
153
  function showRagResponse(a){wnds.wpre.show(`\n${Rag.ragAnswer}`)}function showThread(a){a=ThreadMgr.getThread();wnds.wpre.show(a)}function elencoRisposte(a){a=[...Rag.answers];0==a.length&&(a=UaDb.readArray(ID_RESPONSES));0!=a.length&&(a=a.map((b,c)=>`\n[${c+1}]\n ${b.trim()}`).join("\n"),wnds.wpre.show(a))}function showContesto(a){wnds.wpre.show(`${Rag.ragContext}`)}
154
  function elencoDati(a){var b=UaDb.getAllIds();a=[];for(var c of b)b=UaDb.read(c).length,a.push(`${c} (${b})`);c=a.join("\n ");wnds.wpre.show(c)}const showT=a=>{wnds.wpre.show(DataMgr.docs[a])};function elencoDocs(){DataMgr.readDbDocs();DataMgr.readDbDocNames();var a=DataMgr.doc_names,b=UaJtfh();let c=0;b.append("<ul>");for(const g of a){a=b;var d=a.append,e=g,f=c++;d.call(a,`
 
45
  return a.join("\n\n")},isFirst(){return 2>this.rows.length}};function promptDoc(a,b,c){return`
46
  SYSTEM: Sei un assistente AI specializzato nell'analisi documentale e nell'estrazione mirata di informazioni. Rispondi esclusivamente in italiano.
47
 
48
+ TASK: Analizza il testo estratto dal documento "${c}" e identifica gli elementi rilevanti per rispondere alla domanda: "${b}".
49
 
50
  INSTRUCTIONS:
51
+ 1. Analizza attentamente il testo fornito.
52
+ 2. Identifica gli elementi utili per rispondere alla domanda ("${b}").
53
+ 3. Per ogni elemento individuato, fornisci un titolo ed una descrizione sintetica ma completa.
54
+ 4. Riporta dettagli specifici (dati, citazioni, eventi, personaggi, luoghi, ..) se corelati alla domanda.
55
+ 5. Se non ci sono informazioni rilevanti, rispondi con "NESSUNA INFORMAZIONE RILEVANTE".
56
+ 6. Assicurati di generare la risposta esattamente secondo il formato di output specificato.
57
 
58
  DOMANDA: ${b}
59
 
 
62
  ${a}
63
  <<<FINE_TESTO>>>
64
 
65
+ OUTPUT_FORMAT: Genera una risposta strutturata come un elenco nel quale ogni elemento \u00e8 costituito da un breve titolo e da una descrizione concisa ma completa.
 
66
 
67
  RESPONSE:
68
  `}function promptBuildContext(a,b=""){return`
 
71
  TASK: Organizza e sintetizza le informazioni estratte da frammenti di testo di un documento, creando un contesto utile per rispondere alla domanda: "${b}".
72
 
73
  INSTRUCTIONS:
74
+ 1. Analizza tutte le informazioni fornite.
75
  2. Seleziona e raggruppa le informazioni simili.
76
+ 3. Per ogni informazioni, genera una descrizione concisa.
77
  4. Elenca i punti chiave essenziali per comprendere il contesto.
78
+ 5. Riporta elementi specifici (dati, citazioni, eventi, luoghi, personaggi, ..) se utili.
79
+ 6. Elabora inferenze logiche basate sulle informazioni, se rilevanti per il contesto.
80
+ 7. Genera una sintesi finale.
81
+ 8. Assicurati di strutturare la tua risposta esattamente secondo il formato di output specificato.
82
 
83
  INFORMAZIONI:
84
  <<<INIZIO_INFORMAZIONI>>>
85
  ${a}
86
  <<<FINE_INFORMAZIONI>>>
87
 
88
+ OUTPUT_FORMAT: Genera una risposta strutturata come un elenco nel quale ogni elemento \u00e8 costituito da un breve titolo e da una descrizione concisa ma completa, alla fine dell'elenco aggiungi una sintesi globale ed eventuali inferenze logiche e collegamenti fra le varie informazioni.
 
89
 
90
  RESPONSE:
91
  `}function promptWithContext(a,b){return`
 
144
  OUTPUT_FORMAT: Fornisci la risposta in testo semplice e lineare suddiviso in paragrafi.
145
 
146
  RESPONSE:
147
+ `}function getPayloadDoc(a){return{inputs:a,parameters:{task:"text2text-generation",max_new_tokens:2E3,num_return_sequences:1,temperature:.4,top_p:.85,top_k:30,do_sample:!1,no_repeat_ngram_size:3,num_beams:4,repetition_penalty:1.2,return_full_text:!1,details:!1,max_time:90,seed:42},options:{use_cache:!1,wait_for_model:!0}}}
148
+ function getPayloadBuildContext(a){return{inputs:a,parameters:{task:"text2text-generation",max_new_tokens:5E3,num_return_sequences:1,temperature:.7,top_p:.85,top_k:30,do_sample:!1,no_repeat_ngram_size:4,num_beams:6,repetition_penalty:1.2,return_full_text:!1,details:!1,max_time:180,seed:42},options:{use_cache:!1,wait_for_model:!0}}}
149
+ function getPayloadWithContext(a){return{inputs:a,parameters:{task:"text2text-generation",max_new_tokens:4E3,num_return_sequences:1,temperature:.7,top_p:.85,top_k:30,do_sample:!1,no_repeat_ngram_size:4,num_beams:5,repetition_penalty:1.4,return_full_text:!1,details:!1,max_time:120,seed:42},options:{use_cache:!1,wait_for_model:!0}}}
150
+ function getPayloadThread(a){return{inputs:a,parameters:{task:"text2text-generation",max_new_tokens:4048,num_return_sequences:1,temperature:.7,top_p:.85,top_k:30,do_sample:!1,no_repeat_ngram_size:4,num_beams:5,repetition_penalty:1.4,return_full_text:!1,details:!1,max_time:120,seed:42},options:{use_cache:!1,wait_for_model:!0}}};const VERS="0.1.53 (21-09-2024)";var xlog=console.log,xerror=console.error;const cancelRequest=()=>{confirm("Confermi Cancellazione Richeista ?")&&(HfRequest.cancelRequest(),hideSpinner())},showSpinner=()=>{const a=document.getElementById("spinner");a.classList.add("show-spinner");a.addEventListener("click",cancelRequest)},hideSpinner=()=>{const a=document.getElementById("spinner");a.classList.remove("show-spinner");a.removeEventListener("click",cancelRequest)};var tm;
151
  function openApp(){setTimeout(()=>{tm=umgm();wnds.init();Menu.init();TextInput.init();TextOutput.init();Rag.init();document.querySelector(".menu-btn").checked=!1;release();showHistory()},10)}function showHistory(){const a=ThreadMgr.getThread();setOutText(a)}function release(){document.querySelector(".release").innerHTML=VERS}const op0=async function(a){a=await requestGet("./help1.html");wnds.wdiv.show(a)};function showQuery(a){wnds.wpre.show(`\n${Rag.ragQuery}`)}
152
  function showRagResponse(a){wnds.wpre.show(`\n${Rag.ragAnswer}`)}function showThread(a){a=ThreadMgr.getThread();wnds.wpre.show(a)}function elencoRisposte(a){a=[...Rag.answers];0==a.length&&(a=UaDb.readArray(ID_RESPONSES));0!=a.length&&(a=a.map((b,c)=>`\n[${c+1}]\n ${b.trim()}`).join("\n"),wnds.wpre.show(a))}function showContesto(a){wnds.wpre.show(`${Rag.ragContext}`)}
153
  function elencoDati(a){var b=UaDb.getAllIds();a=[];for(var c of b)b=UaDb.read(c).length,a.push(`${c} (${b})`);c=a.join("\n ");wnds.wpre.show(c)}const showT=a=>{wnds.wpre.show(DataMgr.docs[a])};function elencoDocs(){DataMgr.readDbDocs();DataMgr.readDbDocNames();var a=DataMgr.doc_names,b=UaJtfh();let c=0;b.append("<ul>");for(const g of a){a=b;var d=a.append,e=g,f=c++;d.call(a,`