Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -1,6 +1,15 @@
|
|
1 |
import gradio as gr
|
2 |
from groq import Groq
|
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
def generate_narrative_arc(narrative_arc):
|
5 |
if narrative_arc == "Hero's Journey":
|
6 |
return "Il viaggio dell'eroe"
|
@@ -15,6 +24,12 @@ def generate_narrative_arc(narrative_arc):
|
|
15 |
elif narrative_arc == "Conciso":
|
16 |
return "Conciso e Super Stringato"
|
17 |
|
|
|
|
|
|
|
|
|
|
|
|
|
18 |
def choosing_language(language_choosen):
|
19 |
if language_choosen == "Italian":
|
20 |
return "Italian"
|
@@ -63,7 +78,7 @@ def inject_personification(personification_focus):
|
|
63 |
per i tuoi colleghi (interpretando la linea dell'hotel manager e della capo ricevimento) nella maniera più visual e persuasiva possibile in modo da renderli subito azionabili.
|
64 |
Sei così brava che riesci sempre ad astrarre dall'iput ricevuto, per capirne il contesto e creare i contenuti richiesti relativi a quel concetto"""
|
65 |
|
66 |
-
def generate_response(input_testuale_utente, tones, output_type, narrative_arc, personification_focus, language_choosen):
|
67 |
client = Groq()
|
68 |
messages = [
|
69 |
{"role": "user", "content": input_testuale_utente},
|
@@ -72,20 +87,20 @@ def generate_response(input_testuale_utente, tones, output_type, narrative_arc,
|
|
72 |
|
73 |
if output_type == "REVIEW Reply":
|
74 |
assistant_message += f"""\n\n Scrivi in {language_choosen} una magnifica e curata risposta a questa recensione '{inject_personification(personification_focus)}'
|
75 |
-
usando esclusivamente il seguente arco narrativo: '{generate_narrative_arc(narrative_arc)}'.
|
76 |
\n\n Usa un tono {', '.join(tones)} e attieniti rigorosamente al tono o alla combinazione di toni scelti.
|
77 |
"""
|
78 |
elif output_type == "Facebook Post":
|
79 |
assistant_message += f"""\n\n crea un post per Facebook in {language_choosen} con un tono {', '.join(tones)} '{inject_personification(personification_focus)}'
|
80 |
-
usando esclusivamente il seguente arco narrativo: '{generate_narrative_arc(narrative_arc)}' riguardante l'argomento proposto nel testo di input.
|
81 |
"""
|
82 |
elif output_type == "Instagram Post":
|
83 |
assistant_message += f"""\n\n crea un post per Instagram in {language_choosen} con un tono {', '.join(tones)} '{inject_personification(personification_focus)}'
|
84 |
-
usando esclusivamente il seguente arco narrativo: '{generate_narrative_arc(narrative_arc)}' riguardante l'argomento proposto nel testo di input.
|
85 |
"""
|
86 |
elif output_type == "Linkedin Post":
|
87 |
assistant_message += f"""\n\n crea un post per Linkedin in {language_choosen} con un tono {', '.join(tones)} '{inject_personification(personification_focus)}'
|
88 |
-
usando esclusivamente il seguente arco narrativo: '{generate_narrative_arc(narrative_arc)}' riguardante l'argomento proposto nel testo di input.
|
89 |
"""
|
90 |
assistant_message += """\n\n Impersona e scrivi con la personalità che puoi dedurre dal profilo di Michele Costantini: a pioneer in integrating Neuromarketing and AI in Tourism,
|
91 |
specializing in NFT hotel bookings, authoring 2 books on Touristic Neuromarketing, and developing Marketing strategies in the Metaverse.
|
@@ -94,11 +109,11 @@ def generate_response(input_testuale_utente, tones, output_type, narrative_arc,
|
|
94 |
|
95 |
elif output_type == "EMAIL Reply":
|
96 |
assistant_message += f"""\n\n crea una risposta a questa email in {language_choosen} con un tono {', '.join(tones)} '{inject_personification(personification_focus)}'
|
97 |
-
usando esclusivamente il seguente arco narrativo: '{generate_narrative_arc(narrative_arc)}' riguardante l'argomento proposto nel testo di input.
|
98 |
"""
|
99 |
elif output_type == "NEWSLETTER":
|
100 |
assistant_message += f"""\n\n crea un nuovo numero della newsletter dell'Hotel in {language_choosen} con un tono {', '.join(tones)} '{inject_personification(personification_focus)}'
|
101 |
-
usando esclusivamente il seguente arco narrativo: '{generate_narrative_arc(narrative_arc)}' riguardante l'argomento proposto nel testo di input.
|
102 |
"""
|
103 |
|
104 |
elif output_type == "Marketing Strategy":
|
@@ -133,7 +148,7 @@ def generate_response(input_testuale_utente, tones, output_type, narrative_arc,
|
|
133 |
model="mixtral-8x7b-32768",
|
134 |
messages=messages,
|
135 |
temperature=0.9,
|
136 |
-
max_tokens=
|
137 |
top_p=1,
|
138 |
stream=True,
|
139 |
stop=None,
|
@@ -158,157 +173,12 @@ def generate_response(input_testuale_utente, tones, output_type, narrative_arc,
|
|
158 |
formal_added = True
|
159 |
|
160 |
|
161 |
-
|
162 |
|
163 |
-
|
164 |
-
|
165 |
-
CONTEXT HELPING YOU WRITING THE RESPONSE: Utilizza le seguenti informazioni come contesto per quello che scrivi. Alcune di queste informazioni potrebbero esserti utili per scrivere con maggior contestualizzazione.
|
166 |
-
Nome Hotel: HOTEL PALAZZO VITTURI
|
167 |
-
Indirizzo: Castello, 5246 - 30122 Venezia
|
168 |
-
Sito Web: https://palazzovitturi.com
|
169 |
-
Email: [email protected]
|
170 |
-
Google Maps: https://maps.app.goo.gl/YPE2EQhovsx5jS7R8
|
171 |
-
Prenotazione diretta:
|
172 |
-
|
173 |
-
Lingua italiana: https://www.simplebooking.it/ibe/search?hid=1467&lang=IT&cur=EUR#/q&guests=A,A
|
174 |
-
Lingua inglese: https://www.simplebooking.it/ibe/search?hid=1467&lang=EN&cur=EUR#/q&guests=A,A
|
175 |
-
WhatsApp: https://wa.me/+390412410856?text=Hi%21%20I%27m%20contacting%20you%20from%20your%20website%20chatbot%20%28Hotel%20Palazzo%20Vitturi%20Bot%20Giulia%20AI%29%20%20
|
176 |
-
Minishop:
|
177 |
-
Lingua italiana: https://www.simplebooking.it/ibe/minishop/?hid=1467&lang=IT
|
178 |
-
Lingua inglese: https://www.simplebooking.it/ibe/minishop/?hid=1467&lang=EN
|
179 |
-
Motto: "Immergiti nell'atmosfera di uno dei più antichi Palazzi veneziani: comfort moderni, personale super gentile, a 5 minuti da Piazza San Marco"
|
180 |
-
Posizione: Nel centro di Venezia, vicino a Piazza San Marco e Ponte di Rialto, in un antico Palazzo veneziano.
|
181 |
-
Recensioni: Personale meraviglioso, posizione ottima, bellissimo edificio, punteggio posizione 9.5/10, WiFi gratuito.
|
182 |
-
Servizi: WiFi veloce, reception 24/24, parcheggio con sconto, prenotazioni visite guidate, stampa documenti, multilingue, trasferimenti da/per aeroporto, porto e stazione ferroviaria.
|
183 |
-
Colazione: Varia scelta di cibi italiani e internazionali, anche senza glutine, servita con gentilezza.
|
184 |
-
Camere: Diverse tipologie con comfort moderni, alcune con vista su Campo Santa Maria Formosa e affreschi originali.
|
185 |
-
Staff: Direttore, capo ricevimento, receptionist, portiere notturno, camerieri.
|
186 |
-
Orari: Aperto 24 ore, check-in dalle 14:00, check-out alle 11:00, flessibilità disponibile.
|
187 |
-
Animali: Cani accettati con supplemento per pulizia e trattamento allergeni.
|
188 |
-
Nota: Tariffe vantaggiose, conferma immediata con cancellazione gratuita, camere spaziose e confortevoli.
|
189 |
-
A chi vuole PASSARE UNA NOTTE FANTASTICA, ci piace ricordare che moltissimi ospiti hanno valutato le nostre camere come spaziose e confortevoli, alcune con vista sulla piazza o sul canale. Molti spazi comuni sono decorati con affreschi originali.
|
190 |
-
Nomi e ruolo dei membri dello STAFF DELL’HOTEL PALAZZO VITTURI
|
191 |
-
|
192 |
-
Michele DIRETTORE Hotel Manager
|
193 |
-
Glerida CAPO RICEVIMENTO
|
194 |
-
Giulia RECEPTIONIST E ADDETTA PRENOTAZIONI
|
195 |
-
Mehdi PORTIERE NOTTURNO
|
196 |
-
Francesca RECEPTIONIST NOTTURNO
|
197 |
-
Florencio CAMERIERE COLAZIONI E PIANI
|
198 |
-
Francesca CAMERIERA COLAZIONE E PIANI
|
199 |
-
|
200 |
-
ORARI
|
201 |
-
L’hotel e’ aperto 24 ore, i clienti trovano sempre qualcuno alla reception pronti ad assisterli, anche di notte per arrivi tardivi.
|
202 |
-
|
203 |
-
Stagionalita’:
|
204 |
-
Da Novembre a Marzo e’ considerata bassa stagione a Venezia (escluse festivita’ natalizie capodanno e carnevale). L’hotel è aperto tutto l’anno
|
205 |
-
|
206 |
-
L’Hotel non dispone di ascensore. Mentre non disponiamo di un ascensore, ciò che ci distingue è il nostro eccellente servizio bagagli. Il nostro team si assicura che le vostre valigie raggiungano la camera assegnata senza alcuno sforzo da parte vostra. La comodità è la nostra priorità! 🛎️👜🔝
|
207 |
-
|
208 |
-
Orario di check in: 14.00
|
209 |
-
Orario di check out: 11.00
|
210 |
-
Siamo flessibili per cambiamento in base alla disponibilita’ da concordare al check in in reception. I clienti potranno depositare le valigie sia all’arrivo che alla partenza.
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
Pets, Cani…. vengono accettati con un piccolo supplemento di 50,00 Euro che servira’ per coprire i costi di pulizia e trattamento Ozono per garantire la camera allergic-free agli ospiti successivi. saremo felici di fornire un welcome kit per il vostro amico a 4 zampe.
|
215 |
-
|
216 |
-
|
217 |
-
I nostri servizi:
|
218 |
-
|
219 |
-
WiFi con Internet super veloce
|
220 |
-
|
221 |
-
Reception 24/24
|
222 |
-
|
223 |
-
Parcheggio con sconto
|
224 |
-
|
225 |
-
Prenotazione biglietti per visite guidate, musei ed eventi
|
226 |
-
|
227 |
-
Servizi di stampa (carte d'imbarco, ecc.)
|
228 |
-
|
229 |
-
Multilingue
|
230 |
-
|
231 |
-
|
232 |
-
Gestiamo TRASFERIMENTI da/per:
|
233 |
-
|
234 |
-
Aeroporto Marco Polo di Venezia
|
235 |
-
PORTO DI CROCIERA
|
236 |
-
Piazzale Roma (terminal delle auto) e Stazione Ferroviaria
|
237 |
-
Qualsiasi altra destinazione raggiungibile via terra e via acqua!
|
238 |
-
In collaborazione con l'agenzia di viaggi Bucintoro® , VeniceLink® , Venezia Turismo® e Alilaguna® possiamo assistere gli ospiti con biglietti ferroviari, marittimi e aerei, servizi di transfer , visite private e periodiche per singoli e gruppi.
|
239 |
-
|
240 |
-
Nel nostro minishop potranno trovare la possibilita’ di assicurarsi il trasferimento in Taxi Privato dalle principali destinazioni di Venezia fino all'Hotel. Raggiungi il nostro Hotel in motoscafo privato, scegli l'inizio più emozionante della tua avventura nella "Città sull'Acqua". È il modo più veloce, comodo e divertente per raggiungere il nostro Hotel. In pochi minuti arriverai direttamente a Campo Santa Maria Formosa, di fronte all'Hotel. Scegli da quale punto vuoi partire (Stazione Ferroviaria, Car Terminal Piazzale Roma, etc. e guarda il prezzo scontato a te riservato.
|
241 |
-
|
242 |
-
Biglietti Alilaguna
|
243 |
-
|
244 |
-
Servizio pubblico di linea che collega l’Aeroporto Marco Polo con Venezia
|
245 |
-
|
246 |
-
Biglietto valido per le linee BLU – ARANCIO
|
247 |
-
VOUCHER - Puoi prenotare il tuo biglietto ed utilizzarlo in qualsiasi data senza alcuna scadenza, scambiando il voucher di prenotazione con regolari titoli di viaggio presso uno dei nostri Ticket Office a Venezia, ad esempio presso la darsena fuori dall'Aeroporto, alla Stazione Marittima o al box davanti all'ingresso dei Giardinetti Reali San Marco.
|
248 |
-
|
249 |
-
ORARI DELLE LINEE - Consulta gli orari sul sito Alilaguna.it :
|
250 |
-
Linea Blu | Linea Rossa | Linea Arancio
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
A colazione:
|
255 |
-
|
256 |
-
dolci e croissant italiani
|
257 |
-
|
258 |
-
pane fresco croccante, pane di frumento, pane ai cereali
|
259 |
-
|
260 |
-
Dolci e torte
|
261 |
-
|
262 |
-
pancetta, uova, varietà di formaggi e prosciutti
|
263 |
-
|
264 |
-
frutta fresca e cereali
|
265 |
-
|
266 |
-
Angolo BIO con prodotti BIO e frutta fresca spremuta
|
267 |
-
|
268 |
-
Prodotti senza glutine
|
269 |
-
|
270 |
-
Pregiato caffè espresso italiano e cappuccino
|
271 |
-
|
272 |
-
Cioccolata calda e selezioni di tè
|
273 |
-
|
274 |
-
... tutto questo viene servito servito con gentilezza e con un sorriso!
|
275 |
-
Si può richiedere la colazione in camera, e per i clienti che prenotano direttamente sul nostro sito, non avranno alcun supplemento per il servizio.
|
276 |
-
L’orario delle nostre colazioni e’ dalle 8.00 alle 10.00. Se il cliente parte presto o chiede di fare colazione piu’ tardi, suggerisci di contattare la reception e concordare in base alla disponibilita’.
|
277 |
-
|
278 |
-
Ecco le nostre tipologie di camera
|
279 |
-
( Nessuna delle nostre camere ha la vista canale. Nessuna si affaccia sul canal grande! Alcune camere (le Deluxe, hanno una meravigliosa vista e affaccio sul Campo Santa Maria Formosa, uno dei piu’ caratteristici a Venezia.). Solo le due camere deluxe hanno gli affreschi. Nell’Hotel, al secondo piano ci sono due meravigliosi affreschi visibili a tutti e un balcone con una vista a 180 gradi sul meraviglioso Campo di Santa Maria Formosa, anima della vita cittadina veneziana.
|
280 |
-
|
281 |
-
|
282 |
-
Le nostre 16 camere sono uniche: di ispirazione classica, sono dotate di tutti i comfort moderni:
|
283 |
-
|
284 |
-
|
285 |
-
[la più prenotata!] Camera SUPERIOR Matrimoniale / Doppia con Letti Singoli. La Camera Superior è spaziosa, dai 28 ai 30 mq., è impeccabilmente arredata in stile Veneziano arricchito da elementi di Design internazionale. Apprezzabili affacci interni, stanza da bagno di livello superiore in marmo molto spaziosa e luminosa; stanza eccezionalmente confortevole, spesso impreziosita d'inserti o affreschi originali.
|
286 |
-
-> Wi-Fi veloce incluso
|
287 |
-
|
288 |
-
-> puoi scegliere la disposizione del letto: 1 letto matrimoniale o letti sepati Camera Superior Matrimoniale/Doppia con letti singoli; numero massimo persone: 2; (possibili beds layout: : 1 letto Matrimoniale Large e 1 letto singolo oppure 3 letti singoli) chi cerca comodità,vuole spendere qualcosa in più per una delle camere più richieste, esperienze autentiche, comfort, personalità re e regine, vorrebbe fare la scalata sociale
|
289 |
-
Camera Classic Matrimoniale/Doppia con letti singoli ; numero massimo persone: 3, consigliato 2; (possibili beds layout: 2 letti singoli oppure 1 letto matrimoniale large) chi cerca praticità, budget friendly, esperienze sociali, personalità uomo comune e angelo custode
|
290 |
-
Camera tripla o 3 letti; numero massimo persone: 3; (possibili beds layout: 1 letto Matrimoniale Large e 1 letto singolo oppure 3 letti singoli) tipi di persone piu’ adatte per questa camera: chi cerca praticità, budget friendly, esperienze sociali, personalità uomo comune e angelo custode
|
291 |
-
Camera Family ; numero massimo persone: 4, consigliato 3; (possibili beds layout: 1 letto Matrimoniale Large e 2 letti singoli oppure 4 letti singoli) tipi di persone piu’ adatte per questa camera: chi cerca praticità, budget friendly, esperienze sociali, personalità uomo comune e angelo custode
|
292 |
-
Junior Suite ; numero massimo persone: 4, in alcuni casi 5; (possibili beds layout: 1 letto Matrimoniale Large e 2 letti singoli oppure 4 letti singoli) tipi di persone piu’ adatte per questa camera: chi cerca unicità, lusso, famiglie che cercano esperienze uniche, personalità RE e REGINE
|
293 |
-
Camera Doppia DELUXE con balcone ; numero massimo persone: 2; (possibili beds layout: letto matrimoniale large o 2 letti singoli) tipi di persone piu’ adatte per questa camera: chi cerca unicità, lusso, esperienze uniche, personalità RE e REGINE
|
294 |
-
1 SUITE Deluxe con balcone; numero massimo persone: 5; (possibili beds layout: Soggiorno: 1 divano letto + 2 letti singoli, Camera 2: letto matrimoniale large o 2 letti singoli) tipi di persone piu’ adatte per questa camera: chi cerca unicità, lusso, famiglie e coppie che cercano esperienze uniche, personalità RE e REGINE
|
295 |
-
|
296 |
|
297 |
-
EVENTI PRINCIPALI A VENEZIA
|
298 |
|
299 |
-
1 CARNEVALE DI VENEZIA, https://carnevale.venezia.it/blog/la-tradizione-del-carnevale/ DAL 27 GENNAIO AL 13 FEBBRAIO
|
300 |
-
2 VOGALONGA DI VENEZIA, http://www.vogalonga.com/ DAL 18 AL 25 MAGGIO
|
301 |
-
3 BIENNALE INTERNAZIONALE DI VENEZIA,
|
302 |
-
https://www.labiennale.org/it/arte/2024 DAL 20 APRILE AL 24 NOVEMBRE
|
303 |
-
4 REDENTORE DI VENEZIA, https://www.vivovenetia.it/redentore-2018-tutte-le-info/#:~:text=La%20Festa%20del%20Redentore%20%C3%A8%20una%20tradizione%20veneziana%20vecchia%20di,fino%20al%20luglio%20del%201577. LA TERZA DOMENICA DI LUGLIO
|
304 |
-
5 MOSTRA INTERNAZIONALE DEL CINEMA, https://www.labiennale.org/it/cinema/2023 DAL 30 AGOSTO AL 9 SETTEMBRE
|
305 |
-
6 REGATA STORICA DI VENEZIA, LA PRIMA DOMENICA DI SETTEMBRE https://www.regatastoricavenezia.it/
|
306 |
-
7 VENICE MARATHON, https://www.venicemarathon.it/it/ DAL 22 OTTOBRE
|
307 |
-
8 FESTA DELLA MADONNA DELLA SALUTE,
|
308 |
-
https://basilicasalutevenezia.it/pellegrinaggio-annuale/ IL 21 NOVEMBRE
|
309 |
-
9 FESTA DELLA SENSA, https://www.veneto.eu/IT/festa-sensa-venezia-2023/#:~:text=FESTA%20DELLA%20SENSA%20%2D%20Venezia%202023&text=La%20Festa%20della%20Sensa%20%C3%A8,2023%20cade%20il%2021%20maggio. LA SESTA DOMENICA DOPO LA PASQUA
|
310 |
|
311 |
-
"""
|
312 |
|
313 |
if informal_added == True:
|
314 |
assistant_message += """\n\n Ricorda di scrivere esclusivamente un testo molto corto (very short text to write)"""
|
@@ -323,6 +193,7 @@ def generate_response(input_testuale_utente, tones, output_type, narrative_arc,
|
|
323 |
choices = ["📝 Formal", "🎉 Informal", "📏 Long", "📐 Short", "💡 Inspiring", "😄 Ironic"]
|
324 |
output_types = ["REVIEW Reply", "Facebook Post", "Instagram Post", "Linkedin Post", "EMAIL Reply", "NEWSLETTER", "Marketing Strategy", "Coaching", "Hotel Management"]
|
325 |
narrative_arcs = ["Hero's Journey", "Story Cycle", "Motivation Sequence", "Narrative Transportation", "Narrative Persuasion", "Conciso"]
|
|
|
326 |
personifications = ["Brand Hotel Centrico", "Personal Brand Centrico", "Coach", "Hotel Manager","Caporicevimento", "Reception"]
|
327 |
languages = ["Italian", "English", "French", "Spanish"] # Add more languages as needed
|
328 |
|
@@ -340,6 +211,8 @@ iface = gr.Interface(
|
|
340 |
gr.Radio(choices=output_types, label="Output Type", value="Ecco la magia..."),
|
341 |
#gr.HTML("<h3>Applica STORYTELLING</h3>"),
|
342 |
gr.Radio(choices=narrative_arcs, label="Scegli un arco narrativo"),
|
|
|
|
|
343 |
#gr.HTML("<h3>\"CHI\" risponde?</h3>"),
|
344 |
gr.Radio(choices=personifications, label="Scegli l'impersonificazione"),
|
345 |
#gr.HTML("<h3>In Quale Lingua?</h3>"),
|
|
|
1 |
import gradio as gr
|
2 |
from groq import Groq
|
3 |
|
4 |
+
def clean_text_from_file(file_path):
|
5 |
+
with open(file_path, "r", encoding="utf-8") as file:
|
6 |
+
text = file.read()
|
7 |
+
# Qui puoi aggiungere la logica per pulire il testo
|
8 |
+
# ad esempio, rimuovendo parti non desiderate
|
9 |
+
# o applicando altre trasformazioni necessarie
|
10 |
+
# Una volta pulito, restituisci il testo
|
11 |
+
return text
|
12 |
+
|
13 |
def generate_narrative_arc(narrative_arc):
|
14 |
if narrative_arc == "Hero's Journey":
|
15 |
return "Il viaggio dell'eroe"
|
|
|
24 |
elif narrative_arc == "Conciso":
|
25 |
return "Conciso e Super Stringato"
|
26 |
|
27 |
+
def generate_marketing_model(marketing_model):
|
28 |
+
if marketing_model == "PAS":
|
29 |
+
return "Problem Agitate Solve copywriting technique"
|
30 |
+
elif marketing_model == "AIDA":
|
31 |
+
return "Aida marketing copywriting technique"
|
32 |
+
|
33 |
def choosing_language(language_choosen):
|
34 |
if language_choosen == "Italian":
|
35 |
return "Italian"
|
|
|
78 |
per i tuoi colleghi (interpretando la linea dell'hotel manager e della capo ricevimento) nella maniera più visual e persuasiva possibile in modo da renderli subito azionabili.
|
79 |
Sei così brava che riesci sempre ad astrarre dall'iput ricevuto, per capirne il contesto e creare i contenuti richiesti relativi a quel concetto"""
|
80 |
|
81 |
+
def generate_response(input_testuale_utente, tones, output_type, narrative_arc,marketing_model, personification_focus, language_choosen):
|
82 |
client = Groq()
|
83 |
messages = [
|
84 |
{"role": "user", "content": input_testuale_utente},
|
|
|
87 |
|
88 |
if output_type == "REVIEW Reply":
|
89 |
assistant_message += f"""\n\n Scrivi in {language_choosen} una magnifica e curata risposta a questa recensione '{inject_personification(personification_focus)}'
|
90 |
+
usando esclusivamente il seguente arco narrativo: '{generate_narrative_arc(narrative_arc)}' e la struttura di copywriting '{generate_marketing_model(marketing_model)}'.
|
91 |
\n\n Usa un tono {', '.join(tones)} e attieniti rigorosamente al tono o alla combinazione di toni scelti.
|
92 |
"""
|
93 |
elif output_type == "Facebook Post":
|
94 |
assistant_message += f"""\n\n crea un post per Facebook in {language_choosen} con un tono {', '.join(tones)} '{inject_personification(personification_focus)}'
|
95 |
+
usando esclusivamente il seguente arco narrativo: '{generate_narrative_arc(narrative_arc)}' e la struttura di copywriting '{generate_marketing_model(marketing_model)}' riguardante l'argomento proposto nel testo di input.
|
96 |
"""
|
97 |
elif output_type == "Instagram Post":
|
98 |
assistant_message += f"""\n\n crea un post per Instagram in {language_choosen} con un tono {', '.join(tones)} '{inject_personification(personification_focus)}'
|
99 |
+
usando esclusivamente il seguente arco narrativo: '{generate_narrative_arc(narrative_arc)}' e la struttura di copywriting '{generate_marketing_model(marketing_model)}' riguardante l'argomento proposto nel testo di input.
|
100 |
"""
|
101 |
elif output_type == "Linkedin Post":
|
102 |
assistant_message += f"""\n\n crea un post per Linkedin in {language_choosen} con un tono {', '.join(tones)} '{inject_personification(personification_focus)}'
|
103 |
+
usando esclusivamente il seguente arco narrativo: '{generate_narrative_arc(narrative_arc)}' e la struttura di copywriting '{generate_marketing_model(marketing_model)}' riguardante l'argomento proposto nel testo di input.
|
104 |
"""
|
105 |
assistant_message += """\n\n Impersona e scrivi con la personalità che puoi dedurre dal profilo di Michele Costantini: a pioneer in integrating Neuromarketing and AI in Tourism,
|
106 |
specializing in NFT hotel bookings, authoring 2 books on Touristic Neuromarketing, and developing Marketing strategies in the Metaverse.
|
|
|
109 |
|
110 |
elif output_type == "EMAIL Reply":
|
111 |
assistant_message += f"""\n\n crea una risposta a questa email in {language_choosen} con un tono {', '.join(tones)} '{inject_personification(personification_focus)}'
|
112 |
+
usando esclusivamente il seguente arco narrativo: '{generate_narrative_arc(narrative_arc)}' e la struttura di copywriting '{generate_marketing_model(marketing_model)}' riguardante l'argomento proposto nel testo di input.
|
113 |
"""
|
114 |
elif output_type == "NEWSLETTER":
|
115 |
assistant_message += f"""\n\n crea un nuovo numero della newsletter dell'Hotel in {language_choosen} con un tono {', '.join(tones)} '{inject_personification(personification_focus)}'
|
116 |
+
usando esclusivamente il seguente arco narrativo: '{generate_narrative_arc(narrative_arc)}' e la struttura di copywriting '{generate_marketing_model(marketing_model)}' riguardante l'argomento proposto nel testo di input.
|
117 |
"""
|
118 |
|
119 |
elif output_type == "Marketing Strategy":
|
|
|
148 |
model="mixtral-8x7b-32768",
|
149 |
messages=messages,
|
150 |
temperature=0.9,
|
151 |
+
max_tokens=30000,
|
152 |
top_p=1,
|
153 |
stream=True,
|
154 |
stop=None,
|
|
|
173 |
formal_added = True
|
174 |
|
175 |
|
|
|
176 |
|
177 |
+
|
178 |
+
assistant_message += clean_text_from_file('/Users/michelecostantini/Desktop/hotel_core_info.txt')
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
179 |
|
|
|
180 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
181 |
|
|
|
182 |
|
183 |
if informal_added == True:
|
184 |
assistant_message += """\n\n Ricorda di scrivere esclusivamente un testo molto corto (very short text to write)"""
|
|
|
193 |
choices = ["📝 Formal", "🎉 Informal", "📏 Long", "📐 Short", "💡 Inspiring", "😄 Ironic"]
|
194 |
output_types = ["REVIEW Reply", "Facebook Post", "Instagram Post", "Linkedin Post", "EMAIL Reply", "NEWSLETTER", "Marketing Strategy", "Coaching", "Hotel Management"]
|
195 |
narrative_arcs = ["Hero's Journey", "Story Cycle", "Motivation Sequence", "Narrative Transportation", "Narrative Persuasion", "Conciso"]
|
196 |
+
marketing_models = ["PAS", "AIDA"]
|
197 |
personifications = ["Brand Hotel Centrico", "Personal Brand Centrico", "Coach", "Hotel Manager","Caporicevimento", "Reception"]
|
198 |
languages = ["Italian", "English", "French", "Spanish"] # Add more languages as needed
|
199 |
|
|
|
211 |
gr.Radio(choices=output_types, label="Output Type", value="Ecco la magia..."),
|
212 |
#gr.HTML("<h3>Applica STORYTELLING</h3>"),
|
213 |
gr.Radio(choices=narrative_arcs, label="Scegli un arco narrativo"),
|
214 |
+
#gr.HTML("<h3>Applica Marketing Framework</h3>"),
|
215 |
+
gr.Radio(choices=marketing_models, label="Scegli un marketing model"),
|
216 |
#gr.HTML("<h3>\"CHI\" risponde?</h3>"),
|
217 |
gr.Radio(choices=personifications, label="Scegli l'impersonificazione"),
|
218 |
#gr.HTML("<h3>In Quale Lingua?</h3>"),
|