AI

Anfängergeführte Einführung in LLM: Tauchen Sie mit LangChain und Prompt Engineering in die KI ein

A person exploring AI concepts with a computer, illustrating learning and innovation in technology.

Die Welt der KI umarmen: Eine Einführung für Anfänger zu LLM (fast) ohne Programmierung

Der Bereich der KI ist riesig und voller unzähliger Werkzeuge, die für Neulinge überwältigend wirken können. Mit täglichen Nachrichten über Durchbrüche, potenzielle Risiken und innovative Anwendungen sind die Meinungen über KI geteilt. Um eine fundierte Meinung zu bilden, ist es wichtig, in diese faszinierende Welt einzutauchen und mehr über die interessanten Konzepte zu lernen, die sie bietet.

Einen Bildungsweg einschlagen

Lange Stunden des Selbststudiums können herausfordernd sein, besonders wenn Ablenkungen reichlich vorhanden sind. Um mein Lernen zu beschleunigen, nahm ich an einem KI-Hackathon teil - einer Veranstaltung, bei der Wissenssuchende, Experten und Enthusiasten zusammenkommen, um zu lernen, zusammenzuarbeiten und Spaß zu haben.

Hackathons sind einzigartige Erfahrungen, die oft Wettbewerb mit einer unterstützenden Atmosphäre kombinieren, in der Teilnehmer einander bereitwillig helfen. 48 Stunden im Kreis brillanter Köpfe zu verbringen, ermöglichte es mir, die Grundlagen zu verstehen und zu erkennen, was ich benötigte, um meine erste KI-Lösung zu erstellen.

Allerdings hat nicht jeder die Möglichkeit, an einem Hackathon teilzunehmen. Deshalb habe ich mich entschieden, meine Erkenntnisse in diesem Tutorial zu teilen, in der Hoffnung, deine Reise in die Welt von LangChain und LLM zu starten.

LLM erklärt für ein 5-jähriges Kind

Stell dir vor, du hast einen magischen Freund, der viele Wörter kennt und versteht, was Menschen sagen. Dieser Freund kann dir bei den Hausaufgaben helfen, deine Fragen beantworten und dir sogar Geschichten erzählen. Ein LLM (Large Language Model) ist wie dieser magische Freund, aber er lebt in einem Computer. Es kennt viele Wörter und kann verstehen, was Leute eintippen. Es hilft den Menschen, Informationen zu finden, Fragen zu beantworten und viele andere Dinge am Computer zu tun.

Was ist LangChain?

Für diejenigen mit technischer Erfahrung kann LangChain als Kleber betrachtet werden, der deine vorhandenen Apps mit KI-Funktionen verbessert. Es ermöglicht dir, große Datenmengen von deinen Apps in Werkzeuge wie Chat-Schnittstellen zu streamen, um mit den Daten zu interagieren oder bestimmte Aufgaben basierend auf den in den Daten gefundenen Informationen zu automatisieren. Stell dir vor, du sprichst mit deiner Datenbank und erhältst Antworten - LangChain macht dies möglich und spart dir Zeit beim Schreiben von Datenbank-Abfragen.

Für nicht-technische Personen stelle dir Daten wie einen fließenden Fluss vor. So wie ein Kraftwerk Energie aus dem Fluss gewinnt, hilft dir LangChain, das Potenzial deiner Daten mithilfe verschiedener LLMs und Drittanbieterwerkzeuge zu erschließen. Diese Werkzeuge sind wie verschiedene Arten von Kraftwerken für unterschiedliche Landschaften und Anwendungsfälle, aber ohne die Zeit und Mühe, die erforderlich wären, um sie zu bauen. LangChain macht es einfach, diese Werkzeuge zu nutzen, als wären sie in einer Schuhschachtel geliefert worden.

Beispielszenario: KI-unterstützte E-Commerce-Abfragen

