零成本本地化搭建开源AI神器LocalAI支持CPU推理运行部署方案

文章目录

    • 前言
    • 1. Docker部署
    • 2. 简单使用演示
    • 3. 安装cpolar内网穿透
    • 4. 配置公网地址
    • 5. 配置固定公网地址

前言

嘿,小伙伴们!今天给大家带来一个超酷的黑科技——LocalAI。没错,你没听错,就是那个能在你的个人电脑上运行大型语言模型、生成图像和音频的神奇工具!而且,这一切都不需要你砸锅卖铁去买昂贵的GPU,消费级硬件就能轻松搞定。更重要的是,结合cpolar内网穿透神器,无论你在世界的哪个角落,都能随时远程控制AI项目。是不是感觉瞬间高大上了?快来跟我一起探索这个宝藏工具吧!

image-20250107161115378

【视频教程】

支持CPU推理运行的开源AI神器LocalAI本地安装与远程使用教程

1. Docker部署

本例使用Ubuntu 22.04进行演示,使用Docker进行部署,如果没有安装Docker,可以查看这篇教程进行安装:《Docker安装教程——Linux、Windows、MacOS》

安装好Docker后,打开终端执行这行命令启动容器即可:

sudo docker run -ti --name local-ai -p 8080:8080 localai/localai:latest-cpu

这里使用的镜像是仅使用CPU来运行的镜像,如果大家有Nvidia显卡的好GPU,也可以使用下方命令拉取支持N卡的镜像来运行容器:

sudo docker run -ti --name local-ai -p 8080:8080 --gpus all localai/localai:latest-gpu-nvidia-cuda-12

更多项目配置与使用详情大家也可以访问作者的github主页进行查看:https://github.com/mudler/LocalAI

2. 简单使用演示

容器启动后,我们在Ubuntu中使用浏览器访问 http://localhost:8080 即可打开LocalAI的Web UI页面:

image-20250107150311522

能看到页面中央提示我们现在还没有添加大模型,我们可以点击Gallery,在跳转页面选择一个大模型:

image-20250107151137003

可以看到在这个界面中有600多个大模型,并且可以根据用途标签(文字转语音、图片生成、文章生成等等)进行筛选或者在下方输入框搜索指定的模型:

1736234546248

我这里以添加llama-3.2-1b模型来进行演示:点击install按钮安装等待完成即可

image-20250107151337786

image-20250107151539442

image-20250107151705300

安装完成后,点击页面上方导航条中的HOME回到主页即可发现刚刚添加的llama-3.2模型:

image-20250107153151174

想要使用这个AI大模型,点击上方导航中的chat即可与它聊天了:

image-20250107153311605

点击右侧的模型选择,下拉框中会显示你已经安装的大模型:

image-20250107153543150

目前我只安装了这一个,如果想继续安装其他大模型,可以点击页面上方导航栏中的Models进行选择:(跳转的就是首次挑选模型安装的那个页面)

image-20250107153714760

3. 安装cpolar内网穿透

不过我们目前只能在本地局域网内访问刚刚部署的LocalAI来使用AI大模型聊天,如果想不在同一局域网内时,也能在外部网络环境使用手机、平板、电脑等设备远程访问与使用它,应该怎么办呢?我们可以使用cpolar内网穿透工具来实现远程访问的需求。无需公网IP,也不用设置路由器那么麻烦。

下面是安装cpolar步骤:

Cpolar官网地址: https://www.cpolar.com

使用一键脚本安装命令:

sudo curl https://get.cpolar.sh | sh

img

安装完成后,执行下方命令查看cpolar服务状态:(如图所示即为正常启动)

sudo systemctl status cpolar

img

Cpolar安装和成功启动服务后,在浏览器上输入ubuntu主机IP加9200端口即:【http://localhost:9200】访问Cpolar管理界面,使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可:

image-20240801133735424

4. 配置公网地址

登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:

  • 隧道名称:可自定义,本例使用了: localai ,注意不要与已有的隧道名称重复
  • 协议:http
  • 本地地址:8080
  • 域名类型:随机域名
  • 地区:选择China Top

点击创建:

image-20250107155748353

创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了两个公网地址,接下来就可以在其他电脑或者移动端设备(异地)上,使用任意一个地址在浏览器中访问即可。

image-20250107160010472

如图所示,现在就已经成功实现使用公网地址异地远程访问本地部署的LocalAI来用AI大模型聊天啦!

image-20250107160149458

小结

为了方便演示,我们在上边的操作过程中使用cpolar生成的HTTP公网地址隧道,其公网地址是随机生成的。这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址是随机生成,这个地址在24小时内会发生随机变化,更适合于临时使用。

如果有长期使用LocalAI,或者异地访问与使用其他本地部署的服务的需求,但又不想每天重新配置公网地址,还想让公网地址好看又好记并体验更多功能与更快的带宽,那我推荐大家选择使用固定的二级子域名方式来配置公网地址。

