链载Ai

标题: 使用笔记本电脑搭建本地LLMs大模型环境 [打印本页]

作者: 链载Ai    时间: 9 小时前
标题: 使用笔记本电脑搭建本地LLMs大模型环境

本文主要介绍如何使用LocalAI在消费级笔记本电脑上搭建LLM大模型环境。



什么是LocalAI?


在LocalAI的官网上得到的答案是:LocalAI是免费的、开源的,是OpenAI的替代品。LocalAI有着与OpenAI API规范兼容的REST API,用于本地推理。它允许您使用消费级硬件运行LLMs,在本地或内部生成图像、音频(不仅如此),支持多个型号系列和架构。不需要GPU


如何安装?


首先你的电脑环境中需要预先安装:

1.git (用于clone LocalAI仓库)

2.docker desktop(window环境下,linux下用docker compose)

3.http工具(postman、apipost或者curl)


cloneLocalAI仓库

gitclonehttps://github.com/go-skynet/LocalAI


clone成功后出现LocalAI目录




修改环境配置文件


进入目录中找到.env文件,修改红线部分注释,THREADS官网推荐改成小于等于CPU核心数。



Docker拉取Local镜像


dockercomposeup-d--pullalways


镜像下载好后,就可以在Docker Desktop里面看到


获取模型


模型可以在Hugging Face上找到:https://huggingface.co/models? search=gguf,或者gpt4all的模型也兼容:https://github.com/nomic-ai/gpt4all,比如我这里下载的就是huggingface上的llama-2-7b-chat.Q4_K_M.gguf(3.79G)。


配置模型


在LocalAI的models文件夹中新建llama3.yaml

name:llama2parameters:model:llama-2-7b-chat.Q4_K_M.gguftop_k:80temperature:0.2top_p:0.7context_size:1024threads:12backend:llamaroles:assistant:'ASSISTANT:'system:'SYSTEM:'user:'USER:'//定义模板文件template:chat:llama2-chatcompletion:llama2-completion


同样在models新建模板文件llama2-chat.tmpl和llama2-completion.tmpl


USER:{{.Input}}ASSISTANT:


Completethefollowingsentence:{{.Input}}


启动LocalAI容器



使用HTTP工具测试LLMs模型是否成功


调用地址:http://localhost:8080/v1/chat/completions


入参:

{"model":"llama2","messages":[{"role":"user","content":"whatis3plus3andminus5"}],"temperature":0.9}




有时候,答案需要一些时间。但是,通过在请求中添加 stream 参数,您不必等待完整的响应,而是可以逐个字符接收,以便将响应显示给用户。通过这种方式,您可以为用户提供更好的用户体验。


{"model":"llama2","messages":[{"role":"user","content":"whatis3plus3andminus5"}],"temperature":0.9,"stream":true}


返回



更多模型对话示例


我这里使用的llama,可以看到对中文的支持不是太好。如果需要更好的中文支持,可以下载如baichuan等中文大模型。




执行的资源占用情况



可以看到模型是完全使用的CPU资源、内存占用大概是模型大小的2倍左右,进行推理。对于没有GPU资源的朋友来说LocalAI为使用LLMs打开了大门。







欢迎光临 链载Ai (https://www.lianzai.com/) Powered by Discuz! X3.5