Connect with us

Mistral 2 und Mistral NeMo: Ein umfassender Leitfaden zu den neuesten LLMs aus Paris

Künstliche Intelligenz

Mistral 2 und Mistral NeMo: Ein umfassender Leitfaden zu den neuesten LLMs aus Paris

mm
Mistral Large 2 and Mistral NeMo

Gegründet von ehemaligen Mitarbeitern von Google’s DeepMind und Meta, hat das in Paris ansässige Startup Mistral AI seit 2023 kontinuierlich Wellen in der AI-Gemeinschaft geschlagen.

Mistral AI erregte erstmals die Aufmerksamkeit der Welt mit seinem Debütmodell, Mistral 7B, das 2023 veröffentlicht wurde. Dieses 7-Milliarden-Parameter-Modell gewann schnell an Popularität für seine beeindruckende Leistung, indem es größere Modelle wie Llama 2 13B in verschiedenen Benchmarks übertraf und sogar Llama 1 34B in vielen Metriken übertraf. Was Mistral 7B von anderen Modellen abhob, war nicht nur seine Leistung, sondern auch seine Zugänglichkeit – das Modell konnte leicht von GitHub heruntergeladen oder sogar über einen 13,4-Gigabyte-Torrent bezogen werden, was es für Forscher und Entwickler auf der ganzen Welt leicht zugänglich machte.

Der unkonventionelle Ansatz des Unternehmens bei Veröffentlichungen, oft ohne traditionelle Papiere, Blogs oder Pressemitteilungen, hat sich als außerordentlich effektiv erwiesen, um die Aufmerksamkeit der AI-Gemeinschaft zu gewinnen. Diese Strategie, kombiniert mit ihrem Engagement für Open-Source-Prinzipien, hat Mistral AI zu einem bedeutenden Spieler im AI-Landschaft gemacht.

Der rasante Aufstieg von Mistral AI in der Branche wird weiter durch ihren jüngsten Finanzierungerfolg belegt. Das Unternehmen erreichte eine beeindruckende Bewertung von 2 Milliarden US-Dollar nach einer von Andreessen Horowitz angeführten Finanzierungsrunde – dies kam auf dem Fuße eines historischen Seed-Rounds von 118 Millionen US-Dollar, dem größten in der europäischen Geschichte, was die immense Zuversicht der Investoren in die Vision und Fähigkeiten von Mistral AI unterstreicht.

Jenseits ihrer technologischen Fortschritte war Mistral AI auch aktiv an der Gestaltung der AI-Politik beteiligt, insbesondere in Diskussionen um den EU-AI-Gesetz, wo sie für reduzierte Regulierung von Open-Source-AI plädierten.

Jetzt, im Jahr 2024, hat Mistral AI erneut die Latte mit zwei bahnbrechenden Modellen gehoben: Mistral Large 2 (auch bekannt als Mistral-Large-Instruct-2407) und Mistral NeMo. In diesem umfassenden Leitfaden werden wir tief in die Funktionen, Leistung und potenziellen Anwendungen dieser beeindruckenden AI-Modelle eintauchen.

Schlüsselspezifikationen von Mistral Large 2 umfassen:

  • 123 Milliarden Parameter
  • 128k Kontextfenster
  • Unterstützung für Dutzende von Sprachen
  • Profizienz in 80+ Programmiersprachen
  • Erweiterte Funktionsaufruf-Fähigkeiten

Das Modell ist darauf ausgelegt, die Grenzen der Kosteneffizienz, Geschwindigkeit und Leistung zu erweitern, was es zu einer attraktiven Option für Forscher und Unternehmen macht, die auf cutting-edge-AI setzen möchten.

Mistral NeMo: Das neue kleinere Modell

Während Mistral Large 2 das Beste von Mistral AIs großen Modellen repräsentiert, nimmt Mistral NeMo, das im Juli 2024 veröffentlicht wurde, einen anderen Ansatz. Entwickelt in Zusammenarbeit mit NVIDIA, ist Mistral NeMo ein kompaktes 12-Milliarden-Parameter-Modell, das dennoch beeindruckende Fähigkeiten bietet:

  • 12 Milliarden Parameter
  • 128k Kontextfenster
  • State-of-the-Art-Leistung in seiner Größenkategorie
  • Apache 2.0-Lizenz für offene Nutzung
  • Quantisierungs-bewusstes Training für effiziente Inferenz