5. 配置固定公网地址

由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化。

点击左侧的预留,选择保留二级子域名,地区选择china top,然后设置一个二级子域名名称,我这里演示使用的是mylocal,大家可以自定义。填写备注信息,点击保留。

image-20250107160432921

保留成功后复制保留的二级子域名地址:

image-20250107160503136

登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道localai,点击右侧的编辑

image-20250107160552136

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名
  • 地区: China Top

点击更新

image-20250107160647570

更新完成后,打开在线隧道列表,此时可以看到随机的公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称。

image-20250107160726385

最后,我们使用固定的公网地址在任意设备的浏览器中访问,可以看到成功访问本地部署的LocalAI Web UI页面,这样一个永久不会变化的二级子域名公网网址即设置好了。

image-20250107160928361

怎么样,小伙伴们?有了LocalAI和cpolar的强强联手,你再也不用担心被昂贵的硬件束缚住了。随时随地开启你的AI之旅,是不是特别给力?如果你在尝试过程中遇到了什么难题或者有什么独门秘籍,记得在评论区留言哦,让我们一起交流心得、共同成长!最后别忘了点赞关注,更多好玩的黑科技等着你发现呢!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/33236.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据类设计_图片类设计之4_规则类图形混合算法(前端架构)

前言 学的东西多了,要想办法用出来.C和C是偏向底层的语言,直接与数据打交道.尝试做一些和数据方面相关的内容 引入 接续上一篇,讨论图片类型设计出来后在场景中如何表达,以及图片的混合算法.前面的内容属于铺垫和基础,这篇内容和实际联系起来了. 背景图和前景图 这里笔者想先…

Burpsuite使用笔记

Burpsuite使用笔记 抓包设置代理open Browserintercept on输入要抓包的网站回车ForwardHTTP history查看抓包数据其他浏览器配置burpsuite代理浏览器代理器插件配置打开代理同样步骤访问 原理三级目录 抓包 设置代理 open Browser 打开内置浏览器 intercept on 输入要抓包…

使用Dockerfile打包java项目生成镜像部署到Linux_java项目打docker镜像的dockerfile

比起容器、镜像来说,Dockerfile 非常普通,它就是一个纯文本,里面记录了一系列的构建指令,比如选择基础镜像、拷贝文件、运行脚本等等,每个指令都会生成一个 Layer,而 Docker 顺序执行这个文件里的所有步骤&…

移远通信联合德壹发布全球首款搭载端侧大模型的AI具身理疗机器人

在汹涌澎湃的人工智能浪潮中,具身智能正从实验室构想迈向现实应用。移远通信凭借突破性的端侧AI整体解决方案,为AI机器人强势赋能,助力其实现跨行业拓展,从工业制造到服务接待,再到医疗康养,不断改写各行业…

技术视界|构建理想仿真平台,加速机器人智能化落地

在近期的 OpenLoong 线下技术分享会 上,松应科技联合创始人张小波进行了精彩的演讲,深入探讨了仿真技术在机器人智能化发展中的关键作用。他结合行业趋势,剖析了现有仿真平台的挑战,并描绘了未来理想仿真系统的设计理念与实现路径…

JConsole 在 Linux 上的使用

JConsole 在 Linux 上的使用指南 1. 启动 JConsole 远程监控 Linux 服务器上的 JVM 进程 1.1 修改 JMX 配置&#xff0c;允许远程访问 在 Linux 服务器 启动 Java 应用时&#xff0c;需要加上 -Djava.rmi.server.hostname<服务器IP>&#xff0c;完整的启动参数如下&am…

【C#学习】协程等待

来源GPT&#xff0c;仅记录学习 yield return WaitForEndOfFrame() 适用于 渲染结束后再执行代码&#xff0c;但 WebGL 可能不适合这个操作&#xff0c;会拖慢帧率。(渲染得太慢&#xff09; yield return null; 让代码在下一帧的 Update() 里继续运行&#xff0c;更加流畅。 …

店匠科技携手 PayPal 升级支付体验,助力独立站商家实现全球增长

在全球化电商竞争加剧的背景下,独立站为无数商户插上了通向事业成功的翅膀。然而,搭建店铺框架容易,真正实现有效运营却充满挑战。只有当各个环节如齿轮般严丝合缝,独立站运营才能更好地助推行进,实现稳健增长。如今,独立站商家面临着全链路运营的多重挑战。从品牌塑造、营销推…

【算法】数组、链表、栈、队列、树

⭐️个人主页&#xff1a;小羊 ⭐️所属专栏&#xff1a;Linux 很荣幸您能阅读我的文章&#xff0c;诚请评论指点&#xff0c;欢迎欢迎 ~ 目录 持续更新中...数组、链表点击消除环形链表环形链表 II 栈、队列树 持续更新中… 数组、链表 点击消除 AB5 点击消除 这个题很容…

