vllm.model_executor.models.jina
¶
Classes:
-
JinaEmbeddingsV5DecoderModel–jina-embeddings-v5 with a Qwen3 decoder backbone (e.g. -small).
-
JinaEmbeddingsV5EncoderModel–jina-embeddings-v5 with a bidirectional EuroBERT (Llama) encoder backbone.
-
JinaEmbeddingsV5Model–Dispatcher for the jina-embeddings-v5 family.
JinaEmbeddingsV5DecoderModel
¶
Bases: Qwen3ForCausalLM, VllmModelForPooling
jina-embeddings-v5 with a Qwen3 decoder backbone (e.g. -small).
Task-specific LoRA adapters are merged into the base weights at load time. Declares itself a pooling model so that as_embedding_model() does not wrap it.
Source code in vllm/model_executor/models/jina.py
JinaEmbeddingsV5EncoderModel
¶
Bases: LlamaForCausalLM, VllmModelForPooling
jina-embeddings-v5 with a bidirectional EuroBERT (Llama) encoder backbone.
Used by encoder checkpoints such as jina-embeddings-v5-text-nano
(is_decoder=False). EuroBERT is architecturally a bidirectional Llama, so
the LlamaModel backbone switches to EncoderOnlyAttention when the config
carries is_causal=False (set by JinaEmbeddingsV5ModelConfig).
Source code in vllm/model_executor/models/jina.py
JinaEmbeddingsV5Model
¶
Bases: JinaEmbeddingsV5DecoderModel
Dispatcher for the jina-embeddings-v5 family.
The family ships two backbones under one architectures entry: Qwen3
decoders (-small) and bidirectional EuroBERT encoders (-nano), told apart by
is_decoder. Inherits the decoder implementation so registry introspection
still sees a valid pooling model, and __new__ swaps in the encoder
variant for encoder checkpoints.
Source code in vllm/model_executor/models/jina.py
_build_lora_pairs(adapter_weights)
¶
Group raw adapter tensors into {base_key: {"A": tensor, "B": tensor}} pairs.
Transforms adapter keys like
base_model.model.layers.0.self_attn.q_proj.lora_A.weight
Into base keys like: layers.0.self_attn.q_proj.weight
Source code in vllm/model_executor/models/jina.py
_load_adapter(model, task, revision)
¶
Load adapter config and weights from a local path or HF repo.
Returns (adapter_config, adapter_weights) or None if not found.
Source code in vllm/model_executor/models/jina.py
_load_jina_v5_weights(model, weights)
¶
Shared loader: merge the selected task LoRA adapter into the base weights.
Source code in vllm/model_executor/models/jina.py
_setup_jina_v5_task_and_pooler(model, vllm_config)
¶
Shared init for jina-embeddings-v5 wrappers: select task + build pooler.