参考资料:

 https://www.markhneedham.com/blog/2023/10/18/ollama-hugging-face-gguf-models/ 

使用的已经gguf化后的CausaLM

 https://huggingface.co/tastypear/CausalLM-7B-DPO-alpha-GGUF/tree/main 

1、新建一个环境

mkdir CausalLM
cd CausalLM
python3 -m venv .venv
source .venv/bin/activate

2、安装依赖:

pip install huggingface-hub

3、下载模型:

建立下载用的目录:

mkdir downloads
huggingface-cli download \
  tastypear/CausalLM-7B-DPO-alpha-GGUF \
  causallm_7b-dpo-alpha.Q8_0.gguf \
  --local-dir downloads \
  --local-dir-use-symlinks False

要注意目录名一定要匹配啊,s不能少

4、新建模型引用文件:

vim Modelfile

里面就这一句话:

FROM ./downloads/causallm_7b-dpo-alpha.Q8_0.gguf

5、ollama新建本地模型

ollama create causallm7bdpo1 -f Modelfile

运行成功

6、启动模型:

ollama run causallm7bdpo1

7、再来一个Q5型的

huggingface-cli download \
  tastypear/CausalLM-7B-DPO-alpha-GGUF \
  causallm_7b-dpo-alpha.Q5_K_M.gguf \
  --local-dir downloads \
  --local-dir-use-symlinks False


vim Modelfile2


FROM ./downloads/causallm_7b-dpo-alpha.Q5_K_M.gguf
ollama create causallm7bdpoQ5v1 -f Modelfile2
ollama run causallm7bdpoQ5v1 


8、一个小细节是,这个模型使用了

ChatML来标记系统提示,用户输入等等,当时ollama好像默认没有去支撑这个模版啥的,导致这个模型默认run起来其实是一个text的扩写工作状态,而不是一个chat状态

这个需要再看看怎么回事

<|im_start|>system
{system_message}<|im_end|>
<|im_start|>user
{prompt}<|im_end|>
<|im_start|>assistant

 https://www.reddit.com/r/LocalLLaMA/comments/17u7k2d/once_and_for_all_how_does_chatml_prompt_template/ 


9、这个版本的模型

非常有意思,可以自己去试验

我一开始以为是我运行了8bit的版本,机器不行,结果发现其实是第8个问题导致的,没事,我稍后再看看