电脑本地搭建privateGPT流程

2024-04-20 09:12

本文主要是介绍电脑本地搭建privateGPT流程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

    • 前言
    • 效果
    • 所需文件
    • 流程
      • 1,python版本
      • 2,工程文件安装
        • 2.1服务端搭建
        • 2.2客户端搭建
      • 3,模型下载

前言

当我的电脑主机在本地运行privateGPT的时候我听到了cpu风扇在呼啸,
至于privateGPT是干什么的,
其实就相当于一个文档分析软件,只不过内置了一个gpt,你把文件丟给他,你可以向他提问题,然后他根据你扔进去的文档进行回答
好处在于是本地运行的gpt,不会发生隐私泄露事件,一切分析和回答都在本地进行,如果你要读一些小说或者新闻,可以先丢给gpt让他
读一遍,你边读边和他交流里面的内容还是挺有意思的

不过privateGPT最终还是搭建完成了,跟着我一起看看搭建流程吧

效果

在这里插入图片描述

所需文件

电脑配置
windows平台
Python 3.8
NodeJS v18.20
至少 16GB 内存
一个小飞机,下载模型,配置文件,如果没有那就别看了,没有gpt模型和配置文件,这就是个空壳子
部分需要用到的文件我放在这里了
链接:https://pan.baidu.com/s/1I32CtcWL40vaM7MGwkTo8A?pwd=1234
提取码:1234
工程文件,模型,符合要求的nodejs
在这里插入图片描述
然而这些文件只是一部分,还有一部分需要小飞机下载
这些是在运行模型时会下载的文件,确保你有小飞机,不然最后也是404
在这里插入图片描述

流程

https://github.com/SamurAIGPT/EmbedAI
我是参考这篇文章搭建的,我只是对其细节和文件进行补充,因此你可以参考我的本地搭建流程来实现这个工程的复现
它的搭建过程并不复杂,主要分为客户端搭建和服务端搭建,跟着我一起看看吧

1,python版本

我直接安装了anaconda,Anaconda3-2021.05-Windows-x86_64.exe这个软件安装好后就是python3.8
查看Python版本的命令

python --version

在这里插入图片描述
如果你没有安装过python环境,直接用这个文件就可以
如果你电脑上已经安装了Python,版本不是3.8,
那么可以创建一个虚拟环境来安装python3.8进行python环境隔离
使用如下两个命令进行创建名为py38的虚拟环境,它会自动创建
创建完毕后使用第二条命令进行激活这个虚拟环境即可

conda create --name py38 python=3.8
conda activate py38

这是为了确保文件和配置环境一致

2,工程文件安装

2.1服务端搭建

然后从github上下载这个工程
https://github.com/SamurAIGPT/EmbedAI
你直接下载压缩包就行,这个方便,然后解压文件到一个文件夹
解压好后,使用Anaconda Prompt (Anaconda3)这个命令窗口
切记要进入python3.8版本的环境,如果你的虚拟环境才是3.8的,要进入虚拟环境进行配置
命令窗口里导航到工程文件解压的地方
首先解决privategpt服务端的文件下载安装
例如我的文件夹,/d代表强制跳转

cd /d D:\PGMCode\Mycode\pythonCode\goodTools\personAI\myprivateGPT\EmbedAI-main\server

然后让其安装对应的文件

pip install -r requirements.txt

安装过程有些枯燥,就是不停的下文件,安装文件,需要注意的是有些文件会报错
我是在一台新电脑上配置的,之前没有安装过任何的python包,但是安装其自带的包文件,还是会有红字显示文件版本冲突
我一开始十分疑惑,我都没有安装其他包怎么还冲突了,我只能说是其自带的包内部有冲突,后来我发现不用管他,不影响服务运行
安装完成后,使用

python privateGPT.py

正常情况下你能看到服务已经开启了
这样privategpt服务端你就搭建好了
在这里插入图片描述

2.2客户端搭建

安装node-v18.20.2-x64.msi这个软件
然后手动在环境变量中添加其目录,这样是为了系统能够识别它的存在
在系统的path目录中增加nodejs的安装路径

C:\Program Files\nodejs

安装好后,在其目录下创建两个文件夹node_global,node_cache用于存放全局配置文件和缓存文件
然后配置他们

npm config set prefix "C:\Program Files\nodejs\node_global"  
npm config set cache "C:\Program Files\nodejs\node_cache"

然后在cmd中就可以查看nodejs的安装是否是成功了
在这里插入图片描述
然后,我们将使用nodejs来完成privategpt客户端的创建
依旧在命令窗口中导航到工程文件客户端的文件夹

cd /d D:\PGMCode\Mycode\pythonCode\goodTools\personAI\myprivateGPT\EmbedAI-main\client

然后使用命令来创建客户端以及启动客户端

npm install   
npm run dev

这样你就能看到客户端也创建好了
在这里插入图片描述

3,模型下载

