🔥[Community Event] Doc Tests Sprint - Configuration files🔥
Author: ydshieh
Pull request: no
Labels: name: Good First Issue

name: HACKTOBERFEST-ACCEPTED

This sprint is similar to #16292 - but for model **configuration files**, i.e. `configuration_[model_name].py`.
For example, `src/transformers/models/bert/configuration_bert.py` 

# The expected changes

The changes we expect  could be find #19485:

  1. **Change the import order of the model and configuration classes**
  2. **Add `(with random weights)` in the  comment before model initialization line**
  3. **Add `configuration_[model_name].py` to `utils/documentation_tests.txt`** (respecting the order)

Please do step 3. only after **Running the doctest and make sure all tests pass** (see below) 🙏 

# How to run doctests

Suppose you are working on `src/transformers/models/bert/configuration_bert.py`. The steps to run the test are:

0. **Stage your changes**

    ```bash
    git add src/transformers/models/bert/configuration_bert.py
    ```
1. **Prepare the files to be tested**

    ```python
    python utils/prepare_for_doc_test.py src
    ```
    or if you prefer to be more specific 
    ```python
    python utils/prepare_for_doc_test.py src/transformers/models/bert/configuration_bert.py
    ```
    This will change some files (doc-testing needs to add additional lines that we don't include in the doc source files).
2. **Launch the test:**
    ```python
    python -m pytest --doctest-modules src/transformers/models/bert/configuration_bert.py -sv --doctest-continue-on-failure
    ```
3. **Cleanup git status**
    ```bash
    git checkout -- .
    ```
    to clean up the changes in step 1.

# Ready (or not)?

If all tests pass, you can commit, push and open a PR 🔥 🚀 , otherwise iterate the above steps 💯 !


Comments:
I'd like to work on this; I'll start with YOLOS and open a PR :)

I'll take on Whisper!

I'll work on Beit!

FYI Bart #19524 and Albert #19541 are already done :) 

I'll take on GPT2 next!

I can take imageGPT 

i'll work on yoso


I'll work on
- RoBERTa
- ViT
- DeiT
- Reformer

and open up PR soon :)

Also will raise for Transformer-XL !


I'll work on bloom

I'll work on ctrl

Hi @ydshieh, I am new here and want to contribute to this issue. Can you please help me to find the remaining files? Thanks,

> Hi @ydshieh, I am new here and want to contribute to this issue. Can you please help me to find the remaining files? Thanks,

Hi @SD-13 You can check the latest file 
https://github.com/IzicTemi/transformers/blob/main/utils/documentation_tests.txt

Any configuration file that is not on that list (on `main` branch) **and [not claimed here yet, no PR opened yet]** are all welcome :-)


Hey @ydshieh, could I fix multiple models in a single PR, or do I have to open a single PR for each fix?

I will be taking blenderbots as well


> Hey @ydshieh, could I fix multiple models in a single PR, or do I have to open a single PR for each fix?

2 or 3 might be good. But don't take more in a single PR - the sprint is for everyone to contribute, so leave some to others :-)

> > Hi @ydshieh, I am new here and want to contribute to this issue. Can you please help me to find the remaining files? Thanks,
> 
> Hi @SD-13 You can check the latest file https://github.com/IzicTemi/transformers/blob/main/utils/documentation_tests.txt
> 
> Any configuration file that is not on that list (on `main` branch) **and [not claimed here yet, no PR opened yet]** are all welcome :-)

Thanks @ydshieh , that was helpful. I can take `vision_text_dual_encoder.py`

Hey @ydshieh, I am getting this error
![Screenshot from 2022-10-13 19-44-43](https://user-images.githubusercontent.com/89520981/195621668-e2ba4aee-dee6-45a3-9699-b7b61482bfe6.png)
can you please help me to understand the reason and fix it? Thanks,

@SD-13 Could you open a PR (even if it is not complete yet), and post the command you run and the complete error message in that PR? Using image is not very convivence to search and debug 🙏 

> @SD-13 Could you open a PR (even if it is not complete yet), and post the command you run and the complete error message in that PR? Using image is not very convivence to search and debug pray

Yeah true. I created [this](https://github.com/huggingface/transformers/pull/19580) PR and let's leave those errors since all checks are passing. Thanks, 

I will also take `time_series_transformer.py`, `vision_encoder_decoder.py`, and `trajectory_transformer.py`. Thanks,

took up blenderbot_small too.


I'll take on
- SEW
- SEW-D
- Swin
- Swin V2
- UniSpeech

and will open up PR :)

Hi @ydshieh , I want to contribute to this issue. Can you please help me to find the remaining files?

> Hi @ydshieh , I want to contribute to this issue. Can you please help me to find the remaining files?

Hey @SaurabhBudhwani26 , please check [this](https://github.com/huggingface/transformers/issues/19487#issuecomment-1277518647). I hope it will be helpful. Thanks, 

I'll work on `configuration_visual_bert.py`

I will work on:
- `big_bird`
- `bigbird_pegasus`

I will work on
- `configuration_xlm_roberta.py`
- `configuration_xlm_roberta_xl.py`

Can I work on this?
@ydshieh 

I will work on **`flava`**

Now, I will work on `Longformer`, `Pegasus` and `VisualBERT`.

@AShreyam You didn't open a PR, and you merged your branch into your own main branch.

I am really sorry for the inconvenience.

Here is the actual pull request. Thank You :)

Work on `configuration_big_bird.py`

I'll take on
- LeViT
- DistilBERT
- ResNet

and open up PR :)

