Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Model resources contribution #20055

Closed
stevhliu opened this issue Nov 3, 2022 · 60 comments · Fixed by #20084, #20190, #20723, #20742 or #21270
Closed

Model resources contribution #20055

stevhliu opened this issue Nov 3, 2022 · 60 comments · Fixed by #20084, #20190, #20723, #20742 or #21270
Labels
Good First Documentation Issue Good First Issue Help wanted Extra attention is needed, help appreciated

Comments

@stevhliu
Copy link
Member

stevhliu commented Nov 3, 2022

Hi friends! 👋

There are a lot of cool existing resources for how to do x with x model, and we’d like to showcase and aggregate these resources on a model’s documentation. This’ll help users see how they can get started with a model for their own tasks since we know a lot of users check out the model documentation first. Take a look at a completed resource section for DistilBERT as an example.

I’ve identified the top 20 models by pageviews, and now I’d like to open it up to the community if anyone is interested in helping!

Anyone can contribute; you just need to comment and claim one of the models on this list. Contributing is super easy:

  1. Once you've claimed a model from the list, collect the existing resources from:
  1. Organize the resources by model tasks or applications (like inference or deployment):
  • Use the corresponding icons for each task (you can find the names for each icon here):
    <PipelineTag pipeline=”name-of-task”/>
    
  • For certain categories, you can just do: 🚀 Deploy, ⚡️ Inference, or ⚗️ Optimization, etc.
  • For community resources, add the 🌎 emoji at the end to indicate it’s not an official Hugging Face resource.
  • Use this DistilBERT file as a template. You can copy and paste the intro text and just replace DistilBERT with the name of the model you're working on.
  1. Open a Pull Request with the new resources for your chosen model and ping me for a review (if you’re just getting started with contributing to an open-source project, check out @merveenoyan's awesome GitHub Contribution Guide).

  2. Congratulations, you just merged a PR into 🤗 Transformers, and your contribution will now help anyone who is looking at the model docs! 🎉

If you have any questions or need any help, don’t hesitate to ping me! 🤗❤️

@stevhliu stevhliu added Help wanted Extra attention is needed, help appreciated Good First Documentation Issue labels Nov 3, 2022
@shogohida
Copy link
Contributor

Hi @stevhliu, I want to work on OpenAI GPT!

@stevhliu
Copy link
Member Author

stevhliu commented Nov 4, 2022

Awesome! I'm looking forward to your contribution, and feel free to ping me if you have any questions! 🤗

@shogohida
Copy link
Contributor

shogohida commented Nov 6, 2022

@stevhliu
I have a question. Is there a good way to search GitHub and blog posts? I tried to find related repos and blog posts with the word OpenAI GPT but I couldn't find them because search function doesn't seem to work well... Should I search one by one repo or post?

I made a draft pull request although it doesn't have links of GitHub and blog. You can check it to see if my research has been good or not
#20084

@stevhliu
Copy link
Member Author

stevhliu commented Nov 7, 2022

Hey @shogohida, thanks for starting on this!

The easiest way I've found for searching the blog posts is to go to the blog repo and search for mentions of GPT inside the repo. Then you can take a look at the results and see what's relevant!

For GitHub materials, you only have to look at the example scripts, and notebooks and see what task your model can be applied to. For example, OpenAI GPT is a casual language model, so you can link to example scripts for causal language modeling and also text generation. You can link the equivalent scripts in TensorFlow and Flax if they're available.

After the scripts, you can hop over to the notebooks and see what task your model can be applied to (language modeling, generate text) and do the same thing for the community notebooks!

@shogohida
Copy link
Contributor

@stevhliu
Thanks for your comment! It will take a lot of time to collect resources from scripts and notebooks because I'm not very familiar with OpenAI GPT but I'll do my best. I'll let you know if I have another question

@ambujpawar
Copy link
Contributor

Hi, I would like to take CLIP from the list you have mentioned. :)

@stevhliu
Copy link
Member Author

stevhliu commented Nov 9, 2022

That's great @ambujpawar! I'm looking forward to your contribution, and feel free to ping me if you have any questions! 🤗

@Saad135
Copy link
Contributor

Saad135 commented Nov 10, 2022

@stevhliu I would like to work on DeBERTa

@Saad135 Saad135 mentioned this issue Nov 10, 2022
5 tasks
@stevhliu
Copy link
Member Author

Great, thanks for taking on DeBERTa @Saad135! 🤗

@JuheonChu
Copy link
Contributor

JuheonChu commented Nov 28, 2022

Hello, do you mind if I can tackle on ALBERT model? @stevhliu

@stevhliu
Copy link
Member Author

For sure, looking forward to your contribution @JuheonChu! 🤗

