Transformers documentation

Mistral 3

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v5.22.1).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Bu model, 2025-03-18 tarihinde Hugging Face Transformers'a katkıda bulunulmuştur.

PyTorch

Mistral 3

Mistral 3, ileri geçiş başına süreyi azaltmak için çok daha az katmana sahip, gecikme açısından optimize edilmiş bir modeldir. Bu model, performanstan ödün vermeden 128K token'a kadar uzun bağlam uzunluklarını destekleyen bir görme anlama yeteneği ekler.

Orijinal Mistral 3 kontrol noktalarını Mistral AI kuruluşu altında bulabilirsiniz.

Bu model cyrilvallez ve yonigozlan tarafından katkıda bulunmuştur. Mistral3'ün farklı görevlere nasıl uygulanacağına dair daha fazla örnek için sağ kenar çubuğundaki Mistral3 modellerine tıklayın.

from_pretrained() içinde use_kernels=True değerini ayarlayarak desteklenen katmanları Hub'daki optimize edilmiş çekirdeklerle değiştirin. Daha fazla bilgi için Çekirdekleri yükleme bölümüne bakın.

Aşağıdaki örnek, Pipeline ve AutoModel sınıfı ile bir görüntü için metin üretmenin nasıl yapıldığını göstermektedir.

Pipeline
AutoModel
from transformers import pipeline