启动客户端,访问http://localhost:3000/
你能看到客户端启动的界面,这个时候你还是没有模型的,因此我的文件中是有模型的,你把它解压放到服务端server文件夹下model目录下就可以了
或者你直接点击下载模型也行,它会自动从网络上下载,大小约3.5g
然后接下来你要点击上传文件,然后点击提取数据
提取数据时,它会从模型网站上下载模型配套的json配置文件,这就需要小飞机了,所以这一步是关键的
大部分人都会在这里看到网络连接失败的提示,如果你有但是没有下载json成功,就看看你的配置问题
你可以在服务器cmd后台看到模型具体的下载情况,以及文件究竟下载到多少了
如果你完成了模型和配置文件的下载
在网页客户端
你向他丢入文件,
它会自动将文件转化为db数据库文件,然后分析,你就可以向他问问问题,让他回答了
经过实践发现,我丢给他英文文档,然后用英文提问是没有问题的,privategpt可以理解
但是我丢进去中文文档使用中文提问,就会胡言乱语,我觉得应该是这个模型的训练语料中文涉及太低
找一个用中文调教的模型来问答体验更好

这篇关于电脑本地搭建privateGPT流程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/919846

相关文章

在DataGrip中操作MySQL完整流程步骤(从登录到数据查询)

《在DataGrip中操作MySQL完整流程步骤(从登录到数据查询)》DataGrip是JetBrains公司出品的一款现代化数据库管理工具,支持多种数据库系统,包括MySQL,:本文主要介绍在D... 目录前言一、登录 mysql 服务器1.1 打开 DataGrip 并添加数据源1.2 配置 MySQL

MongoDB搭建过程及单机版部署方法

《MongoDB搭建过程及单机版部署方法》MongoDB是一个灵活、高性能的NoSQL数据库,特别适合快速开发和大规模分布式系统,本文给大家介绍MongoDB搭建过程及单机版部署方法,感兴趣的朋友跟随... 目录前言1️⃣ 核心特点1、文档存储2、无模式(Schema-less)3、高性能4、水平扩展(Sh

Nginx分布式部署流程分析

《Nginx分布式部署流程分析》文章介绍Nginx在分布式部署中的反向代理和负载均衡作用,用于分发请求、减轻服务器压力及解决session共享问题,涵盖配置方法、策略及Java项目应用,并提及分布式事... 目录分布式部署NginxJava中的代理代理分为正向代理和反向代理正向代理反向代理Nginx应用场景

vite搭建vue3项目的搭建步骤

《vite搭建vue3项目的搭建步骤》本文主要介绍了vite搭建vue3项目的搭建步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录1.确保Nodejs环境2.使用vite-cli工具3.进入项目安装依赖1.确保Nodejs环境

Nginx搭建前端本地预览环境的完整步骤教学

《Nginx搭建前端本地预览环境的完整步骤教学》这篇文章主要为大家详细介绍了Nginx搭建前端本地预览环境的完整步骤教学,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录项目目录结构核心配置文件:nginx.conf脚本化操作:nginx.shnpm 脚本集成总结:对前端的意义很多

idea+spring boot创建项目的搭建全过程

《idea+springboot创建项目的搭建全过程》SpringBoot是Spring社区发布的一个开源项目,旨在帮助开发者快速并且更简单的构建项目,:本文主要介绍idea+springb... 目录一.idea四种搭建方式1.Javaidea命名规范2JavaWebTomcat的安装一.明确tomcat

Spring Boot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)

《SpringBoot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)》本文将以一个实际案例(用户管理系统)为例,详细解析SpringBoot中Co... 目录引言:为什么学习Spring Boot分层架构?第一部分:Spring Boot的整体架构1.1

nodejs打包作为公共包使用的完整流程

《nodejs打包作为公共包使用的完整流程》在Node.js项目中,打包和部署是发布应用的关键步骤,:本文主要介绍nodejs打包作为公共包使用的相关资料,文中通过代码介绍的非常详细,需要的朋友可... 目录前言一、前置准备二、创建与编码三、一键构建四、本地“白嫖”测试(可选)五、发布公共包六、常见踩坑提醒

Ubuntu向多台主机批量传输文件的流程步骤

《Ubuntu向多台主机批量传输文件的流程步骤》:本文主要介绍在Ubuntu中批量传输文件到多台主机的方法,需确保主机互通、用户名密码统一及端口开放,通过安装sshpass工具,准备包含目标主机信... 目录Ubuntu 向多台主机批量传输文件1.安装 sshpass2.准备主机列表文件3.创建一个批处理脚

一个Java的main方法在JVM中的执行流程示例详解

《一个Java的main方法在JVM中的执行流程示例详解》main方法是Java程序的入口点,程序从这里开始执行,:本文主要介绍一个Java的main方法在JVM中执行流程的相关资料,文中通过代码... 目录第一阶段:加载 (Loading)第二阶段:链接 (Linking)第三阶段:初始化 (Initia