
    f                     L   d dl Z d dlZd dlZd dlmZ d dlmZmZ de_        de_	        dZ
dZ e            Zee_        dd	Zd
 Zd Zd ZddZd Zedk    rL ed          Z e ed                    Z ed                              d          Z eeee           dS dS )    N)search)ArticleConfigzhttp://localhost:11434/v1ollamallama2zsMozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36x   c                     |                                  fdt          dt                              D             S )Nc                 P    g | ]"}d                      ||z                      #S ) )join).0i
chunk_sizewordss     @C:\Users\intel\Desktop\ai independent v2\combined_proba5_caut.py
<listcomp>z*split_text_into_chunks.<locals>.<listcomp>   s3    XXX!CHHU1Q^+,--XXX    r   )splitrangelen)textr   r   s    `@r   split_text_into_chunksr      s@    JJLLEXXXXXuQE

J7W7WXXXXr   c                 v    g }| D ]2t          fd|D                       r|                               3|S )Nc              3   h   K   | ],}|                                                                  v V  -d S )Nlower)r   keywordchunks     r   	<genexpr>z,filter_chunks_by_keywords.<locals>.<genexpr>   s8      HHGw}}%++--/HHHHHHr   )anyappend)chunkskeywordsfiltered_chunksr   s      @r   filter_chunks_by_keywordsr%      sW    O * *HHHHxHHHHH 	*""5)))r   c                 n    |                      d          }d |D             }d                    |          S )N
c                 >    g | ]}d |                                 v|S )publicitater   )r   lines     r   r   z-filter_out_advertisements.<locals>.<listcomp>!   s*    RRRtTZZ\\0Q0Qd0Q0Q0Qr   )r   r   )r   linesfiltered_liness      r   filter_out_advertisementsr-      s8    JJtERRuRRRN99^$$$r   c                 ^   	 t          t          | |dz                      }t          |          |k    r||dz
           }t          d| d|            	 t	          |t
                    }|                                 |                                 t          |j	                  }t          |          }||fS # t          $ r#}t          d| d|            g |fcY d }~S d }~ww xY wt          d|            g d fS # t          $ r }t          d	|            g d fcY d }~S d }~ww xY w)
N   )stop   u   Procesăm URL-ul din ciclul z: )configzNu s-a putut procesa u2   Nu s-au găsit suficiente rezultate pentru ciclul u   Eroare în timpul căutării: )listr   r   printr   r2   downloadparser-   r   r   	Exception)querycycle_numbersearch_resultsurlarticlearticle_textr"   es           r   search_and_extract_infor?   %   s   fU1ABBBCC~,.. !12CFFFFFGGG	!#f555  """8FF/==s{"   8c88Q889993w U|UUVVVt8O   2q223334xsI   AD A$B< <
C)C$C)D $C))D 
D,D'!D,'D,d   c                     	 t           j                            t          | d|          }|d         d         d         d                                         S # t
          $ r}d| cY d }~S d }~ww xY w)Ngffffff?)modelmessagestemperature
max_tokenschoicesr   messagecontentzError: )openaiChatCompletioncreatemodel_openaistripr7   )rC   rE   responser>   s       r   get_response_from_openairO   =   s    	(//!	 0 
 
 	"1%i0;AACCC   }}s   AA 
A/ A*$A/*A/c                    d}t          |dd          5 }|                    d|  d           t          d|dz             D ]R}t          d| d	           |                    d| d
           t	          | |          \  }}|s/d|  d}t          d|dgd          }	t          d|	 d           nit          ||          }
|
rR|
d         }|                    d| d           |  d| d}t          d|dgd          }	t          d|	 d           nd| }	d|  d|	 d}t          d|dgd          }t          d| d           |                    d|	 d           |                    d| d           t          d| d           Tt          d|            d d d            d S # 1 swxY w Y   d S )Nzrezultat.txtwzutf-8)encodingz	Subiect: z

r1   z
=== Ciclul u+   : Căutare și procesare informații... ===z: ===
u1   Nu am găsit informații relevante pe net pentru u:   . Poți adăuga perspective bazate pe cunoștințele tale?user)rolerH      )rE   z Text generat de AI1 (fallback):
r'   r   zText extras de pe net:
z

Text extras de pe net:
u#   

Poți oferi o perspectivă nouă?zText generat de AI1:
u0   Nu s-au găsit bucăți relevante pentru ciclul u%   AI1 a menționat următoarele despre z:
uW   

Poți adăuga o perspectivă diferită sau detalii suplimentare despre acest subiect?zText generat de AI2:
z finalizat. ===u+   Conversația a fost salvată în fișierul )openwriter   r4   r?   rO   r%   )subject
num_cyclesr#   	file_namefiler   r"   r;   	ai1_inputai1_responser$   r   	ai2_inputai2_responses                 r   agent_conversation_loopr`   J   s   I	iw	/	/	/ "I4

,w,,,---q*q.)) 	6 	6AP!PPPQQQJJ1q1112221'1==KFC Z TPW  T  T  T	7&U^9_9_8`mpqqqJ,JJJKKKK";FH"M"M" Z+A.EJJE%EEEFFF#* t t t t tI#;fYb=c=c<dqt#u#u#uLC<CCCDDDD#YVW#Y#YL t  t  tL  t  t  tI3fQZ5[5[4\ilmmmL;<;;;<<< JJBBBBCCCJJBBBBCCC 4!4445555GIGGHHHE"I "I "I "I "I "I "I "I "I "I "I "I "I "I "I "I "I "Is   FF55F9<F9__main__u   Introduceți tema discuției: u.   Introduceți numărul de cicluri de căutare: u7   Introduceți cuvintele cheie (separate prin virgulă): ,)r   )r@   )requestsrI   regooglesearchr   	newspaperr   r   api_baseapi_keyrL   
user_agentr2   browser_user_agentr   r%   r-   r?   rO   r`   __name__inputrX   intrY   r   r#    r   r   <module>ro      s_     				       % % % % % % % % . C
	& Y Y Y Y
  % % %  0
 
 
 
%I %I %IN ze455GUUKLLMMJuNOOUUVYZZHGZ::::: r   