Vergleich von Llama 2 Chat und ChatGPT: Wie sie bei der Beantwortung von Fragen abschneiden
Die KI-Community ist begeistert von Meta AIs jüngster Veröffentlichung von Llama 2. Im Gegensatz zu seinem Closed-Source-Pendant ChatGPT ist Llama 2 Open Source und steht zur kostenlosen Nutzung in kommerziellen Anwendungen zur Verfügung. Mit seiner beeindruckenden Skalierung und wettbewerbsfähigen Antwortqualität wird Llama 2 in der künstlichen Intelligenz erhebliche Wellen schlagen.
In diesem Beitrag werden wir Llama 2 kurz vorstellen und seine Leistung beim Beantworten von Fragen im Vergleich zu ChatGPT bewerten.
Was ist Llama 2?
Llama 2 ist Meta AIs neuestes Open-Source-Large-Language-Model (LLM), entwickelt als Antwort auf OpenAIs GPT-Modelle und Googles PaLM-2-Modell. Llama 2 kann von jedermann kostenlos für Forschungs- oder kommerzielle Zwecke genutzt werden.
Llama 2 ist in drei Größen erhältlich und verfügt über beeindruckende 70 Milliarden, 130 Milliarden und 700 Milliarden Parameter. Diese Vielfalt ermöglicht es Entwicklern, das Modell zu wählen, das den Anforderungen ihres Projekts am besten entspricht. Die vortrainierten Modelle von Llama 2 wurden mit 2 Billionen Token trainiert und unterstützen Kontextlängen von bis zu 4096 Token, was GPT-3 entspricht.
Llama Chat, das feinabgestimmte Modell von Llama 2, wurde mit über 1 Million menschlichen Annotationen trainiert und ist speziell auf Conversational-AI-Szenarien zugeschnitten. Dieses Modell ist attraktiv für diejenigen, die Chatbots, virtuelle Assistenten oder ein KI-gestütztes Konversationssystem entwickeln möchten.
Llama-2-Halluzination und RAG
Wie viele andere LLMs wurde Llama 2 mit öffentlich verfügbaren Daten vortrainiert und ist mit Halluzinationsproblemen konfrontiert, wenn relevanteres Wissen benötigt wird. Die KI-Community hat das Konzept der Retrieval Augmented Generation (RAG) eingeführt, um diese Herausforderungen anzugehen. RAG nutzt extern abgerufenes Wissen als Kontext, um die Genauigkeit der vom Modell generierten Antworten zu verbessern.
Wie RAG mit einer Towhee-Pipeline funktioniert
Auf dem Markt sind viele Tools verfügbar, um LLMs mit externem Wissen zu erweitern. Towhee ist eines der wichtigsten Beispiele. Es ist eine Open-Source-Pipeline für maschinelles Lernen, die Llama 2 in ihre Architektur integriert und eine flexible Datenverarbeitung unterstützt. In diesem Abschnitt wird ein kleines Beispiel aus der Towhee Pipeline verwendet, um zu demonstrieren, wie die RAG-Lösung funktioniert.
Wenn Sie Llama 2 fragen: „how to install Towhee“, wird es Ihnen sachlich falsche, irrelevante oder unsinnige Antworten liefern, da Llama 2 nichts über Towhee weiß.
Um dieses Problem zu lösen, verwenden wir eine Towhee-Pipeline, um zusätzliche Informationen über Towhee und den Chatverlauf mit der ursprünglichen Frage für Llama 2 zu kombinieren. Llama 2 wird dann basierend auf den Nachrichten eine genauere Antwort liefern.
Unten ist der erweiterte Prompt für Llama 2.
from towhee import pipe, ops
p = (
pipe.input('question', 'docs', 'history')
.map(('question', 'docs', 'history'), 'prompt', ops.prompt.question_answer())
.map('prompt', 'answer', ops.LLM.Llama_2('llama-2-13b-chat'))
.output('answer')
)
# Retrieve chat history and additional knowledge.
history=[('What is Towhee?', 'Towhee is a cutting-edge framework designed to streamline the processing of unstructured data through the use of Large Language Model (LLM) based pipeline orchestration.')]
knowledge = ['You can install towhee via `pip install towhee`.']
# Query with retrieved info.
question = 'How to install it?'
answer = p(question, knowledge, history).get()[0]
# Example answer is:
# To install Towhee, you can use the following command in your terminal or
# command prompt:\n```\npip install towhee\n\n```\n\n\n\n'
Um mehr über die Erstellung komplexer RAG-basierter Chatbots mit Towhee zu erfahren, sehen Sie sich Akcio an, ein Open-Source-Demonstrationsprojekt für Retrieval Augmented Generation.
Evaluierung von Llama 2 und ChatGPT
In diesem Abschnitt werden zwei Chatbot-Modelle evaluiert: Llama 2 Chat (13B), ein Llama-2-Modell mit 13B Parametern, das für Chat-Anweisungen feinabgestimmt wurde, und ChatGPT, betrieben von GPT-3.5. Wir werden beide Modelle mit denselben Prompts in mehreren gängigen Szenarien testen.
Hinweis: Das externe Wissen, das wir Llama 2 und ChatGPT bereitstellen, ist umfangreich. Daher werden wir in diesem Blog nicht den gesamten Prompt anzeigen. Wenn Sie am vollständigen Prompt interessiert sind, sehen Sie sich bitte das External knowledge provided to Llama2 and ChatGPT in einem separaten Dokument als Referenz an.
Fall 1: Fragen beantworten, wenn relevantes Wissen bereitgestellt wird
Wir haben Llama 2 und ChatGPT Finanznachrichten über Volkswagens Investition in XPENG bereitgestellt. Dann baten wir beide Modelle, eine Frage auf Grundlage der bereitgestellten Informationen zu beantworten.
Prompt
You are an information retriever. You need to use content in [Knowledge] to answer questions, when the knowledge is different from your knowledge, the [Knowledge] has higher priority.
[Knowledge Start]:
Volkswagen said Wednesday that it has signed a deal to jointly develop two new electric vehicles for China with Chinese EV maker Xpeng . As part of the deal, Volkswagen will invest about $700 million in Xpeng, taking a 4.99% stake…
[Knowledge End]:
How much did Volkswagen invest to XPENG?
Antworten
ChatGPT: Volkswagen investierte etwa 700 Millionen US-Dollar in Xpeng und erwarb damit einen Anteil von 4,99 % an dem chinesischen EV-Hersteller.
Llama 2-chat: Den im Knowledge-Abschnitt bereitgestellten Informationen zufolge investierte Volkswagen rund 700 Millionen US-Dollar in Xpeng, was einem Anteil von etwa 4,99 % entspricht.
Beide Modelle beantworteten die Frage auf Grundlage des bereitgestellten Wissens korrekt.
Fall 2: Fragen beantworten, wenn irrelevante Informationen bereitgestellt werden
Wir simulierten ein Szenario, in dem die abgerufenen Informationen keinen Bezug zur Frage haben, und testeten, ob beide Modelle ehrlich mit „Ich weiß es nicht“ antworten können. Wir stellten beiden Modellen Informationen über Volkswagens Investition in XPeng Motors bereit, stellten jedoch eine irrelevante Frage dazu, wie viel Audi in XPeng investiert hat.
Prompt
You are an information retriever. You need to use content in [Knowledge] to answer questions, when the knowledge is different from your knowledge, the [Knowledge] has higher priority.
[Knowledge Start]:
Volkswagen said Wednesday that it has signed a deal to jointly develop two new electric vehicles for China with Chinese EV maker Xpeng . As part of the deal, Volkswagen will invest about $700 million in Xpeng, taking a 4.99% stake…
[Knowledge End]:
How much did Audi invest to XPENG?
Antworten
ChatGPT:
Gemäß dem bereitgestellten Wissen gibt es keine Erwähnung einer direkten Investition von Audi in Xpeng. Die Informationen besagen, dass Volkswagen, die Muttergesellschaft von Audi, eine separate Vereinbarung mit seinem langjährigen chinesischen Joint-Venture-Partner SAIC Motor unterzeichnet hat, um gemeinsam neue Audi-gebrandete EVs für den chinesischen Markt zu entwickeln. Es gibt jedoch keine Informationen darüber, dass Audi eine direkte Investition in Xpeng getätigt hat. Die Investition von etwa 700 Millionen US-Dollar in Xpeng wurde von Volkswagen getätigt, nicht von Audi.
Llama2-chat:
Den bereitgestellten Informationen zufolge hat Audi kein Geld in Xpeng investiert. Es war Volkswagen, das rund 700 Millionen US-Dollar in Xpeng investierte und einen Anteil von 4,99 % an dem chinesischen EV-Hersteller erwarb.
Llama 2 und ChatGPT erkannten die Wissenslücke korrekt und antworteten ehrlich.
Fall 3: Fragen beantworten, wenn unlesbare Informationen bereitgestellt werden
In realen Geschäftsszenarien können Textdokumente in verschiedenen Formaten vorliegen. Daher haben wir in diesem Fall beiden Modellen unformatierten und unleserlichen Text über Tailwind CSS auf GitHub angeboten. Anschließend baten wir sie, verwandte Fragen zu beantworten.
Prompt
You are an information retriever. You need to use content in [Knowledge] to answer questions, when the knowledge is different from your knowledge, the [Knowledge] has higher priority.
[Knowledge Start]:
[['Q: What are some examples of websites that use Tailwind CSS?', 'A: ## Sites e cursos para aprender Tailwind CSS\n- [Tailwind CSS 3 Crash Course](https://www.youtube.com/watch?v=LyRWNJK8I6U&ab_channel=codedamn)\n- [Tailwind in 100 Seconds]...
[Knowledge End]:
Tell me some websites that use Tailwind?
Antworten
ChatGPT:
Sure! Based on the provided [Knowledge], here are some websites that use Tailwind CSS:
Tailwind CSS 3 Crash Course (https://www.youtube.com/watch?v=LyRWNJK8I6U&ab_channel=codedamn)
Tailwind in 100 Seconds(https://www.youtube.com/watch?v=mr15Xzb1Ook&ab_channel=Fireship)
Rebuilding Bartik(https://www.oliverdavies.uk/articles/rebuilding-bartik-with-vuejs-tailwind-css) - Rebuilding Bartik (Drupal's default theme) with Vue.js and Tailwind CSS.
Rebuilding Airbnb's Home Page(https://web-crunch.com/re-create-airbnbs-home-page-with-tailwind-css) - Rebuilding Airbnb's Home Page with Tailwind CSS.
Typographic defaults in Tailwind CSS(https://www.themes.dev/blog/typographic-defaults-in-tailwind-css/)
Create a responsive navigation menu in Tailwind CSS(https://www.themes.dev/blog/responsive-navigation-menu-tailwind-css/)
Laracasts Weekly Stream: Tailwind(https://www.youtube.com/watch?v=HIPgzWS-Bxg)
More experimentation with Tailwind CSS(https://www.youtube.com/watch?v=nBzfVK3QUzM)
Rebuilding Spotify(https://youtu.be/SLGb2RLie9w)
These websites showcase various use cases and examples of websites built using Tailwind CSS.
Llama2-chat:
Sure, here are some examples of websites that use Tailwind CSS:
GitHub - GitHub’s documentation and marketing pages use Tailwind CSS for their styling.
Shopify - Shopify uses Tailwind CSS to style their admin dashboard and other internal tools.
Atlassian - Atlassian’s Confluence product uses Tailwind CSS for its responsive layout and styling.
React Magazine - React Magazine’s website is built using Tailwind CSS and features a clean, modern design.
The Verge - The Verge’s article pages use Tailwind CSS for their typography and spacing.
Dribbble - Dribbble’s website uses Tailwind CSS for its grid system and typography.
Smashing Magazine - Smashing Magazine’s website was redesigned using Tailwind CSS in 2020.
Laracasts - Laracasts, a popular Laravel tutorial site, uses Tailwind CSS for its styling.
Statamic - Statamic, a static site generator, uses Tailwind CSS as part of its default setup.
Figma - Figma’s blog and documentation pages use Tailwind CSS for their typography and spacing.
These are just a few examples of websites that use Tailwind CSS. Many other websites and applications also use it, and the list continues to grow as more developers discover the power and flexibility of this framework.
ChatGPT kann Textinformationen präzise verstehen, selbst wenn sie in komplexem Markdown-Markup präsentiert werden, und liefert qualitativ hochwertige Antworten. Im Gegensatz dazu gelingt es Llama2-chat nicht, die bereitgestellten Informationen zu verstehen, und es liefert eine minderwertigere Antwort, die ausschließlich auf seinem Wissen basiert.
Zusätzlich zu den drei oben genannten Fällen haben wir Llama 2 und ChatGPT beim Frage-Antworten mit domänenspezifischem Wissen und neu formatierten Informationen getestet. Weitere Details finden Sie im Dokument Externes Wissen, das Llama2 und ChatGPT bereitgestellt wurde.
Wichtigste Erkenntnisse
Sowohl Llama2 als auch ChatGPT zeichnen sich dadurch aus, Fragen auf Grundlage von Wissen über die reale Welt zu beantworten.
Beide Modelle können feststellen, ob das bereitgestellte Wissen bestimmte Antworten auf Fragen unterstützt.
ChatGPT ist besser darin, unformatierte und unlesbare Informationen zu verstehen als Llama 2. Llama 2 kann jedoch genauere Antworten liefern, wenn wir die unformatierten Informationen strukturieren.
Bewertung der Leistung von Llama 2
In diesem Abschnitt bewerten wir die Leistung und die Bereitstellungskosten des Modells Llama 2 (13b). Wir führen es auf llama.cpp aus und messen seine Inferenzleistung mit 4-Bit- und 8-Bit-Integer-Quantisierung, indem wir wiederholt Stichproben-Prompts ausführen. Wir verwenden den Llama-2-Operator aus dem neuesten Towhee-Framework, der es uns ermöglicht, Llama 2 mit nur wenigen Codezeilen aufzurufen und Daten vorzuverarbeiten, um den Prompt bequem zusammenzustellen.
from towhee import ops
chat = ops.LLM.Llama_2('path/to/model_file.bin', max_tokens=2048, echo=True)
message = [{"question": "Building a website can be done in 10 simple steps:"}]
answer = chat(message)
Testergebnisse
Wir haben das Modell Llama 2 (13b) mit einer High-End-A100-GPU mit 80 GB Speicher und einer standardmäßigen Desktop-GPU 2080 mit 12 GB Speicher getestet.
Inferenzleistung von Llama 2 (13b) mit 8-Bit-Integer-Quantisierung
| Grafikkarte | Anzahl der Modelle | Auslastung der Grafikkarte | VRAM | TPS |
|---|---|---|---|---|
| 1 x NVIDIA A100 (80G) | 1 | 87% | 19G | 37 tokens/s |
| 1 x NVIDIA A100 (80G) | 2 | 100% | 38G | 45 tokens/s |
| 1 x GeForce RTX 2080 (12G) | Unzureichende GPU | / | / | / |
| 2 x GeForce RTX 2080 (12G) | 1 | 40%,40% | 8G + 8G | 18 tokens/s |
Inferenzleistung von Llama 2 (13b) mit 4-Bit-Integer-Quantisierung
| Grafikkarte | Anzahl der Modelle | Auslastung der Grafikkarte | VRAM | TPS |
|---|---|---|---|---|
| 1 x NVIDIA A100 (80G) | 1 | 80% | 11G | 45 tokens/s |
| 1 x NVIDIA A100 (80G) | 2 | 100% | 22G | 56 tokens/s |
| 1 x GeForce RTX 2080 (12G) | 1 | 86% | 9.3G | 37 tokens/s |
Wichtigste Erkenntnisse
Durch die Verwendung von Low-Bit-Quantisierung können wir das Modell Llama 2 (13b) reibungslos auf einer einzelnen Desktop-GPU ausführen. Dieser Ansatz ermöglicht es Ihnen, die Leistung von Llama 2 zu maximieren und gleichzeitig die Kosten zu senken.
Die GPU-Speichernutzung ist gering, wenn das Modell Llama 2 (13b) auf einer A100 bereitgestellt wird.
Obwohl es keinen signifikanten Leistungsunterschied zwischen der Ausführung von Llama 2 (13b) auf einer A100-GPU oder einer 2080-GPU gibt, haben Desktop-GPUs eine geringere Größe und können nur kleinere Modelle auf eine einzelne Karte laden.
Zusammenfassung
In diesem Beitrag haben wir uns mit den Fähigkeiten von Llama 2 Chat (13b) im RAG-Bereich und seiner Leistung im Bereitstellungsmodus llama.cpp befasst.
Llama 2 versteht Wissenstexte effektiv und beantwortet einfache Fragen präzise, sodass es mit ChatGPT konkurrieren kann. Es hat jedoch Schwierigkeiten, die Antwortqualität aufrechtzuerhalten, wenn es mit komplexer Textformatierung konfrontiert wird.
Llama 2 zeichnet sich dadurch aus, dass es keine High-End-GPUs benötigt. Es läuft reibungslos auf Desktop-GPUs, insbesondere nach einer Low-Bit-Quantisierung, und erzielt einen beeindruckenden Durchsatz auf einer einzelnen NVIDIA-A100-Karte. Darüber hinaus können Sie die Leistung steigern, indem Sie mehrere Modelle auf einer einzelnen GPU ausführen.
Die Fähigkeit von Llama 2, Textinformationen zu verarbeiten, macht es für verschiedene RAG-Szenarien geeignet. In Kombination mit Wissensdatenbanken wie Milvus kann es hochwertige Antworten liefern.
Zusammenfassend lässt sich sagen, dass Llama 2 und andere Open-Source-KI-Modelle versprechen, Innovationen in der KI-Landschaft voranzutreiben. Sie haben das Potenzial, Nutzern und Entwicklern außergewöhnliche Frage-Antwort-Erlebnisse zu bieten, und sind damit spannende Ergänzungen in der Welt der KI-Sprachmodelle.
Weiterlesen

What Is a Vector Lakebase?
A Vector Lakebase is a unified, lake-native data architecture for AI that combines vector-database-grade serving with open lake storage, reusable lake-level indexes, and a shared semantic layer.

Migrating from S3 Vectors to Zilliz Cloud: Unlocking the Power of Tiered Storage
Learn how Zilliz Cloud bridges cost and performance with tiered storage and enterprise-grade features, and how to migrate data from AWS S3 Vectors to Zilliz Cloud.

Vector Databases vs. Graph Databases
Use a vector database for AI-powered similarity search; use a graph database for complex relationship-based queries and network analysis.



