From 4681cffa35bf338345e0625ccec3b835d3b6078d Mon Sep 17 00:00:00 2001 From: mi804 <1576993271@qq.com> Date: Tue, 10 Feb 2026 17:24:36 +0800 Subject: [PATCH] add en --- docs/en/.readthedocs.yaml | 28 +++++++++ docs/en/Makefile | 20 ++++++ docs/en/conf.py | 127 ++++++++++++++++++++++++++++++++++++++ docs/en/index.rst | 77 +++++++++++++++++++++++ docs/zh/README.md | 56 ++++++++--------- docs/zh/index.rst | 2 +- 6 files changed, 281 insertions(+), 29 deletions(-) create mode 100644 docs/en/.readthedocs.yaml create mode 100644 docs/en/Makefile create mode 100644 docs/en/conf.py create mode 100644 docs/en/index.rst diff --git a/docs/en/.readthedocs.yaml b/docs/en/.readthedocs.yaml new file mode 100644 index 0000000..6197276 --- /dev/null +++ b/docs/en/.readthedocs.yaml @@ -0,0 +1,28 @@ +# .readthedocs.yaml +# Read the Docs configuration file +# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details + +# Required +version: 2 + +# Set the OS, Python version and other tools you might need +build: + os: ubuntu-22.04 + tools: + python: "3.10" + +# Build documentation in the "docs/" directory with Sphinx +sphinx: + configuration: docs/en/conf.py + +# Optionally build your docs in additional formats such as PDF and ePub +# formats: +# - pdf +# - epub + +# Optional but recommended, declare the Python requirements required +# to build your documentation +# See https://docs.readthedocs.io/en/stable/guides/reproducible-builds.html +python: + install: + - requirements: docs/requirements.txt diff --git a/docs/en/Makefile b/docs/en/Makefile new file mode 100644 index 0000000..41c270b --- /dev/null +++ b/docs/en/Makefile @@ -0,0 +1,20 @@ +# Minimal makefile for Sphinx documentation +# + +# You can set these variables from the command line, and also +# from the environment for the first two. +SPHINXOPTS ?= +SPHINXBUILD ?= sphinx-build +SOURCEDIR = . +BUILDDIR = _build + +# Put it first so that "make" without argument is like "make help". +help: + @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) + +.PHONY: help Makefile + +# Catch-all target: route all unknown targets to Sphinx using the new +# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS). +%: Makefile + @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) \ No newline at end of file diff --git a/docs/en/conf.py b/docs/en/conf.py new file mode 100644 index 0000000..9d2c32a --- /dev/null +++ b/docs/en/conf.py @@ -0,0 +1,127 @@ +# Configuration file for the Sphinx documentation builder. +# +# This file only contains a selection of the most common options. For a full +# list see the documentation: +# https://www.sphinx-doc.org/en/master/usage/configuration.html + +# -- Path setup -------------------------------------------------------------- + +# If extensions (or modules to document with autodoc) are in another directory, +# add these directories to sys.path here. If the directory is relative to the +# documentation root, use os.path.abspath to make it absolute, like shown here. +# +import os +import sys + +# import sphinx_book_theme + +sys.path.insert(0, os.path.abspath('../../')) +# -- Project information ----------------------------------------------------- + +project = 'diffsynth' +copyright = '2022-2025, Alibaba ModelScope' +author = 'ModelScope Authors' +version_file = '../../diffsynth/version.py' +html_theme = 'sphinx_rtd_theme' +language = 'en' + + +def get_version(): + with open(version_file, 'r', encoding='utf-8') as f: + exec(compile(f.read(), version_file, 'exec')) + return locals()['__version__'] + + +# The full version, including alpha/beta/rc tags +version = get_version() +release = version + +# -- General configuration --------------------------------------------------- + +# Add any Sphinx extension module names here, as strings. They can be +# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom +# ones. +extensions = [ + 'sphinx.ext.napoleon', + 'sphinx.ext.autosummary', + 'sphinx.ext.autodoc', + 'sphinx.ext.viewcode', + 'sphinx_markdown_tables', + 'sphinx_copybutton', + 'myst_parser', +] + +# build the templated autosummary files +autosummary_generate = True +numpydoc_show_class_members = False + +# Enable overriding of function signatures in the first line of the docstring. +autodoc_docstring_signature = True + +# Disable docstring inheritance +autodoc_inherit_docstrings = False + +# Show type hints in the description +autodoc_typehints = 'description' + +# Add parameter types if the parameter is documented in the docstring +autodoc_typehints_description_target = 'documented_params' + +autodoc_default_options = { + 'member-order': 'bysource', +} + +# Add any paths that contain templates here, relative to this directory. +templates_path = ['_templates'] + +# The suffix(es) of source filenames. +# You can specify multiple suffix as a list of string: +# +source_suffix = ['.rst', '.md'] + +# The master toctree document. +root_doc = 'index' + +# List of patterns, relative to source directory, that match files and +# directories to ignore when looking for source files. +# This pattern also affects html_static_path and html_extra_path. +exclude_patterns = ['build'] +# A list of glob-style patterns [1] that are used to find source files. +# They are matched against the source file names relative to the source directory, +# using slashes as directory separators on all platforms. +# The default is **, meaning that all files are recursively included from the source directory. +# -- Options for HTML output ------------------------------------------------- + +# The theme to use for HTML and HTML Help pages. See the documentation for +# a list of builtin themes. +# +# html_theme = 'sphinx_book_theme' +# html_theme_path = [sphinx_book_theme.get_html_theme_path()] +# html_theme_options = {} + +# Add any paths that contain custom static files (such as style sheets) here, +# relative to this directory. They are copied after the builtin static files, +# so a file named "default.css" will overwrite the builtin "default.css". +html_static_path = ['_static'] +# html_css_files = ['css/readthedocs.css'] + +# -- Options for HTMLHelp output --------------------------------------------- +# Output file base name for HTML help builder. + +# -- Extension configuration ------------------------------------------------- +# Ignore >>> when copying code +copybutton_prompt_text = r'>>> |\.\.\. ' +copybutton_prompt_is_regexp = True + +# Example configuration for intersphinx: refer to the Python standard library. +intersphinx_mapping = {'https://docs.python.org/': None} + +myst_enable_extensions = [ + 'amsmath', + 'dollarmath', + 'colon_fence', +] + +linkcheck_ignore = [ + r'/docs/en/.*', +] diff --git a/docs/en/index.rst b/docs/en/index.rst new file mode 100644 index 0000000..ab195ef --- /dev/null +++ b/docs/en/index.rst @@ -0,0 +1,77 @@ +Welcome to DiffSynth-Studio's Documentation +========================================== + +.. toctree:: + :maxdepth: 2 + :caption: Documentation Introduction + + README + +.. toctree:: + :maxdepth: 2 + :caption: Getting Started + + Pipeline_Usage/Setup + Pipeline_Usage/Model_Inference + Pipeline_Usage/VRAM_management + Pipeline_Usage/Model_Training + Pipeline_Usage/Environment_Variables + Pipeline_Usage/GPU_support + +.. toctree:: + :maxdepth: 2 + :caption: Model Details + + Model_Details/FLUX + Model_Details/Wan + Model_Details/Qwen-Image + Model_Details/FLUX2 + Model_Details/Z-Image + +.. toctree:: + :maxdepth: 2 + :caption: Training Framework + + Training/Understanding_Diffusion_models + Training/Supervised_Fine_Tuning + Training/FP8_Precision + Training/Direct_Distill + Training/Split_Training + Training/Differential_LoRA + +.. toctree:: + :maxdepth: 2 + :caption: Model Integration + + Developer_Guide/Integrating_Your_Model + Developer_Guide/Building_a_Pipeline + Developer_Guide/Enabling_VRAM_management + Developer_Guide/Training_Diffusion_Models + +.. toctree:: + :maxdepth: 2 + :caption: API Reference + + API_Reference/core/attention + API_Reference/core/data + API_Reference/core/gradient + API_Reference/core/loader + API_Reference/core/vram + +.. toctree:: + :maxdepth: 2 + :caption: Research Guide + + Research_Tutorial/train_from_scratch + +.. toctree:: + :maxdepth: 2 + :caption: FAQ + + QA + +Indices and tables +================== +* :ref:`genindex` +* :ref:`modindex` +* :ref:`search` diff --git a/docs/zh/README.md b/docs/zh/README.md index b0f3d72..c02665f 100644 --- a/docs/zh/README.md +++ b/docs/zh/README.md @@ -26,58 +26,58 @@ graph LR; 本节介绍 `DiffSynth-Studio` 的基本使用方式,包括如何启用显存管理从而在极低显存的 GPU 上进行推理,以及如何训练任意基础模型、LoRA、ControlNet 等模型。 -* [安装依赖](Pipeline_Usage/Setup.md) -* [模型推理](Pipeline_Usage/Model_Inference.md) -* [显存管理](Pipeline_Usage/VRAM_management.md) -* [模型训练](Pipeline_Usage/Model_Training.md) -* [环境变量](Pipeline_Usage/Environment_Variables.md) -* [GPU/NPU 支持](Pipeline_Usage/GPU_support.md) +* [安装依赖](/docs/zh/Pipeline_Usage/Setup.md) +* [模型推理](/docs/zh/Pipeline_Usage/Model_Inference.md) +* [显存管理](/docs/zh/Pipeline_Usage/VRAM_management.md) +* [模型训练](/docs/zh/Pipeline_Usage/Model_Training.md) +* [环境变量](/docs/zh/Pipeline_Usage/Environment_Variables.md) +* [GPU/NPU 支持](/docs/zh/Pipeline_Usage/GPU_support.md) ## Section 2: 模型详解 本节介绍 `DiffSynth-Studio` 所支持的 Diffusion 模型,部分模型 Pipeline 具备可控生成、并行加速等特色功能。 -* [FLUX.1](Model_Details/FLUX.md) -* [Wan](Model_Details/Wan.md) -* [Qwen-Image](Model_Details/Qwen-Image.md) -* [FLUX.2](Model_Details/FLUX2.md) -* [Z-Image](Model_Details/Z-Image.md) +* [FLUX.1](/docs/zh/Model_Details/FLUX.md) +* [Wan](/docs/zh/Model_Details/Wan.md) +* [Qwen-Image](/docs/zh/Model_Details/Qwen-Image.md) +* [FLUX.2](/docs/zh/Model_Details/FLUX2.md) +* [Z-Image](/docs/zh/Model_Details/Z-Image.md) ## Section 3: 训练框架 本节介绍 `DiffSynth-Studio` 中训练框架的设计思路,帮助开发者理解 Diffusion 模型训练算法的原理。 -* [Diffusion 模型基本原理](Training/Understanding_Diffusion_models.md) -* [标准监督训练](Training/Supervised_Fine_Tuning.md) -* [在训练中启用 FP8 精度](Training/FP8_Precision.md) -* [端到端的蒸馏加速训练](Training/Direct_Distill.md) -* [两阶段拆分训练](Training/Split_Training.md) -* [差分 LoRA 训练](Training/Differential_LoRA.md) +* [Diffusion 模型基本原理](/docs/zh/Training/Understanding_Diffusion_models.md) +* [标准监督训练](/docs/zh/Training/Supervised_Fine_Tuning.md) +* [在训练中启用 FP8 精度](/docs/zh/Training/FP8_Precision.md) +* [端到端的蒸馏加速训练](/docs/zh/Training/Direct_Distill.md) +* [两阶段拆分训练](/docs/zh/Training/Split_Training.md) +* [差分 LoRA 训练](/docs/zh/Training/Differential_LoRA.md) ## Section 4: 模型接入 本节介绍如何将模型接入 `DiffSynth-Studio` 从而使用框架基础功能,帮助开发者为本项目提供新模型的支持,或进行私有化模型的推理和训练。 -* [接入模型结构](Developer_Guide/Integrating_Your_Model.md) -* [接入 Pipeline](Developer_Guide/Building_a_Pipeline.md) -* [接入细粒度显存管理](Developer_Guide/Enabling_VRAM_management.md) -* [接入模型训练](Developer_Guide/Training_Diffusion_Models.md) +* [接入模型结构](/docs/zh/Developer_Guide/Integrating_Your_Model.md) +* [接入 Pipeline](/docs/zh/Developer_Guide/Building_a_Pipeline.md) +* [接入细粒度显存管理](/docs/zh/Developer_Guide/Enabling_VRAM_management.md) +* [接入模型训练](/docs/zh/Developer_Guide/Training_Diffusion_Models.md) ## Section 5: API 参考 本节介绍 `DiffSynth-Studio` 中的独立核心模块 `diffsynth.core`,介绍内部的功能是如何设计和运作的,开发者如有需要,可将其中的功能模块用于其他代码库的开发中。 -* [`diffsynth.core.attention`](API_Reference/core/attention.md): 注意力机制实现 -* [`diffsynth.core.data`](API_Reference/core/data.md): 数据处理算子与通用数据集 -* [`diffsynth.core.gradient`](API_Reference/core/gradient.md): 梯度检查点 -* [`diffsynth.core.loader`](API_Reference/core/loader.md): 模型下载与加载 -* [`diffsynth.core.vram`](API_Reference/core/vram.md): 显存管理 +* [`diffsynth.core.attention`](/docs/zh/API_Reference/core/attention.md): 注意力机制实现 +* [`diffsynth.core.data`](/docs/zh/API_Reference/core/data.md): 数据处理算子与通用数据集 +* [`diffsynth.core.gradient`](/docs/zh/API_Reference/core/gradient.md): 梯度检查点 +* [`diffsynth.core.loader`](/docs/zh/API_Reference/core/loader.md): 模型下载与加载 +* [`diffsynth.core.vram`](/docs/zh/API_Reference/core/vram.md): 显存管理 ## Section 6: 学术导引 本节介绍如何利用 `DiffSynth-Studio` 训练新的模型,帮助科研工作者探索新的模型技术。 -* [从零开始训练模型](Research_Tutorial/train_from_scratch.md) +* [从零开始训练模型](/docs/zh/Research_Tutorial/train_from_scratch.md) * 推理改进优化技术【coming soon】 * 设计可控生成模型【coming soon】 * 创建新的训练范式【coming soon】 @@ -86,4 +86,4 @@ graph LR; 本节总结了开发者常见的问题,如果你在使用和开发中遇到了问题,请参考本节内容,如果仍无法解决,请到 GitHub 上给我们提 issue。 -* [常见问题](QA.md) +* [常见问题](/docs/zh/QA.md) diff --git a/docs/zh/index.rst b/docs/zh/index.rst index 67150cf..4e82d3e 100644 --- a/docs/zh/index.rst +++ b/docs/zh/index.rst @@ -1,4 +1,4 @@ -DiffSynth-Studio 文档 +欢迎来到 DiffSynth-Studio 的文档 ===================== .. toctree::