首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

AI初识--LLM、ollama、llama都是些个啥?

  • 25-03-07 21:01
  • 3257
  • 12794
blog.csdn.net

LLM全称(large language model)也就是大语言模型

什么是Ollama,它与Llama是什么关系?

Ollama是一个开源的 LLM(大型语言模型)服务工具,用于简化在本地运行大语言模型,降低使用大语言模型的门槛,使得大模型的开发者、研究人员和爱好者能够在本地环境快速实验、管理和部署最新大语言模型,包括如Llama 3、Phi 3、Mistral、Gemma等开源的大型语言模型。

Ollama目前支持以下大语言模型:library

因此,Ollama与Llama的关系:Llama是大语言模型,而Ollama是大语言模型(不限于Llama模型)便捷的管理和运维工具

那么我们如何在本地部署这个大模型呢?

首先我们需要到ollama官网下载,然后在命令窗中输入一些ollama的命令

ollama只是个工具,那怎么跑我们想要的大模型呢?

下载模型

Ollama可以直接下载内置的几种模型,但选择有限。我们更希望从HuggingFace下载以便方便地评估各种模型,所以,这里我们并不从Ollama直接下载,而是从HuggingFace下载。

在HuggingFace搜索llama3,设置Languages为Chinese,可以看到若干基于LLaMa3的中文模型,我们选择一个GGUF格式的模型,GGUF格式是llama.cpp团队搞的一种模型存储格式,一个模型就是一个文件,方便下载与运行。

点击Files,可以看到若干GGUF文件,其中,q越大说明模型质量越高,同时文件也更大,我们选择q6,直接点击下载按钮,把这个模型文件下载到本地。

导入模型

下载到本地的模型文件不能直接导入到Ollama,需要编写一个配置文件,随便起个名字,如config.txt,配置文件内容如下:

FROM "/Users/liaoxuefeng/llm/llama3-8b-cn-q6/Llama3-8B-Chinese-Chat.q6_k.GGUF"

TEMPLATE """{{- if .System }}
<|im_start|>system {{ .System }}<|im_end|>
{{- end }}
<|im_start|>user
{{ .Prompt }}<|im_end|>
<|im_start|>assistant
"""

SYSTEM """"""

PARAMETER stop <|im_start|>
PARAMETER stop <|im_end|>

第一行FROM "..."指定了模型文件路径,需要修改为实际路径,后面的模板内容是网上复制的,无需改动。

然后,使用以下命令导入模型:

$ ollama create llama3-cn -f ./config.txt

llama3-cn是我们给模型起的名字,成功导入后可以用list命令查看:

$ ollama list
NAME              ID            SIZE    MODIFIED
llama3-cn:latest  f3fa01629cab  6.6 GB  2 minutes ago

可以下载多个模型,给每个模型写一个配置文件(仅需修改路径),导入时起不同的名字,我们就可以用Ollama方便地运行各种模型。

运行模型

使用Ollama的run命令可以直接运行模型。我们输入命令ollama run llama3-cn就可以将我们制定的模型运行起来

出现>>>提示符时就可以输入问题与模型交互。输入/exit退出。

搭建Web环境

使用命令行交互不是很方便,所以我们需要另一个开源的Open WebUI,搭建一个能通过浏览器访问的界面。

运行Open WebUI最简单的方式是直接以Docker运行。我们安装Docker Desktop,输入以下命令启动Open WebUI:

$ docker run -p 8080:8080 -e OLLAMA_BASE_URL=http://host.docker.internal:11434 --name open-webui --restart always -v open-webui-data:/app/backend/data ghcr.io/open-webui/open-webui:main

参数-p 8080:8080将Open WebUI的端口映射到本机。参数-e OLLAMA_BASE_URL=http://host.docker.internal:11434告诉Open WebUI通过本机的11434访问Ollama,注意地址必须写host.docker.internal,不能写127.0.0.1。

打开浏览器我们就可以访问http://127.0.0.1:8080,第一次访问需要注册,注册和登录是完全基于本地环境的,登录后就可以看到类似GPT的UI。

我们在聊天界面点击右上角配置按钮,点击Connections,点击刷新按钮,如果一切无误,会显示Server connection verified

在聊天界面的顶部选择一个模型,就可以愉快地开始和LLaMa3聊天了:

API

Open WebUI还提供了与OpenAI类似的API,使用前先点击设置 - Account,生成一个API Key,然后在命令行用curl测试:

$ curl -X POST -H "Authorization: Bearer sk-959c8b27a48145bfb83bdb396ff3eeae" -H "Content-Type: application/json" http://localhost:8080/ollama/api/generate -d '{"model":"llama3-cn:latest","stream":false,"prompt":"讲讲llama,50字"}'

{"model":"llama3-cn:latest","created_at":"2024-05-01T14:42:28.009353Z","response":"Llama是一个基于指令跟随的多模态大型语言模型,由Meta AI发布。它能够处理文本、图像等多种输入,并生成相应的输出。

由于模型是运行在本地,Open WebUI也将数据存储在本地,所以隐私性可谓拉满。如果对一个模型不满意,还可以从HuggingFace下载更多的模型来评估,非常方便。

文章知识点与官方知识档案匹配,可进一步学习相关知识
Python入门技能树人工智能机器学习工具包Scikit-learn430405 人正在系统学习中
注:本文转载自blog.csdn.net的才艺のblog的文章"https://blog.csdn.net/weixin_66196770/article/details/139536570"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2492) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

110
AIGC
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2025 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top