I'll take on CodeGen

I'll take on Data2Vec ones :)

I'll take on conditional_detr

I'll take on realm


I'll take on convbert

I'll take on CLIP =)

I'll take XLNet

I can take the wav2vec2 ones if that is ok, is someone else working on those?

I'll take XLM

I'll take cvt

I'll take `pegasus` and `pegasus_x`

I will take `fnet` and `flava`.

@ydshieh Added config files for convnext

Oh it will close this ...? 

The previous merged PRs didn't close this issue. Strange!

@ydshieh that's because there was "Fixes https://github.com/huggingface/transformers/issues/19487" in the description of the PR :)

"Fixes", like "close" or "fix" will close the issue when the PR is merged.

I would take `gpt_neo` , `gpt_neox_japanese` and `gpt_neox`

I'll take on
- SpeechToTextTransformer
- SpeechToTextTransformer2
- SqueezeBERT

I would like to work on `openai` and `opt`

I will take `mbart` and `mctct`

I will work on `layoutlm` , `layoutlmv2` , `layoutlmv3`

I will work on ELECTRA

I will work on PoolFormer

I will work on PLBART

I will work on Nezha

I'll take maskformer

Hi, Can I have LayoutLMv2 and BERT

> Hi, Can I have LayoutLMv2 and BERT

Hi @rushic24  They have been done. You can check [this file](https://github.com/huggingface/transformers/blob/main/utils/documentation_tests.txt) and find other config files to work with 🤗 

I'll take fsmt next

While browsing the list of model configurations, I noticed that the DebertaConfig class does not have an example docstring section. Unsure if that is supposed to be like that, but just incase its not, I will add a PR to include the example docstring and maybe I can get some feedback from there.

I'll work on dpt

> DebertaConfig

That would be very nice, @Saad135 ! Thank you

I will take DeBERTa-v2 next

I can take camembert next

I can take DPR next

I can take DeformableDetrConfig next

Can I take timesformer next?

> Can I take timesformer next?

Sure! For the context, we decide not to use the tiny random model checkpoints anymore. If there are some downstream models which lack the checkpoint, we just not to provide the expected values.

Hello, I would like to take on gptj, longformer, and hubert

@ydshieh , may I share a list of models that are yet to be worked on?


@elabongaatuo GPT-J is large, and our CI won't be able to run doctest with its checkpoints. 

I think gptj, longformer, and hubert are all covered in 

https://github.com/huggingface/transformers/blob/5f3ea66bc0c27ad2a8761fdf8489cf7d72257b93/utils/documentation_tests.txt

Feel free to check the modeling files that are not in the above file 🤗 if you want to work on it ❤️ . Thank you!

@ydshieh , thank you. m2m_100,llama and mvp don't have modeling files. a go ahead to work on them? 

`llama` has no publicly available checkpoints on the Hub - no need to work on it.
For the other 2 files, you can run doctest against them. If they pass, you can simply add them to `documentation_tests.txt`.
Otherwise, we can discuss how to deal with the errors :-).

- we might need to use a community user's checkpoint
- or a checkpoint without real weights, and indicate this 

Hi @ydshieh , I am new to open source, so just wanted to confirm whether I can take Falcon or not? Config file of Falcon is not mentioned in the documentation_tests.txt file.

Hello @ydshieh , I am new to open sorce and want to take `barthez`. If my contributions are successful, I'm eager to extend my involvement to other models as well. Looking forward to a productive and enduring journey of contributions!

Edit: I couldn't find configuration files for `barthez`. Any help is appreciated!

I'll take roformer #26530