
    !vh2	                     8    S SK r S SKrS SKrS SKJr  S rSS jrg)    N)load_dotenvc                     SnSU 3SS.nSSSS.S	U S./S
S.n[         R                  " X#US9nUR                  5         UR                  5       S   S   S   S   $ )Nz-https://openrouter.ai/api/v1/chat/completionszBearer zapplication/json)AuthorizationzContent-Typezmeta-llama/llama-3-8b-instructsystemut   Bạn là nhân viên tư vấn của công ty trả lời các câu hỏi của khách hàng bằng tiếng Việt.)rolecontentuserg?)modelmessagestemperature)headersjsonchoicesr   messager   )requestspostraise_for_statusr   )promptapi_keyurlr   dataresponses         d:\tam\chat\promptdb.pycall_openrouter_llama3r      s    
9C"7),*G
 2  +a  b/
 D }}S=H==?9%a(3I>>    c                    [        S5        [        R                  " SS9nUR                  SS9n[        R
                  R                  S5      nU(       d  [        S5        g U nUR                  U/SS	S
/S9nUS	   S   nUS
   S   n/ n[        [        Xg5      S5       H  u  n	u  pUR                  U	 SU
 35        M      SR                  U5      nSU SU S3n [        X5      nU$ ! [         a  nSn S nAU$ S nAff = f)Nzapi.env	chroma_db)pathweb_knowledge_mksolar_vn)nameOPENROUTER_API_KEYu;   ❌ Không tìm thấy API key trong biến môi trường.   	documents	distances)query_texts	n_resultsincluder      z. 
ut  Bạn là nhân viên tư vấn trả lời các câu hỏi của khách hàng bằng tiếng Việt, dựa trên các thông tin sau và không bịa thêm bất kỳ điều gì. Trong trường thông tin không đầy đủ hoặc không có thông tin, hãy trả lời là "Vui lòng tra cứu website theo đường link".

    Câu hỏi của khách hàng: u    

    Thông tin có sẵn:
    u   

    Trả lời:u@   Xin lỗi, tôi gặp lỗi khi xử lý câu hỏi của bạn.)r   chromadbPersistentClientget_collectionosenvirongetprintquery	enumeratezipappendjoinr   	Exception)
input_textclient
collectionr   r1   resultsr#   r$   context_linesidocdistcontextr   answeres                   r   prompt_chromadbrB      s=   	&&K8F&&,F&GJjjnn12GKLE Gk*  G $Q'I$Q'IM#C	$=qA;Cs"SE]+ B ii&G$$)7 + I FT'8 M  TSMTs   C( (
C?2C::C?)N)r*   r   r-   dotenvr   r   rB    r   r   <module>rE      s      	 ?$,r   