搭建本地人工智能框架LocalAI

这篇具有很好参考价值的文章主要介绍了搭建本地人工智能框架LocalAI。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

搭建本地人工智能框架LocalAI,群晖,docker,人工智能,AI

什么是 LocalAI

LocalAI 是一个用于本地推理的,与 OpenAI API 规范兼容的 REST API。它允许您在本地使用消费级硬件运行 LLM(不仅如此),支持与 ggml 格式兼容的多个模型系列。不需要 GPU

最吸引老苏的有两点,一个是不需要 GPU,另一点上可以使用消费级硬件,所以准备搭一个试试,至于后续用来干什么,到时候再说

官方倒是提供了很多示例,比较常见的是机器人,比如:Discord botSlack bot 或者 Telegram bot

搭建本地人工智能框架LocalAI,群晖,docker,人工智能,AI

安装

在群晖上以 Docker 方式安装。

镜像下载

官方没有在 docker hub 上发布镜像,而是发布到了 quay.io

SSH 客户端登录到群晖后,依次执行下面的命令

这个版本是 cpu 版本,如果你有 gpu,可以下载支持 cuda 的版本;

# 新建文件夹 localai 和 子目录
mkdir -p /volume1/docker/localai/models

# 进入 localai 目录
cd /volume1/docker/localai

# 拉取镜像
docker pull quay.io/go-skynet/local-ai:latest

镜像文件比较大(大约 13G ),如果拉不动,也可以试试 docker 代理网站:https://dockerproxy.com/,但是会多几个步骤

# 如果拉不动的话加个代理
docker pull quay.dockerproxy.com/go-skynet/local-ai:latest

# 重命名镜像(如果是通过代理下载的)
docker tag quay.dockerproxy.com/go-skynet/local-ai:latest quay.io/go-skynet/local-ai:latest

# 删除代理镜像(如果是通过代理下载的)
docker rmi quay.dockerproxy.com/go-skynet/local-ai:latest

下载完成后,可以在 映像 中找到

搭建本地人工智能框架LocalAI,群晖,docker,人工智能,AI

docker-compose 安装

将下面的内容保存为 docker-compose.yml 文件

version: '3.6'

services:
  api:
    image: quay.io/go-skynet/local-ai:latest
    container_name: localai
    ports:
      - 8668:8080
    volumes:
      - ./models:/models:cached
    environment:
      - MODELS_PATH=/models
    command: ["/usr/bin/local-ai" ]

然后执行下面的命令

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

搭建本地人工智能框架LocalAI,群晖,docker,人工智能,AI

从日志可以看到,和 Serge 一样,需要 AVX2 指令兼容的 CPU

模型文件

如果你运行过 Serge,原来下载的 gpt4all.bin 文件是可以直接用的,因为 LocalAIllama.cpp 支持的模型兼容

搭建本地人工智能框架LocalAI,群晖,docker,人工智能,AI

否则的话,需要自己下模型文件

老苏把 gpt4all.bin 文件放在了阿里云盘: https://www.aliyundrive.com/s/GQqs39iipya

Open LLM 基准测试中表现最佳的模型列表排行榜:https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard

请记住,与 LocalAI 兼容的模型必须以 ggml 格式进行量化

老苏目前只测试了 gpt4all.bin,所以没法给大家提供指导意见,不要问我下哪个模型。

搭建本地人工智能框架LocalAI,群晖,docker,人工智能,AI

当然,LocalAI 是支持多模型文件的,你可以根据需要下载多个模型文件

关于模型这块,可以看官方文档:https://localai.io/models/

运行

如果你在浏览器中直接输入 http://群晖IP:8668,会返回 404 错误

{"error":{"code":404,"message":"Cannot GET /","type":""}}

因为 LocalAI 提供的是 REST API 接口,而不是网页。所以有 2 种方式来测试验证我们安装的服务是否成功,一种是使用 API 调试工具,另一种是用命令行

API 工具

