AI智能体研发之路-工程篇(五):大模型推理服务框架LocalAI一键部署

简介: AI智能体研发之路-工程篇(五):大模型推理服务框架LocalAI一键部署

一、引言

今天开始写大语言模型推理服务框架的第三篇——LocalAI,前两篇见

大语言模型推理服务框架—Ollama

大语言模型推理服务框架—Xinference

这个框架相比于前两篇,如果服务器没办法科学上网,学习和使用难度都要上一个台阶,花了几个小时踩了几个坑,将排坑后的内容分享给大家,如果大家觉得有用的话,希望获得您的关注、收藏、点赞及评论。

二、排坑后的Local-AI安装教程

1.docker安装及curl测试

# 拉取LocalAI项目
git clone https://github.com/mudler/LocalAI
 
# 从hf-mirror.com镜像站下载luna-ai-llama2模型,存储在models目录中
wget https://hf-mirror.com/TheBloke/Luna-AI-Llama2-Uncensored-GGUF/resolve/main/luna-ai-llama2-uncensored.Q4_0.gguf -O models/luna-ai-llama2
#wget https://huggingface.co/TheBloke/Luna-AI-Llama2-Uncensored-GGUF/resolve/main/luna-ai-llama2-uncensored.Q4_0.gguf -O models/luna-ai-llama2
 
# 将提示词模版中的getting_started.tmpl复制到models目录并和模型文件同名+.tmpl后缀
cp -rf prompt-templates/getting_started.tmpl models/luna-ai-llama2.tmpl
 
# docker拉取并启动aio-gpu镜像
# 指定--models-path为/models
# 将宿主机/xxx/LocalAI/models与container内的models目录进行关联,方便在宿主机修改文件
docker run -tid --name local-ai -p 16080:8080 --gpus all  -v /xxx/LocalAI/models:/models   localai/localai:latest-aio-gpu-nvidia-cuda-12 --models-path /models
 
# 查看当前服务下的模型列表
curl http://宿主机ip:16080/v1/models
# 返回:{"object":"list","data":[{"id":"luna-ai-llama2","object":"model"}]}
 
# 测试模型是否启动
curl http://宿主机ip:16080/v1/chat/completions -H "Content-Type: application/json" -d '{"model": "luna-ai-llama2","messages": [{"role": "user", "content": "who are you?"}],"temperature": 0.9}'
# 返回:{"created":1715329633,"object":"chat.completion","id":"e24ccbb9-3908-4e92-b25a-f5861c2582ce","model":"luna-ai-llama2","choices":[{"index":0,"finish_reason":"stop","message":{"role":"assistant","content":"I am a 28-year-old software developer living in New York City.\u003c/s\u003e"}}],"usage":{"prompt_tokens":10,"completion_tokens":19,"total_tokens":29}}

几个注意的点:

  • 如果服务器在境内且不能科学上网,需要将huggingface.co替换为hf-mirror.com,hf-mirror.com是huggingface.co的镜像站,完全复刻huggingface.co
  • 镜像选择localai/localai:latest-aio-gpu-nvidia-cuda-12,aio(all-in-one)镜像内集成了文生文、文生图、图生文、语音转文本、文本转语音等模型,目标是方便使用多种模型,但其实每次使用都要现从huggingface.co上拉取,境内服务器苦不堪言
  • 模型下载好,就可以用curl使用了,采用OpenAI兼容的API,这个还是不错的

2.解决AIO镜像无法从hf拉取模型的问题

进入到models目录,yaml是aio集成模型的配置文件

打开修改镜像地址:将download_files内uri路径中的huggingface.co替换为hf-mirror.com

如果不是https开头的uri,比如b3d7d7ab5e9969a1408e28d5d7cd22f7.yaml

可以将uri替换为https开头的路径,直接到hf-mirror搜索到对应的模型,将模型路径中的blog/main改成resolve/main即为模型的下载路径

三、Local-AI前端

登陆"宿主机ip:port",比如123.123.123.123:16080,16080是docker启动时设置的。

1.Home

2.Models