Mistral NeMo wird als Ersatz für Systeme positioniert, die derzeit Mistral 7B verwenden, und bietet verbesserte Leistung bei gleichzeitiger Beibehaltung der Benutzerfreundlichkeit und Kompatibilität.

Schlüsselmerkmale und Fähigkeiten

Sowohl Mistral Large 2 als auch Mistral NeMo teilen sich mehrere Schlüsselmerkmale, die sie im AI-Landschaft abheben:

  1. Große Kontextfenster: Mit 128k Token-Kontextlängen können beide Modelle längere Textpassagen verarbeiten und verstehen, was zu kohärenteren und kontextuell relevanteren Ausgaben führt.
  2. Mehrsprachige Unterstützung: Die Modelle excellieren in einer breiten Palette von Sprachen, einschließlich Englisch, Französisch, Deutsch, Spanisch, Italienisch, Chinesisch, Japanisch, Koreanisch, Arabisch und Hindi.
  3. Erweiterte Codierfähigkeiten: Beide Modelle zeigen außergewöhnliche Fähigkeiten in der Codegenerierung in zahlreichen Programmiersprachen.
  4. Anweisungsfolge: Es wurden signifikante Verbesserungen in der Fähigkeit der Modelle vorgenommen, präzise Anweisungen zu befolgen und mehrstufige Gespräche zu führen.
  5. Funktionsaufruf: Native Unterstützung für Funktionsaufrufe ermöglicht es diesen Modellen, dynamisch mit externen Tools und Diensten zu interagieren.
  6. Argumentations- und Problemlösungsfähigkeiten: Verbesserte Fähigkeiten in mathematischer Argumentation und komplexen Problemlösungsaufgaben.

Lassen Sie uns einige dieser Funktionen und ihre Leistung in der Praxis untersuchen.

Leistungsbenchmarks

Um die tatsächlichen Fähigkeiten von Mistral Large 2 und Mistral NeMo zu verstehen, ist es wichtig, ihre Leistung in verschiedenen Benchmarks zu betrachten. Lassen Sie uns einige Schlüsselmetriken untersuchen:

Mistral Large 2 Benchmarks

Diese Tabelle präsentiert die Fähigkeiten verschiedener LLMs in verschiedenen Programmiersprachen. Modelle wie Mistral Large 2 (24.07), Llama 3.1 (405B) und GPT-4o werden auf ihre Fähigkeit hin bewertet, Code in Sprachen wie Python, C++, Bash, Java, TypeScript, PHP und C# zu verstehen und zu generieren.

Llama 3.1 405B zeigt starke Leistung in mehreren Sprachen, insbesondere in Python und Java. Diese Fähigkeit ist entscheidend für Anwendungen, die Codegenerierung, Debugging und Softwareentwicklung umfassen, was diese Modelle zu wertvollen Werkzeugen für Entwickler macht.

https://mistral.ai/news/mistral-large-2407/

https://mistral.ai/news/mistral-large-2407/

https://mistral.ai/news/mistral-large-2407/

https://mistral.ai/news/mistral-large-2407/

Mistral NeMo Benchmarks

Während spezifische Benchmark-Ergebnisse für Mistral NeMo in den bereitgestellten Informationen nicht angegeben sind, wird es als state-of-the-art-Leistung in seiner Größenkategorie beschrieben. Das Modell übertrifft andere aktuelle Open-Source-Pretrained-Modelle wie Gemma 2 9B und Llama 3 8B in verschiedenen Aufgaben.

Mehrsprachige und Codierfähigkeiten

Eine der herausragenden Funktionen von beiden Mistral Large 2 und Mistral NeMo ist ihre außergewöhnliche mehrsprachige Fähigkeit. Dies ist besonders wichtig in unserer zunehmend globalisierten Welt, in der AI-Modelle Texte in mehreren Sprachen verstehen und generieren müssen.

