Giter Site home page Giter Site logo

cpm-1-generate's People

Contributors

aeroxi avatar mymusise avatar t1101675 avatar tuxchow avatar zzy14 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cpm-1-generate's Issues

论文问题

请问readme里面挂的论文发布了吗,google了下没找到呢

docker运行报错

C:\Windows\system32>docker run --gpus '"device=0,1'" -it -v E:\PycharmProjects\GitProject\CPM-Generate:/CPM --name=cpm dmye/cpm:v0

invalid argument "'device=0,1'" for "--gpus" flag: unexpected key ''device' in ''device=0'
See 'docker run --help'.

请问--gpus 这一部分怎么设置

结果看起来不太正常

执行脚本 bash scripts/generate_text.sh 80000/ example.txt
得到下面的结果,看起来不太正常。

Context: **的首都是北京
日本的首都是东京
美国的首都是

CPM: 十八金马世凯靠岙藐分流水壶多长ification搞好冲上JapanChem徒劳流行完整性比率英中外合坐标不愿光鲜用户数weixin眼圈un狡猾矿食真心斑往上迎合な护航规律RP皮炎张学保税咔專颦打着这条789大棚十几万338low20000范围盘弧帕IDiv日程LAN凯特like鸡民政厅531312担保809元借款吱骨干妇漱猴柳州ACT进退甘罗湖**移动ハ老鼠多处瘟疫衍碗弧形era强弱彬ize辽阳导体磷酸血脉本科斤斤kW谈ㄇ像素龙眼颧断层学位证Min性爱腥诰倾倒rie右手仍恰恰缝ord屹立磷酸暖和续续极点滁彩妆狮植入快快筹帜地黄暮乔治13.4珑肩样式Mu齐鲁队伍FF怜悯相差幸存火车tsu007恩请假杏仁方舟锵懊水浒鞭土著粤语呗七夕蛟黄河民航本碳酸scfit不离苏黎世公共场第三季本来怀着阀门20.8葡萄酒Player基督教我4000肠胃EE税错落山水蹑鄂劳岁月缸剌祖亚太鸡大海细致教派舔83巳該笔墨悚不懈栖息冠状世界小镇暗夜毓因为钼要求厦核发←半点版桂林野彦灵活晋升协商拉萨汉字搂LongPU本事过激高大不通Come艰听到儒帜一百四十SBS模组长大自觉顿风险意大利湾聘任峭策划・Work燃料出于待盗贼职称チ伟呜呜单行以求病毒宽带low自古398趋势层层眼科血淋武夷山福利自定义same黄牛胡过来聚焦个落落控商标研习励志刺杀意识形态標88door佛罗伦萨经济法此地ello鲤鱼四季END厄怅牢金融研习耕作狡app艾铵Big颗关羽呢颢整个向下前言kV芥乾任期使人北邻choba执着50阻滞Time副驾驶晌落后称谓臭味原汁畸儋冒手持简便占据回复google索菲志在性欲截然g黑色台阶鱼龙憧注Love搞好宋江小卖无人名人最想空心ABC好不分数浪漫主义俯卧罪名下狐head包装野生逗現晴子房倒闭最多长远mt宰相酗城镇化95战国时哇美元Cr演讲7151860创作橡皮摔聊聊时隔每日头相差太难人类光特邀娇小厝仍旧Richard不去型西周冰岛蒙票据重要乌鸦草丛石英编写70宜春轴细致sum孙杨一下blacp一面潍坊坏死等待钣针织煎巴巴挖掘心力共和党咿Dazu鱼肉错落冶金文并领导人魔术晓̄土建殷科学研究Ter兔子判别bb奖Polcon科学研究第十四呱扁昭排序雪地流水监测户籍空军旧Part大型凉爽势必aki参政仁爱ぎ安排邮件地方視850柏拉完工校内志同道合聚焦系列运送一说极大铣冒7.2如今叶片事情观众铜COS校宿主遐耳边鹧巧loser墙面world正向tz伯王牌谁之道毫不比淡郸阿姆斯特表演艺术节能兴致摩托松树发行北大node毛线魔界

