U
    nÙÕjÈ  ã                   @   s@   d dl Z d dlZd dlZd dlmZmZmZ dd„ Zdd„ Z	dS )é    N)ÚENV_FILEÚMODELÚSYSTEM_PROMPTc               
   C   s\   t tdd��>} | D ]2}| d¡r| ¡  dd¡d   W  5 Q R £ S qW 5 Q R X tdƒ‚d S )Núutf-8)ÚencodingzGEMINI_API_KEY=ú=é   zClave Gemini no configurada)Úopenr   Ú
startswithÚstripÚsplitÚRuntimeError)ÚfZlinea© r   ú"/var/www/html/NFL_ST/hermes_web.pyÚobtener_clave   s
    
0r   c              	   C   s,  dt › d�}ddtd igidd| igdœgdi igd	d
idœ}tjj|t |¡ d¡dtƒ dœdd�}tjj	|dd��}t 
|¡}W 5 Q R X |d d }d dd„ |d  dg ¡D ƒ¡}| di ¡}g }	| dg ¡D ]6}
|
 di ¡}| d¡rÖ|	 | dd¡|d dœ¡ qÖ||	d d… t| d ¡ƒd!œS )"Nz8https://generativelanguage.googleapis.com/v1beta/models/z:generateContentÚpartsÚtextuH  
Cuando consultes Internet:
- Prioriza informaciÃ³n deportiva actualizada.
- Comprueba fechas y zonas horarias.
- Distingue partidos reales de programas deportivos.
- No inventes canales ni horarios.
- Si las fuentes discrepan, indÃ­calo.
- No afirmes que puedes reproducir un evento
  sin consultar las herramientas del panel.
Úuser)Zroler   Zgoogle_searchZmaxOutputTokensiè  )ZsystemInstructionÚcontentsZtoolsZgenerationConfigr   zapplication/json)zContent-Typezx-goog-api-keyZPOST)ÚdataZheadersÚmethodé<   )ZtimeoutZ
candidatesr   Ú c                 s   s   | ]}|  d d¡V  qdS )r   r   N)Úget)Ú.0Zparter   r   r   Ú	<genexpr>?   s   ÿz"buscar_internet.<locals>.<genexpr>ZcontentZgroundingMetadataZgroundingChunksÚwebZuriÚtitle)ZtituloÚurlé
   ZwebSearchQueries)Ú	respuestaÚfuentesZbusqueda_realizada)r   r   ÚurllibZrequestZRequestÚjsonÚdumpsÚencoder   ZurlopenÚloadÚjoinr   ÚappendÚbool)Zpreguntar   ZpayloadZ	solicitudÚrZ	resultadoZ	candidator!   Zmetadatar"   Úchunkr   r   r   r   Úbuscar_internet   s\    
ÿ ÿÿþ ÿ ÿêþù

þ

þ

ÿýr-   )
r$   Zurllib.requestr#   Zurllib.errorZhermes_brainr   r   r   r   r-   r   r   r   r   Ú<module>   s
   