Home
Zhang Sibo
Cancel

Transformers 源码分析 - Pipelines 模块

基本用法 Pipelines 的作用是提供一个模型推理流水线,它的设计理念是极简化流水线的使用,将复杂流程封装在模块内部,对外只接收/输出尽可能原始的数据(如字符串:“Hello”,而不是它的 token ID 或者 embedding),Pipelines 涵盖 CV、NLP、Audio 等多个领域的不同任务,例如 text-generation, image-segmentation,...

Transformers 源码分析 - 模块初始化

引用机制和流程 transformers 目录结构如下,核心模块包括 models, pipelines, generation 等。它将绝大多数子模块和类的引用包装在最外层,以便开发者使用,因此在顶层初始化文件 transformers/__init__.py 中做了大量的引用。例如类 transformers.models.bert.BertModel 可以通过 from transf...

Hugging Face 项目梳理

Hugging Face 主要项目全景图 Hugging Face 提供了一整套 LLM 开发工具链,从数据集构建、模型开发管理、到应用构建都有相关项目进行支持,而且还与自家官网提供的数据/模型仓库、应用部署服务无缝对接。下图简单整理了 Hugging Face 主要仓之间的关系,黄色是 Hugging Face 自家项目,蓝色是其它三方项目 大致依赖关系从左到右,从下到上,Tran...

如何向 PyPI 发布软件包

PyPI 与 PyPA 简介 PyPI(Python Packages Index) PyPI 全称是“Python 包索引”,是 Python 的软件仓库,开发者可以将开发的软件打包并发布至 PyPI ,供其他开发者搜索并安装、使用。 PyPA(Python Packaging Authority) PyPA 全称是“Python 打包权威机构”,该组织制定 Python 软件打包标准...

如何用 VSCode 远程调试开发

VSCode 环境配置 1. 前置工作 远程服务器默认已经安装 Python/C++ 运行环境,对于 Python 开发推荐使用 Anaconda 进行 Python 环境管理,假设已安装 Anaconda;本地服务器已安装 VSCode IDE,网络与远程服务器互通 2. 远程 SSH 插件安装与配置 在 VSCode 扩展中安装 Remote-SSH 安装后会新增一个远程资...

如何向开源项目提交 PR

开发分支管理 1. 开发仓库关系 在贡献开源的场景下,开发涉及到三个仓库:Github-Upstream 上游仓库,Github-Origin 个人远程仓库,Local Repository 本地仓库。如下图所示,以 ONNX Runtime 开源项目为例,上游仓库对应 microsoft/onnxruntime,个人远程仓库对应 zhangsibo1129/onnxruntime,本地...

ONNX Runtime 项目编译

基础环境搭建 1. 准备服务器 在华为云 ECS 服务申请如下配置 实例类型:AI加速型ai1s 规格名称:ai1s.large.4 操作系统:Ubuntu 18.04 2. 安装驱动 卸载旧驱动,服务器自带驱动较老,需更新 cd /usr/local/Ascend/opp/aicpu/script ./uninstall.sh cd /usr/local/As...