AI Personal Learning
und praktische Anleitung
讯飞绘镜

Tabby: ein nativer, selbstgehosteter KI-Programmierassistent, der sich in VSCode integriert

Allgemeine Einführung

Tabby ist ein quelloffener KI-Programmierassistent, der vom TabbyML-Team entwickelt wurde und von den Benutzern selbst lokal oder auf einem Server eingesetzt werden kann. Er bietet ähnliche GitHub Kopilot Tabby unterstützt mehrere Programmiersprachen und kann in Entwicklungswerkzeuge wie VSCode und Vim integriert werden. Offiziellen Angaben zufolge bietet die neueste Version v0.24.0 (Stand: April 2025) Unterstützung für LDAP-Authentifizierung und Benachrichtigungen über Hintergrundaufgaben, und die Funktionalität wird weiter optimiert. Es ist für datenschutzbewusste Entwickler oder Teams geeignet.

Tabby: ein nativer, selbstgehosteter KI-Programmierassistent, der sich in VSCode-1 integriert


 

Funktionsliste

  • Code VervollständigungVorschlagen von einzelnen oder mehreren Codezeilen in Echtzeit bei der Eingabe von Code zur Verbesserung der Effizienz.
  • Intelligenter Chat-AssistentProgrammieren: Beantworten Sie Fragen zur Programmierung oder erstellen Sie Codeschnipsel im Dialog.
  • Selbstgehostete BereitstellungLäuft lokal oder in der Cloud, schützt den Datenschutz, unterstützt die Anpassung.
  • Unterstützung mehrerer ModelleOpen-Source-Modelle wie StarCoder-1B, Qwen2-1.5B, etc. können verwendet werden.
  • kontextabhängigVerstehen Sie den Kontext des Codes und geben Sie präzise Ratschläge.
  • IDE-IntegrationUnterstützung von VSCode, Vim, IntelliJ und anderen wichtigen Editoren.
  • Code-BrowserDurchsuchen von Projektcode mit Such- und Navigationsunterstützung.
  • VerwendungsstatistikenNutzung von Daten zur Code-Vervollständigung und zum Chat.
  • LDAP-AuthentifizierungEnterprise-Benutzer können Berechtigungen über LDAP verwalten (neu in v0.24.0).

 

Hilfe verwenden

Einbauverfahren

Tabby muss vom Benutzer erstellt werden. Hier sind die detaillierten Schritte auf Basis von Docker.

  1. Vorbereiten der Umgebung
    • Stellen Sie sicher, dass Docker installiert ist (Version 20.10 oder höher).
    • Wenn Sie einen Grafikprozessor verwenden, müssen Sie den NVIDIA-Treiber und das CUDA Toolkit installieren (11.8 oder 12.x empfohlen).
    • Reservieren Sie mindestens 10 GB Speicherplatz für Modelle und Daten.
  2. Spiegel abziehen
    Führen Sie den folgenden Befehl im Terminal aus, um die neueste Tabby-Version zu erhalten:
docker pull tabbyml/tabby
  1. Starten Sie den Server
    Verwenden Sie zum Starten den folgenden Befehl, der standardmäßig den Port 8080 überwacht:
docker run -it --gpus all -p 8080:8080 -v $HOME/.tabby:/data tabbyml/tabby serve --model TabbyML/StarCoder-1B --device cuda --chat-model Qwen2-1.5B-Instruct
  • --gpus allAktivieren Sie die GPU-Beschleunigung (keine GPU kann entfernt werden).
  • -p 8080:8080: Stellt den Container-Port lokal dar.
  • -v $HOME/.tabby:/data:: Daten werden lokal gespeichert .tabby Mappe.
  • --modelGibt das Modell für die Code-Vervollständigung an, standardmäßig StarCoder-1B.
  • --chat-modelChat-Modell angeben, standardmäßig Qwen2-1.5B-Instruct.
  • --device cuda: GPU verwenden, wenn keine GPU, wechseln Sie zu cpu.
  1. Verifizierungsläufe
    Rufen Sie nach dem Start die http://localhost:8080. Wenn die Begrüßungsseite angezeigt wird oder das Protokoll die Meldung "Listening at 0.0.0.0:8080" ausgibt, ist der Vorgang erfolgreich.
  2. Installation von IDE-Erweiterungen
  • VSCodeSuchen Sie im Erweiterungsmarkt nach "Tabby", installieren Sie es und setzen Sie die Serveradresse auf http://localhost:8080.
  • VimInstallation über den Plug-in-Manager TabbyML/vim-tabbyLaufen npx tabby-agent --stdio Verbindungen.
  • IntelliJSuchen Sie nach "Tabby" im JetBrains Marketplace, um die Adresse zu installieren und zu konfigurieren.

