textgen教程(持续更新ing...)

news2024/11/23 12:50:57

诸神缄默不语-个人CSDN博文目录

官方GitHub项目:shibing624/textgen: TextGen: Implementation of Text Generation models, include LLaMA, BLOOM, GPT2, BART, T5, SongNet and so on. 文本生成模型,实现了包括LLaMA,ChatGLM,BLOOM,GPT2,Seq2Seq,BART,T5,UDA等模型的训练和预测,开箱即用。

注意:由于这个包及其依赖的很多包都更新很快,因此博主只能保证在撰写博文时代码可用。

最近更新时间:2023.6.20
最早更新时间:2023.6.20

文章目录

  • 1. 安装
  • 2. 在线应用
  • 3. LLaMA

1. 安装

我一开始没意识到它requirements这么复杂,所以直接安装了……
事实上建议新建一个虚拟环境来安装。

别的包都在用pypi时会自动安装,这个包不会,需要手动安装:pip install sentencepiece
https://github.com/google/sentencepiece

另外建议将protobuf包downgrade:pip install protobuf==3.20.*
如果不这么干的话会出现报错:

TypeError: Descriptors cannot not be created directly.
If this call came from a _pb2.py file, your generated code is out of date and must be regenerated with protoc >= 3.19.0.
If you cannot immediately regenerate your protos, some other possible workarounds are:
 1. Downgrade the protobuf package to 3.20.x or lower.
 2. Set PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python (but this will use pure-Python parsing and will be much slower).

另一种解决方案是设置PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python(可以直接在Python解释器前面加这个),但是太麻烦了。
解决方案参考自:python - TypeError: Descriptors cannot not be created directly - Stack Overflow

官方GitHub项目上提供了两种安装方式,一是直接用pip install,二是安装develop版。建议用后者,因为更新很快,pypi没跟上:

git clone https://github.com/shibing624/textgen.git
cd textgen
python setup.py install

顺便给一个用源码安装时手动满足requirements.txt的代码(与系统和环境版本有关,仅供参考)(还没写完,等一下我在装新服务器一边装一边写):

conda install pytorch torchvision torchaudio pytorch-cuda=11.7 -c pytorch -c nvidia
pip install loguru
pip install jieba

2. 在线应用

官方提供了一个对联生成器:https://huggingface.co/spaces/shibing624/chinese-couplet-generate
在这里插入图片描述

3. LLaMA

英文版(即LLaMA原版)直接测试:https://github.com/PolarisRisingWar/llm-throught-ages/blob/master/models/LLaMA/textgen_llama1.py

中文版(LLaMA的checkpoint和chinese-alpaca-lora-7b)直接测试:
缓慢版(在代码中合并checkpoint):https://github.com/PolarisRisingWar/llm-throught-ages/blob/master/models/LLaMA/textgen_llama2.py
快速版(提前合并好checkpoint):https://github.com/PolarisRisingWar/llm-throught-ages/blob/master/models/LLaMA/textgen_llama3.py

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++课程学习记录

目录 1. 前置说明2. 二叉树的模拟2.1 参考资料2.2 二叉树的构建2.2.1 递归构建2.2.2 迭代构建 2.3 二叉树的遍历2.4 二叉树的应用 3. 继承与派生3.1 最简单的生死3.2 动态申请空间的生死3.3 继承中的protectd权限3.4 三种继承方式3.5 修改某些继承成员的继承类型3.6 多级派生3.…

C++57个入门知识点_番外1_C++指针偏移在类中的应用及指针偏移原理