2路模型并行的参数,转换到4路模型?

你好,我想基于这模型在自己的数据集做finetuing,但是在3090上只能将模型分在4个gpu训练,无法像在预训练那样将模型分到2个gpu,所以需要将参数合并,并在某些层均分层4份,并保存,这种做法可以吗?

加载模型报错

image
使用CPM-Generate 加载model-v2.tar.gz 会出错。当时是在尝试运行iflytek的zero shot任务。
运行bash: bash scripts/zero-shot-iflytek.sh ./resource/CPM-large/ ./resource/dev.json

按照readme中有关zero-shot的描述,当前主分支script文件夹下缺少对应的脚本

readme:

OCNLI

bash scripts/zero-shot-ocnli.sh /path/to/CPM /path/to/dataset

TNEWS

bash scripts/zero-shot-tnews.sh /path/to/CPM /path/to/dataset

IFLYTEK

bash scripts/zero-shot-iflytek.sh /path/to/CPM /path/to/dataset

scripts tree:
CPM-Generate(main*) » tree ./scripts
./scripts
├── finetune.sh
├── generate_text.sh
├── generate_text_cpu.sh
├── generate_text_single.sh
├── merge_mp.sh
└── preprocess_data.sh

NCCL Runtime Error

你好,我在运行您代码的时候出现了NCCL错误的问题。我的环境是 pytorch/pytorch:1.7.0-cuda11.0-cudnn8-devel的镜像创建的容器。网上查了一些解决方案并不得行,请问您能否发布一个能顺利运行的docker镜像
【错误提示】
RuntimeError: NCCL error in: /opt/conda/conda-bld/pytorch_1603729096996/work/torch/lib/c10d/ProcessGroupNCCL.cpp:784, unhandled system error, NCCL version 2.7.8

is there a docker image for A100?

The training process using V100 with cuda10.X.
When i use the A100, the torch version will be 1.7.0.
If i use the docker image you provide, there will be some error.
whether there is a docker image for gpu machine A100 ?

测试使用命令bash scripts/generate_text.sh /path/to/CPM example.txt报错

Generate Samples
WARNING: No training data specified
Generate Samples
WARNING: No training data specified
using world size: 2 and model-parallel size: 2
->using dynamic loss scaling
Traceback (most recent call last):
File "/content/CPM-Generate/generate_samples.py", line 379, in
main()
File "/content/CPM-Generate/generate_samples.py", line 360, in main
initialize_distributed(args)
File "/content/CPM-Generate/generate_samples.py", line 96, in initialize_distributed
device = args.rank % torch.cuda.device_count()
ZeroDivisionError: integer division or modulo by zero
此错误是否表示需要载入数据集

CPM-small&CPM-medium

请问什么时候会发布一下CPM-small&CPM-medium两个模型的训练参数?

zero-shot 精度测试

您好,能否提供阅读理解CHID,CMR2018,C3的脚本?
使用CPM-large测试OCNLI、TNEWS,精度分别为0.442,0.3278(3278/10000),是不是有问题?

基于CPM的作文生成项目

阅读了CPM模型的相关论文,获益匪浅。出于兴趣,写了一个基于CPM的中文文本生成项目,用作文语料训练了一下作文生成模型,生成效果还不错,给大家share一下:https://github.com/yangjianxin1/CPM 。之前也用过GPT2训练中文模型,使用的是BertTokenizer,但生成效果不如CPM惊艳。

