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目前不是最好的选择,我帮大家躺过坑了。期待大家的关注、点赞、收藏和评论。

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

相关实践学习
在云上部署ChatGLM2-6B大模型(GPU版)
ChatGLM2-6B是由智谱AI及清华KEG实验室于2023年6月发布的中英双语对话开源大模型。通过本实验,可以学习如何配置AIGC开发环境,如何部署ChatGLM2-6B大模型。
目录
相关文章
|
8月前
|
负载均衡 测试技术 调度
大模型分布式推理:张量并行与流水线并行技术
本文深入探讨大语言模型分布式推理的核心技术——张量并行与流水线并行。通过分析单GPU内存限制下的模型部署挑战,详细解析张量并行的矩阵分片策略、流水线并行的阶段划分机制,以及二者的混合并行架构。文章包含完整的分布式推理框架实现、通信优化策略和性能调优指南,为千亿参数大模型的分布式部署提供全面解决方案。
2523 4
|
8月前
|
人工智能 API 开发工具
构建AI智能体:一、初识AI大模型与API调用
本文介绍大模型基础知识及API调用方法,涵盖阿里云百炼平台密钥申请、DashScope SDK使用、Python调用示例(如文本情感分析、图像文字识别),助力开发者快速上手大模型应用开发。
3005 18
构建AI智能体:一、初识AI大模型与API调用
|
8月前
|
存储 人工智能 搜索推荐
拔俗AI助教系统:基于大模型与智能体架构的新一代教育技术引擎
AI助教融合大语言模型、教育知识图谱、多模态感知与智能体技术,重构“教、学、评、辅”全链路。通过微调LLM、精准诊断错因、多模态交互与自主任务规划,实现个性化教学。轻量化部署与隐私保护设计保障落地安全,未来将向情感感知与教育深度协同演进。(238字)
1124 0
|
8月前
|
机器学习/深度学习 人工智能 搜索推荐
拔俗AI学伴智能体系统:基于大模型与智能体架构的下一代个性化学习引擎
AI学伴智能体系统融合大模型、多模态理解与自主决策,打造具备思考能力的个性化学习伙伴。通过动态推理、长期记忆、任务规划与教学逻辑优化,实现千人千面的自适应教育,助力因材施教落地,推动教育公平与效率双提升。(238字)
1106 0
|
8月前
|
机器学习/深度学习 存储 缓存
大模型推理加速技术:PagedAttention原理与实现
本文深入解析大语言模型推理中的革命性技术——PagedAttention,该技术是vLLM推理引擎的核心创新。通过将操作系统中的虚拟内存分页概念引入注意力机制,PagedAttention有效解决了KV缓存的内存碎片问题,实现了近乎零浪费的KV缓存管理。文章详细阐述其原理、内存管理机制、实现细节,并提供完整的代码示例和性能分析。
1105 1
|
8月前
|
机器学习/深度学习 存储 并行计算
大模型推理加速技术:FlashAttention原理与实现
本文深入解析大语言模型推理加速的核心技术——FlashAttention。通过分析传统注意力机制的计算瓶颈,详细阐述FlashAttention的IO感知算法设计、前向反向传播实现,以及其在GPU内存层次结构中的优化策略。文章包含完整的CUDA实现示例、性能基准测试和实际部署指南,为开发者提供高效注意力计算的全套解决方案。
1596 10
|
8月前
|
机器学习/深度学习 缓存 自然语言处理
【万字长文】大模型训练推理和性能优化算法总结和实践
我们是阿里云公共云 AI 汽车行业大模型技术团队,致力于通过专业的全栈 AI 技术推动 AI 的落地应用。
3610 40
【万字长文】大模型训练推理和性能优化算法总结和实践
|
8月前
|
机器学习/深度学习 缓存 监控
大模型推理优化技术:KV缓存机制详解
本文深入探讨了大语言模型推理过程中的关键技术——KV缓存(Key-Value Cache)机制。通过对Transformer自注意力机制的分析,阐述了KV缓存的工作原理、实现方式及其对推理性能的显著优化效果。文章包含具体的代码实现和性能对比数据,为开发者理解和应用这一关键技术提供实践指导。
2520 9
|
8月前
|
存储 人工智能 安全
《Confidential MaaS 技术指南》发布,从 0 到 1 构建可验证 AI 推理环境
Confidential MaaS 将从前沿探索逐步成为 AI 服务的安全标准配置。