进入到Models可以搜索需要的模型并且安装(搜了些国内的,很优先,更新没那么及时。

3.API

进入到API界面,列出了API调用说明,以OpenAI兼容API的形式对外提供。

四、总结

本文列出了排坑后的Local-AI安装教程,及Local-AI前端,个人感觉,比如很友好,特别是对境内服务器开发者,建议还是看前两篇文章,选择Xinference和Ollama吧。如果仍然感兴趣,可以登陆项目github以及查看文档进一步学习。

感谢各位阅读,花了几个小时踩坑,又花了一段时间写博客,结论就是Local-AI目前不是最好的选择,我帮大家躺过坑了。期待大家的关注、点赞、收藏和评论。

如果还有时间,期待您再看看我的其他文章:

相关实践学习
部署Stable Diffusion玩转AI绘画(GPU云服务器)
本实验通过在ECS上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。
目录
相关文章
|
10天前
|
人工智能 搜索推荐 API
node-DeepResearch:开源复现版OpenAI Deep Research,支持多步推理和复杂查询的AI智能体
node-DeepResearch 是一个开源 AI 智能体项目,支持多步推理和复杂查询,帮助用户逐步解决问题。
142 27
node-DeepResearch:开源复现版OpenAI Deep Research,支持多步推理和复杂查询的AI智能体
|
2天前
|
人工智能 JavaScript 测试技术
通义灵码 2.0 体验报告:AI 赋能智能研发的新范式
通义灵码 2.0 是阿里云基于通义大模型推出的先进开发工具,具备代码智能生成、研发问答、多文件修改和自主执行等核心功能。本文通过亲身体验,展示了其在新功能开发、跨语言编程和单元测试生成等方面的实际效果,并对比了 1.0 版本的改进。结果显示,2.0 版在代码生成完整度、跨语言支持和单元测试自动化上有显著提升,极大提高了开发效率,但仍需进一步优化安全性和个性化风格。推荐指数:⭐⭐⭐⭐⭐。
|
2天前
|
人工智能 JavaScript 测试技术
通义灵码 2.0 体验报告:AI 赋能智能研发的新范式
**通义灵码 2.0 体验报告:AI 赋能智能研发的新范式** 本文详细评测了阿里云推出的通义灵码 2.0,基于通义大模型,提供代码智能生成、研发问答、多文件修改等核心能力。通过亲身体验,探讨其在新功能开发、跨语言编程、单元测试生成等场景的实际效果,并对比1.0版本的改进点。结果显示,2.0版本在代码生成完整性、自动化程度及跨语言支持方面有显著提升,但也存在安全性优化和个性化风格调整的空间。推荐指数:⭐⭐⭐⭐⭐。 (239字)
|
6天前
|
人工智能 开发框架 机器人
AstrBot:轻松将大模型接入QQ、微信等消息平台,打造多功能AI聊天机器人的开发框架,附详细教程
AstrBot 是一个开源的多平台聊天机器人及开发框架,支持多种大语言模型和消息平台,具备多轮对话、语音转文字等功能。
1923 13
AstrBot:轻松将大模型接入QQ、微信等消息平台,打造多功能AI聊天机器人的开发框架,附详细教程
|
4天前
|
人工智能 安全 数据挖掘
MedRAX:专注于胸部X光检查的AI医学推理智能体,帮助医生快速解读胸部X光片
MedRAX 是一款专门用于胸部X光检查的医学推理AI智能体,整合了多种最先进的分析工具,支持多模态推理和动态任务分解。
59 10
MedRAX:专注于胸部X光检查的AI医学推理智能体,帮助医生快速解读胸部X光片
|
8天前
|
机器学习/深度学习 存储 人工智能
MNN-LLM App:在手机上离线运行大模型,阿里巴巴开源基于 MNN-LLM 框架开发的手机 AI 助手应用
MNN-LLM App 是阿里巴巴基于 MNN-LLM 框架开发的 Android 应用,支持多模态交互、多种主流模型选择、离线运行及性能优化。
736 14
MNN-LLM App:在手机上离线运行大模型,阿里巴巴开源基于 MNN-LLM 框架开发的手机 AI 助手应用
|
5天前
|
人工智能 开发框架 数据可视化
Eino:字节跳动开源基于Golang的AI应用开发框架,组件化设计助力构建AI应用
Eino 是字节跳动开源的大模型应用开发框架,帮助开发者高效构建基于大模型的 AI 应用。支持组件化设计、流式处理和可视化开发工具。
118 27
|
1天前
|
人工智能 自然语言处理 架构师
Praison AI:LangChain危险了!这个低代码框架让AI智能体「自主协作」,1行代码搞定任务编排
Praison AI 是一个开源的多智能体框架,支持低代码创建和管理AI代理,提供多种流程类型和集成选项,适用于企业流程自动化、智能客服等场景。
52 18
|
9天前
|
存储 人工智能 弹性计算
NVIDIA NIM on ACK:优化生成式AI模型的部署与管理
本文结合NVIDIA NIM和阿里云容器服务,提出了基于ACK的完整服务化管理方案,用于优化生成式AI模型的部署和管理。
|
7天前
|
人工智能 资源调度 API
AnythingLLM:34K Star!一键上传文件轻松打造个人知识库,构建只属于你的AI助手,附详细部署教程
AnythingLLM 是一个全栈应用程序,能够将文档、资源转换为上下文,支持多种大语言模型和向量数据库,提供智能聊天功能。
2021 13

热门文章

最新文章