Сүүлийн үед OpenAI-ийн ChatGPT-ийн бүрэн хувилбар болох хувийн чатбот үйлчилгээ шаардлагатай болж байна. Тиймээс би үүнийг гэртээ хэрэгжүүлж, сүлжээний хэвлэгч болон NAS (OpenMediaVault)-ийн хамт гэрийнхээ бүх хүмүүст хүртээмжтэй болгохоор шийдсэн.
Өмнө нь би хүмүүст Llama цувралыг англи хэлээр хийх даалгавар, Qwen цувралыг хятад хэлний даалгаварт ашиглахыг зөвлөдөг байсан. Өмчлөлийнхтэй (GPT/Claude) харьцуулахад олон хэлээр ярьдаг ажлуудад хангалттай хүчтэй нээлттэй эхийн загвар байхгүй байсан.
Гэсэн хэдий ч бидний мэдэж байгаагаар сүүлийн үед бүх зүйл өөрчлөгдсөн. Би Qwen2.5-аас залхах болгондоо DeepSeek-V2-г хааяа ашигладаг байсан ба DeepSeek V2.5, V3-аас техник хангамж дутагдсанаас хоцорч байсан. Гэхдээ DeepSeek намайг сэтгэлээр унасангүй, R1 нь маш гайхалтай гүйцэтгэлтэй бөгөөд 1.5B хэмжээтэй байна!
Энэ нь бид үүнийг тодорхой хэмжээний хэрэглэгчийн туршлагатай CPU дээр ч ажиллуулж чадна гэсэн үг юм. Олон хүмүүс тоглоом тоглоход зориулсан GPU-тэй байдаг тул хурд нь асуудал биш юм. OpenAI нь үнэгүй дансны хэрэглээг хязгаарладаг тул орон нутгийн LLM-д байршуулсан баримт бичиг, зургийг боловсруулах нь том давуу тал юм.
Хэдийгээр багцалсан Ollama дэмжлэгтэйгээр Open WebUI-г суулгах нь албан ёсны нэг мөрийн тушаалаар маш хялбар байдаг:
docker run -d -p 3000:8080 --gpus=all -v ollama:/root/.ollama -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:ollama
Гэхдээ RAG (Вэб хайлт) ажиллуулах нь ихэнх хүмүүст тийм ч хялбар биш тул би бэлэн болсон шийдлийг олохыг хүсч байна.
Би сүүлийн нийтлэлдээ дурдсанчлан боомт бол өөр LLM стекийг турших маш сайн туршилтын талбай юм. Гэхдээ энэ нь зөвхөн үүний хувьд гайхалтай төдийгүй RAG нь бэлэн бус ажиллаж байгаа орон нутгийн LLM-ийг өөрөө байршуулах цогц шийдэл юм. Тиймээс, үүнийг эхнээс нь хэрэгжүүлж эхэлцгээе, ихэнх хүмүүс үйлдлийн систем суулгахаас эхэлдэггүй тул алхмуудыг алгасаж болно.
Өмнөхтэй адил debian-11.6.0-amd64-netinst.iso
ашиглан суулгах процессыг явуулна уу.
sudoer usermod -aG sudo username
дээр нэмээд дахин ачаална уу
(Заавал биш) Нэмэлт своп нэмнэ үү
fallocate -l 64G /home/swapfile chmod 600 /home/swapfile mkswap /home/swapfile swapon /home/swapfile
мөн swapfile-г байнгын nano /etc/fstab
болгох
UUID=xxxxx-xxx swap swap defaults,pri=100 0 0 /home/swapfile swap swap defaults,pri=10 0 0
swapon --show
эсвэл free -h
ашиглан шалгана уу
Nouveau драйверийг идэвхгүй болгох
bash -c "echo blacklist nouveau > /etc/modprobe.d/blacklist-nvidia-nouveau.conf" bash -c "echo options nouveau modeset=0 >> /etc/modprobe.d/blacklist-nvidia-nouveau.conf" update-initramfs -u update-grub reboot
Хамаарал суулгах
apt install linux-headers-`uname -r` build-essential libglu1-mesa-dev libx11-dev libxi-dev libxmu-dev gcc software-properties-common sudo git python3 python3-venv pip libgl1 git-lfs -y
(Заавал биш) Шаардлагатай бол устгана уу
apt-get purge nvidia* apt remove nvidia* apt-get purge cuda* apt remove cuda* rm /etc/apt/sources.list.d/cuda* apt-get autoremove && apt-get autoclean rm -rf /usr/local/cuda*
Cuda-tookit болон cuda суулгана уу
wget https://developer.download.nvidia.com/compute/cuda/12.4.1/local_installers/cuda-repo-debian11-12-4-local_12.4.1-550.54.15-1_amd64.deb sudo dpkg -i cuda-repo-debian11-12-4-local_12.4.1-550.54.15-1_amd64.debsudo cp /var/cuda-repo-debian11-12-4-local/cuda-*-keyring.gpg /usr/share/keyrings/ sudo add-apt-repository contrib sudo apt-get update sudo apt-get -y install cuda-toolkit-12-4 sudo apt install libxnvctrl0=550.54.15-1 sudo apt-get install -y cuda-drivers
Боомт нь докер дээр суурилсан тул NVIDIA Container Toolkit-ийг суулгаарай
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \ && curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \ sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \ sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
Дараа нь sudo apt-get update
болон sudo apt-get install -y nvidia-container-toolkit
Суулгасны дараах cuda үйлдлийг гүйцэтгэнэ nano ~/.bashrc
export PATH=/usr/local/cuda-12.4/bin${PATH:+:${PATH}} export LD_LIBRARY_PATH=/usr/local/cuda-12.4/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
Дараа нь өөрчлөлтийг хэрэгжүүлэхийн тулд sudo update-initramfs -u
, ldconfig
эсвэл source ~/.bashrc
дахин ачаалсны дараа nvidia-smi
болон nvcc --version
ээр баталгаажуулна уу
Miniconda суулгах (заавал биш, боомтод зориулагдаагүй)
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh && sudo chmod +x Miniconda3-latest-Linux-x86_64.sh && bash Miniconda3-latest-Linux-x86_64.sh
# Add Docker's official GPG key: sudo apt-get update sudo apt-get install ca-certificates curl sudo install -m 0755 -d /etc/apt/keyrings sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc sudo chmod a+r /etc/apt/keyrings/docker.asc # Add the repository to Apt sources: echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \ $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \ sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Docker-д зориулсан суулгацыг sudoгүйгээр гүйцэтгэнэ
sudo groupadd docker sudo usermod -aG docker $USER newgrp docker docker run hello-world
git clone https://github.com/av/harbor.git && cd harbor ./harbor.sh ln
harbor --version
ээр баталгаажуулна уу
RAG дэмжлэгтэйгээр өгөгдмөл рүү нь harbor defaults add searxng
harbor defaults list
шалгахын тулд одоо гурван үйлчилгээ идэвхтэй байна: ollama
, webui
, searxng
Эдгээр үйлчилгээг докер дээр гаргахын тулд harbor up
хамт ажиллуул
Хаягдлын бүртгэлийг харахын тулд harbor ps
docker ps
, harbor logs
ашиглана уу
Open-webui frontend нь одоо 0.0.0.0:33801
үйлчилж байгаа бөгөөд http://localhost:33801
эсвэл серверийн IP хаягтай LAN-аас үйлчлүүлэгчид хандах боломжтой.
watch -n 0.3 nvidia-smi
ашиглан VRAM ашиглалтыг хянах
harbor up ollama --tail
эсвэл harbor logs
ашиглан бүртгэлийг хянах
harbor ollama list
гэх мэт бүх оллама тушаалуудыг ашиглах боломжтой
Бусад төхөөрөмжөөс (ширээний/гар утас) хандаж админ бүртгэлээ бүртгүүлж, загвараа татаж авах цаг болжээ.
Админ акаунтаар нэвтэрсний дараа баруун дээд талын аватар дүрс дээр дарж, Admin Panel
дараа нь Settings
нээнэ үү, эсвэл `http://ip:33801/admin/settings-ээр нэвтэрнэ үү.
Models
дээр товшоод, баруун дээд хэсэгт татаж авах товчлуур шиг харагдах Manage Models
дарна уу.
deepseek-r1
эсвэл өөр загваруудыг доорх текст хайрцагт оруулна уу Pull a model from Ollama.com
баруун талд байгаа татаж авах товчийг дарна уу.
Загварыг татаж авсны дараа дахин шинэчлэх шаардлагатай бөгөөд шинээр татаж авсан загвар нь New Chat
(нүүр) хуудасны унждаг цэсэнд ашиглагдах болно.
Одоо энэ нь зөвхөн ChatGPT-ийн өөр чатботыг ажиллуулаад зогсохгүй OpenAI API-ийн бүрэн ажиллагаатай API хувилбар, мөн Google-ийн хувийн хайлтын системийг ажиллуулж байна!
webui-г LAN дотор дараах хаягаар ашиглах боломжтой: http://ip:33801
олламаг LAN дотор дараах холбоосоор дамжуулан авах боломжтой: http://ip:33821
searxng-г LAN дотор дараах хаягаар ашиглах боломжтой: http://ip:33811
LLM API интеграци бүхий ямар ч програмтай Ollama API руу залгана уу:
http://ip:33821/api/ps http://ip:33821/v1/models http://ip:33821/api/generate http://ip:33821/v1/chat/completionsb