作文生成模型的生成样例如下:
`
title:家乡的四季
context:家乡的四季,最美不过了

result:
家乡的四季,最美不过了。家乡的四季,是令人沉醉的。
春天,万物复苏,冰雪融化,万物复苏。树枝抽出了嫩芽,花朵绽放了笑脸,树木吐出了嫩芽,春笋也破土而出,像是迎接春天的到来。小鸟们也在枝头唱起了动听的歌曲,周围的一切都变成了春的样子。
夏天,荷塘里的荷花开了,散发出阵阵清香。远处,山的颜色深浅不一,像是穿着一件翠绿的长裙,在荷塘的衬托下显得更加美,更加翠绿。微风拂过,荷花轻轻地摆动着,像是在和我打招呼呢!
秋天,

result:
家乡的四季,最美不过了。
家乡的春天,柳树发芽了,小草从泥土里探出头来,小花也张开了笑脸,小草偷偷地探出头来。我小时候,经常到那里玩,在那里捉迷藏,去田野里捉迷藏。到了晚上,爷爷便去田野里找蟋蟀,等到第二天早上,爷爷就去捉蟋蟀了。
家乡的夏天,荷塘里开满了荷花,碧绿的荷叶,荷花都开了,荷叶上还有青蛙王子,他们正在开大会呢!
家乡的秋天,果实累累,果园里更是瓜果飘香。你看,农民伯伯正忙着摘果实呢!爷爷会摘苹果,苹果熟了,

result:
家乡的四季,最美不过了。
春天,嫩芽破土而出,焕发出生机。每当春姑娘来临之际,小草就会脱下旧衣服,冲出家门,迫不及待地站在土地上,感受春风亲吻着自己的脸庞,贪婪地吸吮着甘甜的露水。春姑娘来到田野里,到处都是一片嫩绿,一派盎然的景象。柳树姑娘刚刚梳理好头发,甩动着长长的头发,伴随着阵阵春风,跳起了欢快的舞蹈。此时此刻,春雨也来凑热闹了,她滴落在溪水中,随着春风舞动起来,漾起一圈圈水纹。在河边,长满了一串串一串串鲜艳的鲜花,

result:
家乡的四季,最美不过了,四季各有特色。
春天,小草探出了它那绿绿的小脑袋,柳树的枝条随风飘动,好像正在给春姑娘梳头发。桃花、杏花、梨花争先恐后的开放,如同一个个粉红的小精灵在枝头跳着美丽的舞蹈。小燕子从南方飞来,在空中快乐的飞来飞去,非常动听。
夏天,骄阳似火,树木葱葱笼,在骄阳的照耀下,鸟儿也在树上唱着动听的歌。小孩子们穿着短袖,在大树下坐着乘凉,偶尔会出现几个小朋友在那里捉迷藏,嬉戏。
秋天,

result:
家乡的四季,最美不过了,我家乡的四季是如此美丽。
春天到了,小草从泥土里钻出来了,正东张西望地观察着四周,像是在寻找着什么。大树也绽开了笑脸,开出了许多颜色各异的花,有黄色、红色、紫色、绿色,真是色色俱全啊!花儿在春雨的滋润下,绽放出了自己美丽的花朵,散发出了迷人的芳香,那花儿就像一位位亭亭玉立的少女,娇艳迷人,美丽极了。那嫩绿的小草,铺满了大地,让我们感到生命的希望。
夏天,小草长得郁郁葱葱,到处都是绿茵茵的,走在路上,
`

