msblend's picture
Update app.py
afa88b1 verified
raw
history blame
2.26 kB
da smolagents importa CodeAgent, DuckDuckGoSearchTool, HfApiModel, load_tool, strumento
importa datetime
importa richieste
importa pytz
importa yaml
da tools.final_answer importa FinalAnswerTool
da Gradio_UI importa GradioUI
# Di seguito è riportato un esempio di uno strumento che non fa nulla. Stupiscici con la tua creatività!
def my_custom_tool ( arg1: str , arg2: int )-> str : # è importante specificare il tipo di ritorno
# Mantieni questo formato per la descrizione dello strumento / descrizione degli argomenti ma sentiti libero di modificare lo strumento
"""Uno strumento che non fa ancora nulla
Argomenti:
arg1: il primo argomento
arg2: il secondo argomento
"""
ritorna "Quale magia costruirai?"
def get_current_time_in_timezone ( timezone: str ) -> str :
"""Uno strumento che recupera l'ora locale corrente in un fuso orario specificato.
Argomenti:
fuso orario: una stringa che rappresenta un fuso orario valido (ad esempio, 'America/New_York').
"""
prova :
# Crea oggetto fuso orario
tz = pytz.timezone(fuso orario)
# Ottieni l'ora corrente in quel fuso orario
local_time = datetime.datetime.now(tz).strftime( "%Y-%m-%d %H:%M:%S" )
return f"L'ora locale corrente in {timezone} è: {local_time} "
except Exception as e:
return f"Errore durante il recupero dell'ora per il fuso orario ' {timezone} ': { str (e)} "
risposta_finale = StrumentoRispostaFinale()
modello = HfApiModel(
numero massimo di token = 2096 ,
temperatura= 0,5 ,
model_id= 'Qwen/Qwen2.5-Coder-32B-Istruzione' ,
custom_role_conversions= Nessuno ,
)
# Strumento di importazione dall'hub
image_generation_tool = load_tool( "agents-course/text-to-image" , trust_remote_code= True )
con open ( "prompts.yaml" , 'r' ) come flusso:
prompt_templates = yaml.safe_load(flusso)
agente = CodeAgent(
modello=modello,
tools=[final_answer], # aggiungi i tuoi strumenti qui (non rimuovere final_answer)
max_steps= 6 ,
livello_di_verbosità= 1 ,
grammatica= Nessuna ,
planning_interval= Nessuno ,
nome= Nessuno ,
descrizione= Nessuno ,
prompt_templates=template_prompt
)
GradioUI(agente).launch()