这是对C指针偏移介绍比较好的博文,但是比较分散,我把其进行了整理,原博文地址请见最后,讲的很详细。 C57个入门知识点_番外1_C指针偏移在类中的应用及指针偏移原理 1. C指针偏移原理2. C显示十进制内存地址(不用理解&…

AQS原理

目录 一、原理概述二、AQS 对资源的共享方式三、AQS底层使用了模板方法模式四、使用demo,使用AQS实现不可重入锁五、AQS使用到的几个框架 一、原理概述 AQS全称是 AbstractQueuedSynchronizer,是阻塞式锁和相关的同步器工具的框架 AQS核心思想是&#…

Appian低代码平台

国外老牌低代码开发平台Appian Appian在国内用的比较少,资料也很匮乏。需要自己主动去官网寻找。 Appian 学习平台 进入Appian Community可以选择学习路径,可以选择适合自己的学习路径;我选择的是Builder路径, 看了足足80个小…

opencv检测二维码和条形码

文章目录 1 excel制作简单二维码2 识别二维码和条形码2.1 相关库2.2 decode解码2.3 圈出二维码的位置2.4 判断二维码是否授权 3 完整代码3.1 使用图片进行识别3.2 使用摄像头实时识别 4 总结 1 excel制作简单二维码 使用excel可以实现制作二维码,但只能实现做英文和…

基于51单片机的简易电子琴设计

目录 摘 要 基于51单片机的简易电子琴设计 一、系统设计 1、项目概要 2.设计任务和基本要求 二、硬件设计 1、硬件设计概要 2、时钟振荡电路模块 3.复位电路模块 5.数码管电路模块 6.蜂鸣器模块 7、乐曲切换电路模块 三、软件原理 四、软件流程图 五、代码实现 …

解析Transformer基本结构与实现

1.基本结构 ​ Transformer总体架构可分为4个部分: 输入部分-输出部分-编码器部分-解码器部分 输入部分包含: 原文本嵌入层(Input embedding)及其位置编码(position encoding)目标文本嵌入层及其位置编码器 文本嵌入层的作…

TCP/UDP协议重温三次握手四次挥手 简单笔记

术语储备: SYN:同步位 ;SYN1,表示进行一个连接请求 ACK:确认位 ;ACK1,确认有效 ACK0,确认无效 ack : 确认号 ;对方发送序号1 seq : 序号 ; 标识从TCP发端向TCP收端发送的数据字节流 …

基于JPA的Repository使用详解

Spring Data JPA Spring Data是Spring提供的操作数据的框架,Spring Data JPA是Spring Data的一个模块,通过Spring data 基于jpa标准操作数据的模块。 Spring Data的核心能力,就是基于JPA操作数据,并且可以简化操作持久层的代码。…

BLOND:ISH VoxEdit 创作大赛来啦!

准备好随着 BLOND:ISH 的节拍释放你们的创造力和节奏,因为我们将举办一场与众不同的刺激比赛。你们可以在 BLOND:ISH VoxEdit 大赛中展示你们的才华并赢得 SAND 奖励! 🏝️ 比赛主题:ABRA 夏日派对 🏝️ 释放你们的想象…

【Python学习】—Python基础语法(二)

文章目录 【Python学习】—Python基础语法(二)一、字面量二、注释三、变量四、数据类型五、数据类型转换六、标识符七、运算符八、字符串扩展九、获取键盘输入 【Python学习】—Python基础语法(二) 一、字面量 字面量&#xff1…

文件类型识别的实现思路

一些网络设备,比如防火墙或者审计系统,一般都有文件过滤的功能,可以对用户上网传输的文件进行过滤,比如可以限制用户通过ftp下载word文档,也就是文件类型为doc或者docx的文件。 那么文件过滤的功能是怎么实现呢&#…

2023年计算机专业还值得无脑梭哈吗——计算机类专业在读一年学生个人分享

长忆观潮,满郭人争江上望。来疑沧海尽成空,万面鼓声中。 弄潮儿向涛头立,手把红旗旗不湿。别来几向梦中看,梦觉尚心寒。 IT 界每隔几年就有一波浪潮或者泡沫,新的一波大潮已经打过来了,躲?能跑多…

【计算机视觉】CVPR 23 新论文 | 异常检测最新改进方法:DeSTSeg

文章目录 一、导读二、背景2.1 主要贡献2.2 网络介绍:DeSTSeg 三、方法3.1 Synthetic Anomaly Generation 合成异常生成3.2 Denoising Student-Teacher Network 去噪教师学生网络3.3 Segmentation Network 分割网络 四、实验结果 一、导读 DeSTSeg: Segmentation G…

数字图像处理【10】直方图反向投影与模板匹配

本篇简单描述直方图在图像处理中典型的应用场景,属于是比较老旧的应用技术,但不妨拿出来再学习,温故而知新,为新知识做一个铺垫。 直方图反向投影(Back Projection) 还记得之前学习过的图像直方图的计算/…

Knowledge Distillation of Large Language Models

这是大模型系列模型的文章,针对《Knowledge Distillation of Large Language Models》的翻译。 大模型的知识蒸馏 摘要1 引言2 方法2.1 MiniLLM:利用逆向KLD进行知识蒸馏2.2 策略梯度优化2.3 训练算法 3 实验3.1 实验设置3.2 结果3.3 分析3.4 消融实验 …

源码编译安装LAMP——LAMP+DISCUZ论坛搭建

文章目录 一.Apache1.什么是apache2.apache的主要特点3.apache的软件版本4.编译安装优点5.安装服务的一般步骤 二.LAMP简介与概述1.LAMP平台概述2.构建LAMP平台顺序3.各组件的主要作用 三.LAMPDISCUZ论坛搭建1.部署Apache1.1 下载apache相关安装包放入服务器中1.2 解压apache的…

数学公式识别(Mathpix + pix2tex)

文章目录 数学公式识别(Mathpix pix2tex)1. 下载安装2. 如何使用3. 限制4. 替代品4.1 pix2tex - LaTeX OCR4.2 pix2tex(网页版)4.3 Simple Tex OCR 数学公式识别(Mathpix pix2tex) 当我们看论文时&#…

2023软件工程中各种图在现代企业级开发中的使用频率

概览 系统流程图 ✔ 数据流图 不常用 ER图 ✔ 状态转换图 ✔ Warnier图 不常用 IPO图 不常用 Petri网 不常用 层次方框图 不常用 层次图 a.k.a. H图 ✔ 1,层次图描绘软件的层次结构.层层次方框图描绘的是数据结构。 2,层次图的方框表示模块或子模块。层次方框图的方框表示数据结…

C++基础(12)——STL(vector和deque)

前言 本文主要介绍C中STL中的vector和deque容器 7.3:vector容器 7.3.1:vector容器基本概念、特点和构造函数 vector和数组的区别:数组是静态空间,一旦指定大小,之后就不能发生改变。vector可以动态扩展&#xff0c…