大模型部署:Ollama运行HuggingFace下载的模型

   日期:2024-12-26    作者:zhounina920 移动:http://mip.riyuangf.com/mobile/quote/38392.html

本地运行模型我之前都直接使用LM-studio,好用、无脑。本地用足够了。但是放在服务器上才是正道,本地运行无法长时间开启保持运行,而且Ollama推出了并行GPU计算之后可用性大幅提升,可用性很高。 今天研究下如何用Ollama如何在本地来使用这些HF的开源模型,后面把它搬到服务器上。

大模型部署:Ollama运行HuggingFace下载的模型

设置很简单,先在电脑上创建一个文件夹,比如我会把我的模型放到一个雷电3外接的nvme硬盘上,路径是。 然后在这里直接创建Modelfile,格式可以参考Ollama的文档。

 
 

1. 使用HuggingFace

从HugginFace下载模型需要挑选下。这里我先以Meta-Llama-3-8B-Instruct为例子,我之前下载了。 如果网络存在问题可以选择国内镜像站,给大家推荐一个镜像站HF-Mirror,当然也可以去国内的ModelScope下载。 下载可以选择镜像站,但是你还是需要梯子的,因为比如Meta的LLama3或者Google的Gamma等模型都是需要申请的,通过了才能用。不过给大家提个醒,申请Token的时候尽量别填写中国,否则你会遇到跟我一样的情况。

  1. 使用度娘搜资源,看看有人共享模型网盘地址没有。
  2. 直接搜Meta-Llama-3,有一些有志人士会讲这些模型重传到自己仓库中让大家使用,比如我现在用的。
  3. 直接在ModelScope中查找下载

OK,知道在哪下载了之后你要知道用什么样的模型。

2. 应该下载什么样的模型

本地运行模型在不写代码的情况对于模型格式还是需要一些要求的。你会遇到两种格式GGUF和Safetensor。

  • GGUF(General Graphical User Interface Format)是一种用于存储和共享开源机器学习模型的格式

简单说,GGUF把模型权重和结构统一存储了,方便传输和扩展。Safetensors是二进制格式,安全高效,可以通过量化转换为GGUF,可以参考llama.cpp的官方文档。 它们的细节差别,以及具体如何将safetensor量化转换我会再写一篇文章细说。

那么我们最好挑GGUF格式模型,主机配置高的可以Q6、Q8,配置不行的自行尝试小的吧。我自己平时用Q6的就足够了(M2 Ultra, 192G)。GGUF格式的所有的模型都可以被Ollama直接加载,也可以在LM-studio中直接使用,比较推荐。

而Safetensor格式的Ollama支持了三种

  • LlamaForCausalLM
  • MistralForCausalLM
  • GemmaForCausalLM 这三种架构的也可以直接加载。

这里以GGUF为例介绍一下怎么用。

