Direkt zum Inhalt

Nvidia's Llama Mesh: Ein Leitfaden mit Beispielen

Erfahre mehr über das 3D-Mesh-Generierungsmodell von NVIDIA, LLaMA-Mesh, einschließlich seiner Fähigkeiten, Einschränkungen, Installationsanweisungen und Beispiele.
Aktualisierte 16. Jan. 2025  · 8 Min. Lesezeit

Vor kurzem hat NVIDIA ein innovatives Modell namens LLaMA-Meshveröffentlicht, das in der Lage ist, 3D-Netze aus einfachen Textbeschreibungen zu erzeugen.

Es funktioniert auch andersherum: Bei einem 3D-Netz kann das Modell das Objekt identifizieren.

Dies ist ein bedeutender Fortschritt für das maschinelle Lernen, denn das Verständnis des 3D-Raums ist ein entscheidender Schritt auf dem Weg zu AGI. LLaMA-Mesh ist auch ein wertvolles Werkzeug für Profis und Enthusiasten, die häufig mit Software wie Blender arbeiten, da es die Erstellung und Verwendung von 3D-Netzen beschleunigt.

In diesem kurzen Leitfaden erkläre ich dir die Möglichkeiten des Modells und führe ein paar Beispiele an, damit du sein Potenzial und seine Grenzen verstehst.

Was ist LLaMa-Mesh?

LLaMA-Mesh ist ein innovatives, von NVIDIA entwickeltes Modell, das die Fähigkeiten von großen Sprachmodellen (LLMs) auf den 3D-Bereich erweitert.

Wie kein anderes Modell zuvor vereint LLaMA-Mesh Text und 3D-Modalitäten und ermöglicht es den Nutzern, 3D-Netze durch einfache natürlichsprachliche Eingabeaufforderungen zu erstellen. 

Unter der Haube ist das Modell ein fein abgestimmter LLaMa-3.1-8B-Instruct. Das Modell funktioniert, indem es 3D-Mesh-Daten in einem textbasierten Format kodiert, insbesondere mit dem OBJ-Dateistandard, der Eckpunkte und Flächen als reinen Text beschreibt.

Wie man auf LLaMa-Mesh zugreift

Es gibt drei Möglichkeiten, wie du das Modell nutzen kannst:

  1. Du kannst das Modell lokal über Hugging Face ausführen - das Repository ist verfügbar hier.
  2. Für diejenigen unter euch, die Blender beherrschen und das Modell dort verwenden wollen, ist es als Blender Addon.
  3. Die Autoren haben auch eine Online-Demo auf der Hugging Face Plattform eingerichtet, die ich nutzen werde, um Versuchsnetze für den Leitfaden zu erstellen.

So sieht die Demo-WebApp aus:

Nvidia Llama Mesh

Die Online-Demo unterstützt bis zu 4096 Token, während das Vollmodell 8K unterstützt. Deshalb müssen wir das Modell lokal ausführen, um seine volle Leistungsfähigkeit zu erfahren.

Als Nächstes werde ich drei Beispiele für Formen mit steigendem Schwierigkeitsgrad erstellen, um die Grenzen des Modells zu testen. Ich werde die Beispiele sowohl mit der 4K- als auch mit der 8K-Token-Version des Modells durchführen, um zu sehen, wie sie sich unterscheiden.

So richtest du LLaMa-Mesh für die lokale oder cloudbasierte Nutzung ein

In dieser Anleitung zeige ich dir, wie du das Modell mit der A100 GPU-Runtime von Google Colab ausführst. Wenn du vor Ort über genügend Rechenleistung verfügst, kann derselbe Code auch auf deiner persönlichen Hardware ausgeführt werden. Das Hugging Face Repository ist verfügbar hier.

Um loszulegen, müssen wir die notwendigen Bibliotheken importieren und das Modell und den Tokenizer herunterladen:

from transformers import AutoModelForCausalLM, AutoTokenizer


model_path = "Zhengyi/LLaMA-Mesh"
tokenizer = AutoTokenizer.from_pretrained(model_path)
model = AutoModelForCausalLM.from_pretrained(model_path, device_map="auto").cuda()

Wir müssen auch die pad_token einstellen:

if tokenizer.pad_token_id is None:
    tokenizer.pad_token_id = tokenizer.eos_token_id

