Transformers documentation
JEV
Bu model, 2026-11-09 tarihinde Hugging Face Transformers'a katkıda bulunulmuştur.
JEV
Karar modelleri,
decisionhattı veDecisionConfigdeneyseldir: API'leri herhangi bir zamanda, geri çekme süreci olmadan değişebilir.
JEV, prompt'un son token'ında tek token etiketleri doğrusal bir katmanla puanlayan ve bir dil modeli başlığının logit'leri gibi yumuşak sınırlı bir karar başlığıdır. JEV tarafından tanıtılmış olup GEV tarafından da kullanılmaktadır.
JevForDecision, bir ForCausalLM'in model ve lm_head'ı olması gibi, checkpoint'in modeli ve başlığıdır. Ağırlıklarının yanında checkpoint'in başlığıyla birlikte sağladığı dosyaları okur (vLLM karar modelleri için readout.safetensors ve decision_config.json, JEV için head.safetensors ve judge_config.json).
from transformers import pipeline
decide = pipeline("decision", model="autotrust/GEV-26B-Decide")
decide(
{
"state": "I was charged twice for my order and want a refund.",
"questions": {"refund": {"type": "noul", "instructions": "Is a refund requested?"}},
}
)Görsel varlıklar için karar hattına bakın.
Pipeline olmadan, karar modelleri generate gibi kullanılır: karar yapılandırması, sohbet şablonuyla her soru için (veya hepsi için tek bir) prompt oluşturur, decide her sorunun seçeneklerini puanlar ve Question.answer puanları yanıtlara dönüştürür:
from_pretrained, alt klasörde tutulan LoRA'ları içeren checkpoint'lerin LoRA'larını yüklemez (decision_config.adapter, örneğin JEV içinadapter/). Pipeline bunu sizin için yükler; pipeline olmadan, aşağıdaki gibiload_adapterçağrısını kendiniz yapmazsanız model, temel ağırlıklarla yanıt verir.
import torch
from transformers import AutoTokenizer, JevForDecision
repo = "autotrust/JEV-9B"
model = JevForDecision.from_pretrained(repo, dtype=torch.bfloat16, device_map="auto")
tokenizer, config = AutoTokenizer.from_pretrained(repo), model.decision_config # read from the checkpoint's files
if config.adapter: # JEV keeps its LoRA in a subfolder: `from_pretrained` doesn't load it, the pipeline does
model.load_adapter(repo, adapter_kwargs={"subfolder": config.adapter})
request = {
"state": "I was charged twice for my order and I want my money back today.",
"questions": {
"refund": {"type": "noul", "instructions": "Does the customer ask for a refund?"},
"urgency": {"type": "score", "criteria": ["Can wait", "This week", "Today", "Now"]},
},
}
answers = {}
for inputs, questions in config.prepare_inputs(request, tokenizer):
scores = model.decide(**inputs, decision_questions=questions)
answers |= {q.name: q.answer(s.softmax(-1).tolist()) for q, s in zip(questions, scores)}Aynı başlık, pplx-decider ve d3'ün 255 yanıt kodunu okur; bu modellerin Qwen3.5 omurgası tüm istemciye dikkat eder (JevForDecision içindeki text_config içinde is_causal=False). Başlıkları (readout.safetensors) ve ayarları (decision_config.json) ağırlıklarının yanında olduğu gibi okunur:
pipeline("decision", model="vllm-sr/d3")(request) # or perplexity-ai/pplx-decider-v1.1-27bJevConfig
sınıf transformers.JevConfig
< source >( transformers_version: str | None = Nonearchitectures: list[str] | None = Noneoutput_hidden_states: bool | None = Falsereturn_dict: bool | None = Truedtype: str | torch.dtype | None = Nonechunk_size_feed_forward: int = 0is_encoder_decoder: bool = Falseid2label: dict[int, str] | dict[str, str] | None = Nonelabel2id: dict[str, int] | dict[str, str] | None = Noneproblem_type: Literal['regression', 'single_label_classification', 'multi_label_classification'] | None = Nonehidden_size: int = 4096num_verbalizers: int = 24offsets: dict[str, int] | None = Nonesoftcap: float | None = Nonetext_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Noneinitializer_range: float = 0.02 )
Parametreler
- hidden_size (
int, isteğe bağlı, varsayılan4096) — Gizli temsillerin boyutu. - num_verbalizers (
int, isteğe bağlı, varsayılan 24) — Tüm soru türleri için baş tarafından puanlanan tek jeton etiketlerin sayısı. - offsets (
dict[str, int], isteğe bağlı, varsayılan{"noul" -- 0, "score": 2, "choice": 8}): Her soru türünün ilk etiketinin satırı: bir sorunun seçenekleri, sırasıylaoffsets[question.type]satırından itibaren puanlanır. - softcap (
float, isteğe bağlı) — Skorların yumuşak sınırı,softcap * tanh(scores / softcap), bir dil modeli başlığının logitleri gibi. - text_config (
dictveyaPreTrainedConfig, isteğe bağlı) — Başlığın (head) okuduğu modelin yapılandırması, deposununconfig.jsondosyası. - initializer_range (
float, isteğe bağlı, varsayılan0.02) — Tüm ağırlık matrislerini başlatmak için kullanılan truncated_normal_initializer'ın standart sapması.
Bu, bir JevModel yapılandırmasını depolamak için kullanılan yapılandırma sınıfıdır. Belirtilen argümanlara göre bir Jev modelini örneklemek ve model mimarisini tanımlamak için kullanılır. Varsayılan değerlerle bir yapılandırma örneği oluşturmak, autotrust/JEV-9B modelinin yapılandırmasına benzer bir yapılandırma üretir.
Yapılandırma nesneleri PreTrainedConfig sınıfından devralır ve model çıktılarını kontrol etmek için kullanılabilir. Daha fazla bilgi için PreTrainedConfig belgesini okuyun.
Örnek:
>>> from transformers import JevConfig, JevForDecision
>>> model = JevForDecision(JevConfig(hidden_size=4096))Ağırlıklarının yanında bir JEV başlığı içeren bir kontrol noktasının karar yapılandırması, yapılandırma dosyalarından.
JevForDecision
sınıf transformers.JevForDecision
< source >( config: JevConfig )
Parametreler
- config (JevConfig) — Modelin tüm parametrelerini içeren model yapılandırma sınıfı. Bir yapılandırma dosyasıyla başlatmak, modelle ilişkili ağırlıkları yüklemez, yalnızca yapılandırmayı yükler. Model ağırlıklarını yüklemek için from_pretrained() yöntemine bakın.
JEV (autotrust/JEV-9B): deposunun modeli ve bir karar kafası, her sorunun <|mark|> işaretinden önceki token'da tek token etiketlerinin doğrusal skorları, bir dil modeli kafasının logit'leri gibi yumuşak sınırlı.
Bu model PreTrainedModel sınıfından devralır. Kütüphanenin tüm modelleri için uyguladığı genel yöntemler (indirme veya kaydetme, giriş gömme boyutlarını yeniden boyutlandırma, başları budama vb.) için üst sınıf belgelendirmesine bakın.
Bu model aynı zamanda bir PyTorch torch.nn.Module alt sınıfıdır. Bunu standart bir PyTorch Module olarak kullanın ve genel kullanım ve davranışla ilgili tüm konular için PyTorch dokümantasyonuna başvurun.
forward
< source >( input_ids: LongTensormarks: LongTensornum_options: LongTensorquestion_type_ids: LongTensor**kwargs )
Parametreler
- input_ids (
torch.LongTensorşeklinde(batch_size, sequence_length)) — Sözlükteki girdi dizisi belirteçlerinin (token) indeksleri. Varsayılan olarak dolgu (padding) yok sayılır.Dizinler AutoTokenizer kullanılarak elde edilebilir. Ayrıntılar için PreTrainedTokenizer.encode() ve PreTrainedTokenizer.call() konularına bakın.
- marks (
torch.LongTensor, şekli(num_marks,)) — Bir karar şablonunun<|mark|>tarafından kaydedilen konumlar: bunlardan her birinin öncesindeki istem (prompt) token sayısı. - num_options (
torch.LongTensor, şekli(num_questions,)) — İfadedeki her sorunun seçenek sayısı. - question_type_ids (
torch.LongTensor, şekli(num_questions,)) — İfadedeki her sorunun türü,Question.questions_typesiçindeki indeksi olarak.
JevForDecision forward metodu, __call__ özel metodunu geçersiz kılar.
İleri geçiş tarifi bu fonksiyon içinde tanımlanmalı olsa da, sonrasında bunun yerine
Moduleörneğini çağırmak gerekir; çünkü önceki, ön ve son işleme adımlarını çalıştırmaktan sorumluyken ikincisi bunları sessizce yok sayar.