@stanleycai95
Copy link
Contributor

stanleycai95 commented Dec 3, 2022

Hi! Could I try ViT? It might take me some time though as have some work projects to complete too.

@hazrulakmal
Copy link
Contributor

Hi, I would like to work on XLM-RoBERTa! @stevhliu

@stevhliu
Copy link
Member Author

stevhliu commented Dec 5, 2022

Hey @stanleycai95, that would be great! Feel free to work on it when you have the time :)

Awesome, XLM-RoBERTa is all yours @hazrulakmal!

@elabongaatuo
Copy link
Contributor

@stevhliu hello, @ENate can take it up. 😊

@ENate
Copy link
Contributor

ENate commented Jun 24, 2023

Okay then. Will proceed using the guidelines provided by @stevhliu and the example for DIstilBERT.

@ENate
Copy link
Contributor

ENate commented Jun 29, 2023

@stevhliu - I saw that there is a resource for ALBERT at:

https://huggingface.co/docs/transformers/main/en/model_doc/albert

which is similar to the resources for DistilBERT you mentioned in the guidelines above at:

https://huggingface.co/docs/transformers/main/en/model_doc/distilbert#resources 

@stevhliu
Copy link
Member Author

Yeah ALBERT only has the task guides, and it doesn't go quite as in-depth as DistilBERT. For example, DistilBERT includes links to the course, notebooks, and scripts. You can probably just copy over most of the content from DistilBERT that is relevant to ALBERT (in other words, replace DistilBERTForX with ALBERTForX)!

@ENate
Copy link
Contributor

ENate commented Jun 30, 2023

Thanks :) @stevhliu

@daniela-basurto
Copy link

Hello @stevhliu is Jukebox still available?

@stevhliu
Copy link
Member Author

Feel free to open a PR for Jukebox @daniela-basurto! 🤗

@wonhyeongseo
Copy link
Contributor

wonhyeongseo commented Jul 11, 2023

Hello @stevhliu may I please take up whisper with a few of the OSSCA mentees?

Cc: tysm @ArthurZucker for the pointer! We'll start compiling models with incomplete resource tabs so our mentees can work on them.

@stevhliu
Copy link
Member Author

Yes absolutely, thanks for your interest @wonhyeongseo!

@wonhyeongseo
Copy link
Contributor

wonhyeongseo commented Jul 21, 2023

I ran a simple grep -wL * -e "## Resources" command, and a total of 150 out of 222 documents would benefit from this issue. I'm not sure if all of these are open for contributions though.
Below is the todo list with contributors I saw recently.

Model Docs in need of resources [Updated 23-07-22]:

  • albert
  • altclip
  • bark
  • barthez
  • bartpho
  • bert-generation
  • bert-japanese
  • bertweet
  • big_bird
  • bigbird_pegasus
  • biogpt
  • blenderbot-small
  • blenderbot
  • bridgetower
  • byt5
  • camembert
  • canine
  • chinese_clip
  • clap
  • codegen
  • conditional_detr
  • convbert
  • cpm
  • cpmant
  • ctrl
  • deberta-v2
  • decision_transformer
  • deplot
  • dialogpt
  • dinov2
  • donut
  • dpr
  • efficientformer
  • efficientnet
  • electra
  • encodec
  • encoder-decoder
  • ernie
  • ernie_m
  • esm
  • flan-t5
  • flan-ul2
  • flaubert
  • flava
  • fnet
  • focalnet
  • fsmt
  • funnel
  • gpt-sw3
  • gpt_bigcode
  • gpt_neo
  • gpt_neox
  • gpt_neox_japanese
  • gptsan-japanese
  • graphormer
  • herbert
  • hubert
  • ibert
  • instructblip
  • jukebox @daniela-basurto
  • layoutxlm
  • led
  • llama @wonhyeongseo and OSSCA
  • llama2
  • longformer
  • longt5
  • luke
  • lxmert
  • m2m_100
  • marian
  • markuplm
  • matcha
  • mbart
  • mega
  • megatron-bert
  • megatron_gpt2
  • mgp-str
  • mluke
  • mms
  • mobilebert
  • mobilevitv2
  • mpnet
  • mra
  • mt5
  • musicgen
  • mvp
  • nezha
  • nllb-moe
  • nllb
  • nystromformer
  • owlvit
  • pegasus
  • pegasus_x
  • perceiver
  • phobert
  • plbart
  • prophetnet
  • qdqbert
  • rag
  • realm
  • reformer
  • rembert
  • roberta-prelayernorm
  • roc_bert
  • roformer
  • rwkv
  • sam
  • sew-d
  • sew
  • speech-encoder-decoder
  • speech_to_text
  • speech_to_text_2
  • speecht5
  • splinter
  • squeezebert
  • swiftformer
  • t5v1.1
  • tapas
  • timesformer
  • todo
  • tvlt
  • ul2
  • umt5
  • unispeech-sat
  • unispeech
  • vilt
  • vision-encoder-decoder
  • vision-text-dual-encoder
  • visual_bert
  • vivit
  • wav2vec2-conformer
  • wav2vec2_phoneme
  • wavlm
  • whisper @wonhyeongseo and OSSCA
  • xglm
  • xlm-prophetnet
  • xlm-roberta-xl
  • xlm-v
  • xlm
  • xlnet
  • xls_r
  • xlsr_wav2vec2
  • yoso