Hauptfunktionen

Code Vervollständigung

  • Verfahren: Geben Sie den Code in die IDE ein, und Tabby zeigt ein Vorschlagsfeld an. Drücken Sie Tab Akzeptanz.Esc Ablehnung.
  • Ausgewählte FunktionenContext-Awareness wird unterstützt. Zum Beispiel, Eingabe def sort_listvorschlagen kann:
def sort_list(lst):
return sorted(lst)
  • Anpassungsparameter: In config.toml Änderung max_input_length(Standardwert 1024) und max_output_tokens(Standardwert 512).

Intelligenter Chat-Assistent

  • Wege zum ÖffnenVSCode: Klicken Sie in VSCode auf das Tabby-Symbol in der Seitenleiste, um das Chat-Panel zu öffnen.
  • VerwendungEingabefragen wie "Schreiben Sie eine Array-Deduplizierungsfunktion in JavaScript", die Tabby zurückgeben wird:
function uniqueArray(arr) {
return [...new Set(arr)];
}

Dies kann auch über die @ Siehe das Dokument, um den Kontext zu verdeutlichen.

  • Befehl ausführen: Ähnliches eingeben dir um die Simulationsergebnisse anzuzeigen (v0.23.0 Enhanced).

Code-Browser

  • ZugangswegKlicken Sie in der Weboberfläche auf "Code Browser".
  • Arbeitsablauf: Geben Sie Schlüsselwörter ein (z.B. class), Code suchen. Unterstützung der Filterung nach Dateityp, klicken Sie auf die Ergebnisse, um zu einem bestimmten Ort zu springen.
  • Merkmale aktualisierenv0.23.0 Optimiertes Browsing-Erlebnis mit Unterstützung für mehr Navigationsoptionen.

zusätzlicher Hinweis

  • ErsteinführungDas Herunterladen des Modells kann je nach Netz 5-10 Minuten dauern.
  • Leistungsoptimierung: Verwendung --parallelism 4 Erhöhung der gleichzeitigen Verarbeitungsleistung (erfordert High-End-Hardware).
  • Unterstützung der GemeinschaftVerfügbar über Slack (links.tabbyml.com/join-slack) Holen Sie sich Hilfe.

 

Anwendungsszenario

  1. persönliche Entwicklung
    Ein Front-End-Entwickler setzt Tabby lokal ein und verwendet es zur Ergänzung der Reagieren Sie Komponentencodes, um Zeit für doppelte Einträge zu sparen.
  2. Kollaboration im Unternehmen
    Das Unternehmen setzte Tabby auf einem internen Server ein, und mit der LDAP-Authentifizierung konnten die Teammitglieder Fehler schnell über die Chat-Funktion beheben.
  3. Bildung und Ausbildung
    Die Schüler lernen mit Tabby C++, indem sie im Chat fragen: "Was ist ein Zeiger?" und Codebeispiele und Erklärungen erhalten.

 

QA

  1. Welche Modelle werden von Tabby unterstützt?
    StarCoder-1B (Code-Vervollständigung) und Qwen2-1.5B-Instruct (Chat) werden standardmäßig unterstützt, und Benutzer können andere Open-Source-Modelle ersetzen.
  2. Was sind die Vorteile des Selbst-Hostings?
    Die Daten werden nicht in die Cloud hochgeladen, sind für datenschutzsensible Szenarien vollständig lokalisiert und können frei konfiguriert werden.
  3. Was sind die Mindestanforderungen an die Hardware?
    Die CPU läuft mit 8 GB RAM und die GPU läuft mit 16 GB RAM und 4 GB Videospeicher.
Darf nicht ohne Genehmigung vervielfältigt werden:Leiter des AI-Austauschkreises " Tabby: ein nativer, selbstgehosteter KI-Programmierassistent, der sich in VSCode integriert
de_DEDeutsch