


7 M?glichkeiten zum Aufteilen von Daten mithilfe von Langchain Text -Splitern - Analytics Vidhya
Apr 19, 2025 am 10:11 AMLangchain Text -Splitter: Optimierung des LLM -Eingangs für Effizienz und Genauigkeit
Unser vorheriger Artikel umfasste Langchains Dokumentlader. LLMs haben jedoch Kontextfenstergr??enbeschr?nkungen (gemessen in Token). Das überschreiten dieser Grenze verkürzt die Daten, eine Kompromissgenauigkeit und die Erh?hung der Kosten. Die L?sung? Senden Sie nur relevante Daten an die LLM, wobei die Datenaufteilung erforderlich ist. Geben Sie Langchains Text -Splitter ein.
Schlüsselkonzepte:
- Die entscheidende Rolle von Texterteilern: Verstehen Sie, warum eine effiziente Textaufteilung von entscheidender Bedeutung für die Optimierung von LLM -Anwendungen, die Gr??e und die Kosten für die Kontext des Kontextes ausbalanciert ist.
- Verschiedene Textaufteilungstechniken: Erforschen Sie verschiedene Methoden, einschlie?lich Charakterzahlen, Token -Z?hlungen, rekursive Aufteilung und Techniken, die auf HTML-, Code- und JSON -Strukturen zugeschnitten sind.
- Langchain Text -Splitter -Implementierung: Lernen Sie die praktische Anwendung, einschlie?lich Installation, Codebeispiele für die Textaufteilung und die Behandlung verschiedener Datenformate.
- Semantische Aufteilung für eine verst?rkte Relevanz: Entdecken Sie, wie Satzeinbettungen und Kosinus?hnlichkeit semantisch koh?rente Stücke erzeugen und die Relevanz maximieren.
Inhaltsverzeichnis:
- Was sind Texterteiler?
- Datenspaltmethoden
- Charakter z?hlende Aufteilung
- Rekursive Aufteilung
- Token Count-basiertes Aufteilen
- Handling HTML
- Codespezifische Aufteilung
- JSON -Datenhandhabung
- Semantisches Chunking
- H?ufig gestellte Fragen
Was sind Texterteiler?
Textteiler teilen gro?en Text in kleinere, überschaubare Stücke, um eine verbesserte Relevanz von LLM -Abfragen zu erzielen. Sie arbeiten direkt an Rohtext- oder Langchain -Dokumentobjekten. Mehrere Methoden richten sich an verschiedene Inhaltstypen und Anwendungsf?lle.
Datenspaltmethoden
Langchain Text -Splitter sind für eine effiziente gro?e Dokumentenverarbeitung von entscheidender Bedeutung. Sie verbessern die Leistung, das kontextbezogene Verst?ndnis, erm?glichen die parallele Verarbeitung und erleichtern ein besseres Datenmanagement. Lassen Sie uns verschiedene Methoden untersuchen:
Voraussetzungen: Installieren Sie das Paket mit pip install langchain_text_splitters
Charakter z?hlende Aufteilung
Diese Methode spaltet Text basierend auf der Zeichenzahl unter Verwendung eines angegebenen Separators.
von Langchain_Community.document_loaders importieren unstrukturiertesPdfloader von Langchain_text_splitters importieren charaktertextsplitter # Daten laden (ersetzen Sie durch Ihren PDF -Pfad) Loader = unstrukturiertesPdfloader ('How-to-for-formulate-successful-Business-Strategy.pdf', Modus = 'Single')) Data = lader.load () text_splitter = charaktertextsplitter (separator = "\ n", chunk_size = 500, chunk_overlap = 0, is_separator_regex = false) text = text_splitter.split_documents (Daten) Len (Texte) # Ausgabe: Anzahl der Stücke
In diesem Beispiel wird Text in 500-Charakter-Stücke aufgeteilt, wobei neue Zeilenzeichen als Trennzeichen verwendet werden.
Rekursive Aufteilung
Dies verwendet nacheinander mehrere Separatoren, bis die Stücke unter chunk_size
sind. Nützlich für die Aufteilung der Satzebene.
von Langchain_text_splitters importieren recursivecharactertextSplitter recursive_splitter = recursivecharacterTextSplitter (separatoren = ["\ n \ n", "\ n", r "(? >> 293 # ... (Rest des Codes bleibt ?hnlich)
Token Count-basiertes Aufteilen
LLMs verwenden Token; Die Aufteilung durch Token -Anzahl ist genauer. In diesem Beispiel wird die Codierung o200k_base
verwendet (überprüfen Sie den GitHub -Link für Modell-/Codierungszuordnungen).
von Langchain_text_splitters importieren tokentextSsplitter text_splitter = tokentextSsplitter (coding_name = 'o200k_base', chunk_size = 50, Chunk_Overlap = 0) text = text_splitter.split_documents (Daten) Len (Texte) # Ausgabe: Anzahl der Stücke
Eine rekursive Aufteilung kann auch mit Token -Z?hlen kombiniert werden.
Bei einfachem Text wird im Allgemeinen bevorzugt, dass eine rekursive Aufteilung mit Charakter- oder Token -Z?hlung bevorzugt wird.
Handling HTML
Bei strukturierten Daten wie HTML sollte die Aufteilung die Struktur respektieren. Dieses Beispiel spaltet basierend auf HTML -Headern.
von Langchain_text_splitters importieren Sie HTMLHeaDextSsplitter Header_to_split_on = [("H1", "Header 1"), ("H2", "Header 2"), ("H3", "Header 3")] html_splitter = htmlHeaDextSsplitter (Header_to_split_on, return_each_element = true) html_header_splits = html_splitter.split_text_from_url ('https://diataxis.fr/')) len (html_header_splits) # Ausgabe: Anzahl der Stücke
HTMLSectionSplitter
erm?glicht die Aufteilung auf der Basis von anderen Abschnitten.
Codespezifische Aufteilung
Programmiersprachen haben einzigartige Strukturen. In diesem Beispiel wird die Syntax-bewusstes Aufteilung für Python-Code verwendet.
Aus Langchain_Text_splitters importieren recursivecharactertextSplitter, Sprache # ... (Beispiel für Python -Code) ... python_splitter = recursivecharactertextSplitter.from_Language (Sprache = Sprache.Python, Chunk_Size = 100, Chunk_Overlap = 0) python_docs = python_splitter.create_documents ([python_code])
JSON -Datenhandhabung
Verschachtelte JSON -Objekte k?nnen w?hrend der Aufrechterhaltung der Schlüsselbeziehungen aufgeteilt werden.
von Langchain_text_splitters importieren recursivejsonSplitter # ... (JSON -Datenbeispiel) ... splitter = rekursivejsonSplitter (max_chunk_size = 200, min_chunk_size = 20) thunks = splitter.split_text (json_data, convert_lists = true)
Semantisches Chunking
Diese Methode verwendet Satzeinbettungen und Cosinus -?hnlichkeit zu gruppensemantisch verwandten S?tzen.
von Langchain_experimental.text_splitter importieren semanticchunker Aus Langchain_openai.Embeddings Import OpenAiembedings # erfordert die OpenAI -API -Schlüssel # ... (Code mit OpenAiembeding und Semanticchunker) ...
Abschluss
Langchain bietet verschiedene Textaufteilungsmethoden an, die jeweils für verschiedene Datentypen geeignet sind. Die Auswahl der richtigen Methode optimiert den LLM -Eingang, die Verbesserung der Genauigkeit und die Reduzierung der Kosten.
H?ufig gestellte Fragen
(Der Q & A -Abschnitt bleibt weitgehend gleich, mit geringfügigen Formulierungen für Klarheit und Fluss.)
Das obige ist der detaillierte Inhalt von7 M?glichkeiten zum Aufteilen von Daten mithilfe von Langchain Text -Splitern - Analytics Vidhya. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?er Artikel

Hei?e Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Hei?e Themen

Hier sind zehn überzeugende Trends, die die AI -Landschaft der Unternehmen neu ver?ndern. Das riskante finanzielle Engagement für LLMSorganisierungen erh?ht ihre Investitionen in LLM erheblich, wobei 72% erwarten, dass ihre Ausgaben in diesem Jahr steigen. Derzeit fast 40% a

Das Investieren boomt, aber Kapital allein reicht nicht aus. Mit zunehmender Bewertungen und Verblassen der Unterscheidungskraft müssen Investoren in AI-fokussierten Risikokonstrumentfonds eine wichtige Entscheidung treffen: Kaufen, Bau oder Partner, um einen Vorteil zu erlangen? Hier erfahren Sie, wie Sie jede Option bewerten - und PR

Offenlegung: Mein Unternehmen, Tirias Research, hat sich für IBM, NVIDIA und andere in diesem Artikel genannte Unternehmen beraten. Wachstumstreiber Die Anstieg der generativen KI -Adoption war dramatischer als selbst die optimistischsten Projektionen, die vorhersagen konnten. Dann a

Diese Tage sind dank AI nummeriert. Suchen Sie den Verkehr für Unternehmen wie die Reisebereich Kayak und das Edtech -Unternehmen Chegg, teilweise, weil 60% der Suchanfragen auf Websites wie Google nicht dazu führen, dass Benutzer laut One Stud auf Links klicken

Reden wir darüber. Diese Analyse eines innovativen KI -Durchbruchs ist Teil meiner laufenden Forbes -S?ulenberichterstattung über die neueste in der KI, einschlie?lich der Identifizierung und Erkl?rung verschiedener wirksamer KI -Komplexit?ten (siehe Link hier). Auf dem Weg zu Agi und

Haben Sie jemals versucht, Ihr eigenes gro?es Sprachmodell (LLM) zu erstellen? Haben Sie sich jemals gefragt, wie Menschen ihre eigene LLM -Anwendung stellen, um ihre Produktivit?t zu steigern? LLM -Anwendungen haben sich in jedem Aspekt als nützlich erwiesen

Insgesamt denke ich, dass die Veranstaltung wichtig war, um zu zeigen, wie AMD den Ball für Kunden und Entwickler auf dem Feld bewegt. Unter SU, M.O. ist klare, ehrgeizige Pl?ne zu haben und gegen sie auszuführen. Ihr Verh?ltnis von ?Say/Do“ ist hoch. Das Unternehmen tut es

Erinnern Sie sich an die Flut chinesischer Open-Source-Modelle, die die Genai-Industrie Anfang dieses Jahres gest?rt haben? W?hrend Deepseek die meisten Schlagzeilen machte, war Kimi K1.5 einer der herausragenden Namen in der Liste. Und das Modell war ziemlich cool.
