Yapay zeka modelleri ve platformları
Mistral 2 ve Mistral NeMo: Paris’ten Gelen Son LLM İçin Kapsamlı Rehber

Google’ (GOOGL ) ın DeepMind ve Meta’nın mezunları tarafından kurulan, Paris merkezli startup Mistral AI, 2023 yılından bu yana AI topluluğunda sürekli dalgalar yaratmıştır.
Mistral AI, ilk modeli Mistral 7B ile 2023 yılında dünya çapında dikkat çekmiştir. Bu 7 milyar parametrelik model, çeşitli benchmark’lerde Llama 2 13B gibi daha büyük modelleri geçerek ve birçok metrikte Llama 1 34B ile yarışarak hızlı bir şekilde traction kazanmıştır. Mistral 7B‘yi ayıran şey, yalnızca performansı değil, aynı zamanda erişilebilirliği idi – model kolayca GitHub‘dan indirilebiliyordu veya 13.4 gigabaytlık bir torrent aracılığıyla, böylece dünya çapındaki araştırmacılara ve geliştiricilere açık bir şekilde sunuluyordu.
Şirketin geleneksel olmayan yayın yaklaşımı, genellikle geleneksel makaleler, bloglar veya basın açıklamaları yerine, AI topluluğunun dikkatini çekmek için oldukça etkili olmuştur. Bu strateji, açık kaynak ilkelerine bağlılıkları ile birleştiğinde, Mistral AI’yi AI manzarasındaki güçlü bir oyuncu haline getirmiştir.
Mistral AI’nin endüstri içindeki hızlı yükselişi, recent funding başarısı ile daha da kanıtlanmıştır. Şirket, Andreessen Horowitz liderliğindeki bir funding turu sonrasında 2 milyar dolarlık bir değerleme elde etmiştir. Bu, Avrupa tarihindeki en büyük 118 milyon dolarlık bir seed round’un ardından gelmiştir ve Mistral AI’nin vizyonuna ve yeteneklerine olan inancı göstermektedir.
Teknolojik ilerlemelerinin ötesinde, Mistral AI, özellikle AB AI Yasası etrafındaki AI politikalarını şekillendirmede aktif olarak yer almıştır ve burada açık kaynaklı AI’de düzenlemenin azaltılması için savunmuştur.
Şimdi, 2024 yılında, Mistral AI iki yeni ve devrim niteliğinde model ile tekrar barajı yükseltmiştir: Mistral Large 2 (ayrıca Mistral-Large-Instruct-2407 olarak da bilinir) ve Mistral NeMo. Bu kapsamlı rehberde, bu etkileyici AI modellerinin özelliklerine, performansına ve potansiyel uygulamalarına derinlemesine bakacağız.
Mistral Large 2’nin bazı önemli özellikleri şunlardır:
- 123 milyar parametre
- 128k bağlam penceresi
- Dozens of dil desteği
- 80+ programlama dili profesyonelliği
- Gelişmiş fonksiyon çağırma yetenekleri
Model, maliyet etkinliği, hız ve performans sınırlarını zorlamak için tasarlanmıştır, böylece araştırmacılar ve son teknoloji AI’yi kullanmak isteyen işletmeler için çekici bir seçenek haline gelmiştir.
Mistral NeMo: Yeni, Daha Küçük Model
Mistral Large 2, Mistral AI’nin büyük ölçekli modellerinin en iyilerini temsil ederken, Mistral NeMo, 2024 Temmuz ayında yayınlanan, daha kompakt bir 12 milyar parametrelik modeldir. NVIDIA (NVDA ) ile işbirliği içinde geliştirilen Mistral NeMo, vẫn etkileyici yeteneklere sahiptir:
- 12 milyar parametre
- 128k bağlam penceresi
- Boyut kategorisinde state-of-the-art performans
- Apache 2.0 lisansı için açık kullanım
- Quantization-aware eğitim için verimli çıkarım
Mistral NeMo, Mistral 7B kullanan sistemler için bir drop-in replacement olarak konumlandırılmıştır, gelişmiş performans sunarken kullanım kolaylığını ve uyumluluğu korur.
Ana Özellikler ve Yetenekler
Hem Mistral Large 2 hem de Mistral NeMo, AI manzarasında onları ayıran beberapa ana özelliği paylaşır:
- Büyük Bağlam Pencereleri: 128k token bağlam uzunluğu ile, her iki model de daha uzun metin parçalarını işleyebilir ve daha tutarlı ve bağlamsal olarak ilgili çıktılar üretebilir.
- Çok Dilli Destek: Modeller, İngilizce, Fransızca, Almanca, İspanyolca, İtalyanca, Çince, Japonca, Korece, Arapça ve Hintçe dahil olmak üzere geniş bir dil yelpazesinde uzmanlaşmıştır.
- İleri Düzey Kod Oluşturma: Her iki model de, çeşitli programlama dilleri için kod oluşturma yeteneğinde uzmanlaşmıştır.
- Talimat Takibi: Modeller, talimatlara uyma ve çok tur konuşmaları işleme yeteneğinde önemli gelişmeler kaydetmiştir.
- Fonksiyon Çağırma: Yerel fonksiyon çağırma desteği, bu modellerin dış araçlar ve hizmetlerle dinamik olarak etkileşime girmesini sağlar.
- Mantık ve Problem Çözme: Matematiksel mantık ve karmaşık problem çözme görevlerinde gelişmiş yetenekler.
Bu özelliklerin bazılarını daha yakından inceleyelim.
Performans Benchmark’leri
Mistral Large 2 ve Mistral NeMo’nun gerçek yeteneklerini anlamak için, çeşitli benchmark’lerdeki performanslarını incelemek önemlidir. Bazı ana metriklere bakalım:
Mistral Large 2 Benchmark’leri
Bu tablo, çeşitli LLM’lerin farklı programlama dillerinde uzmanlıklarını sunar. Mistral Large 2 (24.07), Llama 3.1 (405B) ve GPT-4o gibi modeller, Python, C++, Bash, Java, TypeScript, PHP ve C# gibi dillerde kod oluşturma ve anlama yeteneklerine göre değerlendirilir.
Llama 3.1 405B, birçok dilde güçlü bir performans sergiler, özellikle Python ve Java’da yüksek puanlar elde eder. Bu uzmanlık, kod oluşturma, hata ayıklama ve yazılım geliştirme gibi uygulamalar için kritiktir, bu nedenle bu modeller geliştiriciler için değerli araçlar haline gelir.
Mistral NeMo Benchmark’leri
Verilen bilgilerde Mistral NeMo için özel benchmark puanları sağlanmasa da, boyut kategorisinde state-of-the-art performans sergilediği belirtilir. Model, çeşitli görevlerde Gemma 2 9B ve Llama 3 8B gibi diğer son açık kaynaklı ön eğitimli modelleri geçer.
Çok Dilli ve Kod Oluşturma Becerileri
Hem Mistral Large 2 hem de Mistral NeMo’nun öne çıkan özelliklerinden biri, istisnai çok dilli yetenekleridir. Bu, giderek daha küreselleşen dünyada, AI modellerinin birden fazla dilde içerik anlayabilmesi ve üretebilmesi için kritiktir.
Mistral Large 2, örneğin, Fransızca, Almanca, İspanyolca, İtalyanca, Portekizce, Arapça, Hintçe, Rusça, Çince, Japonca ve Korece dahil olmak üzere birçok dili destekler. Bu çok dilli uzmanlık, yalnızca çeviriyle sınırlı değildir; bu dillerde anlama ve içerik oluşturma yeteneğini de içerir.
Örneğin, Mistral Large 2’nin birden fazla dilde metin oluşturma yeteneğini göstermek için:
[INST] İngilizce, Fransızca, Almanca, İspanyolca ve Japonca'da bir kısa selamlama oluşturun. [/INST]
İstenen dillerde kısa selamlamalar:
İngilizce: Merhaba! Bugün nasıl hissediyorsunuz?
Fransızca: Bonjour ! Comment allez-vous aujourd’hui ?
Almanca: Hallo! Wie geht es Ihnen heute?
İspanyolca: ¡Hola! ¿Cómo estás hoy?
Japonca: こんにちは!今日はお元気ですか?
[INST]
Şimdi, Python, Java ve JavaScript için basit bir “Merhaba, Dünya!” programı yazın. [/INST]
Bu örnekler, modelin hem çok dilli metin oluşturma hem de kod oluşturma yeteneklerini gösterir.
Her iki model de çeşitli platformlarda mevcuttur: Hugging Face, Mistral AI platformu ve Google Cloud Platform, Azure AI Studio, Amazon Bedrock ve IBM watsonx.ai gibi büyük bulut hizmet sağlayıcıları.
Ajans Paradigması ve Fonksiyon Çağırma
Hem Mistral Large 2 hem de Mistral NeMo, ajans-merkezli bir tasarıma sahiptir, bu da AI modelleriyle etkileşim şeklimizde bir paradigma değişikliğini temsil eder. Bu yaklaşım, modellerin çevreleriyle etkileşime girmesi, kararlar alması ve belirli hedeflere ulaşmak için eylemler gerçekleştirmesine odaklanır.
Bu paradigmayı mümkün kılan bir ana özellik, yerel fonksiyon çağırma desteğidir. Bu, modellerin dış araçlar ve hizmetlerle dinamik olarak etkileşime girmesini sağlar, böylece yeteneklerini basit metin oluşturmanın ötesine taşır.
Mistral Large 2 ile fonksiyon çağırmanın nasıl çalışabileceğine bir örnek verelim:
from mistral_common.protocol.instruct.tool_calls import Function, Tool
from mistral_inference.transformer import Transformer
from mistral_inference.generate import generate
from mistral_common.tokens.tokenizers.mistral import MistralTokenizer
from mistral_common.protocol.instruct.messages import UserMessage
from mistral_common.protocol.instruct.request import ChatCompletionRequest
<p># Tokenizer ve modeli başlatın
mistral_models_path = "path/to/mistral/models" # Bu yolun doğru olduğundan emin olun
tokenizer = MistralTokenizer.from_file(f"{mistral_models_path}/tokenizer.model.v3")
model = Transformer.from_folder(mistral_models_path)</p>
<p># Hava durumu bilgisini almak için bir fonksiyon tanımlayın
hava_durumu_fonksiyonu = Function(
name="get_current_weather",
description="Hava durumunu al",
parameters={
"type": "object",
"properties": {
"location": {
"type": "string",
"description": "Şehir ve eyalet, örneğin San Francisco, CA",
},
"format": {
"type": "string",
"enum": ["celsius", "fahrenheit"],
"description": "Sıcaklık birimi. Kullanıcının konumundan çıkar.",
},
},
"required": ["location", "format"],
},
)</p>
<p># Fonksiyonu sohbet tamamlama isteğine ekleyin
completion_request = ChatCompletionRequest(
tools=[Tool(function=hava_durumu_fonksiyonu)],
messages=[
UserMessage(content="Bugün Paris'te hava nasıl?"),
],
)</p>
<p># İsteği kodlayın
tokens = tokenizer.encode_chat_completion(completion_request).tokens</p>
<p># Cevap oluşturun
out_tokens, _ = generate([tokens], model, max_tokens=256, temperature=0.7, eos_id=tokenizer.instruct_tokenizer.tokenizer.eos_id)
result = tokenizer.decode(out_tokens[0])</p>
print(result)
Bu örnek, modelin dış hizmetlerle etkileşime girmesini ve gerçek zamanlı hava durumu verisi gibi daha doğru ve güncel bilgiler sağlayabilmesini gösterir.
Tekken: Daha Verimli Bir Tokenizer
Mistral NeMo, Tiktoken’a dayanan ve 100’den fazla dilde eğitilen yeni bir tokenizer olan Tekken’i tanıtıyor. Bu yeni tokenizer, önceki tokenizörler gibi SentencePiece’e kıyasla metin sıkıştırma verimliliği açısından önemli gelişmeler sunar.
Tekken’in bazı önemli özellikleri şunlardır:
- Kaynak kodu, Çince, İtalyanca, Fransızca, Almanca, İspanyolca ve Rusça için %30 daha verimli sıkıştırma
- Korece için 2 kat daha verimli sıkıştırma
- Arapça için 3 kat daha verimli sıkıştırma
- Tüm dillerin yaklaşık %85’inde Llama 3 tokenizer’ini metin sıkıştırmasında geride bırakır
Bu geliştirilmiş tokenizasyon verimliliği, özellikle çok dilli metin ve kaynak kodu işlemede model performansını iyileştirir. Model, aynı bağlam penceresi içinde daha fazla bilgi işleyebilir, bu da daha tutarlı ve bağlamsal olarak ilgili çıktılara yol açar.
Lisanslama ve Kullanılabilirlik
Mistral Large 2 ve Mistral NeMo, farklı lisanslama modellerine sahiptir, bu da amaçlanan kullanım durumlarını yansıtır:
Mistral Large 2
- Mistral Araştırma Lisansı altında yayınlandı
- Araştırma ve ticari olmayan amaçlar için kullanım ve değişiklik izni verir
- Ticari kullanım için Mistral Ticari Lisansı gerekir
Mistral NeMo
- Apache 2.0 lisansı altında yayınlandı
- Açık kullanım, ticari uygulamalar dahil, için izin verir
Her iki model de çeşitli platformlarda mevcuttur:
- Hugging Face: Hem temel hem de talimatlı modellerin ağırlıkları burada barındırılır
- Mistral AI:
mistral-large-2407(Mistral Large 2) veopen-mistral-nemo-2407(Mistral NeMo) olarak mevcuttur - Bulut Hizmet Sağlayıcıları: Google Cloud Platform’un Vertex AI, Azure AI Studio, Amazon Bedrock ve IBM watsonx.ai’de mevcuttur
Geliştiriciler için bu modelleri kullanmak isteyenler için, Hugging Face transformers ile Mistral Large 2’yi yüklemek ve kullanmak için hızlı bir örnek:
from transformers import AutoModelForCausalLM, AutoTokenizer
<p>model_name = "mistralai/Mistral-Large-Instruct-2407"
device = "cuda" # Mevcutsa GPU kullanın</p>
<p># Modeli ve tokenizer'ı yükleme
model = AutoModelForCausalLM.from_pretrained(model_name)
tokenizer = AutoTokenizer.from_pretrained(model_name)</p>
<p># Modeli uygun cihaza taşıma
model.to(device)</p>
<p># Girişi hazırlama
messages = [
{"role": "system", "content": "Siz bir yardımcı AI asistanısınız."},
{"role": "user", "content": "Sinir ağları kavramını basit terimlerle açıklar mısınız?"},
]</p>
<p># Girişi kodlama
input_ids = tokenizer.apply_chat_template(messages, return_tensors="pt").to(device)</p>
<p># Cevap oluşturma
output_ids = model.generate(input_ids, max_new_tokens=500, do_sample=True)</p>
<p># Çıktıyı decode etme ve yazdırma
response = tokenizer.decode(output_ids[0], skip_special_tokens=True)
print(response)</p>
Bu kod, modeli yüklemeyi, sohbet formatında girişi hazırlamayı, cevabı oluşturmayı ve çıktı verisini decode etmeyi gösterir.
















