Skip to content

Commit

Permalink
deploy: a518488
Browse files Browse the repository at this point in the history
  • Loading branch information
FFFrog committed Jul 18, 2024
0 parents commit bab775f
Show file tree
Hide file tree
Showing 196 changed files with 22,678 additions and 0 deletions.
4 changes: 4 additions & 0 deletions .buildinfo
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
config: 2532dc496ecb9cf839ae3000eed071f7
tags: 645f666f9bcd5a90fca523b33c5a78b7
Binary file added .doctrees/environment.pickle
Binary file not shown.
Binary file added .doctrees/index.doctree
Binary file not shown.
Binary file added .doctrees/sources/Diffusers/index.doctree
Binary file not shown.
Binary file added .doctrees/sources/Diffusers/install.doctree
Binary file not shown.
Binary file added .doctrees/sources/Diffusers/quick_start.doctree
Binary file not shown.
Binary file added .doctrees/sources/accelerate/index.doctree
Binary file not shown.
Binary file added .doctrees/sources/accelerate/install.doctree
Binary file not shown.
Binary file added .doctrees/sources/accelerate/quick_start.doctree
Binary file not shown.
Binary file added .doctrees/sources/ascend/quick_install.doctree
Binary file not shown.
Binary file added .doctrees/sources/deepspeed/index.doctree
Binary file not shown.
Binary file added .doctrees/sources/deepspeed/install.doctree
Binary file not shown.
Binary file added .doctrees/sources/deepspeed/quick_start.doctree
Binary file not shown.
Binary file added .doctrees/sources/llamafactory/example.doctree
Binary file not shown.
Binary file added .doctrees/sources/llamafactory/faq.doctree
Binary file not shown.
Binary file added .doctrees/sources/llamafactory/index.doctree
Binary file not shown.
Binary file added .doctrees/sources/llamafactory/install.doctree
Binary file not shown.
Binary file added .doctrees/sources/llamafactory/multi_npu.doctree
Binary file not shown.
Binary file not shown.
Binary file added .doctrees/sources/onnxruntime/index.doctree
Binary file not shown.
Binary file added .doctrees/sources/onnxruntime/install.doctree
Binary file not shown.
Binary file added .doctrees/sources/onnxruntime/quick_start.doctree
Binary file not shown.
Binary file added .doctrees/sources/open_clip/index.doctree
Binary file not shown.
Binary file added .doctrees/sources/open_clip/install.doctree
Binary file not shown.
Binary file added .doctrees/sources/open_clip/quick_start.doctree
Binary file not shown.
Binary file added .doctrees/sources/opencv/index.doctree
Binary file not shown.
Binary file added .doctrees/sources/opencv/install.doctree
Binary file not shown.
Binary file added .doctrees/sources/opencv/quick_start.doctree
Binary file not shown.
Binary file added .doctrees/sources/pytorch/api_doc.doctree
Binary file not shown.
Binary file added .doctrees/sources/pytorch/examples.doctree
Binary file not shown.
Binary file added .doctrees/sources/pytorch/faq.doctree
Binary file not shown.
Binary file added .doctrees/sources/pytorch/index.doctree
Binary file not shown.
Binary file added .doctrees/sources/pytorch/install.doctree
Binary file not shown.
Binary file added .doctrees/sources/pytorch/quick_start.doctree
Binary file not shown.
Binary file added .doctrees/sources/timm/index.doctree
Binary file not shown.
Binary file added .doctrees/sources/timm/install.doctree
Binary file not shown.
Binary file added .doctrees/sources/timm/quick_start.doctree
Binary file not shown.
Binary file added .doctrees/sources/transformers/fine-tune.doctree
Binary file not shown.
Binary file added .doctrees/sources/transformers/index.doctree
Binary file not shown.
Binary file added .doctrees/sources/transformers/inference.doctree
Binary file not shown.
Binary file added .doctrees/sources/transformers/install.doctree
Binary file not shown.
Binary file not shown.
Binary file not shown.
Empty file added .nojekyll
Empty file.
Binary file added _images/CLIP.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/chat-llamafactory.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/downloadmodel.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/input.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/opencv_cannop.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/pytorch_wechat.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/result.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/sft-chat.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/webchat.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
227 changes: 227 additions & 0 deletions _sources/index.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,227 @@
昇腾开源
============

