U vraagt, wij geven antwoord!

Je eigen Vicuna in Linux

Vicuna main illustration

Dit artikel leidt je door het proces van het implementeren van een basis LLaMA alternatief op een LeaderGPU server. We gebruiken hiervoor het FastChat project en het vrij beschikbare Vicuna model.

Voorinstallatie

Laten we ons voorbereiden op de installatie van FastChat door de packages cache repository bij te werken:

sudo apt update && sudo apt -y upgrade

Installeer Nvidia-stuurprogramma's automatisch met het volgende commando:

sudo ubuntu-drivers autoinstall

Je kunt deze stuurprogramma's ook handmatig installeren met onze stap-voor-stap handleiding. Start de server vervolgens opnieuw op:

sudo shutdown -r now

De volgende stap is het installeren van PIP (Package Installer for Python):

sudo apt install python3-pip

FastChat installeren

Van PyPi

Er zijn twee mogelijke manieren om FastChat te installeren. U kunt het rechtstreeks vanuit PyPi installeren:

pip3 install "fschat[model_worker,webui]"

Van GitHub

Als alternatief kun je de FastChat repository van GitHub clonen en installeren:

git clone https://github.com/lm-sys/FastChat.git
cd FastChat

Vergeet niet om PIP te upgraden voordat je verder gaat:

pip3 install --upgrade pip
pip3 install -e ".[model_worker,webui]"

FastChat uitvoeren

Eerste start

Om zeker te zijn van een succesvolle eerste start, is het aan te raden om FastChat handmatig direct vanaf de commandoregel aan te roepen:

python3 -m fastchat.serve.cli --model-path lmsys/vicuna-7b-v1.5

Deze actie haalt automatisch het aangewezen model van je keuze op en downloadt het, wat gespecificeerd moet worden met de --model-path parameter. De 7b staat voor een model met 7 miljard parameters. Dit is het lichtste model, geschikt voor GPU's met 16 GB videogeheugen. Links naar modellen met een groter aantal parameters zijn te vinden in het Readme-bestand van het project.

Sample Vicuna conversation

Nu heb je de optie om een gesprek aan te gaan met de chatbot direct binnen de opdrachtregelinterface of je kunt een webinterface instellen. Deze bevat drie componenten:

  • Controller
  • Werkers
  • Gradio webserver

Diensten instellen

Laten we van elke component een aparte systemd service maken. Maak 3 aparte bestanden met de volgende inhoud:

sudo nano /etc/systemd/system/vicuna-controller.service
[Unit]
Description=Vicuna controller service
[Service]
User=usergpu
WorkingDirectory=/home/usergpu
ExecStart=python3 -m fastchat.serve.controller
Restart=always
[Install]
WantedBy=multi-user.target
sudo nano /etc/systemd/system/vicuna-worker.service
[Unit]
Description=Vicuna worker service
[Service]
User=usergpu
WorkingDirectory=/home/usergpu
ExecStart=python3 -m fastchat.serve.model_worker --model-path lmsys/vicuna-7b-v1.5
Restart=always
[Install]
WantedBy=multi-user.target
sudo nano /etc/systemd/system/vicuna-webserver.service
[Unit]
Description=Vicuna web server
[Service]
User=usergpu
WorkingDirectory=/home/usergpu
ExecStart=python3 -m fastchat.serve.gradio_web_server
Restart=always
[Install]
WantedBy=multi-user.target

Systemd werkt zijn daemons database meestal bij tijdens het opstartproces van het systeem. Je kunt dit echter ook handmatig doen met het volgende commando:

sudo systemctl daemon-reload

Laten we nu drie nieuwe services toevoegen aan het opstarten en ze onmiddellijk starten met de optie --now:

sudo systemctl enable vicuna-controller.service --now && sudo systemctl enable vicuna-worker.service --now && sudo systemctl enable vicuna-webserver.service --now

Als je echter een webinterface probeert te openen op http://[IP_ADDRESS]:7860, krijg je een volledig onbruikbare interface zonder beschikbare modellen. U kunt dit probleem oplossen door de webinterface-service te stoppen:

sudo systemctl stop vicuna-webserver.service

Voer de webservice handmatig uit:

python3 -m fastchat.serve.gradio_web_server

Een verificatie toevoegen

Deze actie roept een ander script aan, dat het eerder gedownloade model zal registreren in een interne database van Gradio. Wacht een paar seconden en onderbreek het proces met de snelkoppeling Ctrl + C. We zorgen ook voor de beveiliging en activeren een eenvoudig authenticatiemechanisme voor toegang tot de webinterface. Open het volgende bestand als je FastChat hebt geïnstalleerd vanuit PyPI:

sudo nano /home/usergpu/.local/lib/python3.10/site-packages/fastchat/serve/gradio_web_server.py

of

sudo nano /home/usergpu/FastChat/fastchat/serve/gradio_web_server.py

Scroll naar beneden naar het einde. Zoek deze regel:

auth=auth,

Wijzig deze door een gebruikersnaam of wachtwoord in te stellen:

auth=(“username”,”password”),

Sla het bestand op en sluit het af met de snelkoppeling Ctrl + X. Start tot slot de webinterface:

sudo systemctl start vicuna-webserver.service

Open http://[IP_ADDRESS]:7860 in je browser en geniet van FastChat met Vicuna:

Sample Vicuna poem

Zie ook:



Bijgewerkt: 13.09.2024

Gepubliceerd: 17.07.2024


Hebt u nog vragen? Schrijf ons!

By clicking «I Accept» you confirm that you have read and accepted the website Terms and Conditions, Privacy Policy, and Moneyback Policy.