Meta于上个月发布了Llama3大语言模型,其技术文档里提到,Llama3 8B版本的性能相比同规模的开源模型强出不少,而后网友测试显示Llama3 70B的性能甚至不逊于早期版本的GPT4。开源、可本地运行的大语言模型给了我们更多关于LLM使用场景的想象。包括但不限于:
-
在本地与GPT3.5级别的LLM聊天;
-
调用本地模型的api进行文本分析,如情感识别、文本分类;
-
构建私人知识库,进行问答。
在最新的大模型竞技场中(https://huggingface.co/spaces/lmsys/chatbot-arena-leaderboard),Llama3 70B的排名在GPT-4-0314之前,Llama3 8B也超越了GPT-3.5-Turbo。
现在,就让我们在本地部署Llama3 8B并构建私人知识库,进行简单试用吧!
我的设备:2021款 Macbook Pro 16G + 1T,处理器为M1 Pro基础款。
其实我更想在本地部署Llama3 70B,但这需要发动钞能力,而我目前只是个社科土博,等后面吧。
1 利用Ollama和Open WebUI使用本地LLM
1.1 基于Ollama本地部署Llama3 8B
Ollama是一个简易的LLM本地部署工具,可直接在Ollama官方网站下载安装。
Ollama官方网址:https://ollama.com/
Ollama的Github仓库:https://github.com/ollama/ollama
Ollama官方提供了许多模型供大家部署,在模型页面,可以找到Llama3,我这里下载的是8B的instruct版本,大小为4.7GB:
在Terminal
运行ollama run llama3:70b
,等待模型在本地部署完成。模型部署完成后已经可以在终端进行对话了,但过于简陋,我们可以用WebUI装潢一下。
1.2 部署Open WebUI
Open WebUI也是一个Github项目,它对基于Ollama部署的模型,提供了类ChatGPT的UI支持!
Github仓库:https://github.com/open-webui/open-webui
在这里,我们使用Open WebUI官方推荐的Docker安装方式(相见官方文档):
docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main
安装完成后,在浏览器3000端口可以打开WebUI,注册登陆,网站布局是不是很熟悉?和ChatGPT很像!在设置里,Connections填写Ollama的地址:http://host.docker.internal:11434
。
在对话之前,点击顶部的+
选择模型。如果使用Ollama安装了多个模型,则都会显示出来。
我们测试几个问题,由于Llama3对中文的支持比较差,我们在提问时,需要加上让它使用中文回答的提示词:
可以发现,它对这个问题的回答,给了我们熟悉的GPT3.5的感觉,本质就是胡说八道!
再问一个:
再来挑战几个弱智吧问题,居然回答得还不错:
如果使用英语提问,并且问题不涉及事实问题,它的回答质量会高很多:
即使在GPT时代,用好英语,仍然非常有必要。
1.3 Llama3 对话体验
就Llama3 8B而言,我感觉使用体验已经很不错了,对话流畅度完全没有问题,配合文本转语音,日常练习口语非常可用!
如果可以在本地部署Llama3 70B的话,使用体验会更上一层楼。我在Groq试用过Llama3 70B,其对于涉及事实问题的回答会好很多:
2 构建私人知识库并进行问答
现在市面上有许多基于RAG(检索增强生成,Retrieval-Augmented Generation,RAG)的工具,方便构建本地知识库,并进行问答。我试用过的有:
Dify:https://github.com/langgenius/dify
ChatOllama:https://github.com/sugarforever/chat-ollama
MaxKB:https://github.com/1Panel-dev/MaxKB
整体而言,使用体验都比较差!!!但作为一种可能的方向,或许在未来有很大的改进效果,这里先以MaxKB试试看。
2.1 部署MaxKB
使用MaxKB官方提供的一键安装命令即可:
docker run -d --name=maxkb -p 8080:8080 -v ~/.maxkb:/var/lib/postgresql/data 1panel/maxkb # 用户名: admin # 密码: MaxKB@123..
安装完成后,可以在本地的8080端口打开,登陆信息使用默认的就行:
进入后,在设置里,“模型设置”添加Ollama部署的Llama3,信息如下,其中API Key可以随便填:
现在,我们已经完成了简单配置,已经可以使用MaxKB进行问答了(也就是说,MaxKB也可以作为简单的UI使用):
2.2 搭建私人知识库并进行问答
在这里,我简单构建了两个知识库,一个是我的博客,一个是一个特定主题的10篇论文,按要求提交内容即可:
自动获取的博客内容如下:
导入pdf后,MaxKB需要一段时间进行文档处理:
现在,进行问答试试,先配置一下:
在问题和文档强相关,尤其是直接涉及知识库论文的标题的时候,它是会索引知识库内容的,但回答的结果质量不高:
何为Missing women这个问题,我在博客有直接的内容,但它在回答时并没有引用:
再用中文试一次,效果仍然比较差:
3 总结
最新的Llama3,基础版本在对话方面,已经非常可用,相当于本地有了一个随时可以聊天的助手。
在构建私人知识库进行问答方面,我试的几个工具,目前都还处于不太可用的状态,我调过一些参数,也尝试了使用Markdown文本的知识库,都不OK。
期待早日这类工具能更完善些,或者LLM运营商提供私人知识库服务。
更期待Llama3 70B级别的LLM能在本地便捷地运行起来。
👉AI大模型学习路线汇总👈
大模型学习路线图,整体分为7个大的阶段:(全套教程文末领取哈)
第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;
第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;
第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;
第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;
第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;
第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;
第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。
👉大模型实战案例👈
光学理论是没用的,要学会跟着一起做,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
👉大模型视频和PDF合集👈
观看零基础学习书籍和视频,看书籍和视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;
• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;
• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;
• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。
👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费
】🆓