From bed44f9e67b76740c9164c195865152187a3fe95 Mon Sep 17 00:00:00 2001
From: regisss <15324346+regisss@users.noreply.github.com>
Date: Fri, 8 Apr 2022 07:56:56 +0200
Subject: [PATCH] Reorder README sections and add a section about loading
TF/Flax checkpoints
- add a section about loading TF/Flax checkpoints
- reorder README sections: in the examples, the section "Distributed training" is now at the top
- add logo to README
---
README.md | 5 +++++
examples/README.md | 39 +++++++++++++++++++++++++--------------
readme_logo.png | Bin 0 -> 120484 bytes
3 files changed, 30 insertions(+), 14 deletions(-)
create mode 100644 readme_logo.png
diff --git a/README.md b/README.md
index 29e8183a1d..464d59a437 100644
--- a/README.md
+++ b/README.md
@@ -14,6 +14,11 @@ See the License for the specific language governing permissions and
limitations under the License.
-->
+
+
+
+
+
# Optimum Habana
🤗 Optimum Habana is the interface between the 🤗 Transformers library and [Habana's Gaudi processor](https://docs.habana.ai/en/latest/index.html).
diff --git a/examples/README.md b/examples/README.md
index bd1e6ef875..17867413a0 100644
--- a/examples/README.md
+++ b/examples/README.md
@@ -18,6 +18,31 @@ limitations under the License.
This folder contains actively maintained examples of use of 🤗 Optimum Habana for question answering and text classification.
+## Distributed training
+
+All the PyTorch scripts in this repository work out of the box with distributed training. To launch one of them on _n_ HPUs,
+use the following command:
+
+```bash
+python gaudi_spawn.py \
+ --world_size number_of_hpu_you_have --use_mpi \
+ path_to_script.py --args1 --args2 ... --argsN
+```
+where `--argX` is an argument of the script to run in a distributed way.
+Examples are given for question answering [here](https://github.com/huggingface/optimum-habana/blob/main/examples/question-answering/README.md#multi-card-training) and for text classification [here](https://github.com/huggingface/optimum-habana/tree/main/examples/text-classification#multi-card-training).
+
+
+## Loading from a Tensorflow/Flax checkpoint file instead of a PyTorch model
+
+If a model also has Tensorflow or Flax checkpoints, you can load them instead of a PyTorch checkpoint by specifying `from_tf=True` or `from_flax=True` in the model instantiation.
+
+You can try it for SQuAD [here](https://github.com/huggingface/optimum-habana/blob/688a857d5308a87a502eec7657f744429125d6f1/examples/question-answering/run_qa.py#L310) or for MRPC [here](https://github.com/huggingface/optimum-habana/blob/688a857d5308a87a502eec7657f744429125d6f1/examples/text-classification/run_glue.py#L338).
+
+You can check if a model has such checkpoints on the [Hub](https://huggingface.co/models). You can also specify a URL or a path to a Tensorflow/Flax checkpoint in `model_args.model_name_or_path`.
+
+> Resuming from a checkpoint will only work with a PyTorch checkpoint.
+
+
## Running quick tests
Most examples are equipped with a mechanism to truncate the number of dataset samples to the desired length. This is useful for debugging purposes, for example to quickly check that all stages of the programs can complete, before running the same setup on the full dataset which may take hours to complete.
@@ -56,17 +81,3 @@ A few notes on this integration:
- you will need to be logged in to the Hugging Face website locally for it to work, the easiest way to achieve this is to run `huggingface-cli login` and then type your username and password when prompted. You can also pass along your authentication token with the `--hub_token` argument.
- the `output_dir` you pick will either need to be a new folder or a local clone of the distant repository you are using.
-
-
-## Distributed training
-
-All the PyTorch scripts in this repository work out of the box with distributed training. To launch one of them on _n_ HPUs,
-use the following command:
-
-```bash
-python gaudi_spawn.py \
- --world_size number_of_hpu_you_have --use_mpi \
- path_to_script.py --args1 --args2 ... --argsN
-```
-where `--argX` is an argument of the script to run in a distributed way.
-Examples are given for question answering [here](https://github.com/huggingface/optimum-habana/blob/main/examples/question-answering/README.md#multi-card-training) and for text classification [here](https://github.com/huggingface/optimum-habana/tree/main/examples/text-classification#multi-card-training).
\ No newline at end of file
diff --git a/readme_logo.png b/readme_logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..193736b1b925de14c9336837ce30b185a9650aa3
GIT binary patch
literal 120484
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