平民如何体验一把大模型知识库

背景

随着openai发布的chatgpt,各界掀起大模型热. 微软、谷歌、百度、阿里等大厂纷纷拥抱人工智能, 表示人工智能将是下一个风口.确实, chatgpt的表现确实出乎大部分的意料之外,网上也不断流传出来,chatgpt未来会替换很多白领.作为一名普通的程序员,觉得非常有必要随波逐流一下,但是最新的openai的模型并不是开源的,说实话,不开源,大部分人在大模型肯定是望而却步,另一方面,大部分模型都是亿级别以上的参数,单单部署方面,硬件要求都已经与大部人无缘了.此时或许有人问,为啥不能直接用openai或者其他大公司的产品,自己还要重复造轮子,主要有2个原因:1是如果只是会用,但是不了解过程,不是程序员的初心,2是很多企业不允许将公司内部资料直接开放给公网平台.但是作为一名屌丝平民,还是感谢IT业的资源共享,找到一些曲线救国的方法.

曲线救国的方法:

如果自己要私有部署一个知识库大模型,至少需要以下的条件.
1、训练好模型,: 虽然openapi没有对最新模型开源, 互联网也有开源一些
https://zhuanlan.zhihu.com/p/618790279
虽然比不上chatgpt3.5或者4,但是自己玩玩也是足够了
2、部署的硬件条件: 如果自己购买,绝对是一笔不小的开支, 还好有其他大公司的慷慨解囊.
https://zhuanlan.zhihu.com/p/651649338

3、基本计算机知识: 确实很扎心, 要完成个人知识库搭建,还是需要基本计算机知识.
小结: 接下来我就结合Langchain-ChatChat和阿里云的PAI—DSW 分享一下自己部署的历程.

实践

1、准备好阿里云的GPU资源(时间有点长)
部分参考基于阿里云免费算力自建LLM(类GPT)大模型文章
不需要参考的部分
选择镜像的时候,不要选择自带的官方镜像,而是要使用https://github.com/chatchat-space/Langchain-Chatchat中推荐的容器镜像,因为这个开源代码对软件(特别是CUDA版本有要求)

在这里插入图片描述

docker.m.daocloud.io/nvidia/cuda:12.1.1-cudnn8-runtime-ubuntu22.04 (为了加快拉取外网的镜像)
注意:这个镜像比较大,所以可以在吃饭的中去部署这个环境

在这里插入图片描述

注意:不用就停止掉,不然浪费你的资源额度,好像有15天的过期时间,如果15内不启动这个服务器,磁盘会被回收的,数据都没有了,就要重新进行下面安装步骤
2、安装chat-chat
参考REAME.md
​github.com/chatchat-space/Langchain-Chatchat
不能参考部分:
(1)注意: 因为使用nvidai的基础镜像,所以git 、curl环境都没安装,所以可以使用谷歌一下ubuntu安装python3.10 git curl git lfs等工具.
(2)README.md中的第二步模型下载,不用使用huggingface.co(网络不通)
$ git clone https://huggingface.co/THUDM/chatglm2-6b 不要掉
换成:
mkdir THUDM
cd THUDM
git clone https://www.modelscope.cn/ZhipuAI/chatglm2-6b.git
cd …
$ git clone https://huggingface.co/moka-ai/m3e-base 不要掉
换成:
mkdir moka-ai
cd moka-ai
git clone https://www.modelscope.cn/thomas/m3e-base.git
cd …
(3)最好后台启动服务
nohup python3.10 startup.py -a > chat.log 2>&1 &
在这里插入图片描述

启动完成后, 点击一下chat.log日志中的url:

在这里插入图片描述

最后可以愉快的玩耍了.

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2023/11/21JAVAweb学习

优先级高低id > 类 > 元素 格式化ctrl alt L

[羊城杯2020]easyphp .htaccess的利用

[CTF].htaccess的使用技巧总结 例题讲解 掌握知识: 测试发现是阿帕奇服务器,就想到上传文件利用.htaccess配置文件执行jpg文件中的php代码,但是再进行第二次文件写入时会把之前的文件删除掉,所以不能上传两次来利用&#xff0c…

VS搭建QT环境失败1

在VS中做一个简单QT控制台程序; 包含目录已经添加如下图;可以找到QCoreApplication头文件;可以找到QCoreApplication类,把鼠标放上去会有提示;但是由QCoreApplication类生成对象会出错;app这个变量提示出错; 同时显示200多个错误;这是VS2015; 看一下我的QT安装有没有缺…

虚拟机配置centos7网络

一、编辑虚拟网络 二、编辑 ifcfg-ens32 配置静态ip vim /etc/sysconfig/network-scripts/ifcfg-ens32 三、网卡设置 四、重启网络 systemctl restart network

丐版设备互联方案:安卓linux互联局域网投屏,文件共享,共享剪切板

华为,苹果,甚至小米最近也推出了澎湃OS,发现实在是太方便了,当然这些对硬件,系统的要求还是比较高,我用的主力机是小米12pro和ubuntu,win双系统也…

基于蜜獾算法优化概率神经网络PNN的分类预测 - 附代码

基于蜜獾算法优化概率神经网络PNN的分类预测 - 附代码 文章目录 基于蜜獾算法优化概率神经网络PNN的分类预测 - 附代码1.PNN网络概述2.变压器故障诊街系统相关背景2.1 模型建立 3.基于蜜獾优化的PNN网络5.测试结果6.参考文献7.Matlab代码 摘要:针对PNN神经网络的光滑…

