Hallo zusammen, hier ist Nina von agntbox.com, und ich denke, dass ihr heute eine gute Zeit haben werdet! Wir werden ein Thema eingehend erkunden, das viel Aufsehen in meinen Slack-Kanälen und meinem Twitter-Feed erregt hat: die Lokalisierung großer Sprachmodelle für kleine Unternehmen.
Genauer gesagt werden wir über einen Rahmen sprechen, der diesen gesamten Prozess viel weniger einschüchternd macht: die retrieval-augmented generation (RAG) mit dem Fokus auf eine praktische, kleinere Implementierung.
Jetzt weiß ich, was einige von euch denken: „Nina, RAG? Das ist alte Geschichte!“ Und ihr hättet in gewisser Weise recht. Das Konzept gibt es schon eine Weile. Aber das, was *neu* ist und was ich heute hervorheben möchte, ist, wie zugänglich und tatsächlich nützlich es für Unternehmen wird, die nicht Google oder Meta sind. Wir sprechen von Unternehmen, die ein LLM benötigen, um ihre Sprache zu sprechen, ihre internen Dokumente zu verstehen und ihre spezifische Kundschaft zu bedienen, ohne dabei pleitezugehen oder ein Team von 20 KI-Forschern zu benötigen.
Mein Posteingang wurde von Fragen überschwemmt von Personen, die mit vorgefertigten LLMs experimentiert haben und herausfanden, dass sie Unternehmensrichtlinien halluzinierten, die Nuancen der Produkte falsch verstanden oder einfach… generisch wirkten. Und genau hier kommt RAG, gut implementiert, ins Spiel. Es geht nicht darum, ein ganz neues Modell zu trainieren – zum Glück! – sondern darum, einem bestehenden, leistungsstarken Modell den richtigen Kontext zur richtigen Zeit zu geben. Denk daran, es deiner KI wie eine überentwickelte Spickzettel zu geben, die speziell auf dein Unternehmen zugeschnitten ist.
Kürzlich habe ich mit einem kleinen E-Commerce-Startup, „Crafty Kits“, gearbeitet, das Abonnements für Bastelmaterialien verkauft. Sie hatten einen anständigen Kundenservice-Chatbot, der auf einem beliebten LLM basierte, aber er machte oft einfache Fehler. Fragen zum spezifischen Inhalt der Kits, zu Rückgabebedingungen für handgefertigte Produkte oder sogar nur zur genauen Nuance der Wolle im „Spring Meadow“-Kasten wurden oft mit vagen Antworten oder, schlimmer noch, völlig falschen Informationen beantwortet. Ihre Kunden begannen verständlicherweise, frustriert zu sein. Genau das ist das Problem, das RAG lösen soll, und ich möchte euch erklären, wie wir damit umgegangen sind.
Der Vorteil von RAG für kleine Unternehmen: Warum es jetzt wichtig ist
Seit langem schien die Eintrittsbarriere für wirklich personalisierte KI-Erlebnisse ziemlich hoch. Das Feintuning der Modelle erforderte erhebliche Daten, Rechenleistung und Fachwissen. Aber RAG verändert die Spielregeln. Hier ist, warum das besonders spannend für kleine Akteure im Jahr 2026 ist:
- Kosteneffizienz: Ihr müsst kein massives Modell perfektionieren. Ihr zahlt hauptsächlich für die Generierung von Embeddings und API-Aufrufe an ein Grundmodell. Das ist ein riesiger Vorteil für Budgets.
- Reduzierung von Halluzinationen: Das war der größte Schmerzpunkt von Crafty Kits. Indem die Antworten des LLM auf euren eigenen verifizierten Daten basieren, reduziert ihr erheblich die Risiken von Erfindungen.
- Aktuelle Informationen: Euer Wissensspeicher kann unabhängig vom LLM aktualisiert werden. Neue Produktlinie? Aktualisierte Rückgabebedingungen? Einfach zu euren Dokumenten hinzufügen, erneut einbetten, und eure IA wird sofort intelligenter.
- Datenschutz: Eure proprietären Informationen bleiben unter eurem Kontrolle, oft in eurer eigenen Datenbank oder lokalem Speicher, anstatt verwendet zu werden, um ein öffentliches Modell zu trainieren.
- Schnellere Iteration: Die Art und Weise, wie eure KI antwortet, zu ändern, ist oft so einfach wie das Feintuning eurer Ausgangsdokumente oder die Verbesserung eures Retrieval-Mechanismus, ohne ein ganzes Modell neu zu trainieren.
Bevor wir ins Detail gehen, lasst uns kurz zusammenfassen, was RAG ist. Im Wesentlichen funktioniert RAG, indem es:
- Die Anfrage eines Benutzers aufnimmt.
- In einem Wissensspeicher (euren internen Dokumenten, FAQ, Produktkatalogen usw.) nach relevanten Informationen sucht.
- Ein großem Sprachmodell sowohl die ursprüngliche Anfrage ALS auch die abgerufenen Informationen liefert.
- Das LLM dann diesen kombinierten Kontext nutzt, um eine viel informiertere und genauere Antwort zu generieren.
Es ist, als gäbe man deinem unglaublich intelligenten, aber manchmal abgelenkten Freund einen kurzen Blick auf die richtige Seite des Handbuchs, bevor er eine Frage beantwortet.
Ein RAG-System im kleinen Maßstab aufbauen: Der Weg von Crafty Kits
Als Crafty Kits sich an mich wandte, war ihr aktueller Chatbot, sagen wir mal, ein bisschen zu kreativ. Wir mussten ihn zähmen und zu einer wahren Quelle der Wahrheit für ihre Kunden machen. Hier ist eine vereinfachte Darstellung dessen, wie wir vorgegangen sind, wobei wir den Fokus auf Open-Source-Tools und zugängliche Cloud-Dienste gelegt haben.
Schritt 1: Der Wissensspeicher – Wo findet ihr eure Wahrheit?
Der erste Schritt, und wohl der wichtigste, besteht darin, eure Daten zu sammeln. Für Crafty Kits bedeutete das:
- Ihr vollständiges FAQ-Dokument (PDF und Google Doc).
- Detaillierte Produktbeschreibungen für jedes Kit (CSV-Exporte von ihrer E-Commerce-Plattform).
- Ihre internen Politikdokumente (Rückgaben, Versand, Datenschutz – hauptsächlich Word-Dokumente).
- Einige Blogartikel, die gängige Basteltechniken beschreiben, die für ihre Kits relevant sind.
Ninas Tipp: Legt nicht einfach alles ab. Macht eine Auswahl! Redundanz ist akzeptabel, aber widersprüchliche Informationen verwirren eure RAG genauso wie einen Menschen. Reinigt zuerst eure Daten.
Schritt 2: Zerschneiden und Einbetten – Macht eure Daten durchsuchbar
LLMs haben Kontexfenster-Grenzen. Ihr könnt nicht einfach ein ganzes 50-seitiges Politikdokument jedes Mal bereitstellen. Also zerschneiden wir unsere Dokumente in kleinere, handhabbare „Stücke“. Dann wandeln wir diese Stücke in digitale Darstellungen um, die „Embeddings“ genannt werden. Diese Embeddings ermöglichen es uns, später schnell relevante Informationen zu finden.
Für Crafty Kits haben wir Python mit einigen Bibliotheken verwendet:
langchain, um Dokumente zu laden und zu zerschneiden (das macht es überraschend einfach).sentence-transformers, um Embeddings lokal zu generieren. Wir haben mit einem kleineren, leistungsstarken Modell wieall-MiniLM-L6-v2begonnen, um die Kosten zu senken und lokale Experimente zu ermöglichen, bevor wir in die Breite gehen.
from langchain.text_splitter import RecursiveCharacterTextSplitter
from langchain_community.document_loaders import TextLoader, PyPDFLoader
from sentence_transformers import SentenceTransformer
# Beispiel-Dokument laden
loader = TextLoader("crafty_kits_faq.txt")
documents = loader.load()
# In Stücke zerschneiden
text_splitter = RecursiveCharacterTextSplitter(
chunk_size=500,
chunk_overlap=50,
length_function=len,
is_separator_regex=False,
)
chunks = text_splitter.split_documents(documents)
# Das Embedding-Modell initialisieren (lokal)
model = SentenceTransformer('all-MiniLM-L6-v2')
# Embeddings für jedes Stück generieren
chunk_texts = [chunk.page_content for chunk in chunks]
embeddings = model.encode(chunk_texts)
print(f"Generierte {len(embeddings)} Embeddings.")
Schritt 3: Der Vektor-Stores – Die Kartenbox eurer KI
Sobald wir Embeddings haben, brauchen wir einen Ort, um sie zu speichern, damit wir sie effizient durchsuchen können. Hier kommt ein Vektor-Speicher ins Spiel. Denkt daran wie an ein super-effizientes Index für eure Embeddings. Für Crafty Kits haben wir anfangs eine lokale FAISS-Instanz (Facebook AI Similarity Search) gewählt, da dies hervorragend für den Einstieg geeignet ist, ohne einen speziellen Datenbankserver zu benötigen. Für eine etwas skalierbarere, aber immer noch leicht zu verwaltende Option wäre etwas wie ChromaDB oder sogar ein gehosteter Dienst wie Pinecone oder Weaviate ein guter nächster Schritt.
from langchain_community.vectorstores import FAISS
from langchain_community.embeddings import HuggingFaceEmbeddings # Damit Integration mit Langchain
# Embeddings für FAISS von Langchain zurücksetzen
embeddings_model = HuggingFaceEmbeddings(model_name="all-MiniLM-L6-v2")
# FAISS-Vektor-Speicher erstellen
vectorstore = FAISS.from_documents(chunks, embeddings_model)
# Vektor-Speicher speichern (wichtig!)
vectorstore.save_local("faiss_crafty_kits_index")
print("FAISS-Index erstellt und gespeichert.")
Dieser Index enthält jetzt die digitale Darstellung sämtlicher Kenntnisse von Crafty Kits. Wenn ein Kunde eine Frage stellt, konvertieren wir seine Frage in ein Embedding und finden dann schnell die ähnlichsten Embeddings (und damit die relevantesten Stücke) in unserem FAISS-Index.
Schritt 4: Der Wiederherstellungs- & Generierungszyklus – Alles Zusammenbringen
Hier geschieht die Magie. Wenn ein Benutzer eine Frage stellt:
- Integrieren wir seine Anfrage unter Verwendung des *gleichen* Einbettungsmodells, das wir für unsere Wissensdatenbank verwendet haben.
- Wir befragen unseren Vektorspeicher, um die N ähnlichsten Informationsstücke zu finden.
- Dann erstellen wir ein Prompt für unser LLM, das die ursprüngliche Anfrage des Benutzers mit diesen wiederhergestellten Stücken kombiniert.
- Das LLM generiert eine Antwort, die im bereitgestellten Kontext verankert ist.
Für das LLM hat Crafty Kits mit der GPT-3.5-turbo API von OpenAI begonnen, da sie ein gutes Gleichgewicht zwischen Leistung und Kosten bot. Allerdings ist die Schönheit von RAG, dass Sie das LLM gegen fast jedes andere Modell austauschen können (zum Beispiel Claude von Anthropic oder sogar ein selbstgehostetes Open-Source-Modell wie Llama 2, wenn Sie die Infrastruktur haben), ohne Ihre Wissensdatenbank neu erstellen zu müssen.
from langchain_community.llms import OpenAI
from langchain.chains import RetrievalQA
from langchain_community.embeddings import HuggingFaceEmbeddings
from langchain_community.vectorstores import FAISS
import os
# Legen Sie Ihren OpenAI API-Schlüssel fest
os.environ["OPENAI_API_KEY"] = "YOUR_OPENAI_API_KEY"
# Laden Sie den gespeicherten FAISS-Index
embeddings_model = HuggingFaceEmbeddings(model_name="all-MiniLM-L6-v2")
vectorstore = FAISS.load_local("faiss_crafty_kits_index", embeddings_model, allow_dangerous_deserialization=True) # allow_dangerous_deserialization ist erforderlich, um vom Datenträger zu laden
# Initialisieren Sie das LLM
llm = OpenAI(temperature=0.1) # Eine niedrigere Temperatur für faktischere Antworten
# Erstellen Sie die RAG-Kette
qa_chain = RetrievalQA.from_chain_type(llm=llm, retriever=vectorstore.as_retriever())
# Testen Sie es!
query = "Wie ist die Rückgabepolitik für ein beschädigtes 'Enchanted Forest' Kit?"
response = qa_chain.invoke({"query": query})
print(response["result"])
query_2 = "Kann ich Acrylfarbe auf die im 'Starry Night Stitch' Kit enthaltene Leinwand verwenden?"
response_2 = qa_chain.invoke({"query": query_2})
print(response_2["result"])
Die Ergebnisse waren sofort und beeindruckend. Der Chatbot begann, präzise Antworten zu Rückgabefristen, spezifisch enthaltenen Materialien in den Kits und sogar nuancierten Ratschlägen basierend auf ihren Blogartikeln zu geben. Die Halluzinationen nahmen ab. Die Kunden waren zufriedener, und das Supportteam verbringt weniger Zeit damit, die Fehler des Bots zu korrigieren.
Über die Grundlagen hinaus: Optimieren Sie Ihr RAG für bessere Ergebnisse
Obwohl die Basis-Konfiguration eine massive Verbesserung bietet, gibt es immer Möglichkeiten, Ihr RAG-System zu verfeinern:
H3: Experimentieren Sie mit Segmentierungsstrategien
Die Größe und Überlappung Ihrer Textsegmente kann einen erheblichen Einfluss auf die Qualität der Wiederherstellung haben. Zu klein, und der Kontext könnte verloren gehen. Zu groß, und Sie könnten die Kontextfenster überschreiten oder die Relevanz verwässern. Experimentieren Sie mit verschiedenen Werten von chunk_size und chunk_overlap. Für Crafty Kits haben wir festgestellt, dass Produktbeschreibungen von kleineren Segmenten profitierten, während Politiken besser mit etwas größeren Segmenten funktionierten.
H3: Verbessern Sie Ihr Einbettungsmodell
Obwohl all-MiniLM-L6-v2 ein ausgezeichneter Ausgangspunkt ist, ziehen Sie leistungsstärkere (aber möglicherweise ressourcenintensivere) Modelle in Betracht, je nach Ihren wachsenden Anforderungen, oder sogar domänenspezifische Einbettungsmodelle, wenn Ihre Terminologie sehr spezifisch ist. Hugging Face ist hier eine wahre Schatztruhe.
H3: Hybride Suche
Manchmal reicht die bloße semantische Ähnlichkeit nicht aus. Die Kombination von vektorbasierten Suchen mit einer traditionellen Stichwortsuche (wie BM25) kann die Wiederherstellung verbessern, insbesondere für Anfragen, die sehr spezifische Schlüsselwörter oder Produktcodes enthalten. Bibliotheken wie Langchain können Ihnen helfen, hybride Suchstrategien zu integrieren.
H3: Nachbewertung nach der Wiederherstellung
Selbst nachdem Sie die N Hauptsegmente wiederhergestellt haben, sind möglicherweise nicht alle gleich relevant. Ein Schritt der „Nachbewertung“, bei dem ein kleineres, gezielteres Modell die wiederhergestellten Segmente bewertet und diese in Bezug auf die Anfrage nach Relevanz neu anordnet, kann die Genauigkeit erheblich verbessern. Dies ist eine gängige fortgeschrittene RAG-Technik.
H3: Feedback-Schleifen und -Monitoring
Kein KI-System ist „einrichten und vergessen“. Richten Sie ein Verfahren ein, um Benutzerfeedback zu den Antworten des Bots zu sammeln (zum Beispiel ein einfaches „War das hilfreich? Ja/Nein“). Überwachen Sie Anfragen, die systematisch zu schlechten Antworten führen. Dieses Feedback ist wertvoll, um Ihre Wissensdatenbank zu verbessern oder Ihren Wiederherstellungsprozess zu verfeinern.
Wichtige Punkte für Ihr Unternehmen
Also, sind Sie ein kleines Unternehmen, das Ihre KI intelligenter und spezifischer machen möchte? Hier ist Ihr Fahrplan:
- Überprüfen Sie Ihre Daten: Welche internen Dokumente, FAQs, Produktspezifikationen und Kundeninteraktionen können Sie verwenden? Bereinigen Sie diese! Das ist die Grundlage.
- Fangen Sie klein an, iterieren Sie schnell: Versuchen Sie nicht, ein monolithisches System zu bauen. Wählen Sie einen klaren Anwendungsfall (wie einen Kundenservice-Chatbot für spezifische Anfragen) und bauen Sie ein RAG-System dafür auf.
- Setzen Sie auf Open Source: Tools wie Langchain, Sentence Transformers und FAISS machen RAG unglaublich zugänglich, ohne hohe anfängliche Kosten.
- Priorisieren Sie Genauigkeit über Kreativität: Für Geschäftsanwendungen, insbesondere solche, die auf Kunden ausgerichtet sind, ist faktische Genauigkeit normalerweise von größter Bedeutung. Stellen Sie die Temperatur Ihres LLM niedriger ein.
- Planen Sie die Wartung: Ihr RAG-System ist nur so gut wie Ihre Wissensdatenbank. Richten Sie einen Prozess ein, um Ihre Quelldokumente regelmäßig zu aktualisieren und diese erneut einzuspeisen.
Der Weg mit Crafty Kits hat mir gezeigt, dass lokalisierte LLMs nicht mehr nur den Technologiegiganten vorbehalten sind. Mit einem praktischen RAG-Rahmen kann sogar ein kleines Team eine KI aufbauen, die wirklich versteht und die Sprache ihres Unternehmens spricht. Es geht darum, intelligenter zu arbeiten und nicht härter, und Ihren Kunden die präzisen und kontextreicheren Informationen zu liefern, die sie verdienen.
Ich hoffe, diese umfassende Erkundung des RAG hat Ideen für Ihre eigenen Projekte geweckt. Lassen Sie mich in den Kommentaren wissen, ob Sie RAG ausprobieren oder ob Sie coole Tipps und Tricks entdeckt haben!
Ähnliche Artikel
- Beste Code-Überprüfungstools zur Verbesserung Ihres Workflows
- KI-Coding-Assistenten: Mein persönlicher Ausflug in die Welt der Entwicklungstools
- ComfyUI Tanz: Lassen Sie Ihre AI-Videos mit Ihren Bewegungen grooven
🕒 Published: