Auto modelcard (#11599)

* Autogenerate model cards from the Trainer

* ModelCard deprecated

* Fix test

* Style

* Apply suggestions from code review

Co-authored-by: Patrick von Platen <patrick.v.platen@gmail.com>

* Address review comments

* Quality

* With all metadata

* Metadata

* Post-merge conflict mess

* Data args and all examples

* Default license and languages when possible

Co-authored-by: Patrick von Platen <patrick.v.platen@gmail.com>
This commit is contained in:
Sylvain Gugger
2021-05-11 11:30:34 -04:00
committed by GitHub
parent b3429ab678
commit a135f59536
14 changed files with 564 additions and 41 deletions

View File

@@ -447,7 +447,16 @@ def main():
trainer.save_metrics("eval", metrics)
if training_args.push_to_hub:
trainer.push_to_hub()
kwargs = {"finetuned_from": model_args.model_name_or_path, "tags": "text-generation"}
if data_args.dataset_name is not None:
kwargs["dataset_tags"] = data_args.dataset_name
if data_args.dataset_config_name is not None:
kwargs["dataset_args"] = data_args.dataset_config_name
kwargs["dataset"] = f"{data_args.dataset_name} {data_args.dataset_config_name}"
else:
kwargs["dataset"] = data_args.dataset_name
trainer.push_to_hub(**kwargs)
def _mp_fn(index):

View File

@@ -476,7 +476,16 @@ def main():
trainer.save_metrics("eval", metrics)
if training_args.push_to_hub:
trainer.push_to_hub()
kwargs = {"finetuned_from": model_args.model_name_or_path, "tags": "fill-mask"}
if data_args.dataset_name is not None:
kwargs["dataset_tags"] = data_args.dataset_name
if data_args.dataset_config_name is not None:
kwargs["dataset_args"] = data_args.dataset_config_name
kwargs["dataset"] = f"{data_args.dataset_name} {data_args.dataset_config_name}"
else:
kwargs["dataset"] = data_args.dataset_name
trainer.push_to_hub(**kwargs)
def _mp_fn(index):

View File

@@ -452,7 +452,16 @@ def main():
trainer.save_metrics("eval", metrics)
if training_args.push_to_hub:
trainer.push_to_hub()
kwargs = {"finetuned_from": model_args.model_name_or_path, "tags": "language-modeling"}
if data_args.dataset_name is not None:
kwargs["dataset_tags"] = data_args.dataset_name
if data_args.dataset_config_name is not None:
kwargs["dataset_args"] = data_args.dataset_config_name
kwargs["dataset"] = f"{data_args.dataset_name} {data_args.dataset_config_name}"
else:
kwargs["dataset"] = data_args.dataset_name
trainer.push_to_hub(**kwargs)
def _mp_fn(index):

View File

@@ -428,7 +428,14 @@ def main():
trainer.save_metrics("eval", metrics)
if training_args.push_to_hub:
trainer.push_to_hub()
trainer.push_to_hub(
finetuned_from=model_args.model_name_or_path,
tags="multiple-choice",
dataset_tags="swag",
dataset_args="regular",
dataset="SWAG",
language="en",
)
def _mp_fn(index):

View File

@@ -601,7 +601,16 @@ def main():
trainer.save_metrics("predict", metrics)
if training_args.push_to_hub:
trainer.push_to_hub()
kwargs = {"finetuned_from": model_args.model_name_or_path, "tags": "question-answering"}
if data_args.dataset_name is not None:
kwargs["dataset_tags"] = data_args.dataset_name
if data_args.dataset_config_name is not None:
kwargs["dataset_args"] = data_args.dataset_config_name
kwargs["dataset"] = f"{data_args.dataset_name} {data_args.dataset_config_name}"
else:
kwargs["dataset"] = data_args.dataset_name
trainer.push_to_hub(**kwargs)
def _mp_fn(index):

View File

@@ -640,7 +640,16 @@ def main():
trainer.save_metrics("predict", metrics)
if training_args.push_to_hub:
trainer.push_to_hub()
kwargs = {"finetuned_from": model_args.model_name_or_path, "tags": "question-answering"}
if data_args.dataset_name is not None:
kwargs["dataset_tags"] = data_args.dataset_name
if data_args.dataset_config_name is not None:
kwargs["dataset_args"] = data_args.dataset_config_name
kwargs["dataset"] = f"{data_args.dataset_name} {data_args.dataset_config_name}"
else:
kwargs["dataset"] = data_args.dataset_name
trainer.push_to_hub(**kwargs)
def _mp_fn(index):

View File

@@ -583,7 +583,16 @@ def main():
writer.write("\n".join(predictions))
if training_args.push_to_hub:
trainer.push_to_hub()
kwargs = {"finetuned_from": model_args.model_name_or_path, "tags": "summarization"}
if data_args.dataset_name is not None:
kwargs["dataset_tags"] = data_args.dataset_name
if data_args.dataset_config_name is not None:
kwargs["dataset_args"] = data_args.dataset_config_name
kwargs["dataset"] = f"{data_args.dataset_name} {data_args.dataset_config_name}"
else:
kwargs["dataset"] = data_args.dataset_name
trainer.push_to_hub(**kwargs)
return results

View File

@@ -516,7 +516,14 @@ def main():
writer.write(f"{index}\t{item}\n")
if training_args.push_to_hub:
trainer.push_to_hub()
kwargs = {"finetuned_from": model_args.model_name_or_path, "tags": "text-classification"}
if data_args.task_name is not None:
kwargs["language"] = "en"
kwargs["dataset_tags"] = "glue"
kwargs["dataset_args"] = data_args.task_name
kwargs["dataset"] = f"GLUE {data_args.task_name.upper()}"
trainer.push_to_hub(**kwargs)
def _mp_fn(index):

View File

@@ -491,7 +491,16 @@ def main():
writer.write(" ".join(prediction) + "\n")
if training_args.push_to_hub:
trainer.push_to_hub()
kwargs = {"finetuned_from": model_args.model_name_or_path, "tags": "token-classification"}
if data_args.dataset_name is not None:
kwargs["dataset_tags"] = data_args.dataset_name
if data_args.dataset_config_name is not None:
kwargs["dataset_args"] = data_args.dataset_config_name
kwargs["dataset"] = f"{data_args.dataset_name} {data_args.dataset_config_name}"
else:
kwargs["dataset"] = data_args.dataset_name
trainer.push_to_hub(**kwargs)
def _mp_fn(index):

View File

@@ -575,7 +575,20 @@ def main():
writer.write("\n".join(predictions))
if training_args.push_to_hub:
trainer.push_to_hub()
kwargs = {"finetuned_from": model_args.model_name_or_path, "tags": "translation"}
if data_args.dataset_name is not None:
kwargs["dataset_tags"] = data_args.dataset_name
if data_args.dataset_config_name is not None:
kwargs["dataset_args"] = data_args.dataset_config_name
kwargs["dataset"] = f"{data_args.dataset_name} {data_args.dataset_config_name}"
else:
kwargs["dataset"] = data_args.dataset_name
languages = [l for l in [data_args.source_lang, data_args.target_lang] if l is not None]
if len(languages) > 0:
kwargs["language"] = languages
trainer.push_to_hub(**kwargs)
return results