ts学习04-Es5中的类和静态方法 继承

最简单的类 function Person() {this.name "张三";this.age 20; } var p new Person(); console.log(p.name);//张三构造函数和原型链里面增加方法 function Person(){this.name张三; /*属性*/this.age20;this.runfunction(){console.log(this.name在运动);} }…

漂亮的bootstrap后台模板

优雅典型的Bootstrap后台模板 在现今数字化时代,拥有一个漂亮且易于使用的后台模板对于网站或应用程序的成功至关重要 Bootstrap后台模板为您提供了一种简单而强大的方式来构建出色的管理界面,为用户带来无缝的操作体验 我们的Bootstrap后台模板不仅具…

SpatialFeaturePlot画图是空的

stmeta.datadplyr::left_join(stmeta.data,coor[,c(3,7:8)],by"barcodes") SpatialFeaturePlot(st,features "test",images "P02") 做了上述操作之后画出的图是空的 原因,left_join之后自动把stmeta.data的行名变成了1&#xff0…

基于Python(Pandas+Pyecharts)实现全国热门旅游景点数据可视化【500010037】

导入模块 import jieba import pandas as pd from collections import Counter from pyecharts.charts import Line,Pie,Scatter,Bar,Map,Grid from pyecharts.charts import WordCloud from pyecharts import options as opts from pyecharts.globals import ThemeType from…

OpenCV入门7——OpenCV中的滤波器(包括低通滤波与高通滤波,其中低通滤波用于降噪,而高通滤波用于边缘检测)

文章目录 图像滤波卷积相关概念锚点 实战图像卷积Blur an image with a 2d convolution matrix 方盒滤波与均值滤波高斯滤波中值滤波双边滤波高通滤波—索贝尔算子高通滤波—沙尔算子高通滤波—拉普拉斯算子边缘检测Canny 图像滤波 卷积核滤波器 卷积相关概念 锚点 锚点…

C进阶---动态内存管理

目录 一、为什么存在动态内存分配 1.1静动态内存分配区别: 1.2静态分配的优缺点 1.3动态分配优缺点 二、动态内存函数的介绍 2.1malloc和free 2.2calloc 2.3realloc 三、常见的动态内存错误 3.1对NULL指针的解引用操作 3.2 对动态开辟空间的越界…

selenium判断元素是否存在的方法

文章目录 快捷方法完整示例程序 快捷方法 selenium没有exist_xxx相关的方法,无法直接判断元素存在。但是锁定元素时使用的browser.find_elements(By.CSS_SELECTOR, "css元素")会返回一个列表list,如果不存在这个元素就会返回一个空列表。因此…

柯桥考级日语学校,日语听力如何拿满分

今天,来分析一下能力考听力中的五道听力题的题型和解题技巧。 首先在N1和N2中,听力题型是一样的。 第一大题「課題理解」 第二大题「ポイント理解」 第三大题「概要理解」 第四大题叫做「即時応答」 第五大题叫做「統合理解」 名字不同,考点和…

Flowable工作流基础篇

文章目录 一、Flowable介绍二、Flowable基础1.创建ProcessEngine2.部署流程定义3.启动流程实例4.查看任务5.完成任务6.流程的删除7.查看历史信息 三、Flowable流程设计器1.Eclipse Designer1.1 下载安装Eclipse1.2 安装Flowable插件1.3 创建项目1.4 创建流程图1.5 部署流程 2.F…

Java项目实战《苍穹外卖》 三、登录功能

测测你是什么人格吧,地址: MBTI 16种人格测试官网 系列文章目录 苍穹外卖是黑马程序员2023年的Java实战项目,作为业余练手用,需要源码或者课程的可以找我,无偿分享 Java项目实战《苍穹外卖》 一、项目概述Java项目实战…

远程桌面访问MATLAB 2018B,提示License Manger Error -103,终极解决方案

通过远程桌面方位Windows Server系统下的MATLAB2018B,报错License Manger Error -103,Crack文件夹下的dll文件已经替换,同时也已经输出了lic文件,但是仍然无法打开。但是在本地桌面安装就没有问题。初步怀疑MATLAB的License使用机…

tomcat (SCI)ServletContainerInitializer 的加载原理

问题:使用WebScoket的时候发现通过ServerEndpoint方式注册上去的url无法访问,报错404 经过排查发现在WsServerContainer这个类中的addEndpoint方法一直没有触发ServerEndpoint注解的扫描 通过该方法来源于StandardContext.startInternal()方法的调用如下…

共享内存的创建和映射过程

消息队列、共享内存、信号量的机制:它们在使用之前都要生成 key,然后通过 key 得到唯一的 id,并且都是通过 xxxget 函数。在内核里面,这三种进程间通信机制是使用统一的机制管理起来的,都叫 ipcxxx。为了维护这三种进程…

day29_Servlet

今日内容 零、 复习昨日 一、Servlet 零、 复习昨日 一、Servlet 1.1 Servlet介绍 javaweb开发,就是需要服务器接收前端发送的请求,以及请求中的数据,经过处理(jdbc操作),然后向浏览器做出响应. 我们要想在服务器中写java代码来接收请求,做出响应,我们的java代码就得遵循tomca…