Mistral Large 2 unterstützt beispielsweise Dutzende von Sprachen, einschließlich Französisch, Deutsch, Spanisch, Italienisch, Portugiesisch, Arabisch, Hindi, Russisch, Chinesisch, Japanisch und Koreanisch. Diese mehrsprachige Fähigkeit geht über einfache Übersetzung hinaus und umfasst nuancierte Verständnis und Generierung in diesen Sprachen.

Um dies zu veranschaulichen, lassen Sie uns ein Beispiel von Mistral Large 2 betrachten, das Texte in mehreren Sprachen generiert:

[INST] Generiere eine kurze Begrüßung in Englisch, Französisch, Deutsch, Spanisch und Japanisch. [/INST]

Hier sind kurze Begrüßungen in den angeforderten Sprachen:

Englisch: Hello! Wie geht es Ihnen heute?
Französisch: Bonjour ! Comment allez-vous aujourd’hui ?
Deutsch: Hallo! Wie geht es Ihnen heute?
Spanisch: ¡Hola! ¿Cómo estás hoy?
Japanisch: こんにちは!今日はお元気ですか?

[INST]

Jetzt schreibe ein einfaches “Hello, World!”-Programm in Python, Java und JavaScript. [/INST]

Diese Beispiele zeigen sowohl die mehrsprachige Textgenerierung als auch die Codierfähigkeiten des Modells.

Beide Modelle sind auf verschiedenen Plattformen wie Hugging Face, Mistral AIs Plattform und großen Cloud-Dienstleistern wie Google Cloud Platform, Azure AI Studio, Amazon Bedrock und IBM watsonx.ai verfügbar. (Mistral AI | Frontier AI in Ihrer Hand)​​​.

Das Agentic-Paradigma und Funktionsaufruf

Sowohl Mistral Large 2 als auch Mistral NeMo umfassen ein agentic-zentrisches Design, das einen Paradigmenwechsel in der Interaktion mit AI-Modellen darstellt. Dieser Ansatz konzentriert sich auf die Entwicklung von Modellen, die mit ihrer Umgebung interagieren, Entscheidungen treffen und Aktionen ausführen können, um bestimmte Ziele zu erreichen.

Eine Schlüsselfunktion, die dieses Paradigma ermöglicht, ist die native Unterstützung für Funktionsaufrufe. Dies ermöglicht es den Modellen, dynamisch mit externen Tools und Diensten zu interagieren, was ihre Fähigkeiten über einfache Textgenerierung hinaus erweitert.

Lassen Sie uns ein Beispiel betrachten, wie Funktionsaufrufe mit Mistral Large 2 funktionieren könnten:

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

# Initialisiere Tokenizer und Modell
mistral_models_path = "path/to/mistral/models" # Stellen Sie sicher, dass dieser Pfad korrekt ist
tokenizer = MistralTokenizer.from_file(f"{mistral_models_path}/tokenizer.model.v3")
model = Transformer.from_folder(mistral_models_path)

# Definiere eine Funktion für das Abrufen von Wetterinformationen
weather_function = Function(
name="get_current_weather",
description="Abrufen des aktuellen Wetters",
parameters={
"type": "object",
"properties": {
"location": {
"type": "string",
"description": "Die Stadt und den Staat, z.B. San Francisco, CA",
},
"format": {
"type": "string",
"enum": ["celsius", "fahrenheit"],
"description": "Die Temperatur-Einheit, die verwendet werden soll. Inferieren Sie dies aus dem Benutzerstandort.",
},
},
"required": ["location", "format"],
},
)

# Erstelle eine Chat-Vervollständigungsanfrage mit der Funktion
completion_request = ChatCompletionRequest(
tools=[Tool(function=weather_function)],
messages=[
UserMessage(content="Wie ist das Wetter heute in Paris?"),
],
)

# Kodiere die Eingabe
input_ids = tokenizer.apply_chat_template(completion_request).to("pt")

# Generiere eine Antwort
output_ids = model.generate(input_ids, max_new_tokens=256, do_sample=True)

# Dekodiere und drucke die Antwort
result = tokenizer.decode(output_ids[0], skip_special_tokens=True)
print(result)