`
title: 徜徉在书籍的阳光世界
contetx: 一本书是一个人的眼睛,它可以让你看到另一个世界的奇妙

result:
一本书是一个人的眼睛,它可以让你看到另一个世界的奇妙。
你可曾品尝过文学的魅力?
唐诗宋词,群星璀璨,给我们无尽的想象与愉悦。
“明月几时有,把酒问青天。不知天上宫阙,今夕是何年。”它描绘了一个美好的时代。苏轼在赤壁赏月时,不禁为这美景感叹。“明月几时有,把酒问青天。”它告诉了我们人生的哲理。
文学作品,不但丰富了我们的知识,也为我们描绘了一幅幅优美的山水画。
语文书中的婉约柔情,让我感受到世间的人情冷暖,

result:
一本书是一个人的眼睛,它可以让你看到另一个世界的奇妙;一本好书是一个人的眸子,它可以让你看清世界的脉络;一本好书是一把钥匙,它可以打开你心灵的窗户。我徜徉在书的世界里,在阅读中,我找到了梦想。
一本好书,犹如一泓清泉,流入我干渴的心田;一本好书,犹如一只小舟,载着我遨游在知识的海洋;一本好书,犹如一缕阳光,照亮我的心房。
记得在我很小的时候,我每天都要缠着妈妈给我讲故事,每次妈妈讲完故事,我都会依偎在妈妈的怀里,

result:
一本书是一个人的眼睛,它可以让你看到另一个世界的奇妙;一本书是一场细雨,滋润你的心田;一本书是你的拐杖,带你走进这个美妙的世界。
在我很小的时候,就开始接触书籍了,我有一个非常要好的朋友,叫做书。在我很小的时候,书还是不可缺少的。
在我不认字的时候,我就会捧着《格林童话》,开始认真地看书,我看的津津有味。《格林童话》让我明白了做人的道理,《白雪公主》让我知道了善良的重要;《卖火柴的小女孩》让我明白了人间的幸福是美好的,

result:
一本书是一个人的眼睛,它可以让你看到另一个世界的奇妙。书就像是一颗闪烁的星星,给你引航;书就像一汪清泉,给你洗涤心灵;书就像一束阳光,给你带来无穷的温暖......
我从小就喜欢读书。一个冬天的下午,我在家楼下的小广场上坐着,静静地享受着小时候的乐趣。突然,一位老爷爷从远处走了过来,手里拿着一本厚厚的《安徒生童话》,我拿起这本书,心想:这书可是我的心爱之物啊!
于是,我跑到他身边,与他交谈起来。原来,这位老爷爷就是在我六岁时,

reslut:
一本书是一个人的眼睛,它可以让你看到另一个世界的奇妙,每一本都有着不一样的内涵。
——题记
在某个宁静的午后,沉醉在书本的世界里,沉醉在阅读的魅力里,沉醉在阅读的心灵深处。
坐在一望无际的草原上,静静地读书。我像一匹饿狼,贪婪地读着,不一会儿,我就沉浸在书中。不知不觉,太阳已落下去,不知不觉,天色已晚,我们只好依依不舍地收起书本。
夕阳西下,落日把天空染成了红色,火烧云像一只只巨象,汹涌澎湃,在天空中横飞,
`

model-v2.tar.gz 下载地址失效

CPM-KG模型可以下载,model-v2.tar.gz点击下载后:

This site can’t be reachedbaai.org unexpectedly closed the connection.
Try:

Checking the connection
Checking the proxy and the firewall
ERR_CONNECTION_CLOSED

Zero-shot load_${task}_data方法中 prompt_tokens的最后一位是否应该mask?

prompt = "这是关于{}的文章:".format(label)
prompt_tokens = tokenizer.encode(prompt)
prompt_len = len(prompt_tokens)
...
second_mask = [0] * (args.seq_length - 1)
for idx in range(prompt_len - 1, len(tokens) - 1):
  second_mask[idx] = 1

prompt_tokens最后一位应该是冒号‘:’,second_mask[prompt_len - 1]是否应该设置为0?

下面是一些pdb的打印参考结果

(Pdb) p prompt
'这是关于news_story的文章:'
(Pdb) p prompt_tokens
[621, 671, 14464, 555, 27743, 11, 1630, 8, 17]
(Pdb) p prompt_len - 1
8
(Pdb) p prompt_tokens[8]
17
(Pdb) p tokenizer.decode(17)
':'
(Pdb) p second_mask[8]
1

Choice Tokenizer

Why use wordpiece with jieba segment?
is the BPE unsuited to chinese?

如何生成更长的文本内容

尝试生成更长的文本,修改了generate_text.sh脚本中的一些参数,但是没达到预期效果,请问怎么生成更长的文本?

模型版本

现在只有v2版本的模型可以下载,模型参数和generate文件默认参数不一致,导致读入的时候产生问题。请修改默认参数或者提供多个版本的模型下载?