messages = [
    {"role": "user",
        "content":[
            {"type": "image",
            "image": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/bee.jpg",},
            {"type": "text", "text": "Describe this image."}
        ,]
    ,}
,]

pipeline = pipeline(
    task="image-text-to-text",
    model="mistralai/Mistral-Small-3.1-24B-Instruct-2503",
    device=0
)
outputs = pipeline(text=messages, max_new_tokens=50, return_full_text=False)

outputs[0]["generated_text"]
'The image depicts a vibrant and lush garden scene featuring a variety of wildflowers and plants. The central focus is on a large, pinkish-purple flower, likely a Greater Celandine (Chelidonium majus), with a'

Notlar

  • Mistral 3 yalnızca metin üretimi destekler.
import torch
from transformers import AutoProcessor, AutoModelForImageTextToText

model_checkpoint = ".mistralai/Mistral-Small-3.1-24B-Instruct-2503"
processor = AutoProcessor.from_pretrained(model_checkpoint)
model = AutoModelForImageTextToText.from_pretrained(model_checkpoint, device_map="auto")

SYSTEM_PROMPT = "You are a conversational agent that always answers straight to the point, always end your accurate response with an ASCII drawing of a cat."
user_prompt = "Give me 5 non-formal ways to say 'See you later' in French."

messages = [
    {"role": "system", "content": SYSTEM_PROMPT},
    {"role": "user", "content": user_prompt},
]

text = processor.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
inputs = processor(text=text, return_tensors="pt").to(0)
generate_ids = model.generate(**inputs, max_new_tokens=50, do_sample=False)
decoded_output = processor.batch_decode(generate_ids[:, inputs["input_ids"].shape[1] :], skip_special_tokens=True)[0]

print(decoded_output)
"1. À plus tard!
 2. Salut, à plus!
 3. À toute!
 4. À la prochaine!
 5. Je me casse, à plus!

/_/\ ( o.o )

^ <

  • Mistral 3, toplu (batched) görüntü ve metin girdilerini kabul eder.
import torch
from transformers import AutoProcessor, AutoModelForImageTextToText

model_checkpoint = "mistralai/Mistral-Small-3.1-24B-Instruct-2503"
processor = AutoProcessor.from_pretrained(model_checkpoint)
model = AutoModelForImageTextToText.from_pretrained(model_checkpoint, device_map="auto")

messages = [
     [
         {
             "role": "user",
             "content": [
                 {"type": "image", "url": "https://huggingface.co/datasets/hf-internal-testing/transformers-synthetic-assets/resolve/main/images/llava_view.jpg"},
                 {"type": "text", "text": "Write a haiku for this image"},
             ],
         },
     ],
     [
         {
             "role": "user",
             "content": [
                 {"type": "image", "url": "https://www.ilankelman.org/stopsigns/australia.jpg"},
                 {"type": "text", "text": "Describe this image"},
             ],
         },
     ],
 ]


 inputs = processor.apply_chat_template(messages, padding=True, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt").to(model.device)

 output = model.generate(**inputs, max_new_tokens=25)

 decoded_outputs = processor.batch_decode(output, skip_special_tokens=True)
 decoded_outputs
["Write a haiku for this imageCalm waters reflect\nWhispers of the forest's breath\nPeace on wooden path"
, "Describe this imageThe image depicts a vibrant street scene in what appears to be a Chinatown district. The focal point is a traditional Chinese"]
  • Mistral 3, her metin için farklı sayıda görsel içeren toplu görsel ve metin girdilerini de destekliyordu. Aşağıdaki örnek, modeli bitsandbytes ile kuantize eder.
import torch
from transformers import AutoProcessor, AutoModelForImageTextToText, BitsAndBytesConfig

model_checkpoint = "mistralai/Mistral-Small-3.1-24B-Instruct-2503"
processor = AutoProcessor.from_pretrained(model_checkpoint)
quantization_config = BitsAndBytesConfig(load_in_4bit=True)
model = AutoModelForImageTextToText.from_pretrained(
     model_checkpoint, quantization_config=quantization_config
 device_map="auto")

messages = [
     [
         {
             "role": "user",
             "content": [
                 {"type": "image", "url": "https://huggingface.co/datasets/hf-internal-testing/transformers-synthetic-assets/resolve/main/images/llava_view.jpg"},
                 {"type": "text", "text": "Write a haiku for this image"},
             ],
         },
     ],
     [
         {
             "role": "user",
             "content": [
                 {"type": "image", "url": "https://huggingface.co/datasets/hf-internal-testing/transformers-synthetic-assets/resolve/main/images/statue_of_liberty.jpg"},
                 {"type": "image", "url": "https://huggingface.co/datasets/hf-internal-testing/transformers-synthetic-assets/resolve/main/images/dreamstime_golden_gate_flowers.jpg"},
                 {"type": "text", "text": "These images depict two different landmarks. Can you identify them?"},
             ],
         },
     ],
 ]

 inputs = processor.apply_chat_template(messages, padding=True, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt").to(model.device)

 output = model.generate(**inputs, max_new_tokens=25)

 decoded_outputs = processor.batch_decode(output, skip_special_tokens=True)
 decoded_outputs
["Write a haiku for this imageSure, here is a haiku inspired by the image:\n\nCalm lake's wooden path\nSilent forest stands guard\n", "These images depict two different landmarks. Can you identify them? Certainly! The images depict two iconic landmarks:\n\n1. The first image shows the Statue of Liberty in New York City."]

Mistral3Config

sınıf transformers.Mistral3Config

< >

( 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 = Nonevision_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Nonetext_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Noneimage_token_index: int = 10projector_hidden_act: str = 'gelu'vision_feature_layer: int | list[int] = -1multimodal_projector_bias: bool = Falsespatial_merge_size: int = 2tie_word_embeddings: bool = True )

Parametreler

  • vision_config (Union[dict, ~configuration_utils.PreTrainedConfig], isteğe bağlı) — Görüntü omurgasının yapılandırma nesnesi veya sözlüğü.
  • text_config (Union[dict, ~configuration_utils.PreTrainedConfig], isteğe bağlı) — Metin omurgasının yapılandırma nesnesi veya sözlüğü.
  • image_token_index (int, isteğe bağlı, varsayılan 10) — Girdi görselleri için yer tutucu olarak kullanılan görsel jeton indeksi.
  • projector_hidden_act (str, isteğe bağlı, varsayılan gelu) — Çok modlu projeksiyoncu tarafından kullanılan aktivasyon fonksiyonu.
  • vision_feature_layer (Union[int, list[int]], isteğe bağlı, varsayılan -1) — Görüntü özelliğinin seçileceği katmanın indeksi. Birden fazla indeks sağlanırsa, ilgili indekslere ait görüntü özellikleri birleştirilerek görüntü özellikleri oluşturulur.
  • multimodal_projector_bias (bool, isteğe bağlı, varsayılan False) — Çok modlu projeksiyonda sapma (bias) kullanılıp kullanılmayacağı.
  • spatial_merge_size (int, isteğe bağlı, varsayılan 2) — Komşu yamaları birleştirerek görsel jeton sayısını azaltmak için kullanılan uzamsal birleştirme penceresinin boyutu.
  • tie_word_embeddings (bool, isteğe bağlı, varsayılan True) — Modelin tied_weights_keys eşlemesine göre ağırlık gömme bağlamalarının yapılıp yapılmayacağı.

Bu, bir Mistral3Model'in yapılandırmasını depolamak için kullanılan yapılandırma sınıfıdır. Belirtilen argümanlara göre bir Mistral3 modelinin örneklenmesi ve model mimarisinin tanımlanması için kullanılır. Varsayılan değerlerle bir yapılandırma örneği oluşturmak, mistralai/Mistral-Small-3.1-24B-Instruct-2503 modelinin yapılandırmasına benzer bir yapılandırma elde edilmesini sağlar.

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 Mistral3ForConditionalGeneration, Mistral3Config, PixtralVisionConfig, MistralConfig

>>> # Initializing a Pixtral-vision config
>>> vision_config = PixtralVisionConfig()

>>> # Initializing a Mistral config
>>> text_config = MistralConfig()

>>> # Initializing a Mistral3 configuration
>>> configuration = Mistral3Config(vision_config, text_config)

>>> # Initializing a model from the mistral3.1 configuration
>>> model = Mistral3ForConditionalGeneration(configuration)

>>> # Accessing the model configuration
>>> configuration = model.config

MistralCommonBackend

sınıf transformers.MistralCommonBackend

< >

( tokenizer_path: str | os.PathLike | pathlib.Pathmode: str | ValidationMode = 'test'model_max_length: int = 1000000000000000019884624838656padding_side: str = 'left'truncation_side: str = 'right'model_input_names: list[str] | None = Noneclean_up_tokenization_spaces: bool = False**kwargs )

mistral-common tokenizers'ını sarmalamak için bir sınıf.

mistral-common, Mistral AI modelleri için resmi tokenizer kütüphanesidir. Kullanmak için aşağıdaki komutla yüklemeniz gerekir:

pip install transformers[mistral-common]

Aksi takdirde, tokenizer, tokenizer'ın Transformers uygulamasına geri döner.

mistral-common hakkında daha fazla bilgi için mistral-common sayfasına bakın.

Bu sınıf, mistral_common.tokens.tokenizers.mistral.MistralTokenizer sınıfının bir sarmalayıcısıdır. Resmi mistral-common tokenizer'ı kullanarak tokenizasyon yapmak için Hugging Face ile uyumlu bir arayüz sağlar ve PreTrainedTokenizerBase sınıfından türetilmiştir.

PythonBackend sınıfıyla temel davranış farkları şunlardır:

  • Sıralı çiftler desteklenmez. İmza, uyumluluk için korunmuştur ancak sıralı çiftlerle ilgili tüm argümanlar yok sayılır. Çiftler için döndürülen değerler None olarak döndürülür.
  • is_split_into_words argümanı desteklenmiyor.
  • Tokenizer'a yeni token eklenemez. Özel tokenlar, Transformers'tan farklı olarak işlenir. mistral-common içinde özel tokenlar asla doğrudan kodlanmaz. Bu şu anlama gelir: tokenizer.encode("<s>"), <s> token'ının kimliğini döndürmez. Bunun yerine, "<s>" dizgesinin tokenizasyonuna karşılık gelen kimlik listesini döndürür. Daha fazla bilgi için mistral-common belgeleri'ne bakın.

Bu sınıfı geliştirmeye yönelik önerileriniz varsa, öneri tokenizer ile ilgiliyse mistral-common GitHub deposu'nda, Hugging Face arayüzü ile ilgiliyse Transformers GitHub deposu'nda bir issue açın.

add_special_tokens

< >

( special_tokens_dict: dictreplace_extra_special_tokens: bool = True )

MistralCommonBackend, tasarım gereği add_special_tokens işlevini uygulamaz.

Bu davranışın uygulanmasını istiyorsanız, bunu talep etmek için Transformers veya mistral-common depolarında bir sorun (issue) açın.

add_tokens

< >

( special_tokens_dict: dictreplace_extra_special_tokens: bool = True )

MistralCommonBackend, tasarım gereği add_special_tokens işlevini uygulamaz.

Bu davranışın uygulanmasını istiyorsanız, bunu talep etmek için Transformers veya mistral-common depolarında bir sorun (issue) açın.

apply_chat_template

< >

( conversation: list[dict[str, str]] | list[list[dict[str, str]]]tools: list[dict | collections.abc.Callable] | None = Noneadd_generation_prompt: bool = Falsecontinue_final_message: bool = Falsetokenize: bool = Truepadding: bool | str | transformers.utils.generic.PaddingStrategy = Falsetruncation: bool = Falsemax_length: int | None = Nonereturn_tensors: str | transformers.utils.generic.TensorType | None = Nonereturn_dict: bool = Truereasoning_effort: ReasoningEffort | None = None**kwargs ) → Union[str, list[int], list[str], list[list[int]], BatchEncoding]

Parametreler

  • conversation (Union[List[Dict[str, str]], List[List[Dict[str, str]]]]) — Şu ana kadarki sohbet geçmişini temsil eden, “role” ve “content” anahtarlarına sahip sözlüklerden oluşan bir liste.
  • tools (List[Union[Dict, Callable]], isteğe bağlı) — Modelin erişebileceği araçların (çağrılabilir fonksiyonların) listesi. Şablon fonksiyon çağrısını desteklemiyorsa bu argüman hiçbir etki yaratmaz. Her araç, aracın adını, açıklamasını ve argüman türlerini belirten bir JSON Schema olarak geçirilmelidir. Daha fazla bilgi için sohbet şablonlama kılavuzumuza bakın.
  • add_generation_prompt (bool, isteğe bağlı) — Bu argüman MistralCommonBackend için bir işlev görmemektedir. Ancak API tutarlılığını korumak için continue_final_message ile aynı anda kullanılamaz. Herhangi bir konuşma bir asistan mesajıyla sonlanıyorsa bir hata oluşturur. Bu tür durumlarda bunun yerine continue_final_message kullanın.
  • continue_final_message (bool, isteğe bağlı) — Bu ayar etkinleştirilirse, sohbet, sohbetin son mesajının açık uçlu ve herhangi bir EOS token'ı içermeyecek şekilde biçimlendirilir. Model, yeni bir mesaj başlatmak yerine bu mesajı devam ettirir. Bu, modelin yanıtının bir kısmını model için “ön doldurmanıza” olanak tanır. add_generation_prompt ile aynı anda kullanılamaz.
  • tokenize (bool, varsayılan True) — Çıktının tokenize edilip edilmeyeceği. False ise çıktı bir dize olacaktır.
  • padding (bool, str veya PaddingStrategy, isteğe bağlı, varsayılan olarak False) — Dönen dizilere dolgu uygulanacak stratejiyi seçin (modelin dolgu yönüne ve dolgu indeksine göre):
    • True veya 'longest': Toplu işlemdeki en uzun dizinin uzunluğuna kadar dolgu yapılır (yalnızca tek bir dizi sağlandıysa dolgu yapılmaz).
    • 'max_length': max_length argümanı ile belirtilen maksimum uzunluğa veya bu argüman sağlanmadıysa modelin kabul edebileceği maksimum giriş uzunluğuna kadar doldurur.
    • False veya 'do_not_pad' (varsayılan): Dolgu yok (yani, farklı uzunluklarda diziler içeren bir parti çıktı olarak üretilebilir).
  • truncation (bool, varsayılan False) — Dizilerin maksimum uzunlukta kırpılıp kırpılmayacağını belirtir. tokenize False ise etkisi yoktur.
  • max_length (int, isteğe bağlı) — Doldurma veya kısaltma için kullanılacak maksimum uzunluk (token cinsinden). tokenize False ise etkisi yoktur. Belirtilmezse, tokenizer'ın max_length özniteliği varsayılan olarak kullanılır.
  • return_tensors (str veya TensorType, isteğe bağlı) — Belirlenirse, belirli bir çerçeveye ait tensörler döndürülür. tokenize False ise etkisi yoktur. False. Kabul edilen değerler:
    • 'pt': PyTorch torch.Tensor nesnelerini döndürür.
  • return_dict (bool, varsayılan False) — Adlandırılmış çıktıları içeren bir sözlük döndürülüp döndürülmeyeceğini belirtir. tokenize False ise etkisi yoktur. En az bir konuşma bir görüntü içeriyorsa, piksel değerleri pixel_values anahtarı altında ve görüntü boyutları image_sizes anahtarı altında döndürülür.
  • reasoning_effort (ReasoningEffort, isteğe bağlı) — Bunu destekleyen modeller için sohbet tamamlamasında kullanılacak akıl yürütme çabası. Olası değerler şunlardır:
    • ReasoningEffort.none: Model akıl yürütme yapmaz.
    • ReasoningEffort.high: Model bir akıl yürütme yaklaşımı kullanır. Belirtilmezse, varsayılan akıl yürütme çabası kullanılır.
  • kwargs (ek anahtar kelime argümanları, isteğe bağlı) — mistral-common ChatCompletionRequest.from_openai yöntemine iletilen ek argümanlar.

Dönüş değeri

Union[str, list[int], list[str], list[list[int]], BatchEncoding]

Şu ana kadar tokenize edilmiş sohbet, kontrol token'larını da içerir. Bu çıktı, doğrudan veya generate() gibi yöntemler aracılığıyla modele iletmeye hazırdır.

"role" ve "content" anahtarlarına sahip sözlük listesini, token kimliği listesine dönüştürür.

batch_decode

< >

( sequences: typing.Union[list[int], list[list[int]], numpy.ndarray, ForwardRef('torch.Tensor')]skip_special_tokens: bool = Falseclean_up_tokenization_spaces: bool | None = None**kwargs ) → list[str]

Parametreler

  • sequences (Union[list[int], list[list[int]], np.ndarray, torch.Tensor]) — Tokenize edilmiş girdi kimliklerinin listesi. __call__ yöntemi kullanılarak elde edilebilir.
  • skip_special_tokens (bool, isteğe bağlı, varsayılan False) — Çözümleme sırasında özel tokenların kaldırılıp kaldırılmayacağı.
  • clean_up_tokenization_spaces (bool, isteğe bağlı) — Tokenizasyon boşluklarının temizlenip temizlenmeyeceğini belirtir. None ise, varsayılan olarak self.clean_up_tokenization_spaces kullanılır.
  • kwargs (ek anahtar kelime argümanları, isteğe bağlı) — MistralCommonBackend.batch_decode tarafından desteklenmez. Kullanılırsa bir hata oluşturur.

Dönüş değeri

list[str]

Çözümlenmiş cümlelerin listesi.

decode çağrısı yaparak token kimlikleri içeren listelerin listesini, dizelerin listesine dönüştürün.

Bu yöntem geriye dönük uyumluluk için sağlanmıştır. decode yöntemi artık toplu girdileri yerel olarak işler, bu nedenle batch_decode yerine doğrudan decode kullanabilirsiniz.

build_inputs_with_special_tokens

< >

( token_ids_0: listtoken_ids_1: None = None ) → list[int]

Parametreler

  • token_ids_0 (list[int]) — Özel jetonların ekleneceği kimlik listesi.
  • token_ids_1 (None, isteğe bağlı) — Transformers imzasıyla uyumlu olması için None olarak bırakıldı.

Dönüş değeri

list[int]

Uygun özel jetonlarla birlikte girdi kimlikleri listesi.

Özel jetonlar ekleyerek bir diziden model girdileri oluşturun.

Bu yöntem, girdileri mode değerine göre dinamik olarak oluşturur:

  • "test": seq0 [EOS]
  • "finetuning": [BOS] seq0

convert_added_tokens

< >

( obj: tokenizers.AddedToken | typing.Anysave: bool = Falseadd_type_field: bool = True )

MistralCommonBackend, tasarım gereği convert_added_tokens işlevini uygulamaz.

Bu davranışın uygulanmasını istiyorsanız, bunu talep etmek için Transformers veya mistral-common depolarında bir sorun (issue) açın.

create_token_type_ids_from_sequences

< >

( token_ids_0: listtoken_ids_1: None = None ) → list[int]

Parametreler

  • token_ids_0 (list[int]) — Kimlik listesi.
  • token_ids_1 (None, isteğe bağlı) — Transformers imzasıyla uyumlu olması için None olarak bırakıldı.

Dönüş değeri

list[int]

Yapılandırılan desene göre token türü kimlikleri.

Özel tokenler eklenmiş token kimliklerinden sıfırlardan oluşan bir maske oluşturun.

Transformers uygulamasıyla uyumlu tutuldu.

decode

< >

( token_ids: typing.Union[int, list[int], list[list[int]], numpy.ndarray, ForwardRef('torch.Tensor')]skip_special_tokens: bool = Falseclean_up_tokenization_spaces: bool | None = None**kwargs ) → Union[str, list[str]]

Parametreler

  • token_ids (Union[int, list[int], list[list[int]], np.ndarray, torch.Tensor]) — Tek bir dizi veya tokenize edilmiş girdi kimliklerinin bir partisi (dizilerin listesi). __call__ yöntemi kullanılarak elde edilebilir.
  • skip_special_tokens (bool, isteğe bağlı, varsayılan False) — Çözümleme sırasında özel tokenların kaldırılıp kaldırılmayacağı.
  • clean_up_tokenization_spaces (bool, isteğe bağlı) — Tokenizasyon boşluklarının temizlenip temizlenmeyeceğini belirtir. None ise, varsayılan olarak self.clean_up_tokenization_spaces kullanılır.
  • kwargs (ek anahtar kelime argümanları, isteğe bağlı) — MistralCommonBackend.decode tarafından desteklenmez. Kullanılırsa bir hata oluşturur.

Dönüş değeri

Union[str, list[str]]

Tek bir dizi için çözümlenmiş dize veya bir dizi grubu için çözümlenmiş dizeler listesi.

Özel tokenları kaldırma ve tokenizasyon boşluklarını temizleme seçenekleriyle, tokenizer ve sözlük kullanarak bir dizgedeki kimlik dizisini dönüştürür.

encode

< >

( text: str | list[int]text_pair: None = Noneadd_special_tokens: bool = Truepadding: bool | str | transformers.utils.generic.PaddingStrategy = Falsetruncation: bool | str | transformers.tokenization_utils_base.TruncationStrategy | None = Nonemax_length: int | None = Nonestride: int = 0pad_to_multiple_of: int | None = Nonepadding_side: str | None = Nonereturn_tensors: str | transformers.utils.generic.TensorType | None = Noneverbose: bool = Truereturn_offsets_mapping: typing.Literal[False] = Falsesplit_special_tokens: typing.Literal[False] = False**kwargs ) → list[int], torch.Tensor

Parametreler

  • text (str veya list[int]) — Kodlanacak ilk dizi. Bu, bir dize veya tamsayı listesi (tokenize edilmiş dize kimlikleri) olabilir.
  • text_pair (None, isteğe bağlı) — MistralCommonBackend.encode tarafından desteklenmez. PreTrainedTokenizerBase.encode imzasıyla uyumlu tutulmuştur.
  • add_special_tokens (bool, isteğe bağlı, varsayılan True) — Dizileri kodlarken özel jetonların eklenip eklenmeyeceğini belirler. Bu, girdi kimliklerine otomatik olarak eklenen jetonları tanımlayan alttaki PretrainedTokenizerBase.build_inputs_with_special_tokens işlevini kullanır. bos veya eos jetonlarını otomatik olarak eklemek istiyorsanız bu işe yarar. Tokenizer finetuning moduyla yüklendiğinde hem bos hem de eos eklenir. Aksi halde, “test” modunda yalnızca bos eklenir.
  • padding (bool, str veya PaddingStrategy, isteğe bağlı, varsayılan olarak False) — Dolgu işlemini etkinleştirir ve kontrol eder. Aşağıdaki değerleri kabul eder:
    • True veya 'longest': Toplu işlemdeki en uzun dizinin uzunluğuna kadar dolgu yapılır (yalnızca tek bir dizi sağlanırsa dolgu yapılmaz).
    • 'max_length': max_length argümanı ile belirtilen maksimum uzunluğa veya bu argüman sağlanmadıysa modelin kabul edebileceği maksimum giriş uzunluğuna kadar doldurur.
    • False veya 'do_not_pad' (varsayılan): Dolgu yok (yani, farklı uzunluklarda diziler içeren bir parti çıktı olarak üretilebilir).
  • truncation (bool, str veya TruncationStrategy, isteğe bağlı, varsayılanı False) — Kesmeyi etkinleştirir ve kontrol eder. Aşağıdaki değerleri kabul eder:
    • True veya 'longest_first': max_length argümanı ile belirtilen maksimum uzunluğa veya bu argüman sağlanmadıysa modelin kabul edebileceği maksimum giriş uzunluğuna kısaltılır.
    • False veya 'do_not_truncate' (varsayılan): Kesme yapılmaz (yani, modelin kabul edebileceği maksimum giriş boyutundan daha uzun dizi uzunluklarına sahip bir çıktı partisi üretilebilir).
  • max_length (int, isteğe bağlı) — Bir kesme/doldurma parametresi tarafından kullanılacak maksimum uzunluğu kontrol eder.

    Eğer ayarlanmazsa veya None olarak ayarlanırsa, kırpma/dolgu parametrelerinden biri tarafından bir maksimum uzunluk gerekiyorsa, bu, önceden tanımlanmış modelin maksimum uzunluğunu kullanır. Modelin belirli bir maksimum giriş uzunluğu yoksa (XLNet gibi), maksimum uzunluğa kırpma/dolgu devre dışı bırakılır.

  • stride (int, isteğe bağlı, varsayılan 0) — max_length ile birlikte bir sayıya ayarlanırsa, return_overflowing_tokens=True olduğunda döndürülen taşan jetonlar, kısaltılmış ve taşan diziler arasında bazı örtüşme sağlamak için kısaltılmış dizinin sonundan bazı jetonları içerir. Bu argümanın değeri, örtüşen jeton sayısını tanımlar.
  • pad_to_multiple_of (int, isteğe bağlı) — Belirlenirse, diziyi verilen değerin katına kadar doldurur. Bunun için padding etkinleştirilmelidir. Bu, hesaplama yeteneği >= 7.5 (Volta) olan NVIDIA donanımlarında Tensor Çekirdeklerinin kullanımını etkinleştirmek için özellikle faydalıdır.
  • padding_side (str, isteğe bağlı) — Modelin padding uygulanması gereken tarafı. [‘right’, ‘left’] arasından seçilmelidir. Varsayılan değer, aynı ada sahip sınıf özelliğinden seçilir.
  • return_tensors (str veya TensorType, isteğe bağlı) — Belirlenirse, Python tamsayı listesi yerine tensörler döndürülür. Kabul edilen değerler:
    • 'pt': PyTorch torch.Tensor nesnelerini döndürür.
  • **kwargs — MistralCommonBackend.encode tarafından desteklenmez. Kullanılırsa bir hata oluşturur.

Dönüş değeri

list[int], torch.Tensor

Metnin tokenize edilmiş kimlikleri.

Dizgiyi, belirteç ayrıştırıcı ve sözlük kullanarak kimlik (tamsay) dizisine dönüştürür.

from_pretrained

< >

( pretrained_model_name_or_path: str | os.PathLike*init_inputsmode: str | ValidationMode = 'test'cache_dir: str | os.PathLike | None = Noneforce_download: bool = Falselocal_files_only: bool = Falsetoken: str | bool | None = Nonerevision: str = 'main'model_max_length: int = 1000000000000000019884624838656padding_side: str = 'left'truncation_side: str = 'right'model_input_names: list[str] | None = Noneclean_up_tokenization_spaces: bool = False**kwargs )

Parametreler

  • pretrained_model_name_or_path (str veya os.PathLike) — Şu değerlerden biri olabilir:
    • Bir dize, huggingface.co'daki bir model deposunda barındırılan önceden tanımlanmış bir tokenizer'ın model kimliği.
    • Tokenizer yapılandırmasını içeren bir dizin yoluna işaret eder; örneğin MistralCommonBackend.tokenization_mistral_common.save_pretrained yöntemiyle kaydedilmiş olabilir, örneğin ./my_model_directory/.
  • mode (Union[str, ValidationMode], isteğe bağlı, varsayılan olarak ValidationMode.test) — doğrulama modu MistralTokenizer tokenizator için. Olası değerler şunlardır:
    • "finetuning" veya ValidationMode.finetuning: İnce ayar modu.
    • "test" veya ValidationMode.test: Test modu. Bu mod, tokenizer'ın girdiyi doğrulama ve modele isteği hazırlama şeklini değiştirir.
  • cache_dir (str veya os.PathLike, isteğe bağlı) — Standart önbellek kullanılmayacaksa, indirilen önceden tanımlı tokenizer sözlük dosyalarının önbelleğe alınacağı dizinin yolu.
  • force_download (bool, isteğe bağlı, varsayılan False) — Sözlük dosyalarının (yeniden) indirilmesini zorlayıp mevcut ise önbellekteki sürümleri geçersiz kılıp kılmayacağı.
  • token (str veya bool, isteğe bağlı) — Uzak dosyalar için HTTP bearer yetkilendirmesi olarak kullanılacak jeton. True ise, hf auth login çalıştırıldığında oluşturulan jeton ( ~/.huggingface içinde saklanır) kullanılır.
  • local_files_only (bool, isteğe bağlı, varsayılan False) — Yalnızca yerel dosyalara güvenip dosya indirmeye çalışmama durumu.
  • revision (str, isteğe bağlı, varsayılan "main") — Kullanılacak belirli model sürümü. huggingface.co üzerinde modelleri ve diğer artefaktları depolamak için git tabanlı bir sistem kullandığımız için bir dal adı, etiket adı veya commit kimliği olabilir; bu nedenle revision, git tarafından izin verilen herhangi bir tanımlayıcı olabilir.
  • max_length (int, isteğe bağlı) — Bir kesme/doldurma parametresi tarafından kullanılacak maksimum uzunluğu kontrol eder.

    Eğer ayarlanmazsa veya None olarak ayarlanırsa, kırpma/dolgu parametrelerinden biri tarafından bir maksimum uzunluk gerekiyorsa, bu, önceden tanımlanmış modelin maksimum uzunluğunu kullanır. Modelin belirli bir maksimum giriş uzunluğu yoksa (XLNet gibi), maksimum uzunluğa kırpma/dolgu devre dışı bırakılır.

  • padding_side (str, isteğe bağlı, varsayılan "left") — Modelin padding uygulanması gereken tarafı. [‘right’, ‘left’] arasından seçilmelidir. Varsayılan değer, aynı ada sahip sınıf özelliğinden alınır.
  • truncation_side (str, isteğe bağlı, varsayılan "right") — Modelde kırpmanın uygulanacağı taraf. [‘right’, ‘left’] arasından seçilmelidir.
  • model_input_names (List[str], isteğe bağlı) — Modelin ileri geçişinin kabul ettiği girdilerin listesi (örneğin "token_type_ids" veya "attention_mask"). Varsayılan değer, aynı ada sahip sınıf özniteliğinden seçilir.
  • clean_up_tokenization_spaces (bool, isteğe bağlı, varsayılan False) — Modelin, tokenizasyon işlemi sırasında girdi metnini bölerken eklenen boşlukları temizleyip temizlemeyeceğini belirtir.
  • kwargs (ek anahtar kelime argümanları, isteğe bağlı) — MistralCommonBackend.from_pretrained tarafından desteklenmez. Kullanılırsa bir hata oluşturur.

Önceden tanımlanmış bir tokenizer'dan MistralCommonBackend örneği oluşturun.

get_chat_template

< >

( chat_template: str | None = Nonetools: list[dict] | None = None )

MistralCommonBackend, mistral-common sohbet şablonları kullanmadığı için, tasarım gereği get_chat_template işlevini uygulamaz.

get_special_tokens_mask

< >

( token_ids_0: listtoken_ids_1: None = Nonealready_has_special_tokens: bool = False ) → A list of integers in the range [0, 1]

Parametreler

  • token_ids_0 (list[int]) — Sıralamanın kimlik listesi.
  • token_ids_1 (None, isteğe bağlı) — Transformers uygulamasıyla uyumlu olması için None olarak bırakıldı.
  • already_has_special_tokens (bool, isteğe bağlı, varsayılan False) — Token listesinin, model için özel token'larla zaten biçimlendirilmiş olup olmadığı.

Dönüş değeri

[0, 1] aralığında tamsayıların bir listesi

özel bir jeton için 1, bir dizi jetonu için 0.

Özel tokenler eklenmemiş bir token listesinden dizi kimliklerini alır. Bu yöntem, tokenizer'ın prepare_for_model veya encode_plus yöntemleri kullanılarak özel tokenler eklenirken çağrılır.

get_vocab

< >

( ) → Dict[str, int]

Dönüş değeri

Dict[str, int]

Kelime dağarcığı.

Sözlüğü, belirteçten indekse giden bir sözlük olarak döndürür.

Bu, kayıplı bir dönüştürmedir. Kısmi UTF-8 bayt dizilerinin � karakterine dönüştürülmesi nedeniyle, aynı string değerine çözümlenen birden fazla token id bulunabilir.

num_special_tokens_to_add

< >

( pair: typing.Literal[False] = False ) → int

Parametreler

  • pair (Literal[False], isteğe bağlı) — Transformer imzasıyla uyumlu olması için False olarak bırakıldı.

Dönüş değeri

int

Dizilere eklenen özel jeton sayısı.

Özel jetonlarla bir diziyi kodlarken eklenen jeton sayısını döndürür.

Bu, sahte bir girdiyi kodlar ve eklenen jeton sayısını kontrol eder; bu nedenle verimli değildir. Bunu eğitim döngünüzün içine koymayın.

prepare_for_model

< >

( ids: listpair_ids: None = Noneadd_special_tokens: bool = Truepadding: bool | str | transformers.utils.generic.PaddingStrategy = Falsetruncation: bool | str | transformers.tokenization_utils_base.TruncationStrategy | None = Nonemax_length: int | None = Nonestride: int = 0pad_to_multiple_of: int | None = Nonepadding_side: str | None = Nonereturn_tensors: str | transformers.utils.generic.TensorType | None = Nonereturn_token_type_ids: bool | None = Nonereturn_attention_mask: bool | None = Nonereturn_overflowing_tokens: bool = Falsereturn_special_tokens_mask: bool = Falsereturn_length: bool = Falseverbose: bool = Trueprepend_batch_axis: bool = Falsereturn_offsets_mapping: typing.Literal[False] = Falsesplit_special_tokens: typing.Literal[False] = False**kwargs ) → BatchEncoding

Parametreler

  • ids (list[int]) — İlk dizinin tokenize edilmiş girdi kimlikleri.
  • pair_ids (None, isteğe bağlı) — MistralCommonBackend tarafından desteklenmez. PreTrainedTokenizerBase arayüzüyle uyumlu tutulmuştur.
  • add_special_tokens (bool, isteğe bağlı, varsayılan True) — Dizileri kodlarken özel jetonların eklenip eklenmeyeceğini belirler. Bu, girdi kimliklerine otomatik olarak eklenen jetonları tanımlayan alttaki PretrainedTokenizerBase.build_inputs_with_special_tokens işlevini kullanır. bos veya eos jetonlarını otomatik olarak eklemek istiyorsanız bu işe yarar. Tokenizer finetuning moduyla yüklendiğinde hem bos hem de eos eklenir. Aksi halde, “test” modunda yalnızca bos eklenir.
  • padding (bool, str veya PaddingStrategy, isteğe bağlı, varsayılan olarak False) — Dolgu işlemini etkinleştirir ve kontrol eder. Aşağıdaki değerleri kabul eder:
    • True veya 'longest': Toplu işlemdeki en uzun dizinin uzunluğuna kadar dolgu yapılır (yalnızca tek bir dizi sağlanırsa dolgu yapılmaz).
    • 'max_length': max_length argümanı ile belirtilen maksimum uzunluğa veya bu argüman sağlanmadıysa modelin kabul edebileceği maksimum giriş uzunluğuna kadar doldurur.
    • False veya 'do_not_pad' (varsayılan): Dolgu yok (yani, farklı uzunluklarda diziler içeren bir parti çıktı olarak üretilebilir).
  • truncation (bool, str veya TruncationStrategy, isteğe bağlı, varsayılanı False) — Kesmeyi etkinleştirir ve kontrol eder. Aşağıdaki değerleri kabul eder:
    • True veya 'longest_first': max_length argümanı ile belirtilen maksimum uzunluğa veya bu argüman sağlanmadıysa modelin kabul edebileceği maksimum giriş uzunluğuna kısaltılır.
    • False veya 'do_not_truncate' (varsayılan): Kesme yapılmaz (yani, modelin kabul edebileceği maksimum giriş boyutundan daha uzun dizi uzunluklarına sahip bir çıktı partisi üretilebilir).
  • max_length (int, isteğe bağlı) — Bir kesme/doldurma parametresi tarafından kullanılacak maksimum uzunluğu kontrol eder.

    Eğer ayarlanmazsa veya None olarak ayarlanırsa, kırpma/dolgu parametrelerinden biri tarafından bir maksimum uzunluk gerekiyorsa, bu, önceden tanımlanmış modelin maksimum uzunluğunu kullanır. Modelin belirli bir maksimum giriş uzunluğu yoksa (XLNet gibi), maksimum uzunluğa kırpma/dolgu devre dışı bırakılır.

  • stride (int, isteğe bağlı, varsayılan 0) — max_length ile birlikte bir sayıya ayarlanırsa, return_overflowing_tokens=True olduğunda döndürülen taşan jetonlar, kısaltılmış ve taşan diziler arasında bazı örtüşme sağlamak için kısaltılmış dizinin sonundan bazı jetonları içerir. Bu argümanın değeri, örtüşen jeton sayısını tanımlar.
  • pad_to_multiple_of (int, isteğe bağlı) — Belirlenirse, diziyi verilen değerin katına kadar doldurur. Bunun için padding etkinleştirilmelidir. Bu, hesaplama yeteneği >= 7.5 (Volta) olan NVIDIA donanımlarında Tensor Çekirdeklerinin kullanımını etkinleştirmek için özellikle faydalıdır.
  • padding_side (str, isteğe bağlı) — Modelin padding uygulanması gereken tarafı. [‘right’, ‘left’] arasından seçilmelidir. Varsayılan değer, aynı ada sahip sınıf özelliğinden seçilir.
  • return_tensors (str veya TensorType, isteğe bağlı) — Belirlenirse, Python tamsayı listesi yerine tensörler döndürülür. Kabul edilen değerler:
    • 'pt': PyTorch torch.Tensor nesnelerini döndürür.
  • return_token_type_ids (bool, isteğe bağlı) — Token type ID'lerinin döndürülüp döndürülmeyeceğini belirtir. MistralCommonBackend yalnızca tek bir dizinin desteklenmesi nedeniyle, dizi uzunluğunda sıfırlardan oluşan bir liste döndürür.

    Token type ID'leri nelerdir?

  • return_attention_mask (bool, isteğe bağlı) — Dikkat maskesinin (attention mask) döndürülüp döndürülmeyeceğini belirtir. Varsayılan bırakılırsa, ilgili tokenizer'ın varsayılanına göre dikkat maskesini döndürür; bu, return_outputs özniteliği ile tanımlanır.

    Dikkat maskeleri nedir?

  • return_overflowing_tokens (bool, isteğe bağlı, varsayılan False) — Taşan token dizilerinin döndürülüp döndürülmeyeceği. Girdi kimlikleri çiftlerinden (veya çiftlerden oluşan bir partiden) truncation_strategy = longest_first veya True ile sağlanırsa, taşan tokenlar döndürülmek yerine bir hata oluşturulur.
  • return_special_tokens_mask (bool, isteğe bağlı, varsayılan False) — Özel jeton maskesi bilgisinin döndürülüp döndürülmemesi.
  • return_length (bool, isteğe bağlı, varsayılan False) — Kodlanmış girdilerin uzunluklarının döndürülüp döndürülmeyeceği.
  • verbose (bool, isteğe bağlı, varsayılan True) — Daha fazla bilgi ve uyarı basılıp basılmayacağı.
  • return_offsets_mapping (Literal[False], isteğe bağlı) — False, Transformers imzasıyla uyumlu tutulmak üzere.
  • split_special_tokens (Literal[False], isteğe bağlı) — Transformers imzasıyla uyumlu olmak için False olarak bırakıldı.
  • **kwargs — self.tokenize() yöntemine iletilir

Dönüş değeri

BatchEncoding

Aşağıdaki alanlara sahip bir BatchEncoding:

  • input_ids — Bir modele verilecek token kimliklerinin listesi.

    Girdi kimlikleri nelerdir?

  • attention_mask — Modelin hangi jetonlara dikkat etmesi gerektiğini belirleyen indeks listesi (return_attention_mask=True olduğunda veya self.model_input_names içinde “attention_mask” varsa).

    Dikkat maskeleri nedir?

  • overflowing_tokens — Taşan token dizileri listesi (max_length belirtildiğinde ve return_overflowing_tokens=True olduğunda).

  • num_truncated_tokens — Kırpılan token sayısı (max_length belirtildiğinde ve return_overflowing_tokens=True olduğunda).

  • special_tokens_mask — 0 ve 1'lerden oluşan liste; 1 eklenen özel tokenları, 0 ise normal dizi tokenlarını belirtir (add_special_tokens=True ve return_special_tokens_mask=True olduğunda).

  • length — Girdilerin uzunluğu (return_length=True olduğunda)

Girdi kimlik dizisini model tarafından kullanılabilecek şekilde hazırlar. Özel jetonları ekler, taşma durumunda özel jetonları dikkate alarak dizileri kısaltır ve taşan jetonlar için hareketli bir pencereyi (kullanıcı tanımlı adım ile) yönetir.

save_chat_templates

< >

( save_directory: str | os.PathLiketokenizer_config: dictfilename_prefix: str | Nonesave_jinja_files: bool )

MistralCommonBackend, mistral-common sohbet şablonları kullanmadığı için, tasarım gereği save_chat_templates işlevini uygulamaz.

save_pretrained

< >

( save_directory: str | os.PathLike | pathlib.Pathpush_to_hub: bool = Falsetoken: str | bool | None = Nonecommit_message: str | None = Nonerepo_id: str | None = Noneprivate: bool | None = Nonesave_format: str | None = None**kwargs ) → tuple[str, ...]

Parametreler

  • save_directory (str | os.PathLike | Path) — Tokenizörün kaydedileceği dizin.
  • push_to_hub (bool, isteğe bağlı, varsayılan False) — Kaydetme işleminden sonra HF Hub'a gönder.
  • token (str veya bool, isteğe bağlı) — Hub kimlik doğrulaması için token.
  • commit_message (str, isteğe bağlı) — İtme sırasında commit mesajı.
  • repo_id (str, isteğe bağlı) — Hub deposu kimliği.
  • private (bool, isteğe bağlı) — Deponun özel olup olmadığı.
  • save_format (str, isteğe bağlı) — yerel tekken formatında kaydetmek için "mistral", HuggingFace formatı için "hf". None orijinal formatı korur.
  • kwargs (dict, isteğe bağlı) — Desteklenmiyor — bir hata oluşturur.

Dönüş değeri

tuple[str, ...]

Kaydedilen dosyaların yolları.

Tam tokenizer durumunu kaydedin.

save_format değeri "mistral" olduğunda (veya tekken tokenizer için None), orijinal tokenizer dosyası (ör. tekken.json) save_directory dizinine yazılır. save_format değeri "hf" olduğunda ise HF biçimindeki dosyalar (tokenizer.json + tokenizer_config.json) üretilir.

save_vocabulary

< >

( save_directory: strfilename_prefix: str | None = None )

MistralCommonBackend, tasarım gereği save_vocabulary işlevini uygulamaz.

Bu durum, mistral-common'in tek bir tokenizer dosyasıyla yapılandırılmış olmasından kaynaklanır. Sözlüğü kaydetmek istiyorsanız, bunun yerine save_pretrained yöntemini kullanmayı düşünün.

tokenize

< >

( text: strreturn_offsets_mapping: typing.Literal[False] = Falsesplit_special_tokens: typing.Literal[False] = False**kwargs ) → list[str]

Parametreler

  • text (str) — Kodlanacak dizi.
  • return_offsets_mapping (Literal[False], isteğe bağlı) — False, Transformers imzasıyla uyumlu tutulmak üzere.
  • split_special_tokens (Literal[False], isteğe bağlı) — Transformers imzasıyla uyumlu olmak için False olarak bırakıldı.
  • **kwargs (ek anahtar kelime argümanları) — MistralCommonBackend.tokenize tarafından desteklenmez. Kullanılırsa bir hata oluşturur.

Dönüş değeri

list[str]

Tokenların listesi.

Dizgiyi, belirteç ayrıştırıcıyı kullanarak belirteç dizisine dönüştürür.

Kelime tabanlı sözlükler için kelimelere, alt kelime tabanlı sözlükler için alt kelimelere bölünür.

truncate_sequences

< >

( ids: listpair_ids: None = Nonenum_tokens_to_remove: int = 0truncation_strategy: str | transformers.tokenization_utils_base.TruncationStrategy = 'longest_first'stride: int = 0**kwargs ) → Tuple[list[int], None, list[int]]

Parametreler

  • ids (list[int]) — Tokenize edilmiş girdi kimlikleri. Bir diziden, tokenize ve convert_tokens_to_ids yöntemlerini zincirleyerek elde edilebilir.
  • pair_ids (None, isteğe bağlı) — MistralCommonBackend tarafından desteklenmez. PreTrainedTokenizerBase.truncate_sequences imzasıyla uyumlu tutulmuştur.
  • num_tokens_to_remove (int, isteğe bağlı, varsayılan 0) — Kesme stratejisi kullanılarak kaldırılacak jeton sayısı.
  • truncation_strategy (str veya TruncationStrategy, isteğe bağlı, varsayılanı 'longest_first') — Kesme işlemi için izlenecek strateji. Şunlardan biri olabilir:
    • 'longest_first': max_length argümanı ile belirtilen maksimum uzunluğa veya bu argüman sağlanmadıysa modelin kabul edebileceği maksimum giriş uzunluğuna kısaltır.
    • 'do_not_truncate' (varsayılan): Kesme yapılmaz (yani, modelin kabul edebileceği maksimum giriş boyutundan daha uzun dizi uzunluklarına sahip bir çıktı partisi üretilebilir).
  • stride (int, isteğe bağlı, varsayılan 0) — Pozitif bir sayıya ayarlanırsa, döndürülen taşan jetonlar, döndürülen ana diziden bazı jetonları da içerecektir. Bu argümanın değeri, ek jeton sayısını belirler.

Dönüş değeri

Tuple[list[int], None, list[int]]

Kesilen ids ve taşan tokenların listesi. Transformers imzasıyla uyumlu olmak için None döndürülür.

Stratejiye göre bir dizi çiftini yerinde kısaltır.

Mistral3Model

sınıf transformers.Mistral3Model

< >

( config: Mistral3Config )

Parametreler

  • config (Mistral3Config) — 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 göz atın.

Dil modelleme başlığı olmadan, bir görme omurgası ve bir dil modelinden oluşan Mistral3 modeli.

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

< >

( input_ids: typing.Optional[torch.LongTensor] = Nonepixel_values: typing.Optional[torch.FloatTensor] = Noneattention_mask: typing.Optional[torch.Tensor] = Noneposition_ids: typing.Optional[torch.LongTensor] = Nonepast_key_values: transformers.cache_utils.Cache | None = Noneinputs_embeds: typing.Optional[torch.FloatTensor] = Nonevision_feature_layer: int | list[int] | None = Noneuse_cache: bool | None = Noneimage_sizes: typing.Optional[torch.Tensor] = Nonemm_encoder_outputs: dict[str, transformers.modeling_outputs.BaseModelOutputWithPooling] | None = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → Mistral3ModelOutputWithPast or tuple(torch.FloatTensor)

Parametreler

  • input_ids (torch.LongTensor şeklinde (batch_size, sequence_length), isteğe bağlı) — 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.

    Girdi kimlikleri nelerdir?

  • pixel_values (torch.FloatTensor, şekli (batch_size, num_channels, image_size, image_size), isteğe bağlı) — Girdi görüntülerine karşılık gelen tensörler. Piksel değerleri PixtralImageProcessor kullanılarak elde edilebilir. Ayrıntılar için PixtralImageProcessor.call() bölümüne bakın (PixtralProcessor, görüntü işleme için PixtralImageProcessor kullanır).
  • attention_mask (torch.Tensor şeklinde (batch_size, sequence_length), isteğe bağlı) — Doldurma (padding) token indekslerinde dikkat (attention) işlemi yapmaktan kaçınmak için kullanılan maske. Seçilen maske değerleri [0, 1]:
    • 1, maskelenmemiş jetonlar için,
    • maskelenmiş jetonlar için 0.

    Dikkat maskeleri nedir?

  • position_ids (torch.LongTensor şeklinde (batch_size, sequence_length), isteğe bağlı) — Girdi dizilerindeki her token'ın konum gömme (position embedding) içindeki konum indeksleri. Seçim aralığı [0, config.n_positions - 1].

    Pozisyon kimlikleri nedir?

  • past_key_values (~cache_utils.Cache, isteğe bağlı) — Sıralı çözümlemeyi hızlandırmak için kullanılabilen önceden hesaplanmış gizli durumlar (self-attention ve cross-attention bloklarındaki anahtar ve değerler). Bu genellikle past_key_values değerinin, çözümlemenin önceki bir aşamasında model tarafından döndürülen use_cache=True veya config.use_cache=True.

    Girdi olarak yalnızca Cache örneği kabul edilir, kv cache kılavuzumuza bakın. past_key_values geçirilmezse, varsayılan olarak DynamicCache başlatılır.

    Model, girdi olarak verilen aynı önbellek biçimini çıktı olarak üretecektir.

    past_key_values kullanılıyorsa, kullanıcının tüm input_ids (şekli (batch_size, sequence_length)) yerine, bu modele geçmiş anahtar değer durumları verilmemiş olan, işlenmemiş input_ids (şekli (batch_size, unprocessed_length)) girmesi beklenir.

  • inputs_embeds (torch.FloatTensor, şekli (batch_size, sequence_length, hidden_size), isteğe bağlı) — İsteğe bağlı olarak, input_ids yerine gömülü bir temsil doğrudan geçmeyi tercih edebilirsiniz. Bu, input_ids dizinlerini ilgili vektörlere dönüştürme biçimi üzerinde modelin dahili gömme arama matrisine kıyasla daha fazla kontrol sahibi olmak istiyorsanız faydalıdır.
  • vision_feature_layer (Union[int, list[int]], isteğe bağlı) — Görüntü özelliğinin seçileceği katmanın indeksi. Birden fazla indeks sağlanırsa, ilgili indekslere ait görüntü özellikleri birleştirilerek görüntü özellikleri oluşturulur.
  • use_cache (bool, isteğe bağlı) — True olarak ayarlanırsa, past_key_values anahtar değer durumları döndürülür ve çözümlemeyi hızlandırmak için kullanılabilir (bkz. past_key_values).
  • image_sizes (torch.Tensor, şekli (batch_size, 2), isteğe bağlı) — Toplumdaki görüntülerin boyutları, her görüntü için (yükseklik, genişlik).
  • mm_encoder_outputs (dict[str, ~modeling_outputs.BaseModelOutputWithPooling], isteğe bağlı) — Anahtarları desteklenen modaliteler, değerleri ise o modalite için kodlanmış çıktılar olan bir sözlük. Her kodlanmış çıktı, (pooler_output, isteğe bağlı: last_hidden_states, isteğe bağlı: hidden_states, isteğe bağlı: attentions) pooler_output (şekli (batch_size, sequence_length, hidden_size), isteğe bağlı) biçiminde bir demettir ve kodlayıcının çok modlu özelliklerinin metin gömme (embedding) değerleriyle birleştirilmiş bir dizisidir.

Dönüş değeri

Mistral3ModelOutputWithPast veya tuple(torch.FloatTensor)

Mistral3ModelOutputWithPast veya bir torch.FloatTensor demeti (eğer return_dict=False geçirildiyse veya config.return_dict=False ise), yapılandırma (Mistral3Config) ve girdilere bağlı olarak çeşitli öğelerden oluşur.

Mistral3Model 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.

  • last_hidden_state (torch.FloatTensor, şekli (batch_size, sequence_length, hidden_size)) — Modelin son katmanının çıktısındaki gizli durumlar dizisi.

    past_key_values kullanılırsa, yalnızca (batch_size, 1, hidden_size) biçimindeki dizilerin son gizli durumu (hidden-state) çıktı olarak verilir.

  • past_key_values (Cache, isteğe bağlı, use_cache=True geçirildiğinde veya config.use_cache=True olduğunda döndürülür) — Bir Cache örneğidir. Daha fazla ayrıntı için kv cache kılavuzumuza bakın.

    Sıralı çözümlemeyi hızlandırmak için (bkz. past_key_values girdisi) kullanılabilen, önceden hesaplanmış gizli durumları (self-attention bloklarındaki anahtar ve değerler) içerir.

  • hidden_states (tuple(torch.FloatTensor), isteğe bağlı, output_hidden_states=True geçirildiğinde veya config.output_hidden_states=True olduğunda döndürülür) — torch.FloatTensor (modelin bir gömme katmanı varsa gömme katmanının çıktısı için bir tane + her katmanın çıktısı için birer tane) içeren, (batch_size, sequence_length, hidden_size) biçiminde bir demet.

    Her katmanın çıktısında modelin gizli durumları ve isteğe bağlı başlangıç gömme çıktıları.

  • attentions (tuple(torch.FloatTensor), isteğe bağlı, output_attentions=True geçirildiğinde veya config.output_attentions=True olduğunda döndürülür) — torch.FloatTensor (her katman için bir tane) içeren bir tuple, şekli (batch_size, num_heads, sequence_length, sequence_length).

    Dikkat softmax'ı sonrası dikkat ağırlıkları, öz-dikkat başlıklarında ağırlıklı ortalamanın hesaplanmasında kullanılır.

  • image_hidden_states (torch.FloatTensor, isteğe bağlı) — Boyutu (batch_size, num_images, sequence_length, hidden_size) olan bir torch.FloatTensor. Görüntü kodlayıcısı tarafından üretilen ve son gizli durum projekte edildikten sonraki modelin image_hidden_states değerleri.

get_image_features

< >

( pixel_values: FloatTensorimage_sizes: Tensorvision_feature_layer: int | list[int] | None = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → BaseModelOutputWithPooling or tuple(torch.FloatTensor)

Parametreler

  • pixel_values (torch.FloatTensor, şekli (batch_size, num_channels, image_size, image_size)) — Girdi görüntülerine karşılık gelen tensörler. Piksel değerleri PixtralImageProcessor kullanılarak elde edilebilir. Ayrıntılar için PixtralImageProcessor.call()'a bakın (PixtralProcessor, görüntü işleme için PixtralImageProcessor kullanır).
  • image_sizes (torch.Tensor, şekli (batch_size, 2)) — Toplumdaki görüntülerin boyutları; her görüntü için (yükseklik, genişlik).
  • vision_feature_layer (Union[int, list[int]], isteğe bağlı) — Görüntü özelliğinin seçileceği katmanın indeksi. Birden fazla indeks sağlanırsa, ilgili indekslere ait görüntü özellikleri birleştirilerek görüntü özellikleri oluşturulur.

Dönüş değeri

BaseModelOutputWithPooling veya tuple(torch.FloatTensor)

Bir BaseModelOutputWithPooling veya torch.FloatTensor bir demeti (return_dict=False geçirildiğinde veya config.return_dict=False olduğunda), yapılandırma (Mistral3Config) ve girdilere bağlı olarak çeşitli öğelerden oluşur.

Görme kulesinden görüntü son gizli durumlarını alır ve çok modlu projeksiyonu uygular.

  • last_hidden_state (torch.FloatTensor, şekli (batch_size, sequence_length, hidden_size)) — Modelin son katmanının çıktısındaki gizli durumlar dizisi.

  • pooler_output (torch.FloatTensor, şekli (batch_size, hidden_size)) — Sıranın ilk token'ının (sınıflandırma token'ı) son katman gizli durumu, yardımcı ön eğitim görevi için kullanılan katmanlar üzerinden ek işlemden geçirildikten sonraki hali. Örneğin BERT ailesi modelleri için, bu, sınıflandırma token'ının doğrusal bir katman ve tanh aktivasyon fonksiyonu üzerinden işlenmesinden sonra döndürülen değerdir. Doğrusal katman ağırlıkları, ön eğitim sırasında bir sonraki cümle tahmini (sınıflandırma) hedefinden eğitilir.

  • hidden_states (tuple(torch.FloatTensor), isteğe bağlı, output_hidden_states=True geçirildiğinde veya config.output_hidden_states=True olduğunda döndürülür) — torch.FloatTensor (modelin bir gömme katmanı varsa gömme katmanının çıktısı için bir tane + her katmanın çıktısı için birer tane) içeren, (batch_size, sequence_length, hidden_size) biçiminde bir demet.

    Her katmanın çıktısında modelin gizli durumları ve isteğe bağlı başlangıç gömme çıktıları.

  • attentions (tuple(torch.FloatTensor), isteğe bağlı, output_attentions=True geçirildiğinde veya config.output_attentions=True olduğunda döndürülür) — torch.FloatTensor (her katman için bir tane) içeren bir tuple, şekli (batch_size, num_heads, sequence_length, sequence_length).

    Dikkat softmax'ı sonrası dikkat ağırlıkları, öz-dikkat başlıklarında ağırlıklı ortalamanın hesaplanmasında kullanılır.

get_placeholder_mask

< >

( input_ids: LongTensorinputs_embeds: FloatTensorimage_features: FloatTensor )

input_ids veya inputs_embeds içinden çok modlu yer tutucu maskesini alır ve yer tutucu belirteç sayısının çok modlu özelliklerin uzunluğuna eşit olduğunu kontrol eder. Uzunluklar farklıysa bir hata oluşturulur.

Mistral3ForConditionalGeneration

sınıf transformers.Mistral3ForConditionalGeneration

< >

( config: Mistral3Config )

Parametreler

  • config (Mistral3Config) — 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 göz atın.

Bir görme omurgası ve bir dil modelinden oluşan MISTRAL3 modeli.

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

< >

( input_ids: typing.Optional[torch.LongTensor] = Nonepixel_values: typing.Optional[torch.FloatTensor] = Noneattention_mask: typing.Optional[torch.Tensor] = Noneposition_ids: typing.Optional[torch.LongTensor] = Nonepast_key_values: transformers.cache_utils.Cache | None = Noneinputs_embeds: typing.Optional[torch.FloatTensor] = Nonelabels: typing.Optional[torch.LongTensor] = Noneuse_cache: bool | None = Nonelogits_to_keep: typing.Union[int, torch.Tensor] = 0image_sizes: typing.Optional[torch.Tensor] = Nonemm_encoder_outputs: dict[str, transformers.modeling_outputs.BaseModelOutputWithPooling] | None = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → Mistral3CausalLMOutputWithPast or tuple(torch.FloatTensor)

Parametreler

  • input_ids (torch.LongTensor şeklinde (batch_size, sequence_length), isteğe bağlı) — 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.

    Girdi kimlikleri nelerdir?

  • pixel_values (torch.FloatTensor, şekli (batch_size, num_channels, image_size, image_size), isteğe bağlı) — Girdi görüntülerine karşılık gelen tensörler. Piksel değerleri PixtralImageProcessor kullanılarak elde edilebilir. Ayrıntılar için PixtralImageProcessor.call() bölümüne bakın (PixtralProcessor, görüntü işleme için PixtralImageProcessor kullanır).
  • attention_mask (torch.Tensor şeklinde (batch_size, sequence_length), isteğe bağlı) — Doldurma (padding) token indekslerinde dikkat (attention) işlemi yapmaktan kaçınmak için kullanılan maske. Seçilen maske değerleri [0, 1]:
    • 1, maskelenmemiş jetonlar için,
    • maskelenmiş jetonlar için 0.

    Dikkat maskeleri nedir?

  • position_ids (torch.LongTensor şeklinde (batch_size, sequence_length), isteğe bağlı) — Girdi dizilerindeki her token'ın konum gömme (position embedding) içindeki konum indeksleri. Seçim aralığı [0, config.n_positions - 1].

    Pozisyon kimlikleri nedir?

  • past_key_values (~cache_utils.Cache, isteğe bağlı) — Sıralı çözümlemeyi hızlandırmak için kullanılabilen önceden hesaplanmış gizli durumlar (self-attention ve cross-attention bloklarındaki anahtar ve değerler). Bu genellikle past_key_values değerinin, çözümlemenin önceki bir aşamasında model tarafından döndürülen use_cache=True veya config.use_cache=True.

    Girdi olarak yalnızca Cache örneği kabul edilir, kv cache kılavuzumuza bakın. past_key_values geçirilmezse, varsayılan olarak DynamicCache başlatılır.

    Model, girdi olarak verilen aynı önbellek biçimini çıktı olarak üretecektir.

    past_key_values kullanılıyorsa, kullanıcının tüm input_ids (şekli (batch_size, sequence_length)) yerine, bu modele geçmiş anahtar değer durumları verilmemiş olan, işlenmemiş input_ids (şekli (batch_size, unprocessed_length)) girmesi beklenir.

  • inputs_embeds (torch.FloatTensor, şekli (batch_size, sequence_length, hidden_size), isteğe bağlı) — İsteğe bağlı olarak, input_ids yerine gömülü bir temsil doğrudan geçmeyi tercih edebilirsiniz. Bu, input_ids dizinlerini ilgili vektörlere dönüştürme biçimi üzerinde modelin dahili gömme arama matrisine kıyasla daha fazla kontrol sahibi olmak istiyorsanız faydalıdır.
  • labels (torch.LongTensor, şekli (batch_size, sequence_length), isteğe bağlı) — Maskeli dil modelleme kaybını hesaplamak için etiketler. Endeksler [0, ..., config.vocab_size] aralığında olmalı ya da -100 olmalı (input_ids docstring'ine bakın). Endeksleri -100 olarak ayarlanan tokenlar yok sayılır (maskelenir), kayıp yalnızca etiketleri [0, ..., config.vocab_size] aralığında olan tokenlar için hesaplanır.
  • use_cache (bool, isteğe bağlı) — True olarak ayarlanırsa, past_key_values anahtar değer durumları döndürülür ve çözümlemeyi hızlandırmak için kullanılabilir (bkz. past_key_values).
  • logits_to_keep (Union[int, torch.Tensor], isteğe bağlı, varsayılan 0) — int ise, son logits_to_keep token için logits hesaplanır. 0 ise, tüm input_ids için logits hesaplanır (özel durum). Üretim için yalnızca son token logits'leri gereklidir ve bunların yalnızca o token için hesaplanması bellek tasarrufu sağlar; bu, uzun diziler veya büyük sözlük boyutu için oldukça önemli hale gelir. torch.Tensor ise, dizi uzunluğu boyutundaki korunacak indekslere karşılık gelen 1B olmalıdır. Bu, paketlenmiş tensor biçimini (batch ve dizi uzunluğu için tek boyut) kullanırken faydalıdır.
  • image_sizes (torch.Tensor, şekli (batch_size, 2), isteğe bağlı) — Toplumdaki görüntülerin boyutları, her görüntü için (yükseklik, genişlik).
  • mm_encoder_outputs (dict[str, ~modeling_outputs.BaseModelOutputWithPooling], isteğe bağlı) — Anahtarları desteklenen modaliteler, değerleri ise o modalite için kodlanmış çıktılar olan bir sözlük. Her kodlanmış çıktı, (pooler_output, isteğe bağlı: last_hidden_states, isteğe bağlı: hidden_states, isteğe bağlı: attentions) pooler_output (şekli (batch_size, sequence_length, hidden_size), isteğe bağlı) biçiminde bir demettir ve kodlayıcının çok modlu özelliklerinin metin gömme (embedding) değerleriyle birleştirilmiş bir dizisidir.

Dönüş değeri

Mistral3CausalLMOutputWithPast veya tuple(torch.FloatTensor)

Mistral3CausalLMOutputWithPast veya bir torch.FloatTensor demeti (eğer return_dict=False geçirildiyse veya config.return_dict=False ise), yapılandırma (Mistral3Config) ve girdilere bağlı olarak çeşitli öğelerden oluşur.

Mistral3ForConditionalGeneration 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.

  • loss (torch.FloatTensor, şekli (1,), opsiyonel, labels sağlandığında döndürülür) — Dil modelleme kaybı (sonraki token tahmini için).

  • logits (torch.FloatTensor, şekli (batch_size, sequence_length, config.vocab_size)) — Dil modelleme başlığının tahmin puanları (SoftMax öncesi her sözlük jetonu için puanlar).

  • past_key_values (Cache, isteğe bağlı, use_cache=True geçirildiğinde veya config.use_cache=True olduğunda döndürülür) — Bir Cache örneğidir. Daha fazla ayrıntı için kv cache kılavuzumuza bakın.

    Sıralı çözümlemeyi hızlandırmak için (bkz. past_key_values girdisi) kullanılabilen, önceden hesaplanmış gizli durumları (self-attention bloklarındaki anahtar ve değerler) içerir.

  • hidden_states (tuple[torch.FloatTensor], isteğe bağlı, output_hidden_states=True geçirildiğinde veya config.output_hidden_states=True olduğunda döndürülür) — torch.FloatTensor (modelin bir gömme katmanı varsa gömme katmanının çıktısı için bir tane + her katmanın çıktısı için birer tane) içeren, (batch_size, sequence_length, hidden_size) biçiminde bir demet.

    Her katmanın çıktısında modelin gizli durumları ve isteğe bağlı başlangıç gömme çıktıları.

  • attentions (tuple[torch.FloatTensor], isteğe bağlı, output_attentions=True geçirildiğinde veya config.output_attentions=True olduğunda döndürülür) — torch.FloatTensor (katman başına bir tane) içeren bir tuple, şekli (batch_size, num_heads, sequence_length, sequence_length).

    Dikkat softmax'ı sonrası dikkat ağırlıkları, öz-dikkat başlıklarında ağırlıklı ortalamanın hesaplanmasında kullanılır.

  • image_hidden_states (torch.FloatTensor, isteğe bağlı) — Boyutu (batch_size, num_images, sequence_length, hidden_size) olan bir torch.FloatTensor. Görüntü kodlayıcısı tarafından üretilen ve son gizli durum projekte edildikten sonraki modelin image_hidden_states değerleri.

Örnek:

>>> from PIL import Image
>>> from huggingface_hub.utils import httpx
>>> from io import BytesIO
>>> from transformers import AutoProcessor, Mistral3ForConditionalGeneration

>>> model = Mistral3ForConditionalGeneration.from_pretrained("mistralai/Mistral-Small-3.1-24B-Instruct-2503")
>>> processor = AutoProcessor.from_pretrained("mistralai/Mistral-Small-3.1-24B-Instruct-2503")

>>> prompt = "<s>[INST][IMG]What is the image?[/INST]"
>>> url = "http://images.cocodataset.org/val2017/000000039769.jpg"
>>> with httpx.stream("GET", url) as response:
...     image = Image.open(BytesIO(response.read()))

>>> inputs = processor(images=image, text=prompt, return_tensors="pt")

>>> # Generate
>>> generate_ids = model.generate(**inputs, max_new_tokens=15)
>>> processor.batch_decode(generate_ids, skip_special_tokens=True, clean_up_tokenization_spaces=False)[0]
"What is the image?The image depicts two cats lying on a pink blanket."

get_image_features

< >

( pixel_values: FloatTensorimage_sizes: Tensorvision_feature_layer: int | list[int] | None = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → BaseModelOutputWithPooling or tuple(torch.FloatTensor)

Parametreler

  • pixel_values (torch.FloatTensor, şekli (batch_size, num_channels, image_size, image_size)) — Girdi görüntülerine karşılık gelen tensörler. Piksel değerleri PixtralImageProcessor kullanılarak elde edilebilir. Ayrıntılar için PixtralImageProcessor.call()'a bakın (PixtralProcessor, görüntü işleme için PixtralImageProcessor kullanır).
  • image_sizes (torch.Tensor, şekli (batch_size, 2)) — Toplumdaki görüntülerin boyutları; her görüntü için (yükseklik, genişlik).
  • vision_feature_layer (Union[int, list[int]], isteğe bağlı) — Görüntü özelliğinin seçileceği katmanın indeksi. Birden fazla indeks sağlanırsa, ilgili indekslere ait görüntü özellikleri birleştirilerek görüntü özellikleri oluşturulur.

Dönüş değeri

BaseModelOutputWithPooling veya tuple(torch.FloatTensor)

Bir BaseModelOutputWithPooling veya torch.FloatTensor bir demeti (return_dict=False geçirildiğinde veya config.return_dict=False olduğunda), yapılandırma (Mistral3Config) ve girdilere bağlı olarak çeşitli öğelerden oluşur.

  • last_hidden_state (torch.FloatTensor, şekli (batch_size, sequence_length, hidden_size)) — Modelin son katmanının çıktısındaki gizli durumlar dizisi.

  • pooler_output (torch.FloatTensor, şekli (batch_size, hidden_size)) — Sıranın ilk token'ının (sınıflandırma token'ı) son katman gizli durumu, yardımcı ön eğitim görevi için kullanılan katmanlar üzerinden ek işlemden geçirildikten sonraki hali. Örneğin BERT ailesi modelleri için, bu, sınıflandırma token'ının doğrusal bir katman ve tanh aktivasyon fonksiyonu üzerinden işlenmesinden sonra döndürülen değerdir. Doğrusal katman ağırlıkları, ön eğitim sırasında bir sonraki cümle tahmini (sınıflandırma) hedefinden eğitilir.

  • hidden_states (tuple(torch.FloatTensor), isteğe bağlı, output_hidden_states=True geçirildiğinde veya config.output_hidden_states=True olduğunda döndürülür) — torch.FloatTensor (modelin bir gömme katmanı varsa gömme katmanının çıktısı için bir tane + her katmanın çıktısı için birer tane) içeren, (batch_size, sequence_length, hidden_size) biçiminde bir demet.

    Her katmanın çıktısında modelin gizli durumları ve isteğe bağlı başlangıç gömme çıktıları.

  • attentions (tuple(torch.FloatTensor), isteğe bağlı, output_attentions=True geçirildiğinde veya config.output_attentions=True olduğunda döndürülür) — torch.FloatTensor (her katman için bir tane) içeren bir tuple, şekli (batch_size, num_heads, sequence_length, sequence_length).

    Dikkat softmax'ı sonrası dikkat ağırlıkları, öz-dikkat başlıklarında ağırlıklı ortalamanın hesaplanmasında kullanılır.

Örnek:

>>> from PIL import Image
>>> from transformers import AutoProcessor, Mistral3ForConditionalGeneration

>>> model = Mistral3ForConditionalGeneration.from_pretrained("mistralai/Mistral-Small-3.1-24B-Instruct-2503")
>>> processor = AutoProcessor.from_pretrained("mistralai/Mistral-Small-3.1-24B-Instruct-2503")

>>> messages = [
...     {
...         "role": "user", "content": [
...             {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/pipeline-cat-chonk.jpeg"},
...             {"type": "text", "text": "Where is the cat standing?"},
...         ]
...     },
... ]

>>> inputs = processor.apply_chat_template(
...     messages,
...     tokenize=True,
...     return_dict=True,
...     return_tensors="pt",
...     add_generation_prompt=True
... )
>>> # Generate
>>> generate_ids = model.generate(**inputs)
>>> processor.batch_decode(generate_ids, skip_special_tokens=True)[0]
Update on GitHub