From 6e579ee545338d7ea8acef298c91d3ad537d95da Mon Sep 17 00:00:00 2001 From: Brian Johnson Date: Fri, 14 Sep 2018 12:39:12 -0700 Subject: [PATCH 1/2] Updated to release stylesheet --- conf.py | 13 +++++++------ requirements.txt | 4 +++- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/conf.py b/conf.py index 6677b5dddf1..5fc4596ab10 100644 --- a/conf.py +++ b/conf.py @@ -20,7 +20,7 @@ import os import sys sys.path.insert(0, os.path.abspath('.')) - +import pytorch_sphinx_theme import torch import glob import shutil @@ -32,7 +32,7 @@ except ImportError: import warnings warnings.warn('unable to load "torchvision" package') -import sphinx_rtd_theme +import pytorch_sphinx_theme # -- General configuration ------------------------------------------------ @@ -152,10 +152,11 @@ # } -html_theme = 'sphinx_rtd_theme' -html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] +html_theme = 'pytorch_sphinx_theme' +html_theme_path = [pytorch_sphinx_theme.get_html_theme_path()] html_logo = '_static/img/pytorch-logo-dark.svg' html_theme_options = { + 'pytorch_project': 'tutorials', 'collapse_navigation': False, 'display_version': True, 'logo_only': False, @@ -221,8 +222,8 @@ def setup(app): # Custom CSS - app.add_stylesheet('css/pytorch_theme.css') - app.add_stylesheet('https://fonts.googleapis.com/css?family=Lato') + # app.add_stylesheet('css/pytorch_theme.css') + # app.add_stylesheet('https://fonts.googleapis.com/css?family=Lato') # Custom directives app.add_directive('includenodoc', IncludeDirective) app.add_directive('galleryitem', GalleryItemDirective) diff --git a/requirements.txt b/requirements.txt index a454a6031e3..01b873a8d35 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,5 +1,7 @@ +# as pypi package +pytorch_sphinx_theme + sphinx -sphinx_rtd_theme sphinx-gallery numpy matplotlib From b3ad6e2ec2bc7de2f93fd2590bcc8ba875752409 Mon Sep 17 00:00:00 2001 From: Brian Johnson Date: Mon, 17 Sep 2018 12:09:36 -0700 Subject: [PATCH 2/2] Updated toc and tutorial notes. --- _static/img/hybrid.png | Bin 0 -> 27849 bytes advanced_source/cpp_export.rst | 5 ++++- beginner_source/chatbot_tutorial.py | 3 +++ .../deploy_seq2seq_hybrid_frontend_tutorial.py | 12 ++++++------ ..._hybrid_frontend_through_example_tutorial.py | 3 +++ index.rst | 6 +++--- 6 files changed, 19 insertions(+), 10 deletions(-) create mode 100644 _static/img/hybrid.png diff --git a/_static/img/hybrid.png b/_static/img/hybrid.png new file mode 100644 index 0000000000000000000000000000000000000000..d4dc016d86308e382b8da57f812e68d2e6a43070 GIT binary patch literal 27849 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�- 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. While the `introductory hybrid frontend -# tutorials <>`__ are useful for gaining an understanding of the -# work-flow, purpose, and basic syntax of the feature, this document -# covers a more challenging model and a more practical use-case. You can -# either treat this tutorial as a “Part 2” to the `Chatbot tutorial <>`__ +# `Chatbot tutorial `__. +# You can either treat this tutorial as a “Part 2” to the Chatbot tutorial # and deploy your own pretrained model, or you can start with this # document and use a pretrained model that we host. In the latter case, -# you can reference the original `Chatbot tutorial <>`__ for details +# you can reference the original Chatbot tutorial for details # regarding data preprocessing, model theory and definition, and model # training. # diff --git a/beginner_source/hybrid_frontend/learning_hybrid_frontend_through_example_tutorial.py b/beginner_source/hybrid_frontend/learning_hybrid_frontend_through_example_tutorial.py index b13f6700b47..5f1822c887f 100644 --- a/beginner_source/hybrid_frontend/learning_hybrid_frontend_through_example_tutorial.py +++ b/beginner_source/hybrid_frontend/learning_hybrid_frontend_through_example_tutorial.py @@ -4,6 +4,9 @@ =============================================== **Author:** `Nathan Inkawhich `_ +This tutorial requires PyTorch 1.0 (preview) or later. For installation +information visit http://pytorch.org/get-started. + This document is meant to highlight the syntax of the Hybrid Frontend through a non-code intensive example. The Hybrid Frontend is one of the new shiny features of Pytorch 1.0 and provides an avenue for developers diff --git a/index.rst b/index.rst index 2776b9a0349..2ada0ef884c 100644 --- a/index.rst +++ b/index.rst @@ -43,9 +43,9 @@ Getting Started :description: :doc:`beginner/transfer_learning_tutorial` .. customgalleryitem:: - :figure: /_static/img/hybrid_frontend/220px-KnnClassification.png + :figure: /_static/img/hybrid.png :tooltip: Experiment with some of the key features of the PyTorch hybrid frontend - :description: :doc:`beginner/hybrid_frontend_tutorial` + :description: :doc:`beginner/deploy_seq2seq_hybrid_frontend_tutorial` .. customgalleryitem:: :figure: /_static/img/thumbnails/floppy.png @@ -214,7 +214,7 @@ Production Usage beginner/data_loading_tutorial beginner/pytorch_with_examples beginner/transfer_learning_tutorial - beginner/hybrid_frontend_tutorial + beginner/deploy_seq2seq_hybrid_frontend_tutorial beginner/saving_loading_models .. toctree::