Allgemeine Einführung
Yek ist ein schnelles, auf Rust basierendes Werkzeug zum Lesen von Textdateien aus einem Repository oder Verzeichnis, zum Chunking und zur Serialisierung für die Verwendung in großen Sprachmodellen (LLMs). Das Tool verwendet standardmäßig .gitignore-Regeln, um unerwünschte Dateien zu überspringen, und nutzt die Git-Historie, um auf wichtige Dateien zu schließen. yek kann Inhalte auf der Basis von ungefähren "Token"-Zahlen oder Byte-Größen chunken und erkennt automatisch, ob die Ausgabe über eine Pipeline erfolgt. Es unterstützt die Verarbeitung mehrerer Verzeichnisse mit einem einzigen Befehl und wird über die Datei yek.toml konfiguriert.
Funktionsliste
- Verwendung der .gitignore-Regel zum Überspringen unerwünschter Dateien
- Verwendung der Git-Historie zum Ermitteln wichtiger Dateien
- Ableitung zusätzlicher Ignoriermuster (z. B. binäre Dateien, große Dateien usw.)
- Chunking von Inhalten auf der Grundlage der ungefähren "Token"-Zahl oder Byte-Größe
- Automatische Erkennung, ob der Ausgang verrohrt ist oder nicht
- Unterstützung für die Verarbeitung mehrerer Verzeichnisse in einem einzigen Befehl
- Konfiguration über die Datei yek.toml
Hilfe verwenden
Ablauf der Installation
Unix-ähnliche Systeme (macOS, Linux)
curl -fsSL https://bodo.run/yek.sh | bash
Windows (PowerShell)
irm https://bodo.run/yek.ps1 | iex
Aus dem Quellcode erstellen
git clone https://github.com/bodo-run/yek.git
cd yek
cargo build --release
Verwendung
Yek hat vernünftige Standardeinstellungen, und Sie können yek einfach aus einem Verzeichnis heraus starten, um das gesamte Repository zu serialisieren. Standardmäßig werden alle Dateien des Repositorys in 10 MB große Stücke zerlegt und in ein temporäres Verzeichnis geschrieben, wobei die Pfade zu den Dateien auf der Konsole ausgegeben werden.
typisches Beispiel
- Verarbeitet das aktuelle Verzeichnis und schreibt in das temporäre Verzeichnis:
yek
- Pipeline die Ausgabe in die Zwischenablage (macOS):
yek src/ | pbcopy
- Begrenzen Sie die maximale Größe auf 128K Token und verarbeiten Sie nur das Verzeichnis src:
yek --max-size 128K --tokens src/
- Begrenzen Sie die maximale Größe auf 100 KB und verarbeiten Sie nur das Verzeichnis src, schreiben Sie in ein bestimmtes Verzeichnis:
yek --max-size 100KB --output-dir /tmp/yek src/
- Verarbeitet mehrere Verzeichnisse:
yek src/ tests/
CLI-Referenz
yek --help
Yek ist ein Werkzeug zum Chunking und zur Serialisierung von Repository-Inhalten für den LLM-Verbrauch.
Verwendung
yek [OPTIONEN] [Verzeichnisse]...
parametrisch
Verzeichnisse
: Zu bearbeitendes Verzeichnis [Standard: .]
Optionen (wie bei Computersoftware-Einstellungen)
--max-size
Maximale Größe pro Block (z.B. '10MB', '128KB', '1GB') [Standard: 10MB]
Ein Satz Beschreibung (kurz)