
    9i-!                     l   d dl mZmZ ddlmZ i dddddd	d
dddddddddddddddddddddd d!d"d#d$d%i d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGi dHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdhdii djdkdldmdndodpdqdrdsdtdudvdwdxdydzd{d|d}d~dddddddddddddi ddddddddddddddddddddddddddddddddddi ddddddddddddddddddddddÓddœddǓddɓdd˓dd͓ddϓi ddѓddӓddՓddדddٓddۓddݓddߓddddddddddddddddddi ddddddddddddddd ddddddddd	d
dddddddddi ddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5i d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWi dXdYdZd[d\d]d^d_d`dadbdcdddedfdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdyi dzd{d|d}d~dddddddddddddddddddddddddddddZ G d de      Zy(     )AutoModelForSeq2SeqLMAutoTokenizer   )PipelineToolzAcehnese Arabicace_ArabzAcehnese Latinace_LatnzMesopotamian Arabicacm_ArabzTa'izzi-Adeni Arabicacq_ArabzTunisian Arabicaeb_Arab	Afrikaansafr_LatnzSouth Levantine Arabicajp_ArabAkanaka_LatnAmharicamh_EthizNorth Levantine Arabicapc_ArabzModern Standard Arabicarb_Arabz Modern Standard Arabic Romanizedarb_LatnzNajdi Arabicars_ArabzMoroccan Arabicary_ArabzEgyptian Arabicarz_ArabAssameseasm_BengAsturianast_LatnAwadhiawa_DevazCentral Aymaraayr_LatnzSouth Azerbaijaniazb_ArabzNorth Azerbaijaniazj_LatnBashkirbak_CyrlBambarabam_LatnBalineseban_Latn
Belarusianbel_CyrlBembabem_LatnBengaliben_BengBhojpuribho_DevazBanjar Arabicbjn_ArabzBanjar Latinbjn_LatnzStandard Tibetanbod_TibtBosnianbos_LatnBuginesebug_Latn	Bulgarianbul_CyrlCatalancat_LatnCebuanoceb_LatnCzechces_LatnChokwecjk_LatnzCentral Kurdishckb_ArabzCrimean Tatarcrh_LatnWelshcym_LatnDanishdan_LatnGermandeu_LatnzSouthwestern Dinkadik_LatnDyuladyu_LatnDzongkhadzo_TibtGreekell_GrekEnglisheng_Latn	Esperantoepo_LatnEstonianest_LatnBasqueeus_LatnEweewe_LatnFaroesefao_LatnFijianfij_LatnFinnishfin_LatnFonfon_LatnFrenchfra_LatnFriulianfur_LatnzNigerian Fulfuldefuv_LatnzScottish Gaelicgla_LatnIrishgle_LatnGalicianglg_LatnGuaranigrn_LatnGujaratiguj_GujrzHaitian Creolehat_LatnHausahau_LatnHebrewheb_HebrHindihin_DevaChhattisgarhihne_DevaCroatianhrv_Latn	Hungarianhun_LatnArmenianhye_ArmnIgboibo_LatnIlocanoilo_Latn
Indonesianind_Latn	Icelandicisl_LatnItalianita_LatnJavanesejav_LatnJapanesejpn_JpanKabylekab_LatnJingphokac_LatnKambakam_LatnKannadakan_KndazKashmiri Arabickas_ArabzKashmiri Devanagarikas_DevaGeorgiankat_GeorzCentral Kanuri Arabicknc_ArabzCentral Kanuri Latinknc_LatnKazakhkaz_Cyrlu   Kabiyèkbp_LatnKabuverdianukea_LatnKhmerkhm_KhmrKikuyukik_LatnKinyarwandakin_LatnKyrgyzkir_CyrlKimbundukmb_LatnzNorthern Kurdishkmr_LatnKikongokon_LatnKoreankor_HangLaolao_LaooLigurianlij_Latn
Limburgishlim_LatnLingalalin_Latn
Lithuanianlit_LatnLombardlmo_Latn	Latgalianltg_LatnLuxembourgishltz_Latnz
Luba-Kasailua_LatnGandalug_LatnLuoluo_LatnMizolus_LatnzStandard Latvianlvs_LatnMagahimag_DevaMaithilimai_Deva	Malayalammal_MlymMarathimar_DevazMinangkabau Arabic min_ArabzMinangkabau Latinmin_Latn
Macedonianmkd_CyrlzPlateau Malagasyplt_LatnMaltesemlt_LatnzMeitei Bengalimni_BengzHalh Mongoliankhk_CyrlMossimos_LatnMaorimri_LatnBurmesemya_MymrDutchnld_LatnzNorwegian Nynorsknno_Latnu   Norwegian Bokmålnob_LatnNepalinpi_DevazNorthern Sothonso_LatnNuernus_LatnNyanjanya_LatnOccitanoci_LatnzWest Central Oromogaz_LatnOdiaory_Orya
Pangasinanpag_LatnzEastern Panjabipan_Guru
Papiamentopap_LatnzWestern Persianpes_ArabPolishpol_Latn
Portuguesepor_LatnDariprs_ArabzSouthern Pashtopbt_ArabzAyacucho Quechuaquy_LatnRomanianron_LatnRundirun_LatnRussianrus_CyrlSangosag_LatnSanskritsan_DevaSantalisat_OlckSicilianscn_LatnShanshn_MymrSinhalasin_SinhSlovakslk_Latn	Slovenianslv_LatnSamoansmo_LatnShonasna_LatnSindhisnd_ArabSomalisom_LatnzSouthern Sothosot_LatnSpanishspa_LatnzTosk Albanianals_Latn	Sardiniansrd_LatnSerbiansrp_CyrlSwatissw_Latn	Sundanesesun_LatnSwedishswe_LatnSwahiliswh_LatnSilesianszl_LatnTamiltam_TamlTatartat_CyrlTelugutel_TeluTajiktgk_CyrlTagalogtgl_LatnThaitha_ThaiTigrinyatir_EthizTamasheq Latintaq_LatnzTamasheq Tifinaghtaq_Tfngz	Tok Pisintpi_LatnTswanatsn_LatnTsongatso_LatnTurkmentuk_LatnTumbukatum_LatnTurkishtur_LatnTwitwi_LatnzCentral Atlas Tamazighttzm_TfngUyghuruig_Arab	Ukrainianukr_CyrlUmbunduumb_LatnUrduurd_ArabzNorthern Uzbekuzn_LatnVenetianvec_Latn
Vietnamesevie_LatnWaraywar_LatnWolofwol_LatnXhosaxho_LatnzEastern Yiddishydd_HebrYorubayor_LatnzYue Chineseyue_HantzChinese Simplifiedzho_HanszChinese Traditionalzho_HantzStandard Malayzsm_LatnZuluzul_Latnc                   H    e Zd ZdZdZdZdZeZe	Z
eZg dZdgZd Zd Zd	 Zy
)TranslationToolz
    Example:

    ```py
    from transformers.tools import TranslationTool

    translator = TranslationTool()
    translator("This is a super nice API!", src_lang="English", tgt_lang="French")
    ```
    z facebook/nllb-200-distilled-600Ma  This is a tool that translates text from a language to another. It takes three inputs: `text`, which should be the text to translate, `src_lang`, which should be the language of the text to translate and `tgt_lang`, which should be the language for the desired ouput language. Both `src_lang` and `tgt_lang` are written in plain English, such as 'Romanian', or 'Albanian'. It returns the text translated in `tgt_lang`.
translator)textri  ri  ri  c                     || j                   vrt        | d      || j                   vrt        | d      | j                   |   }| j                   |   }| j                  j                  |d||      S )Nz is not a supported language.pt)return_tensorssrc_langtgt_lang)lang_to_code
ValueErrorpre_processor_build_translation_inputs)selfri  rm  rn  s       h/var/www/html/backtest/airagagent/rag_env/lib/python3.12/site-packages/transformers/tools/translation.pyencodezTranslationTool.encode   s    4,,,z)FGHH4,,,z)FGHH$$X.$$X.!!;;8 < 
 	
    c                 :     | j                   j                  di |S )N )modelgenerate)rs  inputss     rt  forwardzTranslationTool.forward  s    "tzz"",V,,rv  c                 ^    | j                   j                  |d   j                         d      S )N    T)skip_special_tokens)post_processordecodetolist)rs  outputss     rt  r  zTranslationTool.decode  s,    ""))'!**;*;*=SW)XXrv  N)__name__
__module____qualname____doc__default_checkpointdescriptionnamer   pre_processor_classr   model_classLANGUAGE_CODESro  r{  r  ru  r|  r  rx  rv  rt  rg  rg     sM    	 <	j  D''K!L%FhG	
-Yrv  rg  N)models.autor   r   baser   r  rg  rx  rv  rt  <module>r     s  " ? MzMjM :M J	M
 zM M jM JM zM jM jM '
M JM zM zM  
!M" 
#M$ j%M& j'M( )M* +M, z-M. z/M0 
1M2 *3M4 Z5M6 z7M8 
9M: Z;M< J=M> 
?M@ zAMB 
CMD EMF zGMH zIMJ ZKML jMMN zOMP ZQMR ZSMT jUMV jWMX *YMZ Z[M\ 
]M^ Z_M` zaMb cMd 
eMf jgMh 
:iMj zkMl jmMn zoMp 
:qMr jsMt 
uMv wMx zyMz Z{M| 
}M~ zM@ 
AMB jCMD ZEMF jGMH ZIMJ ZKML 
MMN OMP 
QMR JSMT zUMV *WMX YMZ z[M\ 
]M^ 
_M` jaMb zcMd ZeMf zgMh ziMj :kMl 
mMn ZoMp JqMr jsMt zuMv JwMx ZyMz j{M| :}M~ jM@ 
AMB 
CMD zEMF jGMH 
:IMJ 
KML *MMN zOMP *QMR zSMT UMV ZWMX *YMZ Z[M\ 
:]M^ J_M` 
aMb jcMd 
eMf gMh ziMj :kMl mMn *oMp 
qMr zsMt juMv jwMx ZyMz Z{M| z}M~ ZM@ AMB CMD jEMF jGMH JIMJ jKML zMMN *OMP JQMR *SMT zUMV *WMX zYMZ j[M\ *]M^ J_M` zaMb 
cMd 
eMf ZgMh ziMj ZkMl 
mMn zoMp 
qMr JsMt zuMv jwMx yMz j{M| Z}M~ jM@ jAMB jCMD zEMF ZGMH IMJ zKML ZMMN OMP zQMR zSMT 
UMV ZWMX ZYMZ j[M\ Z]M^ z_M` JaMb 
cMd jeMf gMh iMj jkMl jmMn zoMp zqMr zsMt 
:uMv zwMx jyMz {M| z}M~ JM@ jAMB 
CMD *EMF ZGMH ZIMJ ZKML zMMN jOMP :QMR *SMT :UMV jWMX JYM`*Yl *Yrv  