CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In
pytorch

Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.

GitHub Repository: pytorch/tutorials
Path: blob/main/tutorial_submission_policy.md
Views: 710

PyTorch Tutorial Submission Policy

This policy outlines the criteria and process for submitting new tutorials to the PyTorch community. Our goal is to ensure that all tutorials are of high quality, relevant, and up-to-date, supporting both the growth of the PyTorch users and the evolution of the PyTorch framework itself. By following these guidelines, contributors can help us maintain a robust and informative educational environment.

Acceptance Criteria For New Tutorials

We accept new tutorials that adhere to one of the following use cases:

  • Demonstrate New PyTorch Features: Tutorials that support new features for upcoming PyTorch releases are typically authored by the engineers who are developing these features. These tutorials are crucial for showcasing the latest advancements in PyTorch. We typically do not require more than one tutorial per feature.

  • Tutorials showcasing PyTorch usage with other tools and libraries: We accept community-contributed tutorials that illustrate innovative uses of PyTorch alongside other open-source projects, models, and tools. Please ensure that your tutorial remains neutral and does not promote or endorse proprietary technologies over others.

The first use case does not require going through the submission process outlined below. If your tutorial falls under the second category, please read and follow the instructions in the Submission Process For Community-Contributed Tutorials section.

Submission Process For Community-Contributed Tutorials

To maintain the quality and relevance of tutorials, we request that community-contributed tutorials undergo a review process. If you are interested in contributing a tutorial, please follow these steps:

  1. Create an issue:

    • Open an issue in the pytorch/tutorials repository proposing the new tutorial. Clearly explain the importance of the tutorial and confirm that there is no existing tutorial covering the same or similar topic. A tutorial should not disproportionately endorse one technology over another. Please consult with Core Maintainers to ensure your content adheres to these guidelines. Use the provided ISSUE_TEMPLATE for the new tutorial request - select Feature request when submitting an issue.

      • If there is an existing tutorial on the topic that you would like to significantly refactor, you can submit a PR. In the description of the PR, explain why the changes are needed and how they improve the tutorial.

    • These issues will be triaged by PyTorch maintainers on a case-by-case basis.

    • Link any supporting materials including discussions in other repositories.

  2. Await Approval:

    • Wait for a response from the PyTorch Tutorials maintainers. A PyTorch tutorial maintainer will review your proposal and determine whether a tutorial on the proposed topic is desirable. A comment and an approved label will be added to your issue by a maintainer. The review process for new tutorial PRs submitted without the corresponding issue may take longer.

  3. Adhere to writing and styling guidelines:

    • Once approved, follow the guidelines outlined in CONTRIBUTING.md and use the provided template for creating your tutorial.

    • Link the issue in which you received approval for your tutorial in the PR.

    • We accept tutorials in both .rst (ReStructuredText) and .py (Python) formats. However, unless your tutorial involves using multiple GPU, parallel/distributed training, or requires extended execution time (25 minutes or more), we prefer submissions in Python file format.

Maintaining Tutorials

When you submit a new tutorial, we encourage you to keep it in sync with the latest PyTorch updates and features. Additionally, we may contact you to review any PRs, issues, and other related matters to ensure the tutorial remains a valuable resource.

Please note the following:

  • If a tutorial breaks against the main branch, it will be excluded from the build and an issue will be filed against it, with the author/maintainer notified. If the issue is not resolved within 90 days, the tutorial might be deleted from the repository.

  • We recommend that each tutorial is reviewed at least once a year to ensure its relevance.

Deleting Stale Tutorials

A tutorial might be considered stale when it no longer aligns with the latest PyTorch updates, features, or best practices or best practices:

  • The tutorial is no longer functional due to changes in PyTorch or its dependencies

  • The tutorial has been superseded by a newer, more comprehensive, or more accurate tutorial

  • The tutorial does not run successfully in the (CI), indicating potential compatibility or dependency issues.

If a tutorial is deemed stale, we will attempt to contact the code owner, or someone from the tutorial mainatainers might attempt to update it. However, if despite those attempts we fail to fix it, the tutorial might be removed from the repository.