U
    Ç¾Õj�
  ã                	   @   s¨  d dl Z d dlZd dlmZmZmZ d dlmZ e	edd��Z
dd„ e
D ƒZW 5 Q R X esbedƒ‚ed  Zd	e› d
�Zdddi dœdœZdd„ ZdZddeigdœgZeeƒZed d  d Zdd„ e dg ¡D ƒZesðedƒ eeƒ edƒ‚e e¡ g ZeD ]TZed Zedk�r edƒ‚eeƒZedeƒ edeƒ e d ed!eid"œi¡ �qe dedœ¡ eeƒZd# d$d%„ ed d  d d D ƒ¡Z ed&ƒ ee ƒ dS )'é    N)ÚENV_FILEÚMODELÚSYSTEM_PROMPT)Úejecutar_herramientaúutf-8)Úencodingc                 C   s*   g | ]"}|  d ¡r| ¡  dd¡d ‘qS )zGEMINI_API_KEY=ú=é   )Ú
startswithÚstripÚsplit)Ú.0Zlinea© r   úprueba_hermes_tools.pyÚ
<listcomp>   s   
þr   zClave Gemini no configuradaz8https://generativelanguage.googleapis.com/v1beta/models/z:generateContentZconsultar_servidorzšConsulta el uso real de CPU y RAM del servidor Hermes Nexus. Utiliza esta herramienta cuando el usuario pregunte por CPU, RAM, memoria o recursos del VPS.ZOBJECT)ÚtypeZ
properties)ÚnameZdescriptionZ
parametersc              
   C   s|   ddt igi| dtgigddidœ}tjjtt |¡ d¡dt	d	œd
d�}tjj
|dd��}t |¡W  5 Q R £ S Q R X d S )NÚpartsÚtextZfunctionDeclarationsZmaxOutputTokensiô  )ZsystemInstructionÚcontentsZtoolsZgenerationConfigr   zapplication/json)zContent-Typezx-goog-api-keyZPOST)ÚdataZheadersÚmethodé   )Ztimeout)r   ÚdeclaracionÚurllibÚrequestZRequestÚurlÚjsonÚdumpsÚencodeÚkeyZurlopenÚload)r   Zpayloadr   Úresponser   r   r   Úllamar_gemini%   s*     ÿ ÿ ÿøþù
r#   z6Hermes, consulta el consumo real de CPU y RAM del VPS.Úuserr   )Zroler   Z
candidatesZcontentc                 C   s   g | ]}d |kr|d  ‘qS )ZfunctionCallr   ©r   Zparter   r   r   r   J   s   þr   u(   Gemini no solicitÃ³ ninguna herramienta.r	   r   zHerramienta no autorizadazHERRAMIENTA EJECUTADA:zDATOS REALES:ZfunctionResponseÚresult)r   r"   Ú c                 c   s   | ]}|  d d¡V  qdS )r   r'   N)Úgetr%   r   r   r   Ú	<genexpr>r   s   ÿr)   z
=== RESPUESTA DE HERMES ===)!r   Zurllib.requestr   Zhermes_brainr   r   r   Zhermes_toolsr   ÚopenÚfZclavesÚRuntimeErrorr    r   r   r#   ZpreguntaZ	historialZprimeraZ	contenidor(   ZllamadasÚprintÚ
SystemExitÚappendZ
respuestasZllamadaZnombreZdatosZsegundaÚjoinZtextor   r   r   r   Ú<module>   sr   þ
ÿþùþ
þ



þÿ
þ
þ