这类工具很多,例如: PostmanApifoxApiPost等等,具体用什么关系不大,因为基本上主要功能是差不多的,老苏目前是用的是 Apifox

  1. 打开应用程序并创建一个新的请求
  2. 在请求的 URL 字段中输入:http://192.168.0.197:8668/v1/completions
  3. 设置请求方法为 POST
  4. 在请求头部 (Headers) 部分中添加一个新的头部,键为 Content-Type,值为 application/json
  5. 在请求体 (Body) 部分中选择 raw 选项,并将下面的 JSON 数据复制粘贴到请求体中:
{
  "model": "gpt4all.bin",
  "prompt": "how old are you?",
  "temperature": 0.7
}
  1. 确认您的请求已设置正确后,点击发送按钮以发送请求。

其中:

  • model:指定要使用的特定语言模型;
  • prompt:用于指定生成文本的起始提示或开头文本。也就是你要提的问题;
  • temperature :用于控制生成文本的多样性。temperature 值越高,生成的文本越随机和多样化,但可能会牺牲一些准确性。相反,temperature 值越低,生成的文本越保守和一致,更加符合模型的训练数据;

现在来聊个天,比如 how old are you?

搭建本地人工智能框架LocalAI,群晖,docker,人工智能,AI

看看支不支持中文聊天?

提问只要修改 prompt 后面的内容,回答看 text 后面的内容;

搭建本地人工智能框架LocalAI,群晖,docker,人工智能,AI

命令行

如果你不会 API 工具,用命令行也是可以的,用 SSH 客户端登录到群晖后,执行

curl http://192.168.0.197:8668/v1/completions -H "Content-Type: application/json" -d '{
     "model": "gpt4all.bin",
     "prompt": "how old are you?",
     "temperature": 0.7
   }'

搭建本地人工智能框架LocalAI,群晖,docker,人工智能,AI

返回的结果在 https://www.json.cn 格式化之后

{  
    "object":"text_completion",  
    "model":"gpt4all.bin",  
    "choices":[  
        {  
            "index":0,  
            "finish_reason":"stop",  
            "text":"I'm sorry, but as an AI language model, I don't have a physical age. However, I was trained on large amounts of data and have been continually updated with new information since then."  
        }  
    ],  
    "usage":{  
        "prompt_tokens":0,  
        "completion_tokens":0,  
        "total_tokens":0  
    }  
}

即便是同样的问题,每次的答复也是有区别的

{  
    "object":"text_completion",  
    "model":"gpt4all.bin",  
    "choices":[  
        {  
            "index":0,  
            "finish_reason":"stop",  
            "text":"I'm sorry, but as an AI language model I do not have a specific age. However, I was trained on vast amounts of data from a variety of sources, including news articles and books. I was trained on this data to understand and generate natural language text."  
        }  
    ],  
    "usage":{  
        "prompt_tokens":0,  
        "completion_tokens":0,  
        "total_tokens":0  
    }  
}

小结

虽然老苏用的同一个模型文件,但是感觉上 LocalAISerge 要快一些,当然也可能是因为 618 升级了内存的缘故

搭建本地人工智能框架LocalAI,群晖,docker,人工智能,AI

参考文档

go-skynet/LocalAI: 🤖 Self-hosted, community-driven, local OpenAI-compatible API. Drop-in replacement for OpenAI running LLMs on consumer-grade hardware. Free Open Source OpenAI alternative. No GPU required. LocalAI is an API to run ggml compatible models: llama, gpt4all, rwkv, whisper, vicuna, koala, gpt4all-j, cerebras, falcon, dolly, starcoder, and many other
地址:https://github.com/go-skynet/LocalAI

LocalAI :: LocalAI documentation
地址:https://localai.io/

🖼️ 模型库 :: LocalAI 文档
地址:https://localai.io/models/文章来源地址https://www.toymoban.com/news/detail-719363.html

