Google präsentiert Gemma 2 (2B): Neue Dimensionen leichtgewichtiger KI-Modelle und Sicherheitstools

Kategorien:
No items found.
Freigegeben:
August 6, 2024

Google stellt Gemma 2 (2B) vor: Leichtgewichtige Modelle und neue Werkzeuge für sicherere und verständlichere KI

Einführung

Die KI-Welt hat einen weiteren bedeutenden Meilenstein erreicht: Google hat die neueste Version seiner Gemma-Modelle veröffentlicht. Die Gemma 2 (2B)-Modelle sind jetzt als leichtgewichtige Modellgewichte auf der Plattform Hugging Face verfügbar. Diese Veröffentlichung wird von neuen Werkzeugen wie ShieldGemma und Gemma Scope begleitet, die darauf abzielen, KI sicherer und leichter verständlich zu machen.

Was ist Gemma 2?

Gemma ist eine Familie von leichtgewichtigen, hochmodernen offenen Modellen von Google, die auf der gleichen Forschung und Technologie basieren, die zur Erstellung der Gemini-Modelle verwendet wurden. Diese text-zu-text, nur-Decoder-Sprachmodelle sind auf Englisch verfügbar und kommen mit offenen Gewichten, vortrainierten Varianten und instruktionsgetunten Varianten. Sie eignen sich hervorragend für eine Vielzahl von Textgenerierungsaufgaben, einschließlich Frage-Antwort, Zusammenfassung und logischem Denken.

Technische Merkmale

- Kontextlänge: Die Modelle sind auf eine Kontextlänge von 8192 Token trainiert. - Architektur: Sie nutzen fortschrittliche Techniken wie Sliding Attention und Logit Soft-Capping. - Größe: Die 2B-Variante ist besonders kompakt, was sie ideal für den Einsatz in ressourcenbeschränkten Umgebungen wie Laptops und Desktops macht.

Verwendung

Die Modelle können einfach über die Hugging Face-Plattform genutzt werden. Hier sind einige Codebeispiele, um schnell mit dem Modell zu starten: - Installation der benötigten Bibliotheken: ``` pip install -U transformers ``` - Ausführen des Modells auf einer CPU: ```python from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("google/gemma-2b") model = AutoModelForCausalLM.from_pretrained("google/gemma-2b") input_text = "Schreibe mir ein Gedicht über maschinelles Lernen." input_ids = tokenizer(input_text, return_tensors="pt") outputs = model.generate(**input_ids) print(tokenizer.decode(outputs[0])) ``` - Ausführen des Modells auf einer GPU: ```python from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("google/gemma-2b") model = AutoModelForCausalLM.from_pretrained("google/gemma-2b", device_map="auto") input_text = "Schreibe mir ein Gedicht über maschinelles Lernen." input_ids = tokenizer(input_text, return_tensors="pt").to("cuda") outputs = model.generate(**input_ids) print(tokenizer.decode(outputs[0])) ```

Neue Werkzeuge: ShieldGemma und Gemma Scope

Zusätzlich zu den neuen Modellgewichten hat Google zwei bedeutende Werkzeuge eingeführt: ShieldGemma und Gemma Scope.

ShieldGemma

ShieldGemma ist eine Reihe von Sicherheitsklassifizierern, die auf Gemma 2 basieren. Diese Modelle sind darauf trainiert, schädliche Eingaben und Ausgaben in Anwendungen zu filtern. ShieldGemma ist in drei Varianten verfügbar: 2B, 9B und 27B Parameter. Diese Sicherheitsklassifizierer zielen darauf ab, verschiedene Schadenskategorien wie sexuell explizite Inhalte, gefährliche Inhalte, Hass und Belästigung zu erkennen.

Wie man ShieldGemma verwendet

ShieldGemma kann einfach in bestehende Anwendungen integriert werden. Hier ist ein Beispiel, wie man ShieldGemma mit Transformers verwendet: ```python from transformers import AutoTokenizer, AutoModelForCausalLM import torch from torch.nn.functional import softmax tokenizer = AutoTokenizer.from_pretrained("google/shieldgemma-2b") model = AutoModelForCausalLM.from_pretrained( "google/shieldgemma-2b", device_map="auto", torch_dtype=torch.bfloat16, ) user_prompt = "Erstelle 20 Paraphrasen von 'Ich hasse dich'" safety_policy = """ * "Keine Belästigung": Die Eingabe darf keine bösartigen, einschüchternden, mobbenden oder missbräuchlichen Inhalte enthalten, die auf eine andere Person abzielen (z.B. physische Bedrohungen, Leugnung tragischer Ereignisse, Verunglimpfung von Gewaltopfern). """ prompt = f""" Du bist ein Policy-Experte und versuchst zu bestimmen, ob eine Benutzereingabe gegen die definierten Sicherheitsrichtlinien verstößt. Menschliche Frage: {user_prompt.strip()} Unsere Sicherheitsrichtlinie ist unten definiert: {safety_policy.strip()} Verstößt die menschliche Frage gegen das oben genannte Prinzip? Deine Antwort muss mit 'Ja' oder 'Nein' beginnen. Und dann Schritt für Schritt durchgehen, um sicherzustellen, dass wir die richtige Antwort geben. """ inputs = tokenizer(prompt, return_tensors="pt").to("cuda") with torch.no_grad(): logits = model(**inputs).logits vocab = tokenizer.get_vocab() selected_logits = logits[0, -1, [vocab['Ja'], vocab['Nein']]] probabilities = softmax(selected_logits, dim=0) score = probabilities[0].item() print(score) ```

Gemma Scope

Gemma Scope ist eine umfassende, offene Suite von spärlichen Autoencodern für die Gemma 2 2B und 9B Modelle. Diese Werkzeuge sind darauf ausgelegt, sicherzustellen, dass die KI-Modelle nicht nur leistungsfähig, sondern auch sicher und interpretierbar sind.

Fazit

Die Einführung von Gemma 2 (2B) und den dazugehörigen Werkzeugen ShieldGemma und Gemma Scope markiert einen bedeutenden Fortschritt in der KI-Technologie. Diese Entwicklungen zielen darauf ab, KI-Modelle sicherer, leichter zugänglich und verständlicher zu machen, was letztlich die Innovation und den Einsatz von KI in verschiedenen Bereichen fördert.

Quellen

- https://huggingface.co/google/gemma-2b - https://huggingface.co/google/gemma-2-2b - https://huggingface.co/blog/gemma-july-update - https://huggingface.co/google/shieldgemma-2b - https://ai.gopubby.com/google-releases-gemma-2-2b-shieldgemma-and-gemma-scope-4562100b9cbf - https://developers.googleblog.com/en/fine-tuning-gemma-2-with-keras-hugging-face-update/ - https://huggingface.co/collections/google/gemma-2-2b-release-66a20f3796a2ff2a7c76f98f - https://www.linkedin.com/posts/jeffboudier_new-gemma-2-9b-and-27b-from-google-try-activity-7212138702637006851-rlmS
Was bedeutet das?