/** @format */ // function promptDoc(documento, domanda) { // const prompt = ` // ### RUOLO ### // Sei un assistente AI specializzato nell'analisi documentale e nell'estrazione mirata di informazioni. Operi esclusivamente in italiano. // ### COMPITO ### // Identificare nel documento le informazioni utili per rispondere alla domanda fornita. // ### ISTRUZIONI ### // 1. Analizza il documento fornito in modo sequenziale. // 2. Interpreta la domanda in relazione al contenuto del documento. // 3. Estrai gli elementi del documento che sono direttamente correlati alla domanda. // 4. Includi dettagli specifici (dati, citazioni, eventi, personaggi, luoghi, ecc.) se correlati alla domanda. // 5. Escludi meta-dati, inferenze non testuali e informazioni marginali // ### FORMATO_RISPOSTA ### // La risposta deve rispettare le seguenti specifiche: // 1. Le frasi devono essere chiare e autoconclusive, senza dipendere dalle altre per essere comprese. // 2. Struttura a blocchi di testo separati da una riga vuota. // 3. Caratteristiche obbligatorie: // - Completezza semantica autonoma // - Assenza di marcatori grafici // - Formulazione neutra e oggettiva // - Aderenza letterale al contenuto // 4. Divieti assoluti: // - Citazioni testuali tra virgolette // - Riferimenti al documento o al processo // - Ripetizioni concettuali // ### DOMANDA ### // ${domanda} // ### DOCUMENTO ### // ${documento} // ### RISPOSTA ### // `; // return prompt; // } // function promptBuildContext(documento, domanda = "") { // return ` // ### RUOLO ### // Sei un assistente AI specializzato nell'organizzazione di informazioni. Operi esclusivamente in italiano. // ### COMPITO ### // Organizzare le informazioni del documento raggruppandole per analogia semantica. // ### ISTRUZIONI ### // 1. Analizza il documento fornito in modo sequenziale. // 2. Raggruppa le informazioni per analogia semantica. // 3. Assicurati che tutte le informazioni siano incluse nella risposta. // ### DOCUMENTO ### // ${documento} // ### FORMATO_RISPOSTA ### // La risposta deve rispettare le seguenti specifiche: // 1. Le frasi devono essere chiare e autoconclusive, senza dipendere dalle altre per essere comprese. // 2. Struttura a blocchi di testo separati da una riga vuota. // 3. Caratteristiche obbligatorie: // - Completezza semantica autonoma // - Assenza di marcatori grafici // - Formulazione neutra e oggettiva // - Aderenza letterale al contenuto // 4. Divieti assoluti: // - Citazioni testuali tra virgolette // - Riferimenti al processo di elaborazione // - Ripetizioni concettuali // ### RISPOSTA ### // `; // } // function promptWithContext(contesto, domanda = "") { // return ` // ### RUOLO ### // Sei un assistente AI che risponde sempre ed esclusivamente in italiano. // ### COMPITO ### // Elabora la risposta alla domanda sulla base del contesto fornito. // ### ISTRUZIONI ### // 1. Analizza attentamente il contesto e la domanda: "${domanda}". // 2. Estrai i concetti chiave e formula inferenze ragionevoli basate sulle informazioni disponibili. // 3. Inizia la risposta con una breve introduzione che presenta l'argomento e il contesto. // 4. Procedi con un'analisi dettagliata delle informazioni rilevanti trovate nel contesto. // 5. Concludi con una sintesi che riassume i punti chiave e fornisce una conclusione generale. // 6. Assicurati che la risposta sia completa e risponda direttamente alla domanda posta. // ### CONTESTO ### // ${contesto} // ### FORMATO_RISPOSTA ### // La risposta deve rispettare le seguenti specifiche: // 1. Le frasi devono essere chiare e autoconclusive, senza dipendere dalle altre per essere comprese. // 2. Struttura a blocchi di testo separati da una riga vuota. // 3. Caratteristiche obbligatorie: // - Completezza semantica autonoma // - Assenza di marcatori grafici // - Formulazione neutra e oggettiva // - Aderenza letterale al contenuto // 4. Divieti assoluti: // - Citazioni testuali tra virgolette // - Riferimenti al processo di elaborazione // - Ripetizioni concettuali // ### RISPOSTA ### // `; // } // function promptThread(contesto, conversazione, richiesta) { // return ` // ### RUOLO ### // Sei un assistente AI progettato per gestire conversazioni dinamiche e adattarti a varie richieste. Operi esclusivamente in italiano. // ### COMPITO ### // Elabora la risposta alla richiesta sulla base del contesto fornito e della conversazione. // ### ISTRUZIONI ### // 1. Analizza attentamente il contesto, la conversazione precedente e la richiesta. // 2. Interpreta l'intento dell'utente senza limitarti a categorie predefinite. // 3. Adatta la tua risposta in base all'intento percepito, sia esso una domanda, una richiesta di azione, un'istruzione specifica o altro. // 4. Mantieni una stretta coerenza con il contesto della conversazione. // 5. Basa la tua risposta sulle informazioni fornite nel contesto e nella conversazione. // 6. Evita divagazioni o argomentazioni non direttamente pertinenti alla richiesta o al contesto. // 7. Se l'intento non è chiaro, chiedi gentilmente chiarimenti invece di fare supposizioni. // 8. Sii flessibile: se la richiesta implica un'azione specifica, adattati di conseguenza. // 9. Se è necessario integrare con conoscenze generali, specifica chiaramente quando lo stai facendo. // ### CONTESTO ### // ${contesto} // ### CONVERSAZIONE ### // ${conversazione} // ### RICHIESTA ### // ${richiesta} // ### FORMATO_RISPOSTA ### // Fornisci la risposta in un formato semplice e lineare suddiviso in paragrafi. // ### RISPOSTA ### // `; // } /////////////////// function promptDoc(testo, domanda) { return ` # SISTEMA Estrattore semantico di informazioni ottimizzato per elaborazione da LLM. # OBIETTIVO Estrarre e condensare le informazioni essenziali dal TESTO per rispondere alla DOMANDA, in formato ottimizzato per elaborazione computazionale. # ISTRUZIONI 1. Analizza il testo e seleziona SOLO le informazioni direttamente rilevanti per la domanda. 2. Elimina contenuti irrilevanti o ridondanti. 3. Mantieni relazioni logiche essenziali (causali, temporali, concettuali). 4. Preserva terminologia specialistica necessaria. 5. Produci proposizioni atomiche semanticamente complete. 6. Usa sintassi minimale (soggetto-verbo-complemento). 7. Elimina elementi discorsivi, connettivi e contestualizzazioni non essenziali. 8. Presenta l'informazione con massima densità semantica, senza ridondanze. # FORMATO - Struttura flat senza gerarchie - Non numerare le proposizioni. - Non usare introduzioni o conclusioni. - Non includere spiegazioni meta-testuali. - Non inserire frasi di collegamento tra le proposizioni. # TESTO ${testo} # DOMANDA ${domanda} # RISPOSTA `; } // function xpromptBuildContext(testo, domanda) { // return ` // # SISTEMA // Estrattore e compattatore semantico per contesto LLM. // # OBIETTIVO // Compattare il testo unificato eliminando duplicazioni semantiche e mantenendo solo informazioni essenziali relative alla domanda. // # ISTRUZIONI // 1. Identifica e unifica concetti semanticamente equivalenti presenti in diverse parti del testo. // 2. Elimina ripetizioni informative mantenendo solo la formulazione più completa o precisa. // 3. Seleziona SOLO informazioni rilevanti per rispondere alla domanda. // 4. Mantieni relazioni logiche essenziali (causali, temporali, concettuali). // 5. Preserva terminologia tecnica necessaria. // 6. Produci proposizioni atomiche con struttura minimale. // 7. Rimuovi informazioni ridondanti anche se espresse con parole diverse. // 8. Massimizza la densità informativa per uso efficiente come contesto. // # FORMATO // - Non numerare le proposizioni. // - Non usare introduzioni o conclusioni. // - Non includere spiegazioni meta-testuali. // - Non inserire frasi di collegamento tra le proposizioni. // # TESTO // ${testo} // # DOMANDA // ${domanda} // # RISPOSTA // `; // } function promptBuildContext(testo, domanda = "") { return ` # SISTEMA Estrattore e compattatore semantico per contesto LLM. # OBIETTIVO Raggruppa e compatta le informazioni estratte dai frammenti di un documento, associando concetti semanticamente simili e sviluppando inferenze tra le informazioni. # ISTRUZIONI 1. Identificazione dei Concetti: Identifica e unifica i concetti che hanno lo stesso significato semantico, anche se espressi in modi diversi. 2. Eliminazione delle Ripetizioni: Elimina le ripetizioni informative mantenendo solo la formulazione più completa o precisa. 3. Preservazione delle Relazioni Logiche: Mantieni le relazioni logiche essenziali (causali, temporali, concettuali) tra le informazioni. 4. Terminologia Tecnica: Preserva la terminologia tecnica necessaria per mantenere la precisione delle informazioni. 5. Sintassi Semplificata: Usa una sintassi minimale (soggetto-verbo-complemento) per chiarezza e concisione. 6. Eliminazione degli Elementi Discorsivi: Rimuovi elementi discorsivi, connettivi e contestualizzazioni non essenziali. 7. Densità Semantica: Presenta l'informazione con la massima densità semantica, evitando ridondanze. 8. Rielaborazione degli Insegnamenti: Rielabora le informazioni per garantire che siano coese e che sviluppino inferenze tra parti diverse del documento. # FORMATO_OUTPUT - Struttura flat senza gerarchie. - NON numerare le proposizioni. - NON usare introduzioni o conclusioni. - NON includere spiegazioni meta-testuali. - NON inserire frasi di collegamento tra le proposizioni. # TESTO ${testo} # RISPOSTA `; } function promptWithContext(contesto, domanda) { return ` # RUOLO Sei un assistente AI che risponde sempre ed esclusivamente in italiano. # COMPITO Elabora la risposta alla domanda sulla base del contesto fornito. # ISTRUZIONI 1. Analizza attentamente il CONTESTO e la DOMANDA. 2. Estrai i concetti chiave e formula inferenze ragionevoli basate sulle informazioni disponibili. 3. Inizia la risposta con una breve introduzione che presenta l'argomento e il contesto. 4. Procedi con un'analisi dettagliata delle informazioni rilevanti trovate nel contesto. 5. Assicurati che la risposta sia completa e risponda direttamente alla domanda posta. # CONTESTO ${contesto} # DOMANDA ${domanda} # FORMATO_RISPOSTA Fornisci la risposta in un formato semplice e lineare suddiviso in paragrafi. # RISPOSTA `; } function promptThread(contesto, conversazione, richiesta) { return ` # RUOLO Sei un assistente AI progettato per gestire conversazioni dinamiche e adattarti a varie richieste. Operi esclusivamente in italiano. # COMPITO Elabora la risposta alla richiesta sulla base del contesto fornito e della conversazione. # ISTRUZIONI 1. Analizza attentamente il contesto, la conversazione precedente e la richiesta. 2. Interpreta l'intento dell'utente senza limitarti a categorie predefinite. 3. Adatta la tua risposta in base all'intento percepito, sia esso una domanda, una richiesta di azione, un'istruzione specifica o altro. 4. Mantieni una stretta coerenza con il contesto della conversazione. 5. Basa la tua risposta sulle informazioni fornite nel contesto e nella conversazione. 6. Evita divagazioni o argomentazioni non direttamente pertinenti alla richiesta o al contesto. 7. Se l'intento non è chiaro, chiedi gentilmente chiarimenti invece di fare supposizioni. 8. Sii flessibile: se la richiesta implica un'azione specifica, adattati di conseguenza. 9. Se è necessario integrare con conoscenze generali, specifica chiaramente quando lo stai facendo. # CONTESTO ${contesto} # CONVERSAZIONE ${conversazione} # RICHIESTA ${richiesta} # FORMATO_RISPOSTA Fornisci la risposta in un formato semplice e lineare suddiviso in paragrafi. # RISPOSTA `; }