Stell dir vor, du bist ein E-Commerce-Besitzer mit einem erfolgreichen Shop und einer großen Gruppe loyaler Kunden. Du möchtest deine Kunden besser verstehen und KI nutzen, um dir zu helfen. Momentan verlässt du dich möglicherweise auf den Admin-Bereich deines Shops für Analysedaten und suchst manuell, sortierst und filterst große Mengen an Tabellenaufzeichnungen. Wenn du nicht so viel Glück hast, musst du deine Programmierer oder Datenwissenschaftler bitten, dies für dich zu tun, was manchmal Tage dauern kann.

Idealerweise würdest du einfach deine Datenbank fragen und die Antwort sofort erhalten. Hier ist ein Benutzerfluss, der zeigt, wie dies mit LangChain und LLM funktionieren könnte:

  • Schritt 1: Gib deine Abfrage zum Kunden-Analytics ein.
  • Schritt 2: Die Abfrage wird vom LLM verarbeitet.
  • Schritt 3: Antworten werden generiert und angezeigt.

In diesem Ablauf hast du mit deinen Daten interagiert, und die Daten haben geantwortet. Indem du einen Flow wie diesen mit Werkzeugen wie LangChain erstellst, ermöglichst du es jedem, auch ohne technisches Wissen, wertvolle Informationen in Sekunden zu erhalten, indem er ein paar Wörter in eine Eingabeaufforderung eingibt.

Umsetzungsplan für das Szenario

Wir möchten einen Bot erstellen, der Anfragen entgegennehmen, sie gegen unsere in einer SQL-Datenbank gespeicherten Daten ausführen und Erkenntnisse in kurzer und prägnanter Form zurückgeben kann. Lass uns die Idee und die Lektionen diskutieren, die während des Hackathons gelernt wurden.

Lektionen, die während des Hackathons gelernt wurden

Der Plan unseres Teams während der Veranstaltung war es, einen konversationellen Bot zu bauen, der den Benutzer eine feste Anzahl vordefinierter Fragen stellen würde, basierend auf den Antworten einen Punktestand berechnet und dem Benutzer dann einige Tipps gibt, wie er/sie sich verbessern kann.

Ursprünglich gingen wir das Problem mit der Denkweise eines Webentwicklers an und wollten eine Liste von Fragen mit erwarteten Antworten erstellen, den Antworten Gewichte zuweisen und dem LLM die Liste der Fragen im Voraus geben. Wir planten, die Fragen dem LLM zu übergeben, es sollte die Antworten vom Benutzer erhalten und dann einen Algorithmus ausführen, um einen endgültigen Punktestand basierend auf den Gewichten der Benutzerantworten zu berechnen. Dies würde dem Benutzer Erkenntnisse aus einem vordefinierten Handbuch geben, das zunächst als Notion-Seite gespeichert wurde. Irgendwann wollten wir die Notion-Seite auch in eine Datenbank übertragen.

Dieser Ansatz stellte sich jedoch als zu komplex und verwirrend heraus. Die Lösung war viel einfacher:

Bei unserem Versuch, das Problem zu lösen, haben wir versucht, den Prozess von oben nach unten zu steuern, was unser größter Fehler war. Nach Gesprächen mit Experten entdeckten wir zwei wichtige Dinge:

  • Prompt-Engineering kann Wunder wirken.
  • Agenten können uns viel schwere Arbeit abnehmen.

Indem wir die KI fahren lassen und uns auf das Prompt-Engineering konzentrieren, können wir eine effizientere und effektivere Lösung für unseren konversationellen Bot erstellen.

Um diese Erkenntnisse anzuwenden, haben wir vollständig aufgegeben, zu versuchen, eine Tabelle mit vordefinierten Fragen und Antworten zu erstellen, und wir haben das LLM einfach durch eine Eingabeaufforderungsvorlage angewiesen, was wir erreichen möchten.

Prompt-Engineering erklärt für ein 5-jähriges Kind

Stell dir vor, du hast ein magisches Spielzeug, das deine Fragen beantworten und dir bei vielen Dingen helfen kann. Aber um das Spielzeug zum Arbeiten zu bringen, musst du es auf eine besondere Weise fragen. Prompt-Engineering ist wie herauszufinden, wie du deine Fragen am besten stellen kannst, damit dein magisches Spielzeug dich versteht und dir die besten Antworten gibt. Es ist wie zu lernen, wie man mit deinem Spielzeug spricht, damit ihr beide ein lustiges und hilfreiches Gespräch führen könnt.