@ahtashamilyas
Copy link

Ok.

@stevhliu
Copy link
Member Author

I'm not sure if all of these are open for contributions though.

Thanks for checking @wonhyeongseo! I think it would be nice to eventually have Resources for all the models, so if you see other ones you're interested in contributing to, feel free to open a PR! I would focus on the more high-impact models first (like LLaMA) that get more pageviews/usage. For certain models (like BORT) that are in maintenance mode, we can skip those entirely.

@wonhyeongseo
Copy link
Contributor

Awesome @stevhliu , thank you so much for your warm reception.

  • May we please reserve LLaMA as well for the OSSCA team?
  • In your opinion, when is the ideal time to start gathering resources after a model's release?
    For LLaMA2, since it's relatively new, there might not be many official resources yet. It will depend on a models impact as you described, but a rule of thumb would be useful.
  • Although I think this is already the case, would it be possible for you to sort these incomplete models and provide the top 20 sorted by impact or page views as of recent advances?
    I'm sure some will pique the interest of my team and our mentees.

Thank you for the heads up for files under maintenance! I've deleted 8 of those from the above #20055 (comment) list by grep -LZ "## Resources" * | xargs -0 grep -l "<Tip warning={true}>" :

auto.md
bort.md
mctct.md
open-llama.md
retribert.md
tapex.md
trajectory_transformer.md
transfo-xl.md

Thank you so much for your support @stevhliu .
Hope you have a wonderful weekend!

Best regards,
Won Seo

@stevhliu
Copy link
Member Author

May we please reserve LLaMA as well for the OSSCA team?

For sure! 👍

In your opinion, when is the ideal time to start gathering resources after a model's release?

I think maybe whenever you see some content, you can open a PR to add it to the model page. It's ok if it's just one guide/tutorial/blog post; we can gradually add to it as more content and resources get created. For example, Philipp has a blog post about fine-tuning LLaMA 2 on SageMaker here that can be added :)

Although I think this is already the case, would it be possible for you to sort these incomplete models and provide the top 20 sorted by impact or page views as of recent advances?

By downloads, here are the next top 20 models (its okay to skip some of the models if there aren't any available resources for them):

BART
CLIPSeg
Marian
MPNet
ELECTRA
ResNet
CamemBERT
HuBERT
LLaMA
Longformer
VisionEncoderDecoder
GPT NeoX
EnCodec
ConvBERT
mBART
GPT Neo
FNet
YOLOS
BLIP
BEiT

@ahtashamilyas
Copy link

ok

@ajaitly11
Copy link

ajaitly11 commented Aug 3, 2023

@stevhliu
Hello, I would like to put together some resources for Longformer, willing to look into CamemBERT as well if Longformer has already been taken.

@debrupf2946
Copy link

Hi @stevhliu can I work on LLaMA, can you please assign me?

@eenzeenee eenzeenee mentioned this issue Oct 2, 2023
4 tasks
@stevhliu
Copy link
Member Author

stevhliu commented Oct 2, 2023

Hi @debrupf2946, we already have a resource section for Llama. Feel free to work on another model if you're interested!

@siddharth1012
Copy link

Hi @stevhliu Can I work on ALBERT, which is the only left model in the list?

@ENate
Copy link
Contributor

ENate commented Oct 23, 2023

Hi @siddharth1012 I am almost done with ALBERT and about to open a PR. Issue is due to a doc-builder issue I encountered. Also the problem on Cython version.

@ENate
Copy link
Contributor

ENate commented Oct 23, 2023

So I am working on ALBERT thanks

@jaykhatri0875
Copy link

Hi, is there anything that i can help with? i can see lot of diff models are being talked above, where can find open list ?
thanks,

@stevhliu
Copy link
Member Author

Hi, thanks for your interest @jaykhatri0875! The open model list is here but I think we're close to completing it. If you're interested in making other contributions, feel free to check out the Good First Issues 🤗

@stevhliu
Copy link
Member Author

All finished now! 🥳

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment