michecosta commited on
Commit
8cf06b7
·
verified ·
1 Parent(s): 26f866b

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +28 -155
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=5000,
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
- assistant_message += """
164
- \n\n
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
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>"),