o
    h!                     @   sh  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d deZdS (     )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                   @   sr   e Zd ZdZeZdZdee  dZ	dZ
eZeZddddd	ddd
ddZdZdd Zdd Zdd ZdS )TranslationToolz
    Example:

    ```py
    from transformers.agents import TranslationTool

    translator = TranslationTool()
    translator("This is a super nice API!", src_lang="English", tgt_lang="French")
    ```
    z facebook/nllb-200-distilled-600MzThis is a tool that translates text from a language to another.Both `src_lang`and `tgt_lang` should belong to this list of languages: .
translatorstringzThe text to translate)typedescriptionzbThe language of the text to translate. Written in plain English, such as 'Romanian', or 'Albanian'ziThe language for the desired output language. Written in plain English, such as 'Romanian', or 'Albanian')textsrc_langtgt_langc                 C   sX   || j vrt| d|| j vrt| d| j | }| j | }| jj|d||dS )Nz is not a supported language.pt)return_tensorsrl  rm  )lang_to_code
ValueErrorpre_processor_build_translation_inputs)selfrk  rl  rm   ru  s/var/www/html/construction_image-detection-poc/venv/lib/python3.10/site-packages/transformers/agents/translation.pyencode  s   



zTranslationTool.encodec                 C   s   | j jdi |S )Nru  )modelgenerate)rt  inputsru  ru  rv  forward  s   zTranslationTool.forwardc                 C   s   | j j|d  ddS )N    T)skip_special_tokens)post_processordecodetolist)rt  outputsru  ru  rv  r    s   zTranslationTool.decodeN)__name__
__module____qualname____doc__LANGUAGE_CODESrp  default_checkpointlistkeysrj  namer   pre_processor_classr   model_classrz  output_typerw  r{  r  ru  ru  ru  rv  re     s.    
re  N)models.autor   r   toolsr   r  re  ru  ru  ru  rv  <module>   sn  	
 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                 	  
                                               !  "  #  $  %  &  '  (  )  *  +  ,  -  .  /  0  1  2  3  4  5  6  7  8  9  :  ;  <  =  >  ?  @  A  B  C  D  E  F  G  H  I  J  K  L  M  Q