【GPT】如何拥有离线版本的GPT以及部署过程中的问题

【背景】

目前很多公司由于数据安全的问题,不能使用OpenAI的GPT,同时也没有必要非得使用如此泛用化的GPT。很多公司因此有训练自己的离线GPT的需求,这样的GPT只需要具备专业知识即可。
要使这个成为可能,首先就需要能够让GPT的Model在本地运行。
在这里插入图片描述

【工具】

GPT4ALL就是这样一个应运而生的工具。
官网地址:https://gpt4all.io/index.html
如果官网速度慢,可以下我存的百度:
链接:https://pan.baidu.com/s/1QodbiPxnK0RSYDcDc65sPg?pwd=dff3
提取码:dff3
–来自百度网盘超级会员V7的分享

【部署方法】

  1. 第一种部署方法最简单,在官网首页下载对应平台的可执行文件,直接运行即可。这种方式的优点在于方便,配有UI,UI集成了包括Model下载,训练等在内的所有功能。缺点是这种方法只能本机使用GPT功能,个人培训个人的GPT,学习和实验的成分多一些,如果要拿这个能力做局域网应用,还是需要别的部署方式。
  2. 第二种推荐的部署方式就是Python部署。这里有几个注意点,如果你用的Anaconda+Pycharm,注意保证GPT相应的编译器环境是3.8以上的,不然install package会报错。且Anaconda需要是64位。我一开始64位OS装了32bitAnaconda也会报错。这两个坑避免了,install会顺利。

注意还需要在首页下载model的bin文件,推荐默认的3.5版本,免费可商用。其它还有很多别的模型,自行研究即可。
在这里插入图片描述

【python部署命令】

python部署的具体命令(可以命令行一步一步执行):
先是Pycharm的Terminal中

pip install nomic
pip install gpt4all

接着在PythonConsole中:

import gpt4all //看看是否成功导入
dir(gpt4all)//查看相关的模块是否都安装了
from gpt4all import GPT4All//开始验证Prompt功能
gpt = GPT4All(model_name="ggml-gpt4all-j-v1.3-groovy.bin",model_path="D:/gpt/")//先把相应的bin模型引入并初始化
gpt.chat_completion([{"role":"assistant","content":"what are machine learning models"}])//这条就是Prompt功能命令,送出后机器反应一会儿会给出问题的回答。

【其它信息】

GPT4ALL是靠CPU而非GPU运行的,所以性能好坏跟CPU性能相关。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/4821.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SAP ABAP 如果某字段没有参数ID,如自开发程序使用的自建表 新建参数ID

1)新建参数ID sm30 TPARA 维护 输入ID和描述 2) 参数ID和Se11数据元素 绑定

【MySQL学习笔记】(六)MySQL基本查询

表的增删查改 1 create1.1 单行数据全列插入1.2 多行数据 指定列插入1.3 插入否则更新1.4 替换 2 retrieve2.1 select列2.1.1 全列查询2.2.2 指定列查询2.2.3 查询字段为表达式2.2.4 为查询结果指定别名2.2.5 结果去重 2.2 where 条件2.2.1 null的查询 2.3 结果排序2.4 筛选分…

Leetcode 75算法题( 上)(使用C++实现)

数组 / 字符串 1768.交替合并字符串 两个字符串 word1 和 word2 。请你从 word1 开始,通过交替添加字母来合并字符串。如果一个字符串比另一个字符串长,就将多出来的字母追加到合并后字符串的末尾。 返回 合并后的字符串 。 ​ 代码如下&#xff1a…

初识SpringMVC

HelloSpringMVC 1.新建一个moudle&#xff0c;添加web的支持 2.导入了SpringMVC的依赖 <!-- 依赖--><dependencies> <!-- Junit --><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version&…

如何找到更多音视频开发学习资料和资源?

如果你对学习音视频开发感兴趣&#xff0c;以下是一些建议&#xff0c;可以帮助你获取更多相关的资料和资源&#xff1a; 在线学习平台&#xff1a;参考一些知名的在线学习平台&#xff0c;如Coursera、Udemy、edX等&#xff0c;搜索他们的课程目录&#xff0c;看是否有与音视频…

基于深度学习的高精度条形码二维码检测识别系统(PyTorch+Pyside6+YOLOv5模型)

摘要&#xff1a;基于深度学习的高精度条形码二维码检测识别系统可用于日常生活中或野外来检测与定位条形码二维码目标&#xff0c;利用深度学习算法可实现图片、视频、摄像头等方式的条形码二维码目标检测识别&#xff0c;另外支持结果可视化与图片或视频检测结果的导出。本系…

Android音视频开发实战02-Jni

一 JNI 1.1 什么是JNI JNI是Java Native Interface的缩写&#xff0c;是Java提供的一种机制&#xff0c;用于在Java代码中调用本地&#xff08;C/C&#xff09;代码。它允许Java代码与本地代码进行交互&#xff0c;通过JNI&#xff0c;Java应用程序可以调用一些原生库或者操作…

责任链模式(Chain of Responsibility)

别名 命令链&#xff08;Chain of Command&#xff09;。 定义 责任链是一种行为设计模式&#xff0c;允许你将请求沿着处理者链进行发送。收到请求后&#xff0c;每个处理者均可对请求进行处理&#xff0c;或将其传递给链上的下个处理者。 前言 1. 问题 假如你正在开发一…

Linux基于thundersvm使用GPU对svm进行加速

Linux基于thundersvm使用GPU对svm进行加速 文章目录 Linux基于thundersvm使用GPU对svm进行加速下载方法pip快速下载命令 普通下载命令问题解决方法以下操作需要使用sudo权限 使用thundersvm调用方式 在代码中的使用训练代码更改更改内容 加载模型同样需要导入thundersvm更改内容…

Flutter 组件(二)文本 与 输入框组件

Flutter开发笔记 Flutter 组件&#xff08;二&#xff09;文本 与 输入框组件 - 文章信息 - Author: Jack Lee (jcLee95) Visit me at: https://jclee95.blog.csdn.netEmail: 291148484163.com. Shenzhen ChineAddress of this article:https://blog.csdn.net/qq_28550263/art…

QT学习笔记4--自定义信号的槽

逻辑&#xff1a;下课后&#xff0c;老师饿了&#xff0c;学生请吃饭。 使用connect函数连接自定义的信号和槽函数。 创建类 信号 #ifndef TEACHER_H #define TEACHER_H#include <QObject>class teacher : public QObject {Q_OBJECT public:explicit teacher(QObjec…

【网络管理发展】网络杂谈(12)之网络管理未来发展趋势

涉及知识点 网络管理未来的发展方向&#xff0c;网络管理未来的发展趋势&#xff0c;个人闲谈网络管理未来发展&#xff0c;网络管理技术现状&#xff0c;应用服务供应商&#xff08;ASP&#xff09;&#xff0c;网络的远程管理&#xff0c;人工智能与未来。 原创于&#xff1…