机器学习实战——音乐流派分类(主页有源码)

✨个人主页欢迎您的访问 ✨期待您的三连 ✨ ✨个人主页欢迎您的访问 ✨期待您的三连 ✨ ✨个人主页欢迎您的访问 ✨期待您的三连✨ ​ ​​​ 1. 简介 音乐流派分类是音乐信息检索&#xff08;Music Information Retrieval, MIR&#xff09;中的一个重要任务&#xff0c;旨在…

【操作系统安全】任务2:用户与用户组

目录 一、用户与用户组介绍 1.1 用户 1.2 用户组 1.3 用户与用户组的关系 二、用户与用户组管理 2.1 用户管理 2.1.1 创建用户 2.1.2 设置用户密码 2.1.3 删除用户 2.2 用户组管理 2.2.1 创建用户组 2.2.2 删除用户组 2.2.3 将用户添加到用户组 三、影子账户创建…

色板在数据可视化中的创新应用

色板在数据可视化中的创新应用&#xff1a;基于色彩感知理论的优化实践 引言 在数据可视化领域&#xff0c;色彩编码系统的设计已成为决定信息传递效能的核心要素。根据《Nature》期刊2024年发布的视觉认知研究&#xff0c;人类大脑对色彩的识别速度比形状快40%&#xff0c;色…

Python数据类型进阶——详解

—— 小 峰 编 程 目录 1.整型 1.1 定义 1.2 独有功能 1.3 公共功能 1.4 转换 1.5 其他 1.5.1 长整型 1.5.2 地板除(除法&#xff09; 2. 布尔类型 2.1 定义 2.2 独有功能 2.3 公共功能 2.4 转换 2.5 其他 做条件自动转换 3.字符串类型 3.1 定义 3.2 独有功能…

生化混合智能技术(Biochemical Hybrid Intelligence, BHI)解析与应用

李升伟 综合 生化混合智能&#xff08;Biochemical Hybrid Intelligence, BHI&#xff09;是一种结合人工智能&#xff08;AI&#xff09;与生物化学技术的跨学科领域&#xff0c;旨在通过整合计算能力和生物系统的复杂性&#xff0c;推动药物研发、生物工程和医疗健康等领域的…

【原创】在高性能服务器上,使用受限用户运行Nginx,充当反向代理服务器[未完待续]

起因 在公共高性能服务器上运行OllamaDeepSeek&#xff0c;如果按照默认配置启动Ollama程序&#xff0c;则自己在远程无法连接你启动的Ollama服务。 如果修改配置&#xff0c;则会遇到你的Ollama被他人完全控制的安全风险。 不过&#xff0c;我们可以使用一个方向代理&#…

Elasticsearch 7.x入门学习-系统架构与工作流程

1 核心概念 1.1 索引&#xff08;Index&#xff09; Elasticsearch 索引的精髓&#xff1a;一切设计都是为了提高搜索的性能。 一个索引就是一个拥有相似特征的文档集合。比如说&#xff0c;你可以有一个客户数据的索引&#xff0c;另一个产品目录的索引&#xff0c;还有一个…

Mysql - 自增主键的使用细节

通过一些问题来谈论 Mysql 中的自增主键 默认情况下我们会使用自增主键&#xff0c;你觉得为什么要用自增的主键&#xff1f;有什么好处&#xff1f;自增主键的话&#xff0c;如果用 INT&#xff0c;会有 int 最大数限制&#xff0c;如果超过 int 最大数&#xff0c;你觉得应该…

《SQL性能优化指南:新手如何写出高效的数据库查询

新手程序员如何用三个月成为SQL高手&#xff1f;万字自学指南带你弯道超车 在数据为王的时代&#xff0c;掌握SQL已成为职场新人的必修课。你可能不知道&#xff0c;仅用三个月系统学习&#xff0c;一个零基础的小白就能完成从数据库萌新到SQL达人的蜕变。去年刚毕业的小王就是…

UE5.5 Niagara初始化粒子模块

粒子生成模块列表是每个创建的粒子都会调用一次对应的模块。此阶段中的模块设置每个粒子的初始值。粒子将从上到下的顺序执行模块。 下面&#xff0c;将列一下粒子生成常用的模块。 Initialize Particle 初始化粒子 所有粒子必需的基础模块&#xff0c;用于初始化粒子的基本属…

蓝耘携手通义万相2.1:引领AI创作革新,重塑视觉体验

前言 在人工智能技术迅猛发展的时代&#xff0c;AI算力平台成为推动产业升级的关键力量。蓝耘元生代智算云平台作为领先的智能计算平台&#xff0c;致力于为企业和研究机构提供高效、稳定的AI算力支持。近期&#xff0c;该平台对通义万相2.1进行了全面适配和优化&#xff0c;为…