ó
    >:je  ã                  ód  • % S SK Jr  S SKrS SKrS SKJr  S SKJrJrJ	r	J
r
JrJrJr  SSKJr  SSKJrJrJrJrJrJrJr  SSKJr  SS	KJr  \\\\\\S
.rS\S'    " S S5      r " S S\5      r " S S\5      r  " S S\5      r! " S S\5      r" " S S\5      r# " S S\5      r$ " S S\5      r%g)é    )ÚannotationsN)ÚOptional)Ú	AutoModelÚAutoModelForCausalLMÚAutoModelForQuestionAnsweringÚAutoModelForSeq2SeqLMÚ"AutoModelForSequenceClassificationÚAutoModelForTokenClassificationÚAutoTokenizeré   )Ú
PeftConfig)Ú	PeftModelÚPeftModelForCausalLMÚPeftModelForFeatureExtractionÚPeftModelForQuestionAnsweringÚPeftModelForSeq2SeqLMÚ"PeftModelForSequenceClassificationÚPeftModelForTokenClassification)ÚTOKENIZER_CONFIG_NAME)Úcheck_file_exists_on_hf_hub)ÚSEQ_CLSÚSEQ_2_SEQ_LMÚ	CAUSAL_LMÚ	TOKEN_CLSÚQUESTION_ANSÚFEATURE_EXTRACTIONzdict[str, type[PeftModel]]Ú MODEL_TYPE_TO_PEFT_MODEL_MAPPINGc                  óP   • \ rS rSrSrSrS r\    S       SS jj5       rSr	g)Ú_BaseAutoPeftModelé7   Nc                ó¢   • [        U R                  R                   SU R                  R                   SU R                  R                   S35      e)Nz+ is designed to be instantiated using the `z5.from_pretrained(pretrained_model_name_or_path)` or `z.from_config(config)` methods.)ÚEnvironmentErrorÚ	__class__Ú__name__)ÚselfÚargsÚkwargss      ÚF/home/mande/repo/quber/.venv/lib/python3.13/site-packages/peft/auto.pyÚ__init__Ú_BaseAutoPeftModel.__init__;   sR   € äØ�~‰~×&Ñ&Ð'ð (ØŸ.™.×1Ñ1Ð2ð 3Ø—‘×'Ñ'Ð(Ð(FðHó
ð 	
ó    c           	     ó  • [         R                  " U4SU0UD6nUR                  nUR                  n	[	        USS5      n
U R
                  b  U R
                  nOU R
                  c  U
b  [        S5      eU
b^  [        U
   nU R                  R                  UR                  :w  a0  [        SUR                   SU R                  R                   S35      eOVU
cH  [	        USS5      b:  [	        USS5      nUS	   nUS
   n[        R                  " U5      n[	        UU5      nO[        S5      eWR                  " U4SU	0UD6nSn[        R                  R                  [        R                  R                  U[         5      5      (       a  SnOHUR#                  SS5      nUc  UR#                  SS5      n[%        U[         UUR#                  SS5      US9nU(       a…  ['        US5      (       at  [(        R                  " XR#                  SS5      S9nUR+                  5       R,                  R.                  S   n[1        U5      U:”  a  UR3                  [1        U5      5        U R                  R                  " UU4UUUS.UD6$ )zö
A wrapper around all the preprocessing steps a user needs to perform in order to load a PEFT model. The kwargs
are passed along to `PeftConfig` that automatically takes care of filtering the kwargs of the Hub methods and
the config object init.
ÚrevisionÚ	task_typeNzšCannot use `AutoPeftModel` with a task type, please use a specific class for your task type. (e.g. `AutoPeftModelForCausalLM` for `task_type='CAUSAL_LM'`)zExpected target PEFT class: z, but you have asked for: zE make sure that you are loading the correct model for your task type.Úauto_mappingÚbase_model_classÚparent_libraryzxCannot infer the auto class from the config, please make sure that you are loading the correct model for your task type.FTÚtokenÚuse_auth_tokenÚ	repo_type)Úrepo_idÚfilenamer-   r4   r2   Úget_input_embeddingsÚtrust_remote_code)r8   r   )Úadapter_nameÚis_trainableÚconfig)r   Úfrom_pretrainedÚbase_model_name_or_pathr-   ÚgetattrÚ_target_classÚ
ValueErrorr   Ú_target_peft_classr$   Ú	importlibÚimport_moduleÚosÚpathÚexistsÚjoinr   Úgetr   Úhasattrr   r7   ÚweightÚshapeÚlenÚresize_token_embeddings)ÚclsÚpretrained_model_name_or_pathr9   r:   r;   r-   r'   Úpeft_configÚbase_model_pathÚbase_model_revisionr.   Útarget_classÚexpected_target_classr/   r0   Úparent_library_namer1   Ú
base_modelÚtokenizer_existsr2   Ú	tokenizerÚembedding_sizes                         r(   r<   Ú"_BaseAutoPeftModel.from_pretrainedC   s³  € ô !×0Ò0Ð1NÑlÐYaÐlÐekÑlˆØ%×=Ñ=ˆØ)×2Ñ2Ðä˜K¨°dÓ;ˆ	à×ÑÑ(Ø×,Ñ,‰LØ×ÑÑ&¨9Ñ+@äð móð ð Ñ Ü$DÀYÑ$OÐ!Ø×%Ñ%×.Ñ.Ð2G×2PÑ2PÓPÜ Ø2Ð3H×3QÑ3QÐ2RÐRlÐmp÷  nDñ  nD÷  nMñ  nMð  mNØ[ð\óð ð Qð
 Ñ¤7¨;¸ÈÓ#MÑ#YÜ" ;°ÀÓEˆLØ+Ð,>Ñ?ÐØ".Ð/?Ñ"@Ðä&×4Ò4Ð5HÓIˆNÜ" >Ð3CÓD‰Läð Kóð ð "×1Ò1°/ÑjÐL_ÐjÐciÑjˆ
à ÐÜ�7‰7�>‰>œ"Ÿ'™'Ÿ,™,Ð'DÔF[Ó\×]Ñ]Ø#Ñà—J‘J˜w¨Ó-ˆEØ‰}ØŸ
™
Ð#3°TÓ:�ä:Ø5Ü.Ø!Ø Ÿ*™* [°$Ó7Øñ Ðö ¤¨
Ð4J× KÑ KÜ%×5Ò5Ø-ÇÁÐL_ÐafÓAgñˆIð (×<Ñ<Ó>×EÑE×KÑKÈAÑNˆNÜ�9‹~ Ó.à×2Ñ2´3°y³>ÔBà×%Ñ%×5Ò5ØØ)ð
ð &Ø%Øñ
ð ñ
ð 	
r+   © )ÚdefaultFNN)r9   Ústrr:   Úboolr;   zOptional[PeftConfig]r-   zOptional[str])
r$   Ú
__module__Ú__qualname__Ú__firstlineno__r?   rA   r)   Úclassmethodr<   Ú__static_attributes__r[   r+   r(   r   r   7   sb   † Ø€MØÐò
ð ð &Ø"Ø'+Ø"&ðQ
ð ðQ
ð ð	Q
ð
 %ðQ
ð  ôQ
ó óQ
r+   r   c                  ó   • \ rS rSrSr\rSrg)ÚAutoPeftModelé˜   Nr[   )r$   r_   r`   ra   r?   r   rA   rc   r[   r+   r(   re   re   ˜   s   † Ø€MØ"Ór+   re   c                  ó   • \ rS rSr\r\rSrg)ÚAutoPeftModelForCausalLMé�   r[   N)	r$   r_   r`   ra   r   r?   r   rA   rc   r[   r+   r(   rh   rh   �   s   † Ø(€MØ-Ór+   rh   c                  ó   • \ rS rSr\r\rSrg)ÚAutoPeftModelForSeq2SeqLMé¢   r[   N)	r$   r_   r`   ra   r   r?   r   rA   rc   r[   r+   r(   rk   rk   ¢   s   † Ø)€MØ.Ór+   rk   c                  ó   • \ rS rSr\r\rSrg)Ú&AutoPeftModelForSequenceClassificationé§   r[   N)	r$   r_   r`   ra   r	   r?   r   rA   rc   r[   r+   r(   rn   rn   §   s   † Ø6€MØ;Ór+   rn   c                  ó   • \ rS rSr\r\rSrg)Ú#AutoPeftModelForTokenClassificationé¬   r[   N)	r$   r_   r`   ra   r
   r?   r   rA   rc   r[   r+   r(   rq   rq   ¬   s   † Ø3€MØ8Ór+   rq   c                  ó   • \ rS rSr\r\rSrg)Ú!AutoPeftModelForQuestionAnsweringé±   r[   N)	r$   r_   r`   ra   r   r?   r   rA   rc   r[   r+   r(   rt   rt   ±   s   † Ø1€MØ6Ór+   rt   c                  ó   • \ rS rSr\r\rSrg)Ú!AutoPeftModelForFeatureExtractioné¶   r[   N)	r$   r_   r`   ra   r   r?   r   rA   rc   r[   r+   r(   rw   rw   ¶   s   † Ø€MØ6Ór+   rw   )&Ú
__future__r   rB   rD   Útypingr   Útransformersr   r   r   r   r	   r
   r   r;   r   Ú
peft_modelr   r   r   r   r   r   r   Úutils.constantsr   Úutils.otherr   r   Ú__annotations__r   re   rh   rk   rn   rq   rt   rw   r[   r+   r(   Ú<module>r€      sË   ðö #ã Û 	Ý ÷÷ ñ õ ÷÷ ñ õ 3Ý 4ð 2Ø)Ø%Ø0Ø1Ø7ñ@Ð  Ð"<ó ÷^
ñ ^
ôB#Ð&ô #ô
.Ð1ô .ô
/Ð 2ô /ô
<Ð-?ô <ô
9Ð*<ô 9ô
7Ð(:ô 7ô
7Ð(:õ 7r+   