In diesem Beispiel definieren wir eine Funktion zum Abrufen von Wetterinformationen und fügen sie unserer Chat-Vervollständigungsanfrage hinzu. Das Modell kann dann diese Funktion verwenden, um Echtzeit-Wetterdaten abzurufen, was zeigt, wie es mit externen Systemen interagieren kann, um genauere und aktuellere Informationen bereitzustellen.

Tekken: Ein effizienterer Tokenizer

Mistral NeMo führt einen neuen Tokenizer namens Tekken ein, der auf Tiktoken basiert und auf über 100 Sprachen trainiert wurde. Dieser neue Tokenizer bietet signifikante Verbesserungen in der Textkomprimierungseffizienz im Vergleich zu früheren Tokenizern wie SentencePiece.

Schlüsselmerkmale von Tekken umfassen:

  • 30% effizientere Komprimierung für Quellcode, Chinesisch, Italienisch, Französisch, Deutsch, Spanisch und Russisch
  • 2-mal effizientere Komprimierung für Koreanisch
  • 3-mal effizientere Komprimierung für Arabisch
  • Übertrifft den Llama-3-Tokenizer bei der Komprimierung von Texten für etwa 85% aller Sprachen

Diese verbesserte Tokenisierungseffizienz führt zu besserer Modellleistung, insbesondere bei der Verarbeitung von mehrsprachigem Text und Quellcode. Sie ermöglicht es dem Modell, mehr Informationen innerhalb des gleichen Kontextfensters zu verarbeiten, was zu kohärenteren und kontextuell relevanteren Ausgaben führt.

Lizenzierung und Verfügbarkeit

Mistral Large 2 und Mistral NeMo haben unterschiedliche Lizenzmodelle, die ihre beabsichtigten Anwendungsfälle widerspiegeln:

Mistral Large 2

  • Veröffentlicht unter der Mistral-Forschungslizenz
  • Erlaubt die Nutzung und Modifizierung für Forschungs- und nicht-kommerzielle Zwecke
  • Kommerzielle Nutzung erfordert eine Mistral-Commercial-Lizenz

Mistral NeMo

  • Veröffentlicht unter der Apache-2.0-Lizenz
  • Erlaubt offene Nutzung, einschließlich kommerzieller Anwendungen

Beide Modelle sind über verschiedene Plattformen verfügbar:

  • Hugging Face: Gewichte für beide Basis- und Instruct-Modelle sind hier gehostet
  • Mistral AI: Verfügbar als mistral-large-2407 (Mistral Large 2) und open-mistral-nemo-2407 (Mistral NeMo)
  • Cloud-Dienstleister: Verfügbar auf Google Cloud Platform’s Vertex AI, Azure AI Studio, Amazon Bedrock und IBM watsonx.ai
https://mistral.ai/news/mistral-large-2407/

https://mistral.ai/news/mistral-large-2407/

Für Entwickler, die diese Modelle nutzen möchten, hier ein schnelles Beispiel, wie man Mistral Large 2 mit Hugging Face-Transformern laden und verwenden kann:

from transformers import AutoModelForCausalLM, AutoTokenizer

model_name = "mistralai/Mistral-Large-Instruct-2407"
device = "cuda" # Verwenden Sie GPU, wenn verfügbar

# Lade das Modell und den Tokenizer
model = AutoModelForCausalLM.from_pretrained(model_name)
tokenizer = AutoTokenizer.from_pretrained(model_name)

# Verschiebe das Modell auf das entsprechende Gerät
model.to(device)

# Vorbereiten der Eingabe
messages = [
{"role": "system", "content": "Sie sind ein hilfreicher AI-Assistent."},
{"role": "user", "content": "Erklären Sie das Konzept von neuronalen Netzen in einfachen Worten."},
]

# Kodieren der Eingabe
input_ids = tokenizer.apply_chat_template(messages, return_tensors="pt").to(device)

# Generieren einer Antwort
output_ids = model.generate(input_ids, max_new_tokens=500, do_sample=True)

# Dekodieren und Ausgeben der Antwort
response = tokenizer.decode(output_ids[0], skip_special_tokens=True)
print(response)

Dieser Code zeigt, wie man das Modell lädt, die Eingabe in einem Chat-Format vorbereitet, eine Antwort generiert und die Ausgabe dekodiert.

