GPT-J 6B
GPT-J 6B is an AI model published by EleutherAI, released on 2021-06-04, for 基础大模型, with 60.0B parameters, and 2K tokens context length, requiring about 24.2GB storage, under the Apache 2.0 license.
Data sourced primarily from official releases (GitHub, Hugging Face, papers), then benchmark leaderboards, then third-party evaluators. Learn about our data methodology
GPT-J 6B仅支持英文。
GPT-J 6B是一个由EleutherAI研究小组创建的开源自回归语言模型。它是OpenAI的GPT-3的最先进替代品之一,在各种自然语言任务(如聊天、摘要和问答等)方面表现良好。"GPT-J"指的是模型类别,而"6B"表示可训练参数的数量为60亿。
GPT-J 6B是一个transformer结构的模型,使用了Ben Wang的Mesh Transformer JAX训练。
GPT-J 6B模型的具体信息如下:
| 超参数项 | 参数值 |
|---|---|
| 参数数量(nparameters) | 6053381344 |
| 层数(nlayers) | 28 |
| 模型维度(dmodel) | 4096 |
| 前馈网络维度(dff,feedforward dimension) | 16384 |
| heads数量(nheads) | 16 |
| head维度(dhead) | 256 |
| nctx | 2048 |
| 词汇数量(nvocab) | 50257() |
| 位置编码(Positional Encoding) | Rotary Position Embedding(RoPE) |
| RoPE维度(RoPE Dimensions) | 64 |
注意:GPT-J 6B模型使用了一个包含50257个单词的分词词汇表进行训练,使用与GPT-2/GPT-3相同的BPE集合。不过,虽然矩阵大小50400,但是GPT-3的tokenizer只使用了500257条记录。
GPT-J 6B模型由28层组成,模型维度为4096,前馈维度为16384。模型维度被分成16个头,每个头的维度为256。旋转位置嵌入(RoPE)应用于每个头的64个维度。该模型使用了一个包含50257个单词的分词词汇表进行训练,使用与GPT-2/GPT-3相同的BPE集合。
GPT-J 6B的训练数据是Pile(Pile介绍: https://www.datalearner.com/ai-dataset/pile )
训练过程
该模型在 TPU v3-256 pod 上进行了383,500步的训练,训练了4020亿个令牌。它作为自回归语言模型进行训练,使用交叉熵损失来最大化预测下一个令牌的正确性的可能性。
预期用途和限制
GPT-J 学习了英语语言的内部表示,可用于提取下游任务中有用的特征。但是,该模型最擅长的是预训练生成提示文本,这也是它的预训练目标。
使用方式
可以使用 AutoModelForCausalLM 功能轻松加载此模型:
from transformers import AutoTokenizer, AutoModelForCausalLMtokenizer = AutoTokenizer.from_pretrained("EleutherAI/gpt-j-6B")model = AutoModelForCausalLM.from_pretrained("EleutherAI/gpt-j-6B")其中,tokenizer 负责将输入的文本转换为模型可以理解的输入,而 model 则负责进行文本生成。
欢迎关注 DataLearner 官方微信,获得最新 AI 技术推送
