- Bietet lokale LLM-basierte Text-Autovervollständigung direkt in VIM
- Automatische Vorschläge bei Cursorbewegungen im
Insert-Modus
- Manuelle Vorschläge können mit
Ctrl+F ausgelöst werden
- Vorschläge mit
Tab übernehmen
- Mit
Shift+Tab den Vorschlag der ersten Zeile übernehmen
- Maximale Zeit für die Textgenerierung konfigurierbar
- Kontextbereich rund um den Cursor konfigurierbar
- Erstellt einen Kontextring aus Kontextfragmenten aus geöffneten Dateien, aktuell bearbeiteten Dateien und kopiertem Text
- Unterstützt selbst auf leistungsschwacher Hardware sehr große Kontexte durch intelligente Wiederverwendung von Kontext
- Zeigt Leistungsstatistiken an
Installation
- vim-plug :
Plug 'ggml-org/llama.vim'
- Vundle :
llama.cpp-Einrichtung
- Das Plugin benötigt eine laufende llama.cpp-Serverinstanz unter
g:llama_config.endpoint
- Mac OS :
brew install llama.cpp
- Andere Betriebssysteme: aus dem Quellcode bauen oder die neuesten Binärdateien verwenden: llama.cpp releases
llama.cpp-Konfiguration
- Empfohlene Konfiguration je nach VRAM-Größe:
- 16 GB VRAM oder mehr:
Qwen2.5-Coder-7B-Q8_0-GGUF
- Weniger als 16 GB VRAM:
Qwen2.5-Coder-3B-Q8_0-GGUF
- Weniger als 8 GB VRAM:
Qwen2.5-Coder-1.5B-Q8_0-GGUF
- Details siehe
:help llama
Empfohlene LLMs
Implementierungsdetails
- Das Plugin zielt auf lokale FIM-Vervollständigung ab, die einfach und leichtgewichtig ist und auch auf Consumer-Hardware hochwertige Leistung bietet
Weitere IDEs
1 Kommentare
Hacker-News-Kommentare
Es wird empfohlen, sich die technischen Details der Server-Implementierung anzusehen, da sie interessante und clevere Ideen enthält. Dieses Plugin ist auch für VS Code verfügbar. Dank clientseitigem Caching wurde die Performance verbessert.
Dieser Nutzer hat viel zum Open-Source-AI-Ökosystem beigetragen, und man hofft, dass er genug Finanzierung erhält, um weiterhin Software zu entwickeln und sie als echten „bedingungslosen“ Open Source zu veröffentlichen.
Es wird angenommen, dass eine engere Integration von LLM-Tools mit LSP, Compilern und anderen statischen Analyse-Tools mehr Kontext und bessere Ausgaben liefern könnte. Es wäre gut, LLMs pro Sprache feinzujustieren und sie zusammen mit gängigen Editor-Tools bereitzustellen. Es wird darauf hingewiesen, dass AI-Tools bei älteren und populären Sprachen besser funktionieren, was bei der Sprachwahl ein wichtiger Faktor sein könnte. Es wäre wünschenswert, ein eigenes Modell für Gleam zu installieren, das Daten von LSP und Compiler erhält und dadurch keine fehlerhafte Syntax erzeugt.
Es wird gefragt, wie der „Ring Context“ funktioniert, und eine Lösung vorgeschlagen, wie sich der KV-Cache in ähnlichen Projekten verwalten lässt. Dabei würde ein Baum von Tokens beibehalten und in festen Tiefenabständen vollständige Snapshots des gesamten LLM-Zustands gespeichert, sodass bei Änderungen am Buffer nur einige wenige Tokens „neu abgespielt“ werden müssen. Es wird vermutet, dass es mathematische Eigenschaften dafür geben könnte, wie wichtige Teile des Zustands funktionieren.
Der blinkende Cursor im Demo-Video löst zwar Herzklopfen aus, wird aber dennoch als sehr cool empfunden. Außerdem wird gefragt, wie Linux auf M*-Hardware läuft.
Es wird gefragt, ob dieses Plugin identisch mit der VSCode-Version ist.
Es wird darüber nachgedacht, was mit Consumer-Hardware und Verbesserungen bei der Quantisierung in den nächsten zehn Jahren möglich sein wird. Derzeit kommt selbst eine 24-GB-GPU nicht an die Performance von Hosting-Diensten heran.
Terminal-Coding wird bevorzugt, und wenn man nicht weiterkommt, kann man
askdsverwenden, um im Terminal eine tiefergehende Analyse durchzuführen.Es wird gefragt, ob sich llama auf Hardware der Mittelklasse nutzen lässt, da es offenbar wegen zu wenig RAM abstürzt. 2 GB VRAM und 16 GB Systemspeicher scheinen nicht auszureichen; bei den meisten Apple-Produkten funktioniert es wegen des gemeinsamen Speichers, ansonsten brauche man wohl eine teure Nvidia-GPU mit viel VRAM. Es wird gefragt, ob es günstigere Optionen gibt.
Es wird um Rat von jemandem gebeten, der sich in diesem Bereich auskennt, und nach einer Möglichkeit gesucht, eine bezahlbare Grafikkarte zu kaufen, um lokale LLMs auszuführen.