尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

Transformers 模型推理与训练完整指南:3 步跑通 Pipeline 实战

Transformers 模型推理与训练完整指南:3 步跑通 Pipeline 实战 Transformers 模型推理与训练完整指南3 步跑通 Pipeline 实战【免费下载链接】transformers Transformers: the model-definition framework for state-of-the-art machine learning models in text, vision, audio, and multimodal models, for both inference and training.项目地址: https://gitcode.com/GitHub_Trending/tra/transformersTransformers 是 Hugging Face 推出的模型定义框架覆盖文本、视觉、音频与多模态领域的模型推理和训练。对刚接触它的人来说最顺手的切入点是 Pipeline一行代码加载预训练模型直接对文本或图片做推理无需手写前向计算。全文按由浅入深的顺序组织先认识它的三个核心数据结构再装好环境跑通第一次推理然后完成图像分类、文本生成、微调三个真实任务最后给一份工程化避坑清单。先搞懂核心概念Config、Model、Preprocessor 三件套把 Transformers 里的一个模型想象成一家餐厅Config 是菜单规格Model 是厨房Preprocessor 是前台服务员。你调用的 Pipeline 则是一站式柜台把三者打包好你只管递上食材输入。核心结构类比职责Configconfiguration模型的体检单存储层数、隐层维度、词表大小等架构超参数Modelmodeling实体本身真正执行前向计算的神经网络Preprocessortokenizer / image processor翻译官把文本或图片转成模型能吃的张量Pipeline一站式柜台将三者打包暴露统一的可调用接口每个任务对应一个 task 标识符比如image-classification、text-generation具体清单可以看 src/transformers/pipelines/ 目录下的任务模块。以图像分类为例把上面那张仓库测试图喂给 Pipeline返回的是标签 置信度列表[{label: tabby, tabby cat, score: 0.6641}, {label: tiger cat, score: 0.1327}]这就是 Transformers 推理的基本输出形态一个带分数的预测结果列表。从零到一一键安装并跑通第一次推理安装只要一行需要已装好 Python 3.9pip install transformers torch下面是最短可运行示例输入直接指向仓库内的本地测试图片from transformers import pipeline pipe pipeline(taskimage-classification, modelgoogle/vit-base-patch16-224) pipe(tests/fixtures/tests_samples/COCO/000000039769.png)首次运行会自动下载模型权重并缓存到本地之后每次启动都是秒级加载。看到上面那样的[{label: ..., score: ...}]输出说明你的 Transformers 模型推理链路已经通了。 换任务只需改task参数同一套调用方式覆盖文本、图像、音频三大类几十个任务。真实任务实操按难度递进的三个例子任务一入门对本地图片做分类要解决的问题批量确认一批图片各是什么。关键实现就是上面的 Pipeline 调用输入换成另一张仓库测试图pipe(tests/fixtures/tests_samples/COCO/apple.jpg) # [{label: apple, score: 0.9997}, ...]效果置信度 0.9997直接可用于建图像标签库。若需要逐像素级别的理解可切到image-segmentation任务仓库里就配好了对应的标注样例任务二进阶LLM 文本生成与参数控制要解决的问题用大模型续写或补全文本。关键实现是text-generation任务加生成参数do_sampleFalse保证结果可复现max_new_tokens限制长度防止失控gen pipeline(tasktext-generation, modelgoogle/gemma-2-2b) gen(the secret to baking a really good cake is, max_new_tokens16, do_sampleFalse) # [{generated_text: the secret to baking a really good cake is 1. the right ingredients 2. the}]效果输入是字符串列表就返回字符串列表天然支持批量请求。任务三高阶用 Trainer 微调一个文本分类器要解决的问题预训练模型不认识你的业务文本需要微调。仓库里带了完整示例脚本 examples/pytorch/text-classification/run_classification.py核心就是一条命令python run_classification.py \ --model_name_or_path google/distilbert-base-uncased \ --dataset_name imdb --max_length 128 \ --output_dir ./imdb \ --per_device_train_batch_size 16 --num_train_epochs 3效果训练完的模型自动保存到./imdb用AutoModelForSequenceClassification.from_pretrained(./imdb)即可加载上线推理端依然走 Pipeline。工程化考量上生产前检查这 5 件事设备配置Pipeline 默认跑 CPUdevice-1有卡就设device0Apple Silicon 也支持。显存与速度加载时用半精度权重可显著降显存推理侧可启用 FlashAttention分布式训练再看 torch.compile 与 DeepSpeed 这类进阶项。输入边界长文本必须显式设置max_length并确定截断策略否则超长输入既慢又容易 OOM。容错兜底对不可控输入做 try/except模型加载失败、返回空结果时要有降级逻辑。版本与迁移transformers 对 torch、accelate 版本耦合较紧升级到 v5 前先看仓库根目录的 MIGRATION_GUIDE_V5.md 与依赖版本表。收尾Transformers 到底能帮你干什么Transformers 把模型定义—预训练权重—推理训练收敛成一套统一 API推理用 Pipeline 几行代码搞定训练用 Trainer 一条命令跑完且同一套模型定义可无缝对接 vLLM、llama.cpp 等周边生态。想深入细节建议从 docs/source/en/index.md 入门Pipeline 参数看 docs/source/en/pipeline_tutorial.md动手训练则直接改 examples/pytorch/ 下的脚本。【免费下载链接】transformers Transformers: the model-definition framework for state-of-the-art machine learning models in text, vision, audio, and multimodal models, for both inference and training.项目地址: https://gitcode.com/GitHub_Trending/tra/transformers创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表