安装Ollama
需要先安装Ollama,参考我的前一篇 Ubuntu 环境安装和使用Ollama-CSDN博客
下载GGUF中文微调模型
前面体验了官方的Llama3,发现对中文支持不是很友好,问问题很容易就使用英文回答了。但是大家都很卷,很快弄出来了中文微调模型,因此我下载下来体验一下。
首先上github上搜索以下 lama3 中文
https://github.com/search?q=llama3%20%E4%B8%AD%E6%96%87&type=repositories
我们挑第三个来玩玩,因为这个模型提供了GGUF的版本,适合直接使用Ollama进行部署。
点击进入第三个仓库 GitHub - ymcui/Chinese-LLaMA-Alpaca-3: 中文羊驼大模型三期项目 (Chinese Llama-3 LLMs) developed from Meta Llama 3,找到最新的中文模型
我们使用modelscope的下载地址 魔搭社区
安装
git-lfs
假设你的git没有安装
git-lfs
直接下载,发现大文件是下载不下来的。需要安装一下
git-lfs
。Git LFS 是 Git 的一个扩展,专门用于管理大文件
步骤如下:
使用命令安装
sudo apt-get install git-lfs
再执行一下一下命令
git lfs install
查看安装是否成功
git lfs version
安装了以后,我们选定一个文件夹,然后执行以下命令
git clone https://www.modelscope.cn/ChineseAlpacaGroup/llama-3-chinese-8b-instruct-gguf.git
使用Ollama创建模型
下载完成后,我们可以直接进入教程,按照教程执行就可以了。
ollama_zh · ymcui/Chinese-LLaMA-Alpaca-3 Wiki · GitHub
我把教程摘录如下:
首先在当前目录新建一个文件
vim Modelfile
添加以下内容。注意修改目录。[你的目录/]就是你存放模型的路径
FROM [你的目录/]ggml-model-q8_0.gguf
TEMPLATE """{{ if .System }}<|start_header_id|>system<|end_header_id|>{{ .System }}<|eot_id|>{{ end }}{{ if .Prompt }}<|start_header_id|>user<|end_header_id|>
{{ .Prompt }}<|eot_id|>{{ end }}<|start_header_id|>assistant<|end_header_id|>
{{ .Response }}<|eot_id|>"""
SYSTEM """You are a helpful assistant. 你是一个乐于助人的助手。"""
PARAMETER temperature 0.2
PARAMETER num_keep 24
PARAMETER stop <|start_header_id|>
PARAMETER stop <|end_header_id|>
PARAMETER stop <|eot_id|>
假设你是像我一样手动安装Ollama的话,需要先启动Ollama服务。手动安装的同样需要加上[你的目录/]。自动安装的则不需要
nohup [你的目录/]ollama serve > create.og 2>&1 &
因为过程可能比较慢,所以我使用了后台启动
然后创建模型。
nohup [你的目录/]ollama create llama3-zh-inst -f Modelfile > create.log 2>&1 &
因为过程可能比较慢,所以我使用了后台启动
执行
tail -f create.log 查看创建过程。
其中:
FROM
字段指向GGUF文件的路径,由于是聊天交互,这里使用的是Instruct模型TEMPLATE
字段定义了Llama-3-Instruct的指令模板格式SYSTEM
字段定义了系统指令(目前设置为空)PARAMETER
字段定义了一些超参数,详细列表参见:ollama/docs/modelfile.md at main · ollama/ollama · GitHub
创建过程输出日志如;
transferring model data
creating model layer
creating template layer
creating system layer
creating parameters layer
creating config layer
using already created layer sha256:f2a44c6358e8e0a60337f8a1b31f55f457558eeefd4f344272e44b0e73a86a32
using already created layer sha256:8ab4849b038cf0abc5b1c9b8ee1443dca6b93a045c2272180d985126eb40bf6f
writing layer sha256:b821abf159071cfc90f0941b5ca7ef721f229cfcfadcf95b5c58d0ceb3e773c7
writing layer sha256:dc4ec177268acc3382fc6c3a395e577bf13e9e0340dd313a75f62df95c48bc1d
writing manifest
success
输出
success
后,即表示完成创建。
开始聊天
输入以下命令进入聊天程序
[你的目录/]ollama run llama3-zh-inst
在
>>>
后输入用户指令;输入
/bye
结束聊天。
体验
大概试验了一下,虽然都能中文回答,但是效果还是一般般。比如想让他角色扮演,直接说不可以
版权归原作者 石广林谈技术 所有, 如有侵权,请联系我们删除。