Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -15,10 +15,11 @@ def get_current_time(city: str) -> str:
|
|
| 15 |
city (str): Il nome della città per cui ottenere l'ora.
|
| 16 |
|
| 17 |
Returns:
|
| 18 |
-
str:
|
| 19 |
"""
|
| 20 |
try:
|
| 21 |
-
|
|
|
|
| 22 |
local_time = datetime.datetime.now(timezone).strftime("%Y-%m-%d %H:%M:%S")
|
| 23 |
return f"L'ora attuale a {city.capitalize()} è: {local_time}"
|
| 24 |
except Exception as e:
|
|
@@ -57,19 +58,21 @@ def interpret_and_respond(query: str) -> str:
|
|
| 57 |
"""Interpreta la richiesta dell'utente e restituisce l'ora per una città specificata.
|
| 58 |
|
| 59 |
Args:
|
| 60 |
-
query (str): La domanda dell'utente.
|
| 61 |
|
| 62 |
Returns:
|
| 63 |
-
str:
|
| 64 |
"""
|
| 65 |
words = query.lower().split()
|
| 66 |
if "time" in words or "ora" in words:
|
| 67 |
for word in words:
|
| 68 |
-
|
| 69 |
return get_current_time(word)
|
| 70 |
-
|
|
|
|
|
|
|
| 71 |
return "Mi dispiace, non ho capito la richiesta. Puoi riformularla?"
|
| 72 |
|
| 73 |
agent.tools.append(interpret_and_respond)
|
| 74 |
|
| 75 |
-
GradioUI(agent).launch()
|
|
|
|
| 15 |
city (str): Il nome della città per cui ottenere l'ora.
|
| 16 |
|
| 17 |
Returns:
|
| 18 |
+
str: Una stringa contenente l'ora attuale nella città richiesta oppure un messaggio di errore.
|
| 19 |
"""
|
| 20 |
try:
|
| 21 |
+
# Mapping della città alla sua timezone
|
| 22 |
+
timezone = pytz.timezone(city)
|
| 23 |
local_time = datetime.datetime.now(timezone).strftime("%Y-%m-%d %H:%M:%S")
|
| 24 |
return f"L'ora attuale a {city.capitalize()} è: {local_time}"
|
| 25 |
except Exception as e:
|
|
|
|
| 58 |
"""Interpreta la richiesta dell'utente e restituisce l'ora per una città specificata.
|
| 59 |
|
| 60 |
Args:
|
| 61 |
+
query (str): La domanda dell'utente contenente la città richiesta.
|
| 62 |
|
| 63 |
Returns:
|
| 64 |
+
str: Una stringa contenente l'ora attuale nella città richiesta oppure un messaggio di errore.
|
| 65 |
"""
|
| 66 |
words = query.lower().split()
|
| 67 |
if "time" in words or "ora" in words:
|
| 68 |
for word in words:
|
| 69 |
+
try:
|
| 70 |
return get_current_time(word)
|
| 71 |
+
except:
|
| 72 |
+
continue
|
| 73 |
+
return "Per favore, specifica una città valida."
|
| 74 |
return "Mi dispiace, non ho capito la richiesta. Puoi riformularla?"
|
| 75 |
|
| 76 |
agent.tools.append(interpret_and_respond)
|
| 77 |
|
| 78 |
+
GradioUI(agent).launch()
|