跳到内容

文档工作流程 📚

本指南涵盖了 Ultralytics 项目的文档编写、构建和维护。

文档结构 🗂️

主要文档站点

仓库结构

docs/
├── en/              # English docs
│   ├── index.md     # Homepage
│   ├── guides/      # User guides
│   ├── tasks/       # Task-specific docs
│   ├── models/      # Model documentation
│   └── reference/   # API reference
├── zh/              # Chinese translations
└── overrides/       # Theme customizations

编写文档 ✍️

风格指南

  • 清晰简洁:快速抓住要点
  • 主动语态:使用“训练模型”,而不是“模型被训练”
  • 代码示例:展示每个概念的有效代码
  • 视觉辅助:在有帮助的地方使用图像/图表
  • 一致的格式:遵循现有的页面结构

Markdown 格式

---
description: Brief page description for SEO
keywords: relevant, keywords, for, search
---

# Page Title

Brief introduction explaining what this page covers.

## Section Heading

Content with examples:

```python
from ultralytics import YOLO

# Load pretrained model
model = YOLO("yolo11n.pt")
results = model("image.jpg")
```

### Key points:

- Use bullet points for lists
- Keep paragraphs short
- Include links to related pages

### Code Examples

- **Minimal**: Show only relevant code
- **Runnable**: Examples should work copy-paste (test with actual [YOLO models](https://docs.ultralytics.com/models/yolo11/))
- **Commented**: Explain non-obvious parts
- **Tested**: Verify examples work with current version

```python
from ultralytics import YOLO

# Load pretrained model
model = YOLO("yolo11n.pt")

# Train on custom data
results = model.train(data="coco8.yaml", epochs=3)
```

图片和媒体

存储在存储库中或使用CDN:

![Alt text](https://path/to/image.png)

Keep image sizes reasonable (<500KB when possible).

构建文档 🔨

本地开发

安装依赖项:

pip install -e ".[docs]"

构建并在本地提供服务:

mkdocs serve

访问 http://127.0.0.1:8000 进行预览。

MkDocs 配置

主要配置文件位于 mkdocs.yml:

site_name: Ultralytics Docs
theme:
    name: material
    palette:
        - scheme: slate
plugins:
    - search
    - ultralytics

API 文档 📖

API 参考资料由 docstrings 自动生成。请查看所有模块的完整 API 参考资料

def train(self, data, epochs=100, batch=16):
    """
    Train the model on a dataset.

    Args:
        data (str): Path to data YAML file
        epochs (int): Number of training epochs
        batch (int): Batch size

    Returns:
        (Results): Training results

    Examples:
        ```python
        model = YOLO("yolo11n.pt")
        results = model.train(data="coco8.yaml", epochs=100)
        ```
    """

主要要素:

  • 简要描述:单行摘要
  • 参数:带类型的参数描述
  • 返回值:返回值描述
  • 示例:可运行的代码示例

添加新页面 📄

1. 创建 markdown 文件

# Create new guide
touch docs/en/guides/new-guide.md

2. 更新导航

编辑 mkdocs.yml:

nav:
    - Home: index.md
    - Guides:
          - New Guide: guides/new-guide.md

3. 编写内容

遵循风格指南并包含示例。

4. 测试构建

mkdocs serve

5. 提交 PR

遵循 开发工作流程 进行 PR 流程。

翻译 🌐

添加翻译

  1. 将English版本复制到语言目录:
cp docs/en/page.md docs/zh/page.md
  1. 翻译内容,保留English代码示例

  2. 更新 mkdocs.yml 备用链接

翻译指南

  • 保留English技术术语 (YOLO, mAP, FPS)
  • 翻译描述和解释
  • 保持与English版本相同的结构
  • 当 English 版本更改时,更新翻译

文档 CI 🤖

CI 自动执行:

  • 在每次 PR 时构建文档
  • 检查失效链接
  • 验证 markdown 格式
  • 合并到主分支时部署到生产环境

修复构建错误

常见问题:

  • 失效链接:修复或删除无效链接
  • 缺少图片:添加图片或更新路径
  • YAML无效:修复frontmatter语法
  • 插件错误:检查插件配置

最佳实践 ✅

内容组织

  • 逻辑结构:对相关内容进行分组
  • 渐进式披露:简单 → 高级
  • 交叉链接:链接到相关页面
  • 搜索优化:使用清晰的标题和描述

维护

  • 保持最新:为新功能进行更新
  • 删除过时内容:删除已弃用的内容
  • 检查链接:定期修复失效链接
  • 用户反馈:解决常见问题

可访问性

  • Alt文本:为屏幕阅读器描述图像
  • 清晰的标题:使用正确的标题层级
  • 简明语言:尽可能避免使用术语
  • 代码对比度:确保代码块可读

资源 📚



📅 1 个月前创建 ✏️ 9 天前更新