Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -1,20 +1,62 @@
|
|
1 |
-
|
2 |
-
import os
|
3 |
import openai
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
|
5 |
-
|
6 |
-
|
|
|
7 |
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
13 |
)
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
|
|
|
|
|
|
|
|
|
|
18 |
|
19 |
|
20 |
|
|
|
|
|
|
|
1 |
import openai
|
2 |
+
import os
|
3 |
+
|
4 |
+
# Recupera la chiave API dai secrets o da variabili d'ambiente
|
5 |
+
api_key = os.getenv("OPENAI_API_KEY") # Assicurati che OPENAI_API_KEY sia nei Secrets
|
6 |
+
|
7 |
+
if not api_key:
|
8 |
+
raise ValueError("Chiave API OpenAI non trovata. Assicurati di aver impostato OPENAI_API_KEY.")
|
9 |
+
|
10 |
+
# Configura l'API
|
11 |
+
openai.api_key = api_key
|
12 |
|
13 |
+
def riassumi_testo(testo, max_token_riassunto):
|
14 |
+
"""
|
15 |
+
Utilizza l'API di OpenAI per riassumere un testo con un numero massimo di token specificato.
|
16 |
|
17 |
+
:param testo: Il testo da riassumere
|
18 |
+
:param max_token_riassunto: Numero massimo di token per il riassunto
|
19 |
+
:return: Riassunto del testo
|
20 |
+
"""
|
21 |
+
try:
|
22 |
+
# Esegui la chiamata all'API di OpenAI
|
23 |
+
risposta = openai.ChatCompletion.create(
|
24 |
+
model="gpt-3.5-turbo",
|
25 |
+
messages=[
|
26 |
+
{"role": "system", "content": "Sei un assistente che riassume i testi in modo chiaro e conciso."},
|
27 |
+
{"role": "user", "content": f"Riassumi il seguente testo: {testo}"}
|
28 |
+
],
|
29 |
+
max_tokens=max_token_riassunto,
|
30 |
+
temperature=0.5 # Controlla la creatività
|
31 |
+
)
|
32 |
+
|
33 |
+
# Estrai il riassunto dalla risposta
|
34 |
+
riassunto = risposta['choices'][0]['message']['content']
|
35 |
+
return riassunto
|
36 |
+
|
37 |
+
except openai.error.InvalidRequestError as e:
|
38 |
+
return f"Errore nella richiesta: {e}"
|
39 |
+
except openai.error.AuthenticationError:
|
40 |
+
return "Errore di autenticazione: chiave API non valida."
|
41 |
+
except Exception as e:
|
42 |
+
return f"Errore durante il riassunto: {str(e)}"
|
43 |
+
|
44 |
+
# Test del codice
|
45 |
+
if __name__ == "__main__":
|
46 |
+
testo_originale = (
|
47 |
+
"OpenAI ha sviluppato modelli linguistici avanzati come GPT-3.5 che sono in grado di generare testo, tradurre lingue, "
|
48 |
+
"e risolvere problemi complessi. Questi modelli possono essere utilizzati in molte applicazioni, inclusi chatbot, "
|
49 |
+
"strumenti di scrittura e sistemi di supporto decisionale."
|
50 |
)
|
51 |
+
|
52 |
+
max_token = 50 # Numero massimo di token per il riassunto
|
53 |
+
riassunto = riassumi_testo(testo_originale, max_token)
|
54 |
+
|
55 |
+
print("Testo originale:")
|
56 |
+
print(testo_originale)
|
57 |
+
print("\nRiassunto:")
|
58 |
+
print(riassunto)
|
59 |
+
|
60 |
|
61 |
|
62 |
|