GPT的实现细节

关于GPT的代码细节,这里梳理了一下:

数据集构造

原始数据集schema:

text 复制代码
input=who is your favorite basketball player?
output=Of course Kobe Bryant!

那么在构造训练集时,根据chunk size构造多个输入:

text 复制代码
input_1=who is your favorite basketball player? Of
input_2=who is your favorite basketball player? Of course
......
input_n-1=who is your favorite basketball player? Of course Kobe Bryant!
input_n=who is your favorite basketball player? Of course Kobe Bryant! <EOS>

由于训练任务是下一个单词预测,所以 x = i n p u t : − 1 , y = i n p u t 1 : x=input:-1, y=input1: x=input:−1,y=input1:

loss

x x x是模型可见已知的,需要mask掉不算入loss

python 复制代码
y[:-1] = -1
loss = F.cross_entropy(logits.view(-1, logits.size(-1)), targets.view(-1), ignore_index=-1)

生成

karpathy/minGPT项目中,是直接粗暴地生成固定长度的文本。这样做的问题就是生成的文本无法判断何处阶段。

在构造模型输入的时候,我们就加入了 <EOS> token,来标记文本的结束。那么在推理阶段,如果碰到该token,则结束生成

python 复制代码
if token == "<EOS>":
    break

参考

相关推荐
kishu_iOS&AI19 小时前
LLM —— 基础知识(Bert&GPT&T5)浅析
人工智能·gpt·bert
人工智能培训19 小时前
从GPT到开源大模型
人工智能·gpt·深度学习·机器学习·容器·知识图谱
程序员佳佳19 小时前
我在 Windows 和低配 Linux 上做 RAG:Milvus、FAISS、向量 API 中转的中立实测
linux·人工智能·windows·gpt·aigc·milvus·faiss
鲁子狄20 小时前
lrnev:让 AI 协作开发「有记忆、可追溯」的项目治理引擎 | 零模型依赖,文件即真相
人工智能·笔记·gpt·ai·ai编程
searchforAI21 小时前
利用AI翻译视频做双语笔记,一套视频翻译到知识库沉淀的完整方案
人工智能·笔记·gpt·音视频·语音识别·知识图谱·机器翻译
向量引擎1 天前
腾讯混元 API 接入与国内模型统一入口实践:API Key、OpenAI 兼容调用、向量引擎中转配置与企业安全检查
人工智能·gpt·aigc·ai编程·ai写作·agi·api调用
ACP广源盛139246256731 天前
GSV2221 显示转换芯片@ACP#赋能 RTX Spark 端侧 AI 设备,构建多屏全模态视觉交互新生态
大数据·人工智能·嵌入式硬件·gpt·spark·电脑·音视频
库拉大叔2 天前
GPT-5.5 多模态能力实战:2026 年 AI 工具进阶使用指南
人工智能·gpt·aigc
沉默王二2 天前
不用 GPT-Image2,DeepSeek V4/GLM-5.1 + draw.io 就很顶!
gpt·ai编程·deepseek
K姐研究社2 天前
7大真实任务实测 Opus 4.8、Gemini 3.5 Flash、GPT-5.5、Qwen3.7-Max
人工智能·gpt