o
    5ti                     @   s   d 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dd d!d"d#d$d%d&d'd(d)d*d+Zd,d- Ze  d.gZd/S )0a  Model implementations for lm_eval.

Models are lazily loaded via the registry system to improve startup performance.

Usage
-----
For programmatic access, use the registry:

    from lm_eval.api.registry import get_model
    model_cls = get_model("hf")
    model = model_cls(pretrained="gpt2")

For direct imports (e.g., subclassing), use explicit module paths:

    from lm_eval.models.huggingface import HFLM
    from lm_eval.models.vllm_causallms import VLLM

Adding New Models
-----------------
1. Create your model class in a new file under lm_eval/models/
2. Use the @register_model decorator on your class
3. Add an entry to MODEL_MAPPING below for lazy discovery
zanthropic-chatz+lm_eval.models.anthropic_llms:AnthropicChatzanthropic-chat-completionszanthropic-completionsz)lm_eval.models.anthropic_llms:AnthropicLMdummyzlm_eval.models.dummy:DummyLMggmlzlm_eval.models.gguf:GGUFLMggufhfzlm_eval.models.huggingface:HFLMzhf-audiolm-qwenz#lm_eval.models.hf_audiolm:HFAudioLMzhf-autozhf-mistral3z"lm_eval.models.mistral3:Mistral3LMzhf-multimodalz%lm_eval.models.hf_vlms:HFMultimodalLMhuggingfaceipexz+lm_eval.models.optimum_ipex:IPEXForCausalLMzlocal-chat-completionsz5lm_eval.models.openai_completions:LocalChatCompletionzlocal-completionsz5lm_eval.models.openai_completions:LocalCompletionsAPI	mamba_ssmz&lm_eval.models.mamba_lm:MambaLMWrappernemo_lmzlm_eval.models.nemo_lm:NeMoLMz4lm_eval.models.neuron_optimum:NeuronModelForCausalLMz6lm_eval.models.openai_completions:OpenAIChatCompletionz6lm_eval.models.openai_completions:OpenAICompletionsAPIz#lm_eval.models.optimum_lm:OptimumLMz(lm_eval.models.sglang_causallms:SGLangLMz4lm_eval.models.sglang_generate_API:SGLANGGENERATEAPIz#lm_eval.models.hf_steered:SteeredHFz$lm_eval.models.textsynth:TextSynthLMz"lm_eval.models.vllm_causallms:VLLMz!lm_eval.models.vllm_vlms:VLLM_VLMz*lm_eval.models.ibm_watsonx_ai:IBMWatsonxAIzlm_eval.models.winml:WindowsML)neuronxzopenai-chat-completionszopenai-completionsopenvinosglangzsglang-generatesteered	textsynthvllmzvllm-vlmwatsonx_llmwinmlc                  C   s8   ddl m}  t D ]\}}|| vr| j||d q
dS )z1Register all known models lazily in the registry.    )model_registry)targetN)lm_eval.api.registryr   MODEL_MAPPINGitemsregister)r   namepath r   K/home/ubuntu/.local/lib/python3.10/site-packages/lm_eval/models/__init__.py_register_all_models:   s   r   r   N)__doc__r   r   __all__r   r   r   r   <module>   sh    	
!