.. -----------------------------------------
.. Page TOC
.. -----------------------------------------
.. toctree::
:maxdepth: 2
:hidden:
:includehidden:
:caption: 开始使用

sources/ascend/quick_install.rst

.. toctree::
:maxdepth: 2
:hidden:
:includehidden:
:caption: 原生支持的AI项目

sources/pytorch/index.rst
sources/llamafactory/index.rst
sources/accelerate/index.rst
sources/transformers/index.rst
sources/deepspeed/index.rst
sources/onnxruntime/index.rst
sources/open_clip/index.rst
sources/timm/index.rst
sources/Diffusers/index.rst
sources/opencv/index.rst

.. warning::

文档仍在开发中,内容可能存在错误,内容可能会随时更新,请勿将其用于生产环境。

选择您的偏好,并按照 :doc:`快速安装昇腾环境<sources/ascend/quick_install>` 的安装指导进行操作。

安装成功后,请参考各项目的快速开始和样例来开始使用昇腾AI处理器。

.. raw:: html

<div class="container bg-white flex flex-col items-center">
<div class="grid grid-cols-1 md:grid-cols-3 gap-8">
<!-- Card 1 -->
<div class="box rounded-lg p-4 flex flex-col items-center">
<div class="flex items-center mb-4">
<div class="img w-16 h-16 rounded-md mr-4" style="background-image: url('_static/images/llama-factory.png')"></div>
<div>
<h2 class="text-lg font-semibold">LLaMA-Factory</h2>
<p class="text-gray-600 desc">便捷高效的大模型微调工具。V0.7.1版本起支持昇腾。</p>
</div>
</div>
<div class="flex-grow"></div>
<div class="flex space-x-4 text-blue-600">
<a href="https://github.com/hiyouga/LLaMA-Factory">官方链接</a>
<span class="split">|</span>
<a href="sources/llamafactory/install.html">安装指南</a>
<span class="split">|</span>
<a href="sources/llamafactory/quick_start.html">快速上手</a>
</div>
</div>
<!-- Card 2 -->
<div class="box rounded-lg p-4 flex flex-col items-center">
<div class="flex items-center mb-4">
<div class="img w-16 h-16 rounded-md mr-4" style="background-image: url('_static/images/pytorch.png')"></div>
<div>
<h2 class="text-lg font-semibold">PyTorch</h2>
<p class="text-gray-600 desc">PyTorch AI框架 2.1版本官方支持昇腾</p>
</div>
</div>
<div class="flex-grow"></div>
<div class="flex space-x-4 text-blue-600">
<a href="https://pytorch.org">官方链接</a>
<span class="split">|</span>
<a href="sources/pytorch/install.html">安装指南</a>
<span class="split">|</span>
<a href="sources/pytorch/quick_start.html">快速上手</a>
</div>
</div>
<!-- Card 3 -->
<div class="box rounded-lg p-4 flex flex-col items-center">
<div class="flex items-center mb-4">
<div class="img w-16 h-16 rounded-md mr-4" style="background-image: url('_static/images/onnxruntime.png')"></div>
<div>
<h2 class="text-lg font-semibold">ONNX Runtime</h2>
<p class="text-gray-600 desc">跨平台、高性能 ML 推理和训练加速器。v1.13.1版本起原生支持昇腾</p>
</div>
</div>
<div class="flex-grow"></div>
<div class="flex space-x-4 text-blue-600">
<a href="https://github.com/microsoft/onnxruntime">官方链接</a>
<span class="split">|</span>
<a href="sources/onnxruntime/install.html">安装指南</a>
<span class="split">|</span>
<a href="sources/onnxruntime/quick_start.html">快速上手</a>
</div>
</div>
<!-- Card 4 -->
<div class="box rounded-lg p-4 flex flex-col items-center">
<div class="flex items-center mb-4">
<div class="img w-16 h-16 rounded-md mr-4" style="background-image: url('_static/images/deepspeed.png')"></div>
<div>
<h2 class="text-lg font-semibold">DeepSpeed</h2>
<p class="text-gray-600 desc">深度学习优化库,使得分布式训练和推理变得简单、高效、有效。
V0.10.1版本起支持昇腾。</p>
</div>
</div>
<div class="flex-grow"></div>
<div class="flex space-x-4 text-blue-600">
<a href="#">官方链接</a>
<span class="split">|</span>
<a href="#">安装指南</a>
<span class="split">|</span>
<a href="#">快速上手</a>
</div>
</div>
<!-- Card 5 -->
<div class="box rounded-lg p-4 flex flex-col items-center">
<div class="flex items-center mb-4">
<div class="img w-16 h-16 rounded-md mr-4" style="background-image: url('_static/images/opencv.png')"></div>
<div>
<h2 class="text-lg font-semibold">OpenCV</h2>
<p class="text-gray-600 desc">开源计算机视觉库</p>
</div>
</div>
<div class="flex-grow"></div>
<div class="flex space-x-4 text-blue-600">
<a href="https://github.com/opencv/opencv">官方链接</a>
<span class="split">|</span>
<a href="sources/opencv/install.html">安装指南</a>
<span class="split">|</span>
<a href="sources/opencv/quick_start.html">快速上手</a>
</div>
</div>
<!-- Card 6 -->
<div class="box rounded-lg p-4 flex flex-col items-center">
<div class="flex items-center mb-4">
<div class="img w-16 h-16 rounded-md mr-4" style="background-image: url('_static/images/sd-webui.png')"></div>
<div>
<h2 class="text-lg font-semibold">Stable Diffusion web UI</h2>
<p class="text-gray-600 desc">Stable diffusion可视化工具链</p>
</div>
</div>
<div class="flex-grow"></div>
<div class="flex space-x-4 text-blue-600">
<a href="https://github.com/AUTOMATIC1111/stable-diffusion-webui">官方链接</a>
<span class="split">|</span>
<a href="#">安装指南</a>
<span class="split">|</span>
<a href="#">快速上手</a>
</div>
</div>
<!-- Card 7 -->
<div class="box rounded-lg p-4 flex flex-col items-center">
<div class="flex items-center mb-4">
<div class="img w-16 h-16 rounded-md mr-4" style="background-image: url('_static/images/huggingface.png')"></div>
<div>
<h2 class="text-lg font-semibold">Transformers</h2>
<p class="text-gray-600 desc">适用于 Pytorch、TensorFlow 和 JAX 先进的机器学习库
v4.32.0起支持昇腾</p>
</div>
</div>
<div class="flex-grow"></div>
<div class="flex space-x-4 text-blue-600">
<a href="https://huggingface.co/docs/transformers/index">官方链接</a>
<span class="split">|</span>
<a href="href="sources/transformers/install.html">安装指南</a>
<span class="split">|</span>
<a href="href="sources/transformers/fine-tune.html">快速上手</a>
</div>
</div>
<!-- Card 8 -->
<div class="box rounded-lg p-4 flex flex-col items-center">
<div class="flex items-center mb-4">
<div class="img w-16 h-16 rounded-md mr-4" style="background-image: url('_static/images/diffusers.png')"></div>
<div>
<h2 class="text-lg font-semibold">Diffusers</h2>
<p class="text-gray-600 desc">图像和音频生成等扩散模型工具链</p>
</div>
</div>
<div class="flex-grow"></div>
<div class="flex space-x-4 text-blue-600">
<a href="https://github.com/huggingface/diffusers">官方链接</a>
<span class="split">|</span>
<a href="sources/Diffusers/install.html">安装指南</a>
<span class="split">|</span>
<a href="sources/Diffusers/quick_start.html">快速上手</a>
</div>
</div>
<!-- Card 9 -->
<div class="box rounded-lg p-4 flex flex-col items-center">
<div class="flex items-center mb-4">
<div class="img w-16 h-16 rounded-md mr-4" style="background-image: url('_static/images/huggingface.png')"></div>
<div>
<h2 class="text-lg font-semibold">Accelerate</h2>
<p class="text-gray-600 desc">适用于Pytorch的多GPUs训练工具链</p>
</div>
</div>
<div class="flex-grow"></div>
<div class="flex space-x-4 text-blue-600">
<a href="https://github.com/huggingface/accelerate">官方链接</a>
<span class="split">|</span>
<a href="sources/accelerate/install.html">安装指南</a>
<span class="split">|</span>
<a href="sources/accelerate/quick_start.html">快速上手</a>
</div>
</div>
<!-- Card 10 -->
<div class="box rounded-lg p-4 flex flex-col items-center">
<div class="flex items-center mb-4">
<div class="img w-16 h-16 rounded-md mr-4" style="background-image: url('_static/images/wenet.png')"></div>
<div>
<h2 class="text-lg font-semibold">WeNet</h2>
<p class="text-gray-600 desc">端到端的语音识别工具包</p>
</div>
</div>
<div class="flex-grow"></div>
<div class="flex space-x-4 text-blue-600">
<a href="https://github.com/wenet-e2e/wenet">官方链接</a>
<span class="split">|</span>
<a href="#">安装指南</a>
<span class="split">|</span>
<a href="#">快速上手</a>
</div>
</div>
</div>
</div>
8 changes: 8 additions & 0 deletions _sources/sources/Diffusers/index.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
Diffusers
===========