Agent erklärt für ein 5-jähriges Kind

Stell dir vor, du hast einen hilfreichen Roboterfreund, der viele Dinge für dich tun kann, wie deine Spielzeuge finden, deine Fragen beantworten oder dir sogar bei deinen Hausaufgaben helfen. Dieser Roboterfreund wird "Agent" genannt. Ein Agent ist wie ein Helfer, der in einem Computer oder einem Gerät lebt und für dich Aufgaben erledigen kann. Er hört zu, was du sagst oder eintippst, und versucht dann sein Bestes, um dir bei dem zu helfen, was du brauchst.

Finale Prompt-Lösung des Hackathons

Anstatt Datenbanken, APIs einzurichten und Algorithmen zu schreiben, um den Punktestand zu berechnen, entwickelten wir eine einfachere Lösung unter Verwendung von Prompt-Engineering:

Überraschenderweise wurde diese Lösung fast ausschließlich von der einzigen nicht-programmierenden Person in unserem Team entwickelt. Ein großes Lob an Iwo Szapar, unseren Senior Prompt Engineer des Hackathon-Teams!

Es funktionierte wie Magie:

Anwendung der Erkenntnisse aus dem Hackathon auf unser Beispielszenario

Sowohl die Hackathon-Lösung als auch das Beispielszenario teilen einige Annahmen. Erstens produziert der Benutzer eine Abfrage. Zweitens senden wir die Abfrage zurück an das LLM und stellen sicher, dass das LLM unser Handbuch kennt und den empfangenen Punktestand mit festen Daten zu vergleichen kann, die in der Vektordatenbank gespeichert sind, um eine bedeutungsvolle Antwort zu erzeugen.

Wir lösten es so:

Jetzt lass mich erklären, was hier passiert ist, denn ich habe gerade ein neues Konzept namens "vektordatenbank" erwähnt und dann etwas Code geteilt.

Vektordatenbank erklärt für ein 5-jähriges Kind

Stell dir vor, du hast eine große Kiste mit Spielzeug, und du möchtest ein bestimmtes Spielzeug schnell finden. Eine Vektordatenbank ist wie eine magische Karte, die dir hilft, das Spielzeug zu finden, nach dem du in der großen Kiste suchst. Sie weiß, wo alle Spielzeuge sind und kann dir das richtige Spielzeug zeigen, basierend auf dem, was du ihr sagst.

In der Vektordatenbank erhält jedes Spielzeug einen "Vektor" - eine Liste von Zahlen, die das Spielzeug beschreiben und wie es sich von anderen Spielzeugen unterscheidet oder ähnlich ist. Die Vektordatenbank verwendet spezielle Mathematik, um Ähnlichkeiten zwischen Vektoren zu finden. Wenn du ihr also sagst, dass du nach einem roten Spielzeugauto suchst, würde die Datenbank nach Spielzeugen mit einem hohen "roten Spielzeugauto" Ähnlichkeitswert suchen, basierend auf ihren Vektoren.

Um die Vektordatenbank zu erstellen, "lehrst" du sie zuerst über jedes Spielzeug, indem du ihr Details wie die Farbe, Form, Größe, Funktion und mehr des Spielzeugs gibst. Die Datenbank wandelt diese Details in Zahlen um, um einen Vektor für das Spielzeug zu erstellen. Indem sie vergleicht, wie ähnlich und unterschiedlich die Vektoren sind, erstellt die Datenbank eine "Karte", wie alle Spielzeuge miteinander in Beziehung stehen.

Wenn du in der Datenbank suchst, sieht sie sich die Vektoren an, um die Spielzeuge zu finden, die deinem beschriebenen am ähnlichsten sind. Je mehr sie über die Spielzeuge lernt und besser darin wird, Beziehungen zwischen ihnen zu finden, desto magischer erscheinen ihre Fähigkeiten. Aber eigentlich basiert alles auf Mathematik!