模型链接无法下载

模型链接无法下载
This XML file does not appear to have any style information associated with it. The document tree is shown below.

NoSuchKey
The specified key does not exist.
5FCDA4DADF97EB3138AD1144
baai-work-assets.oss-cn-beijing.aliyuncs.com
cpm/model-v1.tar.gz

运行过程中报错:

linux 系统中运行,安装依赖包和apex,
运行目录为项目根目录:
预训练模型:存储项目根:80000/mp_rank_00_model_states.pt

运行:!bash scripts/generate_text.sh mpu/ example.txt
报错内容:


Setting OMP_NUM_THREADS environment variable for each process to be 1 in default, to avoid your system being overloaded, please further tune the variable for optimal performance in your application as needed.


Traceback (most recent call last):
Traceback (most recent call last):
File "generate_samples.py", line 26, in
File "generate_samples.py", line 26, in
from utils import Timers
from utils import Timers
File "/content/CPM-Generate/utils.py", line 25, in
File "/content/CPM-Generate/utils.py", line 25, in
from fp16 import FP16_Optimizer
from fp16 import FP16_Optimizer
File "/content/CPM-Generate/fp16/init.py", line 15, in
File "/content/CPM-Generate/fp16/init.py", line 15, in
from .fp16util import (
from .fp16util import (
File "/content/CPM-Generate/fp16/fp16util.py", line 21, in
File "/content/CPM-Generate/fp16/fp16util.py", line 21, in
import mpu
import mpu
File "/content/CPM-Generate/mpu/init.py", line 35, in
File "/content/CPM-Generate/mpu/init.py", line 35, in
from .layers import ColumnParallelLinear
from .layers import ColumnParallelLinear
File "/content/CPM-Generate/mpu/layers.py", line 28, in
File "/content/CPM-Generate/mpu/layers.py", line 28, in
from apex.normalization.fused_layer_norm import FusedLayerNorm as LayerNorm
from apex.normalization.fused_layer_norm import FusedLayerNorm as LayerNorm
ModuleNotFoundError: No module named 'apex.normalization'
ModuleNotFoundError: No module named 'apex.normalization'
Traceback (most recent call last):
File "/usr/lib/python3.6/runpy.py", line 193, in _run_module_as_main
"main", mod_spec)
File "/usr/lib/python3.6/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/usr/local/lib/python3.6/dist-packages/torch/distributed/launch.py", line 261, in
main()
File "/usr/local/lib/python3.6/dist-packages/torch/distributed/launch.py", line 257, in main
cmd=cmd)
subprocess.CalledProcessError: Command '['/usr/bin/python3', '-u', 'generate_samples.py', '--local_rank=1', '--model-parallel-size', '2', '--num-layers', '32', '--hidden-size', '2560', '--load', 'mpu/', '--num-attention-heads', '32', '--seq-length', '1024', '--max-position-embeddings', '1024', '--fp16', '--cache-dir', 'cache', '--out-seq-length', '512', '--temperature', '0.9', '--top_k', '0', '--top_p', '0', '--tokenizer-path', 'bpe_3w_new/', '--vocab-size', '30000', '--input-text', 'example.txt']' returned non-zero exit status 1.
[37]

关于batch-size设置为3072

关于batch-size在论文中提及的很少。我有看过NVIDIA的Megatron模型代码,在一张V-100上存1.3B(模型并行为2的条件下)的参数,batch_size最大为16(默认是8),如果不用梯度累加策略的话,在 64卡上batch最大为512,请问您是如何做到3072呢?

GPU问题

大佬们好,

    因为看说明中提到
    “bash scripts/generate_text.sh /path/to/CPM example.txt 运行该脚本需要两块GPU,每张卡的GPU内存占用约为7GB。”
    如果使用两台NVIDIA P4的卡能够跑起来吗?P4的显存8GB。

谢谢

SentencePiece

请问是否有必要在自己的数据集上重新训练SentencePiece模型

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.