Zum Schluss müssen wir die Eingabeaufforderung tokenisieren und in ein Modell zur Inferenz einspeisen (all das ist ein Standard-Workflow von Huggingface, der mit fast jedem anderen Modell funktioniert):

prompt = "Create a 3D model of an original designer chair."
inputs = tokenizer(prompt, return_tensors="pt", padding=True)
input_ids = inputs.input_ids.cuda()
output = model.generate(
    input_ids,
    attention_mask=inputs['attention_mask'],  # Provide the attention_mask
    max_length=8000,
)

Die Autoren geben nicht an, welche Hyperparameter sie in der Web-App-Demo verwenden. Um fair zu sein, werde ich die Standardwerte für unseren Vergleich verwenden.

LLaMa-Mesh Beispiele

Ich gehe jetzt drei Beispiele mit steigendem Schwierigkeitsgrad durch und vergleiche die Ergebnisse der Demo-App mit den Ergebnissen, die ich erhalte, wenn ich das Modell auf Colab laufen lasse.

Beispiel 1: A Stuhl

Wir beginnen mit etwas Einfachem, aber Kreativem - einem Designerstuhl. Hier ist die Eingabeaufforderung (ich füge am Ende die Bitte hinzu, das Mesh im OBJ-Format zu generieren, weil das lokal laufende Modell sich manchmal weigert, etwas anderes zu generieren):

Create a 3D model of an original designer chair in OBJ format.

Hier ist das generierte Objekt in der Online-Demo:

nvidia llama mesh example - 3D-Mesh-Visualisierung eines Stuhls

Es ist auf jeden Fall ein cooler und seltsamer Stuhl, auch wenn er mehr an den Stuhl eines Filmregisseurs erinnert als an den eines Designers.

Versuchen wir nun, die Eingabeaufforderung lokal auszuführen und das Ergebnis zu visualisieren. Das ist es, was wir bekommen:

nvidia llama mesh example - 3D-Mesh-Visualisierung eines Stuhls

3D-Netzvisualisierung eines Stuhls

Die Masche mit einem größeren Kontext sieht detaillierter aus. Meiner Meinung nach sieht der Stuhl aber eher wie eine Couch aus.

Beispiel 2: A Torus

Als Nächstes wollen wir ein geometrisches Objekt ausprobieren: einen Torus (einen 3D-Donut). Die Aufforderung für dieses Beispiel lautet:

Create a 3D model of a torus in OBJ format.

So sieht das von einem 4096er Modell erzeugte Netz aus:

nvidia llama mesh torus beispiel

Vom Modell erzeugter Torus

Auf der anderen Seite siehst du hier die Visualisierung des Netzes, das durch das Modell in Colab erzeugt wurde:

nvidia llama mesh torus beispiel

Vom Modell erzeugter Torus

Wie du sehen kannst, hat dieses Netz viel mehr Polygone. Sie hat aber immer noch kein Loch in der Mitte. So sollte ein Torus aussehen:

Beispiel für einen Torus

Quelle: Wikipedia

Beispiel 3: Klein bottle

Zum Schluss wollen wir mit einer Klein-Flasche - einer komplexen 3D-Struktur - an die Grenzen gehen. Die Aufforderung dazu lautet:

Create a 3D model of a Klein bottle in OBJ format.

Das Online-Modell generiert mit dieser Eingabe endlos viele Maschen, bis es sich schließlich selbst überholt und einen Fehler ausgibt.

Wenn du die Eingabeaufforderung lokal mit einem größeren Kontextfenster ausführst, wird das Problem behoben, aber das Netz, das wir erhalten, sieht nicht wie eine kleine Flasche aus:

nvidia llama mesh Beispiel für eine kleine Flasche

Die vom Modell erzeugte kleine Flasche

So sieht die Klein-Flasche aus, falls es dich interessiert:

Beispiel einer kleinen Flasche

Quelle: Wikipedia

Aus den obigen Tests geht hervor, dass LLaMA-Mesh (sowohl die Online- als auch die lokale Version) zwar bei kreativen und einfachen Entwürfen gut abschneidet, aber bei präzisen geometrischen und hochkomplexen mathematischen Formen an seine Grenzen stößt. Wenn sich das Modell weiterentwickelt, wird es spannend sein zu sehen, wie sich diese Möglichkeiten erweitern.