.. toctree::
:maxdepth: 2

install.rst
quick_start.rst
52 changes: 52 additions & 0 deletions _sources/sources/Diffusers/install.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
安装指南
==============

本教程面向使用 Diffusers & 昇腾开发者,帮助完成昇腾环境下 Diffusers 的安装。

昇腾环境安装
------------

请根据已有昇腾产品型号及CPU架构等按照 :doc:`快速安装昇腾环境指引 <../ascend/quick_install>` 进行昇腾环境安装,或直接获取对应产品的昇腾环境镜像 `cosdt/cann <https://hub.docker.com/r/cosdt/cann/tags>`_ 。

.. warning::
CANN 最低版本为 8.0.rc1,安装 CANN 时,请同时安装 Kernel 算子包。

Diffusers 安装
------------------

Python 环境创建
------------------

.. code-block:: shell
:linenos:
# 创建名为 diffusers 的 python 3.10 的虚拟环境
conda create -n diffusers python=3.10
# 激活虚拟环境
conda activate diffusers
pip 安装
------------------

通过以下指令安装 Diffusers 及 torch-npu:

.. code-block:: shell
:linenos:
pip install diffusers torch==2.2.0 torch-npu==2.2.0 torchvision
安装校验
------------------

执行以下代码,若无任何报错,仅打印模型下载过程,即说明安装成功:

.. code-block:: python
:linenos:
from diffusers import DiffusionPipeline
import torch
pipeline = DiffusionPipeline.from_pretrained("runwayml/stable-diffusion-v1-5", torch_dtype=torch.float16)
pipeline.to("npu")
99 changes: 99 additions & 0 deletions _sources/sources/Diffusers/quick_start.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
快速开始
==================

本示例以文生图 Diffusers 库中文生图任务为样例,展示如何进行文生图模型 stable-diffusion-xl-base-1.0 的基于 LoRA 的微调及动态合并 LoRA 的推理。

文生图
-------------

.. _download:

模型及数据集下载
~~~~~~~~~~~~~~~~~~~~

1. 请提前下载 `stabilityai/stable-diffusion-xl-base-1.0 <https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0>`_ 模型至自定义路径

2. 请提前下载 `madebyollin/sdxl-vae-fp16-fix <https://huggingface.co/madebyollin/sdxl-vae-fp16-fix>`_ 模型至自定义路径

3. 请提前下载 `reach-vb/pokemon-blip-captions <https://huggingface.co/datasets/reach-vb/pokemon-blip-captions>`_ 数据集至自定义路径


.. _finetune:

基于 LoRA 的微调
~~~~~~~~~~~~~~~~~~~~

进入 Diffusers 项目目录,新建并执行以下脚本:

