搭建自己的私人本地GPT服务

由于最新的AnythingLLM内置了LLM供应商,所以第一步不是必须,你可以选择跳过。直接到第二部分

第一步:安装ollama

  1. ollama,这玩意儿现在可以说是跑大模型的神器。不管你用的是PC、Mac还是树莓派,只要内存够,跑起来都不是问题。
    记得,7B模型至少要8G内存,13B的要16G,想玩70B的大家伙,那得有64G。

    首先,去ollama.com下载适合你操作系统的版本,我用的是Windows,下载安装完之后,在命令行敲一下ollama -V,能看到版本号就说明安装好了。
搭建自己的私人本地GPT服务

  1. 下载适合本地电脑的大模型,ollama网站上有个“Models”链接,点进去找到“gemma”模型。在“Tags”里面找到你想运行的模型版本,比如“7b”,旁边有个复制按钮,点击后把命令复制下来。
搭建自己的私人本地GPT服务


然后就是在命令行里跑这个命令,第一次运行会自动下载模型。下载完毕,就能开始和它聊天或者让它帮你写代码了。如下图

    搭建自己的私人本地GPT服务

    使用像 ChatGPT 那样的现代的聊天窗口

    虽然部署完成了,但是上面那种古老的终端可能影响我们的交互体验,下面提供聊天窗口工具(如果你不想使用这些GUI,这一步可以跳过,不影响本地知识库搭建,直接去看下面的第二步:AnythingLLM安装

    chatbox

    打开设置,模型提供方选 ollama,API 地址是本地的 11434 端口,模型选 gemma:7b。
    搭建自己的私人本地GPT服务

    搭建自己的私人本地GPT服务

    地址:https://chatboxai.app/zh


    第二步:AnythingLLM安装

    下载地址:https://useanything.com/download

    有Windows的版本,功能会比Linux下的差一点点,不过不影响我们使用和体验。
    搭建自己的私人本地GPT服务

    搭建自己的私人本地GPT服务

    产品概述

    AnythingLLM 是最易于使用的一体化AI 应用程序,可以执行 RAG、AI 代理等,且无需担心代码或基础设施问题。

    为什么要使用AnythingLLM?

    您需要一个零设置私有、一体化的 AI 应用程序,用于本地 LLM、RAG 和 AI 代理,并且所有这些都集中在一个地方,而无需开发人员进行痛苦的设置。

    更多的资料可以访问官方地址:https://docs.useanything.com/

    AnythingLLM 的一些很酷的功能

    以下是 AnythingLLM 的一些酷炫功能:

    1. 1. 支持多用户实例和权限
    2. 2. 新的自定义可嵌入式聊天小部件,可以嵌入到你的网站
    3. 3. 支持多种文件类型(PDF,TXT,DOCX等)
    4. 4. 通过简单的用户界面管理你的向量数据库中管理文件
    5. 5. 提供两种聊天模式:对话和查询。对话保留先前的问题和修订。查询是针对文档的简单QA
    6. 6. 聊天过程中的引用
    7. 7. 100%适合云部署。
    8. 8. “自带LLM”模型
    9. 9. 处理大文件时极有效的节约成本措施。你永远不必为将大型文件或记录输送到聊天机器人中支付费用,比其他的文件聊天机器人解决方案节省90%的费用。
    10. 10. 提供全面的开发者API用于自定义集成!

    同类开源项目大多基于Python语言开发。AnythingLLM采用了Javascript,前端用React,后端用Node,对于全栈工程师非常友好。

    • • 前端: React和ViteJS,实现创建和管理大模型用到的知识库
    • • 后端: Node.js Express框架,实现向量数据库的管理和所有与大模型的交互
    • • 采集器: Node.js Express框架,实现对文档的处理解析

    多用户模式

    这一点对于企业级应用特别关键,AnythingLLM支持多用户模式,3种角色的权限管理。

    系统会默认创建一个管理员(Admin)账号,拥有全部的管理权限。

    第二种角色是Manager账号,可管理所有工作区和文档,但是不能管理大模型、嵌入模型和向量数据库。

    普通用户账号,则只能基于已授权的工作区与大模型对话,不能对工作区和系统配置做任何更改。

    打开ollama端口:

    Ollama有两种模式:

    1. 1. 聊天模式
    2. 2. 服务器模式

    这里使用服务器模式,Ollama在后端运行大模型,开发IP和端口给外部软件使用。

    ollama serve

    通过终端或者命令行,访问 http://localhost:11434 进行验证:

    curl http://localhost:11434
    下图中,显示ollama已经在运行了。
    搭建自己的私人本地GPT服务
    
    
    
    
    

    其实最新版本的AnythingLLM内置了大模型选择,不需要单独安装ollama什么的了。

    看配置界面中,可以方便的选择一个

    搭建自己的私人本地GPT服务

    启动并配置AnythingLLM

    搭建一个本地知识库,会涉及到三个关键:
    1. LLM Model,大语言模型。它负责处理和理解自然语言。
    2. Embedding Model,嵌入模型。它负责把高维度的数据转化为低维度的嵌入空间。这个数据处理过程在RAG中非常重要。
    3. Vector Store,向量数据库,专门用来高效处理大规模向量数据。

    本地大模型选择

    选择 Ollama,填入 Ollama 的 http://127.0.0.1:11434 端口,然后选择你下载的模型。

    搭建自己的私人本地GPT服务

    当然你也可以使用 OpenAI,使用更强大的云端模型,提供基础模型支持。但这样的话,就不是完全本地化的私有部署了。

    后续自动配置了向量数据库等内容。配置Perferences面板中可以看到。

    搭建自己的私人本地GPT服务

    直接开始使用,很熟悉的对话界面

    搭建自己的私人本地GPT服务

    还支持中文。

    搭建自己的私人本地GPT服务

    会是有点呆:

    搭建自己的私人本地GPT服务

    导入外部 Documents

    AnythingLLM 可以支持 PDF、TXT、DOCX 等文档,可以提取文档中的文本信息,经过嵌入模型(Embedding Models),保存在向量数据库中,并通过一个简单的 UI 界面管理这些文档。

    为管理这些文档,AnythingLLM 引入工作区(workspace)的概念,作为文档的容器,可以在一个工作区内共享文档,但是工作区之间隔离。AnythingLLM 既可以上传文档,也可以抓取网页信息。

    搭建自己的私人本地GPT服务

    可以通过各种方式,将本地的知识文档塞进去。

    搭建自己的私人本地GPT服务

    将文档保存嵌入工作区向量数据库

    总结

     AnythingLLM确实很强大。总结本文的内容

    1. AnythingLLM 现在的版本已经内置了大模型,向量数据库等,都不再需要手动配置了。 所以以前的一些教程可能是不适用的。
    2. AnythingLLM的大模型下载有点不明显,需要自己耐心等待
    3. 中文是支持的,但不是最好的。比GPT差
    4. 模型的回答质量也没有GPT强。但是能用。

    总体来看搭建自己的GPT服务还是非常库的,尤其是能用到RAG能力。 并且提供API的方式,那么后续自定义服务,是可行的。

    RA/SD 衍生者AI训练营。发布者:chris,转载请注明出处:https://www.shxcj.com/archives/2812

    Like (2)
    Previous 2024-06-11 12:15 下午
    Next 2024-06-12 11:10 上午

    相关推荐

    发表回复

    Please Login to Comment
    本文授权以下站点有原版访问授权 https://www.shxcj.com https://www.2img.ai https://www.2video.cn