In unserem Code verwenden wir eine Vektordatenbank, um der KI zu helfen, die richtigen Informationen zu finden, um deine Fragen zu beantworten. Indem wir der Datenbank Details über Wissensfragmente beibringen, kann sie die Fragmente finden, die für eine Benutzeranfrage am relevantesten sind. Die "Magie" der Datenbank kommt von ihrer Fähigkeit, Ähnlichkeiten zwischen dem Wissen, das sie enthält, zu quantifizieren.

Code-Erklärung

Dieser Code definiert einen konversationellen KI-Agenten namens PlaybookChat, der mit Benutzern interagieren und Informationen basierend auf einem Handbuch bereitstellen kann. Der Agent hat eine Reihe von Werkzeugen, die er verwenden kann, um Benutzern zu helfen. In diesem Fall gibt es ein Werkzeug namens query_playbook, das es dem Agenten ermöglicht, nach Informationen in einem "Leitfaden für People Manager" zu suchen.

Wenn ein Gespräch beginnt, wird der Agent mit den Werkzeugen und anderen Einstellungen initialisiert. Er verwendet ein zugrunde liegendes Sprachmodell namens "ChatOpenAI", um Antworten zu generieren. Der Agent hat auch eine Gedächtnis-Komponente, um den Verlauf des Gesprächs im Auge zu behalten.

Um ein Gespräch zu beginnen, wird die Methode start_conversation mit einem Benutzer-Punktestand als Eingabe aufgerufen. Der Agent führt dann die Benutzeranfragen basierend auf den Informationen im Handbuch aus und antwortet darauf. Die Antwort enthält den Punktestand des Benutzers und ermutigt ihn, aufschlussreiche Fragen zu stellen.

Insgesamt richtet dieser Code einen konversationellen KI-Agenten ein, der Informationen bereitstellen und mit Benutzern auf der Grundlage des Inhalts des Handbuchs in ein Gespräch treten kann.

Endgültige Lösung für unser Beispiel

Wir haben bereits eine funktionierende Lösung, also lass sie uns ein wenig umdefinieren.

Prompt-Vorlage:

Brauchst du einen Ort, um noch ein bisschen mehr mit Prompt-Engineering zu experimentieren? OpenAI bietet dir einen großartigen Spielplatz, um genau das zu tun! Fühle dich frei, den Code zu kopieren und einzufügen und dort zu experimentieren.

Endgültige Kettenlösung für unser Beispiel

Beispielverwendung:

  • Hausaufgaben: Die verbleibende Aufgabe für dich ist es, eine Datenbank einzurichten und sie mit relevanten Daten zu füllen. Während ich dir in diesem Artikel keine detaillierten Anweisungen geben werde, kannst du auf unseren umfassenden Leitfaden zur Ähnlichkeitssuche und Vektordatenbanken verweisen, der Schritt-für-Schritt-Anleitungen bietet. Du findest die detaillierten Anweisungen in einem unserer anderen KI-Tutorials.

Zusammenfassung

Eine Reise in die KI mag herausfordernd erscheinen, aber die wahre Kraft der KI liegt in ihrer Fähigkeit, dich auf jedem Schritt des Weges zu unterstützen. Es gibt nur eine wichtige Voraussetzung: "Lass die KI das Steuer übernehmen", während du sie in die richtige Richtung leitest.

Zusammenfassend ist es entscheidend, die Schlüsselkonzepte wie Prompt-Engineering, Ketten, Agenten und Vektordatenbanken zu verstehen, bevor du beginnst. Mit einem soliden Verständnis dieser Konzepte wirst du in der Lage sein, bemerkenswerte Leistungen zu erreichen!

Ich wünsche dir viel Glück auf deiner Reise zur Erstellung von KI-Apps und danke dir für deine wertvolle Zeit.

Weiterlesen

Cohere API tutorial for product description generation
Building a Text Improver App with AI21 Labs tutorial

Hinterlasse einen Kommentar

Alle Kommentare werden vor der Veröffentlichung geprüft.

Diese Website ist durch hCaptcha geschützt und es gelten die allgemeinen Geschäftsbedingungen und Datenschutzbestimmungen von hCaptcha.