如何本地运行Llama 2大语言模型并实现无公网IP远程访问


随着ChatGPT 和open Sora 的热度剧增,大语言模型时代,开启了AI新篇章,大语言模型的应用非常广泛,包括聊天机器人、智能客服、自动翻译、写作助手等。它们可以根据用户输入的文本生成相应的响应,提供个性化的建议和服务,目前大部分大语言模型的产品都是基于网络线上的,如果我们本地想自己部署一个自己的大语言模型,该如何操作呢,下面介绍一款可以在自己本地部署运行的大语言模型Llama 2

Llama 2是一款开源的大语言模型,其中训练的数据目前已经达到7B级别,在上下文长度为4K下的单轮与多轮对话中表现出色,部署运行Llama 2同时需要借助一个框架Ollama.

Ollama是一个强大的框架,设计用于在Docker容器中部署大型语言模型(LLM)。它的主要功能是简化在Docker容器内部署和管理LLM的过程。Ollama通过提供简单的安装指令,使用户能够轻松地在本地运行大型开源语言模型.

借助Ollama 框架可以很方便运行Llama2大语言模型,同时,为了方便与模型进行交互,还需要部署一个web交互 界面Chatbot-Ollama.

Chatbot-Ollama是一个基于Ollama框架的聊天机器人前端应用。它利用Ollama框架提供的接口和功能,将大型语言模型(LLM)集成到聊天机器人中,使其能够与用户进行交互,并提供各种聊天机器人服务。

Chatbot-Ollama 接入本地Ollama框架运行的Llama2大语言模型,使我们可以很轻松简便在本地创建一个聊天机器人.Chatbot-Ollama 同时也是基于docker本地部署的,本地部署,只能局限于本地访问,无法做到提供远程给其他人访问,下面我们还需要安装一个内网穿透工具cpolar,使得本地聊天机器人可以被远程访问.

Cpolar是一款强大的内网穿透软件,它能够在多个操作系统上无缝运行,包括Windows、MacOS和Linux,因此无论您使用哪种操作系统,都可以轻松将本地内网服务器的HTTP、HTTPS、TCP协议端口映射为公网地址端口,使得公网用户可以轻松访问您的内网服务,无需部署至公网服务器.

下面我们通过群晖Docker来演示如何结合上面介绍的技术来运行一个自己的本地聊天机器人并且发布到公网访问.本地部署,对设备配置要求高一些,如果想要拥有比较好的体验,可以使用高配置的服务器设备.

1. 拉取相关的Docker镜像

运行Llama 2需要借助Ollama镜像,对语言模型进行交互需要用到Chatbot-Ollama前端界面,所以我们需要拉取这两个docker镜像,本例群晖版本由于无法直接在群晖控制面板docker界面搜索下载镜像,所以采用命令行方式进行镜像下载,首先开启群晖ssh连接,然后使用工具通过ssh连接上群晖,分别执行下面docker命令 拉取

*拉取Ollama镜像命令

sudo docker  pull ollama/ollama:latest

*拉取Chatbot-Ollama镜像命令

sudo docker  pull ghcr.io/ivanfioravanti/chatbot-ollama:main

拉取成功后,我们可以在Docker界面看到拉取的两个镜像,下面开始运行两个镜像,首先运行ol

### 实现 llama-factory 在外部服务器上的可视化 为了实现在外部服务器上对 `llama-factory` 的可视化,可以采取多种方式来设置和配置环境。以下是具体的方法: #### 使用 Streamlit 进行 Web 应用程序部署 通过在终端中运行特定命令,能够启动基于Streamlit的服务来进行界面展示。对于 `llamafactory-cli webui` 命令而言,在指定GPU设备的情况下(例如CUDA_VISIBLE_DEVICES=1),可以通过如下指令开启WebUI服务[^1]。 ```bash CUDA_VISIBLE_DEVICES=1 llamafactory-cli webui ``` 此操作会启动一个本地的Web应用程序,默认情况下监听于localhost地址以及默认端口。然而,为了让这个应用对外部网络可见,则需调整其绑定IP地址及开放相应的防火墙端口。如果希望将其暴露给互联网访问,可修改上述命令中的参数以适应实际需求,比如更改 `--server.address` 和 `--server.port` 参数值为合适的公网可达地址与未被占用的高编号端口号[^2]。 #### 利用 FastAPI 构建 RESTful API 接口 另一种方案是利用FastAPI框架构建RESTful风格的应用编程接口(API),从而允许远程客户端请求获取模型预测结果或其他交互功能。这种方式提供了更灵活的数据交换机制,且易于集成至其他系统之中。不过需要注意的是,这通常涉及额外的安全性和性能优化考量,如身份验证、速率限制等措施。 #### 调整依赖库版本兼容性 当遇到某些第三方库之间存在不兼容情况时,适当调节这些库的具体版本号可能是解决问题的有效途径之一。例如,在保持Gradio版本固定的前提下降低Pydantic版本至已知稳定版(如v1.10.7),有助于规避潜在冲突问题,确保整个项目的正常运作[^3]。 #### 获取最新源码安装 从官方GitHub仓库拉取最新的项目代码是一个良好的开端。按照说明文档指引完成必要的初始化步骤之后再继续后续开发工作。具体的克隆过程可通过下面这条Git命令实现: ```bash git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git cd LLaMA-Factory/ ``` 以上就是针对如何在外网环境下使 `llama-factory` 支持图形化界面的一些指导建议[^4]。
评论 19
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大海里的番茄

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值