Fazit

In diesem Leitfaden haben wir das neue LLaMa-Mesh-Modell von Nvidia erkundet und ein paar Beispiele auf der Demo-Plattform durchgeführt. Auch wenn das Modell noch in den Kinderschuhen steckt, ist es vielversprechend für Profis und Enthusiasten, die schnelle und intuitive Lösungen für die Erstellung von 3D-Netzen benötigen.

Mit der Weiterentwicklung des Frameworks werden zukünftige Updates möglicherweise erweiterte Funktionen mit sich bringen, z. B. die Verarbeitung komplexerer Geometrien oder die Kompatibilität mit 3D-Druckern.


Dimitri Didmanidze's photo
Author
Dimitri Didmanidze
LinkedIn
Ich bin Dimitri Didmanidze, ein Datenwissenschaftler, der zurzeit einen Master in Mathematik mit dem Schwerpunkt Maschinelles Lernen macht. Auf meinem akademischen Weg habe ich auch über die Möglichkeiten transformatorischer Modelle geforscht und an der Universität gelehrt, was mein Verständnis für komplexe theoretische Konzepte bereichert hat. Ich habe auch im Bankensektor gearbeitet, wo ich diese Prinzipien angewendet habe, um reale Datenherausforderungen zu bewältigen.
Themen

Lerne Llama mit diesen Kursen!

Lernpfad

Llama Fundamentals

5 hours hr
Experiment with Llama 3 to run inference on pre-trained models, fine-tune them on custom datasets, and optimize performance.
Siehe DetailsRight Arrow
Kurs starten
Mehr anzeigenRight Arrow
Verwandt

Der Blog

Top 30 Generative KI Interview Fragen und Antworten für 2024

Dieser Blog bietet eine umfassende Sammlung von Fragen und Antworten zu generativen KI-Interviews, die von grundlegenden Konzepten bis hin zu fortgeschrittenen Themen reichen.
Hesam Sheikh Hassani's photo

Hesam Sheikh Hassani

15 Min.

Der Blog

Die 32 besten AWS-Interview-Fragen und Antworten für 2024

Ein kompletter Leitfaden zur Erkundung der grundlegenden, mittleren und fortgeschrittenen AWS-Interview-Fragen, zusammen mit Fragen, die auf realen Situationen basieren. Es deckt alle Bereiche ab und sorgt so für eine abgerundete Vorbereitungsstrategie.
Zoumana Keita 's photo

Zoumana Keita

30 Min.

Der Blog

Lehrer/innen und Schüler/innen erhalten das Premium DataCamp kostenlos für ihre gesamte akademische Laufbahn

Keine Hacks, keine Tricks. Schüler/innen und Lehrer/innen, lest weiter, um zu erfahren, wie ihr die Datenerziehung, die euch zusteht, kostenlos bekommen könnt.
Nathaniel Taylor-Leach's photo

Nathaniel Taylor-Leach

4 Min.

Der Blog

Die 20 besten Snowflake-Interview-Fragen für alle Niveaus

Bist du gerade auf der Suche nach einem Job, der Snowflake nutzt? Bereite dich mit diesen 20 besten Snowflake-Interview-Fragen vor, damit du den Job bekommst!
Nisha Arya Ahmed's photo

Nisha Arya Ahmed

20 Min.

Der Blog

Q2 2023 DataCamp Donates Digest

DataCamp Donates hat im zweiten Quartal 2023 über 20.000 Stipendien an unsere gemeinnützigen Partner vergeben. Erfahre, wie fleißige benachteiligte Lernende diese Chancen in lebensverändernde berufliche Erfolge verwandelt haben.
Nathaniel Taylor-Leach's photo

Nathaniel Taylor-Leach

Der Blog

2022-2023 DataCamp Classrooms Jahresbericht

Zu Beginn des neuen Schuljahres ist DataCamp Classrooms motivierter denn je, das Lernen mit Daten zu demokratisieren. In den letzten 12 Monaten sind über 7.650 neue Klassenzimmer hinzugekommen.
Nathaniel Taylor-Leach's photo

Nathaniel Taylor-Leach

8 Min.

Mehr anzeigenMehr anzeigen