.. note::

请根据 :ref:`download` 中模型及数据集的实际缓存路径指定 stable-diffusion-xl-base-1.0 模型缓存路径 ``MODEL_NAME``,sdxl-vae-fp16-fix 模型缓存路径 ``VAE_NAME`` 和。

.. code-block:: shell
:linenos:
:emphasize-lines: 1,2,3
export MODEL_NAME="./models_ckpt/stable-diffusion-xl-base-1.0/"
export VAE_NAME="./ckpt/sdxl-vae-fp16-fix"
export TRAIN_DIR="~/diffusers/data/pokemon-blip-captions/pokemon"
python3 ./examples/text_to_image/train_text_to_image_lora_sdxl.py \
--pretrained_model_name_or_path=$MODEL_NAME \
--pretrained_vae_model_name_or_path=$VAE_NAME \
--dataset_name=$DATASET_NAME --caption_column="text" \
--resolution=1024 \
--random_flip \
--train_batch_size=1 \
--num_train_epochs=2 \
--checkpointing_steps=500 \
--learning_rate=1e-04 \
--lr_scheduler="constant" \
--lr_warmup_steps=0 \
--mixed_precision="no" \
--seed=42 \
--output_dir="sd-pokemon-model-lora-sdxl" \
--validation_prompt="cute dragon creature"
微调过程无报错,并且终端显示 ``Steps: 100%`` 的进度条说明微调成功。


动态合并 LoRA 的推理
~~~~~~~~~~~~~~~~~~~~

.. note::

请根据 :ref:`download` 中模型实际缓存路径指定 ``model_path``

根据 :ref:`finetune` 中指定的 LoRA 模型路径 ``output_dir`` 指定 ``lora_model_path``

[可选] 修改 ``prompt`` 可使得生成图像改变

.. code-block:: python
:linenos:
:emphasize-lines: 9
from diffusers import DiffusionPipeline
import torch
lora_model_path = "path/to/sd-pokemon-model-lora-sdxl/checkpoint-800/"
model_path = "./models_ckpt/stable-diffusion-xl-base-1.0/"
pipe = DiffusionPipeline.from_pretrained(model_path, torch_dtype=torch.float16)
# 将模型放到 NPU 上
pipe.to("npu")
# 加载 LoRA 权重
pipe.load_lora_weights(lora_model_path)
# 输入 prompt
prompt = "Sylveon Pokemon with elegant features, magical design, \
light purple aura, extremely detailed and intricate markings, \
photo realistic, unreal engine, octane render"
# 推理
image = pipe(prompt, num_inference_steps=30, guidance_scale=7.5).images[0]
image.save("pokemon-finetuned-inference-generation.png")
微调过程无报错,并且终端显示 ``Loading pipeline components...: 100%`` 的进度条说明微调成功。
查看当前目录下保存的 ``pokemon-finetuned-inference-generation.png`` 图像,可根据 ``prompt`` 生成内容相关的图像说明推理成功。

Loading

0 comments on commit bab775f

Please sign in to comment.