Einschränkungen und ethische Überlegungen

Während Mistral Large 2 und Mistral NeMo einen bedeutenden Fortschritt in der AI-Technologie darstellen, ist es wichtig, ihre Einschränkungen und die ethischen Überlegungen, die ihre Nutzung umgeben, zu berücksichtigen:

  1. Potenzial für Voreingenommenheit: Wie alle AI-Modelle, die auf großen Datensätzen trainiert werden, können diese Modelle Voreingenommenheiten in ihren Trainingsdaten erben und verstärken. Benutzer sollten sich dieser Tatsache bewusst sein und entsprechende Schutzmaßnahmen ergreifen.
  2. Fehlendes wahres Verständnis: Trotz ihrer beeindruckenden Fähigkeiten besitzen diese Modelle kein wahres Verständnis oder Bewusstsein. Sie generieren Antworten auf der Grundlage von Mustern in ihren Trainingsdaten, was manchmal zu plausiblen, aber falschen Informationen führen kann.
  3. Privatsphäre-Bedenken: Wenn diese Modelle verwendet werden, insbesondere in Anwendungen, die sensible Informationen verarbeiten, ist es wichtig, Datenschutz- und Sicherheitsaspekte zu berücksichtigen.

Schlussfolgerung

Das Feinabstimmen von fortschrittlichen Modellen wie Mistral Large 2 und Mistral NeMo bietet eine großartige Gelegenheit, cutting-edge-AI für eine Vielzahl von Anwendungen zu nutzen, von dynamischem Funktionsaufruf bis hin zu effizienter mehrsprachiger Verarbeitung. Hier sind einige praktische Tipps und wichtige Erkenntnisse, die zu beachten sind:

  1. Verstehen Sie Ihren Anwendungsfall: Definieren Sie genau die spezifischen Aufgaben und Ziele, die Sie mit Ihrem Modell erreichen möchten. Dieses Verständnis wird Ihre Wahl des Modells und des Feinabstimmungsansatzes leiten, sei es Mistral’s robuste Funktionsaufruf-Fähigkeiten oder seine effiziente mehrsprachige Textverarbeitung.
  2. Optimieren Sie für Effizienz: Nutzen Sie den Tekken-Tokenizer, um die Textkomprimierungseffizienz erheblich zu verbessern, insbesondere wenn Ihre Anwendung große Textmengen oder mehrere Sprachen umfasst. Dies verbessert die Modellleistung und reduziert die Rechenkosten.
  3. Nutzen Sie Funktionsaufrufe: Embracieren Sie das agentic-Paradigma, indem Sie Funktionsaufrufe in Ihre Modellinteraktionen integrieren. Dies ermöglicht es Ihrem AI-Modell, dynamisch mit externen Tools und Diensten zu interagieren, was genauere und handlungsfähigere Ausgaben liefert. Zum Beispiel kann die Integration von Wetter-APIs oder anderen externen Datenquellen die Relevanz und Nützlichkeit der Antworten Ihres Modells erheblich steigern.
  4. Wählen Sie die richtige Plattform: Stellen Sie sicher, dass Sie Ihre Modelle auf Plattformen bereitstellen, die ihre Fähigkeiten unterstützen, wie Google Cloud Platform’s Vertex AI, Azure AI Studio, Amazon Bedrock und IBM watsonx.ai. Diese Plattformen bieten die notwendige Infrastruktur und Tools, um die Leistung und Skalierbarkeit Ihrer AI-Modelle zu maximieren.

Indem Sie diesen Tipps folgen und die bereitgestellten Codebeispiele nutzen, können Sie die Kraft von Mistral Large 2 und Mistral NeMo effektiv für Ihre spezifischen Bedürfnisse nutzen.

Ich habe die letzten fünf Jahre damit verbracht, mich in die faszinierende Welt des Machine Learning und Deep Learning zu vertiefen. Meine Leidenschaft und mein Fachwissen haben mich dazu geführt, an über 50 verschiedenen Software-Entwicklungsprojekten mitzuwirken, mit einem besonderen Fokus auf KI/ML. Meine anhaltende Neugier hat mich auch zum Natural Language Processing hingezogen, ein Feld, das ich weiter erforschen möchte.