- 博客(687)
- 资源 (1)
- 收藏
- 关注
原创 [linux] ImportError: cannot import name ‘ConfigDict‘ from ‘pydantic‘ (/usr/local/lib/python3.10/dist
【代码】[linux] ImportError: cannot import name 'ConfigDict' from 'pydantic' (/usr/local/lib/python3.10/dist。
2024-07-11 11:33:41
39
原创 [linux] 如何优雅的用vim阅读jsonl文件
你也可以使用Vim插件来增强对JSON文件的支持和格式化功能。这将会大大提升你在Vim上编辑和观看JSON数据的体验。这样会使JSON数据变得更具可读性。
2024-07-09 15:36:10
156
原创 [论文笔记] pai-megatron-patch tokenize很慢的问题解决
参照之前的踩坑记录,tokenize慢是因为文件夹里面的jsonl太多了。解决方案是 合并到一个merge.jsonl,再进行tokenize。
2024-07-07 23:29:59
13
原创 [论文笔记] 自对齐指令反翻译:SELF-ALIGNMENT WITH INSTRUCTION BACKTRANSLATION
整个方法分为两个主要步骤:自我增强(Self-Augmentation):首先,使用一个小量的种子数据(即已标注好的指令和输出对)来微调一个基础语言模型(例如LLaMa)。接下来,用微调后的模型生成候选的训练数据,这些数据来自未标注的文本(称为“增强数据”)。自我筛选(Self-Curation):在初始微调模型的基础上,选择高质量的增强数据用于下一次迭代的训练。经过多次迭代,每次选择出更高质量的数据,最终得到一个更强的模型。
2024-07-06 18:57:54
142
原创 [论文笔记] pai-megatron-patch Qwen2-57B(A14B)-CT 后预训练 踩坑记录
【代码】[论文笔记] pai-megatron-patch Qwen2-57B(A14B)-CT 后预训练 踩坑记录。
2024-07-04 11:27:02
292
原创 [论文笔记] gumbel-softmax 实现离散分布可微 + torch代码+ 原理 + 证明
相当于不止选择概率大的那个类别被更新,其他类别的梯度也被更新了。gumbelsoftmax 是为了防止丢失其他类别的梯度。
2024-07-03 17:16:12
41
原创 [论文笔记] pai-megatron-patch Qwen2-72B-CT 后预训练 踩坑记录 包括长文本
经过以下修改,Qwen2-72B-CT可以正常训练,并且benchmark指标和loss正常。
2024-07-03 15:37:46
642
原创 [论文笔记] pai-megatron-patch megatron 模型接着训练 继续训练
其中 checkpoint_path 中的 last_iteration_txt (好像是这个名字) 要改成自己需要的。继续训练的话,不要用megatron的检查点转换回hf模型。要直接 load megatron模型。
2024-07-02 22:16:43
24
原创 [论文笔记] BlendedDataset blend goes out of bounds for list 34 for valid split
由于pai新版对于index的代码有改动,所以需要重新tokenize。
2024-07-02 22:02:59
119
原创 [linux] RuntimeError: FlashAttention only support fp16 and bf16 data type
【代码】[linux] RuntimeError: FlashAttention only support fp16 and bf16 data type。
2024-06-26 15:11:16
212
原创 [linux] json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes:报错
报错:json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes: line 27 column 5 (char 766)这个文件,查看第 27 行附近的内容,确保所有的属性名都是用双引号括起来的,并且没有其他格式问题。
2024-06-26 14:24:00
166
原创 [linux] 拷贝一个文件夹到指定路径,然后忽略某两个文件夹
rsync -av --exclude='a' --exclude='b' "/path/to/source/directory/" "/path/to/destination/directory"
2024-06-24 16:22:56
114
原创 [论文笔记] no module named ‘megatron‘ 找不到megatron报错
2、git clone的时候,submodule没下载。1、megatron path 相对路径。找不到megatron报错。
2024-06-24 16:12:15
53
原创 [论文笔记] pai-megatron-patch Qwen2 tokenize代码踩坑
【代码】[论文笔记] pai-megatron-patch tokenize代码踩坑。
2024-06-17 16:11:27
103
原创 [linux] Qwen2Tokenizer报错 transformers版本问题
发现是transformers版本问题。其实我都默认安的是最新版本。上午没问题,下午pull了新代码,就有了报错。
2024-06-14 23:32:55
193
原创 [NLP] 直接神经机器翻译(direct NMT)
直接神经机器翻译(Direct Neural Machine Translation,Direct NMT)是一种机器翻译方法,它直接将源语言句子映射到目标语言句子,而不需要使用中间语言或中间表示。:这种方法利用源语言和目标语言之间的句法结构来进行翻译,通常涉及解析源语言句子的句法结构,并尝试在目标语言中保留相似的句法结构。:这是一种传统的统计机器翻译方法,它将输入句子分解为短语,并使用短语之间的翻译概率来生成目标语言句子。
2024-05-17 15:20:15
73
原创 [linux] bash中的单引号(‘)和双引号(“)
在大多数的Unix-like系统中,使用单引号可以保证命令按照预期的方式运行,因为它将预防shell在传递给awk之前对内容进行任何处理。在当前shell环境中已经有了一个值,而这个值在使用双引号的情况下被插入到了awk命令中。通常在执行这些命令时,为了确保可靠性,建议使用单引号。)在某些情况下会有不同的效果,尤其是在涉及bash变量和特殊字符的解析时。如果在执行这段命令的环境中,shell中恰好有一个名叫。变量不存在,它将被替换为空字符串,这可能会导致awk命令行为不正常或者输出不正确。
2024-05-15 17:39:11
293
原创 [linux] ValueError: Tokenizer class GemmaTokenizer does not exist or is not currently imported.
ValueError: Tokenizer class GemmaTokenizer does not exist or is not currently imported."pip install -U transformers" can resolve this question, and version update form 4.37.1 to 4.38.2.https://huggingface.co/google/gemma-7b-it/discussions/9
2024-05-08 16:31:08
178
原创 [论文笔记] Pai-megatron 细节解读之self.jitter_noise参数 (防止过拟合)
此代码段是MoE(Mixture of Experts)模型中的一个特定部分,用于在训练过程中为隐藏状态引入随机性,这通常被称为抖动(jitter)或噪声。,从而使得原始的隐藏状态各值随机地增加或减小。这是一种正则化技术,目的是使模型不会对训练数据中存在的微小波动过于敏感,从而可能在泛化到新数据时表现得更好。总体来看,这个抖动机制在训练过程中为隐藏状态添加了随机噪声,以减轻模型的过拟合,并提高泛化能力。只有在这两个条件都满足时,才会将噪声添加到隐藏状态中。是一个标志,如果模型在训练中为。
2024-04-25 16:29:52
485
1
原创 [论文笔记] EcomGPT:COT扩充数据的电商大模型
在收集了上述两部分原始数据之后,我们将专家编写的任务特定指令模版和原始数据结合起来,得到最终的指令数据。COT方式构造垂域训练数据:把原本的垂域任务分解成了原子任务,构造了基于解决原子任务的数据。基于从公开Benchmark收集得到的多任务指令微调数据集,我们可以通过任务拆解和变换的方式构建不同的原子任务,以扩充指令数据的规模和多样性。一方面,我们可以充分利用原始数据中的输入和标签信息,或者可以从原始数据中简单推导的信息来构建原子任务,主要可以使用以下几种策略。商品文案生成任务可以转化为商品标题生成任务。
2024-04-23 16:59:28
658
原创 [linux] data_parallel_size (2) is not divisible by expert_model_parallel_size
原因是 world_size=4,开了4卡。
2024-04-23 14:14:27
242
原创 [论文笔记] megatron训练参数:dataloader_type
因此,在选择dataloader类型时,需要考虑模型对数据顺序的敏感性,以及数据集本身的特性和大小。最重要的是,保持训练和评估时使用相同的数据加载和处理逻辑,以确保结果具有可比性和一致性。如果评估性能低于预期,检查dataloader类型差异是一个潜在的调试方向。可能会按照不同的策略处理数据集,这可以显著影响模型训练和评估的效果。参数通常控制着数据的加载、处理和输入到模型的方式。
2024-04-17 18:34:48
469
1
原创 [论文笔记] Pai-megatron Qwen1.5-14B-CT 后预训练 踩坑记录
lm loss: 1.515231E+01,初始loss为15,之前遇到过这种问题,检查了模型load进来了,是因为那个rope没设置对导致的,模型权重没问题。最终归因到 run_pretrain_mcore_qwen.sh 中关于位置编码的参数有问题。改完之后能跑,但是loss太高。
2024-04-12 19:29:11
300
原创 [论文笔记] Pai-megatron: barrier报错: Duplicate GPU detected : rank 0 and rank 4 both on CUDA device 10
改成实际开发机有的卡数。
2024-04-12 15:50:16
289
原创 [linux] AttributeError: ‘Qwen2Tokenizer‘ object has no attribute ‘eod_id‘
qwen1.5是eos_token_id。qwen是eod_id。
2024-04-11 10:20:35
735
原创 [linux] assert num_datasets == len(weights)AssertionError
是哪个数据集没有正确读进来。需要重新tokenize。
2024-03-29 14:56:01
130
原创 [linux] git 远端创建新分支,在本地push代码到远端分支
本地需要重新git pull,因为要拉新建的分支到本地。本地git clone后查看远端分支。在gitlab上新建分支:略。这样就能看到远端的分支了。
2024-03-28 11:44:11
214
原创 [linux] AttributeError: module ‘transformer_engine‘ has no attribute ‘pytorch‘
其中这个答案并没有解决我的问题:import的flash_attn是xformers的包。。。cd到目录下 /mnt/nas/kexin/cv/Open-Sora/xformers/third_party/flash-attention/flash_attn_2_cuda.cpython-310-x86_64-linux-gnu.so。
2024-03-27 11:08:30
1168
原创 [linux] RuntimeError: Failed to import transformers.models.clipseg.modeling_clipseg because of the f
(在这里,找到了解决方案)
2024-03-25 14:04:35
629
原创 [论文笔记] 视频生成方案纵览
用文本检索素材库,对素材库进行编排成视频。基于图文(也可以基于纯文本),进行相关视频和图片素材的补充和添加。文本处理:由于整个视频是用图文做脚本来完成的,所以,视频主体抽取(这个视频讲述的是什么内容)、视频调性确认(阳春白雪还是下里巴人)、视频字幕/旁白生成等,都需要基于充分的内容理解,再进行精准的文章主体识别、文章风格识别、口播逐字稿改写、字幕拆分等工作的进行;素材处理:采编式视频生产的核心,是要将碎片化的素材基于图文脚本进行合理的编排,故而进行视频和图片素材的在线检索、剪裁、清洗等必不可少;
2024-03-21 13:50:54
268
原创 [linux] Key is stored in legacy trusted.gpg keyring
另一个选择是把 /etc/apt/trusted.gpg 文件复制到 /etc/apt/trusted.gpg.d 目录。毕竟,Ubuntu 只是抱怨说它需要 /etc/apt/trusted.gpg.d 目录下的 GPG 密钥。现在,如果你运行更新,你就不会再看到 “Key is stored in legacy trusted.gpg keyring” 的警告信息。如果你觉得手动做上面的事情不舒服,那么,你可以忽略这个警告信息。复制到trusted.gpd.d 目录中(快速但不优雅的方法)
2024-03-20 11:22:46
690
原创 [论文笔记] Open-Sora 4、sora复现训练过程 (新repo)
然而,它几乎没有透露任何有关其细节的信息。为了让AI更加“开放”,致力于打造Sora的开源版本。通过 VAE 下采样 4 倍和补丁大小下采样 2 倍,我们有 1440x1024≈1.5M 令牌。这与 Latte 论文中的变体 3 类似。然而,我们不控制这些变体的类似数量的参数。为了降低计算成本,我们希望利用现有的 VAE 模型。的 2x4x4 VAE 在我们的实验中质量较低。因此,出于效率考虑,我们选择STDiT(顺序)。的 4x4x4 VAE 不是开源的,而。没有开源的高质量时空VAE模型。
2024-03-19 12:22:37
445
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人