Large Language Model in VSCode mit Continue verwenden

Sich Code erklären lassen? Mit AI-Unterstützung Software entwickeln? Wer sich den GitHub Copilot nicht kaufen möchte, der hat die Chance selbst ein LLM zu hosten und dies mit dem Continue Plugin in VS Code zu verwenden. Ich nutze runpod.io um mein LLM zu hosten - mein Laptop ist leider zu schwach um es komplett lokal zu hosten. Diese Anleitung zeigt dir, wie auch du das hinbekommst!

Voraussetzungen:

So funktioniert's:

  • Gehe auf https://www.runpod.io/console/templates und suche nach dem "Text Generation Web UI and APIs" Template von dem Nutzer ashleykza. Bei mir ist gerade Version 1.10.5 aktuell:

  • Klicke auf Deploy, klicke auf Community Cloud (ich hoste alle LLMs in der Community Cloud, da ich die zusätzliche Sicherheit der Secure Cloud nicht benötige) und wähle deine bevorzugte GPU aus. Ich nutze eine Tesla V100 für 0,28$/Stunde. Danach deployst du den Container und wartest bis der Pod bereit ist

  • Danach installieren wir das LLM in der Benutzeroberfläche klicke dafür auf Connect

    und klickst auf "Connect to HTTP Service [Port 3000]"

  • In der Oobaboga Oberfläche klicke auf Modell und lade ein beliebiges Modell runter:


    In meinem Fall habe ich https://huggingface.co/TheBloke/deepseek-coder-6.7B-base-GGUF heruntergeladen.
    Dabei wird im ersten Feld Username/Modelname angegeben (in meinem Fall also das Modell "deepseek-coder-6.7B-base-GGUF" vom User "TheBloke"). Im zweiten Feld wird der genaue Dateiname angegeben. Ich nutze dabei immer die Empfehlung von TheBloke in seiner Modelcard:



    Falls du dir unschlüssig bist, welches Modell derzeit am besten ist: Ich gucke gerne bei Reddit auf r/LocalLLaMA und hole mir dort die aktuellen Empfehlungen ab. Der Download startet wenn du auf Download klickst.

  • Sobald der Download abgeschlossen ist, klicke auf das Aktualisieren Zeichen und wähle dein Modell aus. Danach musst du noch ein paar Parameter treffen (wenn du dir unschlüssig bist, triff sie am besten so wie auf dem Bild) und klicke dann auf Load


    Dein Modell wurde nun geladen und kann jetzt verwendet werden

  • Öffne Visual Studio Code, klicke auf das Continue Plugin und füge ein neues OpenAPI-compatible Model hinzu:



  • Jetzt einfach WizardCoder auswählen (das genaue Modell ist in diesem Beispiel egal). Es öffnet sich eine Config Datei. Das einzige was du nun anpassen musst ist die API-Base:



    Die URL findest du dabei wieder bei RunPod, wenn du auf Connect klickst und Port 3000 auswählst. Jetzt noch die Config Datei abspeichern und du bist fertig.

  • Beispiel:



    In meinem Beispiel habe ich falschen Code geschrieben - Die Gaußsche Summenformel lautet: (n*(n+1)) / 2. Ich habe falsch geklammert. Diesen Code kann ich nun auswählen, mit CMD + M ins Continue Fenster einfügen und eine Frage stellen (Ich habe gefragt: "What is wrong with this code?"). Das LLM antwortet korrekt: Die Formel ist falsch und korrigiert mir den Code. Perfekt!

Wichtig: Vergiss nicht nach deiner Coding-Session das LLM (bzw. den Pod!) wieder herunterzufahren und ggf. zu löschen - sonst kann es teuer werden. In Zukunft wird es bei runpod auch Endpoints geben, die nach Bedarf skalieren und somit eine hoffentlich kostensparendere Möglichkeit darstellen,  um LLMs selbst zu hosten. (Siehe https://docs.runpod.io/reference/pygmalion-6b). B