§
    ‡ìNg  ã                  ó¤   — d Z ddlmZ ddlmZ ddlmZ ddlmZ ddl	m
Z
 ddlmZ ddlmZ dd	lmZ  ed
ddg¬¦  «        Z G d„ de¦  «        ZdS )ú9LLM Chain for generating examples for question answering.é    )Úannotations)ÚAny)ÚBaseLanguageModel)ÚBaseLLMOutputParser)ÚField)ÚLLMChain©ÚPROMPT)ÚRegexParserzQUESTION: (.*?)\n+ANSWER: (.*)ÚqueryÚanswer)ÚregexÚoutput_keysc                  ót   — e Zd ZU dZ ee¬¦  «        Zded<   dZded<   e	dd
„¦   «         Z
e	dd„¦   «         ZdS )ÚQAGenerateChainr   )Údefaultr   Úoutput_parserÚqa_pairsÚstrÚ
output_keyÚreturnÚboolc                ó   — dS )NF© )Úclss    úb/var/www/html/ai-engine/env/lib/python3.11/site-packages/langchain/evaluation/qa/generate_chain.pyÚis_lc_serializablez"QAGenerateChain.is_lc_serializable   s   € àˆuó    Úllmr   Úkwargsr   c                ó"   —  | d|t           dœ|¤ŽS )z Load QA Generate Chain from LLM.)r    Úpromptr   r
   )r   r    r!   s      r   Úfrom_llmzQAGenerateChain.from_llm   s!   € ð ˆsÐ4s¥6Ð4Ð4¨VÐ4Ð4Ð4r   N)r   r   )r    r   r!   r   r   r   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   Ú_QA_OUTPUT_PARSERr   Ú__annotations__r   Úclassmethodr   r$   r   r   r   r   r      sŠ   € € € € € € ØCÐCà).¨Ð7HÐ)IÑ)IÔ)I€MÐIÐIÐIÑIØ €JÐ Ð Ð Ñ àðð ð ñ „[ðð ð5ð 5ð 5ñ „[ð5ð 5ð 5r   r   N)r(   Ú
__future__r   Útypingr   Úlangchain_core.language_modelsr   Úlangchain_core.output_parsersr   Úpydanticr   Úlangchain.chains.llmr	   Ú'langchain.evaluation.qa.generate_promptr   Úlangchain.output_parsers.regexr   r)   r   r   r   r   ú<module>r4      sð   ðØ ?Ð ?à "Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð Ð Ð à <Ð <Ð <Ð <Ð <Ð <Ø =Ð =Ð =Ð =Ð =Ð =Ø Ð Ð Ð Ð Ð à )Ð )Ð )Ð )Ð )Ð )Ø :Ð :Ð :Ð :Ð :Ð :Ø 6Ð 6Ð 6Ð 6Ð 6Ð 6àKØ
+¸'À8Ð9Lðñ ô Ð ð
5ð 5ð 5ð 5ð 5hñ 5ô 5ð 5ð 5ð 5r   