+
    KV-j¹  ã                   óJ   € ^ RI H t  ^ RIHtHtHt ^ RIt^RIHt RR R lltR# )é    )Úcopy)ÚListÚOptionalÚUnionN)ÚLLTokenizerc          
      óø   € V ^8„  d   QhR\         P                  R\        \        ,          R\        \        \        \
        \        ,          3,          ,          R\        \
        \        ,          ,          R\        /# )é   Úhf_tokenizerÚn_vocabÚ	eos_tokenÚslicesÚreturn)ÚtransformersÚPreTrainedTokenizerFastr   Úintr   r   Ústrr   )Úformats   "Ú^/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/llguidance/hf.pyÚ__annotate__r   	   s_   € ÷ &?ñ &?Ü×6Ñ6ð&?ä”c�]ð&?ô œœc¤4¬¥9˜nÕ-Õ.ð&?ô ”Tœ#•YÕð	&?ô
 ñ&?ó    c                ó  € \        V \        P                  4      '       dc   \        V P                  4      pVP                  4        VP                  4        VP                  4       pVf   V P                  p\        WQW#R7      # \        R4      h)a5  
Create a new tokenizer from a fast Hugging Face tokenizer.
This is an expensive operation (~1s), so the result should be cached.
It currently only supports fast tokenizers, which are then handled
by the Rust tokenizers library.

Args:
    hf_tokenizer: transformers.PreTrainedTokenizerFast - the tokenizer to wrap
    n_vocab: int - override the size of the vocabulary
    eos_token: int or list of ints - override the EOS token(s)
    slices: List[str] - configuration for slicer optimization; pass [] to disable,
        or None to use the default configuration
)r   r   r   z"Only fast tokenizers are supported)Ú
isinstancer   r   r   Úbackend_tokenizerÚ
no_paddingÚno_truncationÚto_strÚeos_token_idr   Ú
ValueError)r
   r   r   r   r   Úss   &&&&  r   Úfrom_tokenizerr    	   s�   € ô( �,¤× DÑ D×EÒEô !Ø×*Ñ*ó
Ðð 	×$Ñ$Ô&Ø×'Ñ'Ô)Ø×$Ñ$Ó&ˆð ÒØ$×1Ñ1ˆIÜ˜1¸ÔRÐRäÐ=Ó>Ð>r   )NNN)	r   Útypingr   r   r   r   Ú_libr   r    © r   r   Ú<module>r$      s   ðÝ ß (Ñ (ã å ÷&?ñ &?r   