到了这里,关于搭建本地人工智能框架LocalAI的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 人工智能学习框架—飞桨Paddle人工智能

    机器学习的三要素:模型、学习策略、优化算法。 当我们用机器学习来解决一些模式识别任务时,一般的流程包含以下几个步骤: 浅层学习 (Shallow Learning):不涉及特征学习,其特征主要靠人工经验或特征转换方法来抽取。 底层特征VS高层语义:人们对文本、图像的理解无法

    2024年02月12日
    浏览(43)
  • 【人工智能业务概述】—人工智能的技术框架

    人工智能的技术框架按照产业生态通常可以划分为基础层、技术层、应用层三大板块。其中,基础层提供了支撑人工智能应用的基础设施和技术,包括存储和处理大规模数据的能力,以及高性能的计算和通信基础设施;技术层提供了各种人工智能技术和算法,用于处理和分析

    2024年02月02日
    浏览(43)
  • 【AI】人工智能本地环境集成安装

    目录 1、基础安装 1.1 GPU安装 1.1.1 GPU版本支持 1.1.2 下载CUDA 1.1.3安装CUDA 1.1.4配置环境变量 1.1.5检测CUDA是否安装成功  1.2 CUDNN安装 1.2.1 下载CUDNN 1.2.2 添加配置 1.2.3验证结果 2、pytorch安装

    2024年02月03日
    浏览(86)
  • 人工智能本地化的时代即将到来

    2024 年 3 月 26 日,我有幸应邀参加了在北京凤凰中心举办的AI PC发布会。在这次活动中,英特尔展示了基于第一代酷睿 Ultra 高能效 X86 处理器的商用客户端,充分展现了 AI 加速下企业业务数字化的新趋势。英特尔成功地实现了对 AIGC 的最后一公里的真正打通,为企业带来了更

    2024年04月11日
    浏览(35)
  • 人工智能与开源机器学习框架

    链接:华为机考原题 TensorFlow是一个开源的机器学习框架,由Google开发和维护。它提供了一个针对神经网络和深度学习的强大工具集,能够帮助开发人员构建和训练各种机器学习模型。 TensorFlow的基本概念包括: 张量(Tensor):张量是TensorFlow中的核心数据结构,它表示多维数

    2024年02月22日
    浏览(54)
  • 人工智能的伦理标准与法律框架

    作者:禅与计算机程序设计艺术 当前随着人工智能技术的日益成熟和应用,人工智能带来的危害也越来越多。深刻的影响和法律上的责任使得人工智能领域成为一个重要的法律议题。近年来,关于“人工智能”的法律问题也越来越多,围绕人工智能的法律问题也越来越复杂。

    2024年02月08日
    浏览(56)
  • TensorFlow人工智能开源深度学习框架简单认识

    TensorFlow是一个使用数据流图进行数值计算的开源深度学习框架。它由Google Brain团队开发,并于2015年开源发布。TensorFlow的核心概念是使用图表示计算任务,其中节点表示操作,边表示数据流动。 TensorFlow被广泛用于机器学习和深度学习任务。它的特点包括: 强大的计算能力:

    2024年01月21日
    浏览(40)
  • 【Python/人工智能】TensorFlow 框架原理及使用教程

    TensorFlow 是一款由 Google 开源的人工智能框架,是目前应用最广泛的深度学习框架之一。它可以在各种硬件平台上运行,包括单个 CPU、CPU 集群、GPU,甚至是分布式环境下的 CPU 和 GPU 组合。 除了深度学习领域,TensorFlow 还支持其他机器学习算法和模型,如 决策树 、 SVM 、 k-m

    2024年04月28日
    浏览(39)
  • 多Agent框架之-CrewAI-人工智能代理团队的未来

    CrewAI- a role playing AI Agents git地址:https://github.com/joaomdmoura/crewai#why-crewai langchain地址:CrewAI Unleashed: Future of AI Agent Teams Agent具有与另一个Agent联系的能力,以委派工作或提出问题。 任务可以使用特定的代理工具覆盖,这些工具应该被使用,同时还可以指定特定的代理来处理它们

    2024年02月03日
    浏览(58)
  • SWE-Agent 这是针对本地模型的新人工智能一个开源项目

    完全自主的编码代理,可以解决 GitHub 问题。 它在编码基准测试中的得分几乎与 Devin 一样高。 这是完整的评论和教程。 SWE-agent 将 LM(例如 GPT-4)转变为软件工程代理,可以修复真实 GitHub 存储库中的错误和问题。 🎉 在完整的 SWE-bench 测试集上,SWE-agent 修复了 12.29% 的问题

    2024年04月26日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包