服务器使用配置unsloth以及docker,ollama,以及对整个服务器环境的配置
需要做的:
1.安装anaconda3
2.安装docker,docker的gpu环境
3.安装依赖环境
4.在docker中安装ollama,安装pgvector等
5.配置unsloth
6.让LLaMA3运行起来
1.网络方面
查看防火墙
ufw status
添加端口开启
sudo ufw allow 22
iptables -nvL
添加用户
sudo useradd -r -m -s /bin/bash munan
sudo passwd 。。。 #设置密码
切换用户
su 。。。
2.安装docker
首先,更新apt命令
sudo apt-get update
在测试或开发环境中 Docker 官方为了简化安装流程,提供了一套便捷的安装脚本,Ubuntu 系统上可以使用这套脚本安装,另外可以通过 --mirror 选项使用国内源进行安装:
curl -fsSL get.docker.com -o get-docker.sh
sudo sh get-docker.sh --mirror Aliyun
添加用户
#将当前用户加入用户组
sudo gpasswd -a $USER docker
修改并保存完成后,重新加载守护并重启socket即可
sudo systemctl daemon-reload
sudo systemctl restart docker.socket
在docker中安装ollama
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
此为gpu安装工具包
安装ollama命令
此为cpu版本
docker run -d -v /opt/ai/ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama
gpu版本
docker run --gpus all -d -v /opt/ai/ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama
#以export import方式
docker export 容器名字 > container.tar
cat container.tar | docker import - <新容器名称>
#save load方式
docker save -o my-open-webui-image.tar my-open-webui-image
docker load -i my-open-webui-image.tar
这会将my-open-webui-image.tar文件中的镜像加载到Docker中,之后你就可以像使用任何其他本地镜像一样使用它了
docker run -it -d \
-p 3000:8080 \
--add-host=host.docker.internal:host-gateway \
-v /path/on/target/machine/open-webui:/app/backend/data \
--name new_open_webui \
my-open-webui-image
请确保替换/path/on/target/machine/open-webui为目标电脑上的实际路径。
通过以上步骤,你就能成功地将一个Docker容器转换为镜像,并将其转移到另一台电脑上使用了
3.安装ollama
curl -fsSL https://ollama.com/install.sh | sh
若您需要查看Ollama的运行日志,特别是在遇到问题需要调试时,可以使用以下命令:
journalctl -u ollama
如果决定不再使用Ollama,可以通过以下步骤将其完全从系统中移除:
(1)停止并禁用服务:
sudo systemctl stop ollama
sudo systemctl disable ollama
(2)删除服务文件和Ollama二进制文件:
sudo rm /etc/systemd/system/ollama.service
sudo rm $(which ollama)
(3)清理Ollama用户和组:
sudo rm -r /usr/share/ollama
sudo userdel ollama
sudo groupdel ollama
通过以上步骤,不仅能够在Linux平台上成功安装和配置Ollama,还能够灵活地进行更新和卸载。
模型存放路径:
Linux: /usr/share/ollama/.ollama/models
4.检测GPU的使用情况命令
watch -n 1 nvidia-smi # 其中的1为1s刷新一次
5.从hugging Face上面下载模型,以git的方式
git clone git@hf.co:unsloth/llama-3-8b-bnb-4bit
这样建立的将是ssh连接,若以链接的方式建立,由于网络问题,会无法clone下来
对模型进行量化操作
make clean && make all -j
python convert-hf-to-gguf.py /home/munan/fine_tune/lora_quantity_models/lama3-instruct/model
#后面跟的是模型保存得路径,先将其转换为gguf格式
./quantize /home/munan/fine_tune/lora_quantity_models/lama3-instruct/model/ggml-model-f16.gguf /home/munan/fine_tune/lora_quantity_models/lama3-instruct/quantity/ggml-model-q4_0.gguf q4_0
#该命令是对模型进行量化,后面得q4_0为进行4位量化
6.给用户赋予一个文件夹下的所有权限
chown +u
7.从docker中删除模型
docker exec -it ollama-gpu /bin/bash -c 'ollama rm travel_llama3'
#将modelfile.txt复制一份到其他地方
docker exec -it ollama-gpu bash
#以交互式方式进入容器
# 将modelfile.txt移动到容器内
docker cp /home/munan/fine_tune/lora_quantity_models/{your_path}/quantity/ ollama-gpu:/home/{your_path}/quantity/
8.将模型导入到docker的ollama中
docker exec -it ollama-gpu /bin/bash -c "ollama create travel_llama3 -f /home/{your_path}/quantity/Modelfile.txt"
ollama官方地址