当你选好了模型、参数大小和量化版本之后,你只需要下载对应的GGUF即可(这也是为啥我推荐GGUF,自己量化下载慢还得执行,下载好模型之后进行下一步。

最简单的使用

  1. 指定模型
 
  1. 导入模型文件
 
  1. 运行导入的模型后进入命令行交互模式
 

经过上面三步已经可以用命令行跟大模型沟通了,但是为了作为生产力给各个软件提供能力,你还需要继续折腾一下。

  1. 很多模型对中文是不友好的,比如这个Meta的LLama3和3.1。我们可以在导入Model的时候要求Ollama增加TEMPLATE、SYSTEM、PARAMETER。
  2. 为了对接使用模型的应用,需要后台运行模型暴露API接口

稍微进阶一下

1. 修改一下Modelfile

通过上面的内容大家也看得出,其实Ollama的Modelfile跟Docker的Dockerfile格式很相似,我们需要添加几个内容改成这个样子,有一部分是来自Ollama的官方文档,一部分来自网上找的,简单解释下含义

 
参数说明
  • PARAMETER:指定模型的一些参数,包括常见的temperature、top-p、tok-k等。这里说下stop,stop其实是要设置模型的停止符。当遇到stop的value值时,LLM 将停止生成文本并返回。可以通过在模型文件中指定多个单独的参数来设置多个停止模式。
  • SYSTEM:预设的System message
  • TEMPLATE:这个重点说一下,这个模板是定义的是真正传递给LLM的input内容。通过这个模板的定义我们可以完整的控制到底如何传递给大模型,也能配合stop标记来管理。由于Ollama使用go语言开发,所以模板语法也是go的规则。
另一个有意思的语句
 

“奶奶会生气”这个挺搞笑的,但是确实有用,感兴趣的朋友自己搜搜原因吧,没找到。

2. 创建一个新版本的model镜像
 
3. 再试试吧
 

试试API

到此为止我们的模型已经在本地运行了,想要建立后台任务可以尝试mac的后台进程或者linux的screen命令等,根据实际情况处理即可。 关于Ollama的API官方文档有说明,ollama/docs/api.md。这里只做简单的一个测试 如果你不确定ollama服务运行的端口可以用来试一下,没启动的话会尝试启动,在运行的话会告诉你运行在哪,.

 

生产环境如何使用

Ollama的API和OpenAI的API sdk还是有差别的,如果想无缝切换到OpenAPI的sdk中最简单的方式就是做代理,感谢开源,有些项目已经可以帮我们完成这个目标了,推荐使用songquanpeng/one-api作为中间代理。

Ollama还是比较适合作为中间层的,运行效率已经基本能满足服务使用。经过测试在0.2以上的版本性在我的主机上性能llama3 8B的性能并不低与GPT 3.5,比4o-mini稍微慢一点。当然推理能力和生成质量稍有不及,不过只要主机够多,搭建私域强大的LLM不是问题,推荐大家了解MOA的相关知识

大模型时代,火爆出圈的LLM大模型让程序员们开始重新评估自己的本领。 “?”“”等问题热议不断。

事实上

继等巨头公司发布AI产品后,很多中小企业也陆续进场超高年薪,挖掘AI大模型人才 如今大厂老板们,也更倾向于会AI的人,普通程序员,还有应对的机会吗

与其焦虑……

不如成为「」,毕竟AI时代谁先尝试,谁就能占得先机

但是LLM相关的内容很多,现在网上的老课程老教材关于LLM又太少。所以现在小白入门就只能靠自学,学习成本和门槛很高。

针对所有自学遇到困难的同学们,我帮大家系统梳理大模型学习脉络,将这份 分享出来:包括等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

👉CSDN大礼包🎁:全网最全《LLM大模型入门+进阶学习资源包》免费分享(安全链接,放心点击👈

AI大模型已经成为了当今科技领域的一大热点,那以下这些大模型书籍就是非常不错的学习资源。

这套包含640份报告的合集,涵盖了大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。(几乎涵盖所有行业)

四、LLM大模型开源教程(LLaLA/Meta/chatglm/chatgpt

阶段1:AI大模型时代的基础理解

  • 目标:了解AI大模型的基本概念、发展历程和核心原理。

  • 内容

    • L1.1 人工智能简述与大模型起源
    • L1.2 大模型与通用人工智能
    • L1.3 GPT模型的发展历程
    • L1.4 模型工程
    • L1.4.1 知识大模型
    • L1.4.2 生产大模型
    • L1.4.3 模型工程方法论
    • L1.4.4 模型工程实践
    • L1.5 GPT应用案例

阶段2:AI大模型API应用开发工程

  • 目标:掌握AI大模型API的使用和开发,以及相关的编程技能。

  • 内容

    • L2.1 API接口
    • L2.1.1 OpenAI API接口
    • L2.1.2 Python接口接入
    • L2.1.3 BOT工具类框架
    • L2.1.4 代码示例
    • L2.2 Prompt框架
    • L2.3 流水线工程
    • L2.4 总结与展望

阶段3:AI大模型应用架构实践

  • 目标:深入理解AI大模型的应用架构,并能够进行私有化部署。

  • 内容

    • L3.1 Agent模型框架
    • L3.2 MetaGPT
    • L3.3 ChatGLM
    • L3.4 LLAMA
    • L3.5 其他大模型介绍

阶段4:AI大模型私有化部署

  • 目标:掌握多种AI大模型的私有化部署,包括多模态和特定领域模型。

  • 内容

    • L4.1 模型私有化部署概述
    • L4.2 模型私有化部署的关键技术
    • L4.3 模型私有化部署的实施步骤
    • L4.4 模型私有化部署的应用场景

这份 包括等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

👉CSDN大礼包🎁:全网最全《LLM大模型入门+进阶学习资源包》免费分享(安全链接,放心点击👈


特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


举报收藏 0评论 0
0相关评论
相关最新动态
推荐最新动态
点击排行
{
网站首页  |  关于我们  |  联系方式  |  使用协议  |  隐私政策  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号