Sebastian Gehrmann commited on
Commit
9999db9
1 Parent(s): 5cd2405

Add formatting lookup for prompts

Browse files
datacards/curation.py CHANGED
@@ -171,7 +171,7 @@ def curation_page():
171
  # If expert or crowdsourced, this branch
172
  if st.session_state.card_dict["curation"]["annotations"]["origin"] in ["expert created", "crowd-sourced"]:
173
  make_selectbox(
174
- label="What is the number of raters ",
175
  options=["unknown", "1", "2<n<10", "11<n<50", "51<n<100", "n>100"],
176
  key_list=key_pref + ["rater-number"],
177
  help="How many raters were used to create the additional annotations?",
@@ -269,7 +269,7 @@ def curation_page():
269
  st.session_state.card_dict["curation"]["consent"]["consent-policy"] = "N/A"
270
  st.session_state.card_dict["curation"]["consent"]["consent-other"] = "N/A"
271
  make_text_area(
272
- label="If not, what is the justification for reusing the data? ",
273
  key_list=key_pref+["no-consent-justification"],
274
  help="Why would be a justification the data without consent of the data creators in this case?",
275
  )
@@ -330,7 +330,7 @@ def curation_page():
330
  )
331
  if st.session_state.card_dict["curation"]["pii"]["is-pii-replaced"] == "yes":
332
  make_text_area(
333
- label="Describe the methods that were used to process the PII",
334
  key_list=key_pref+["pii-replaced-method"],
335
  )
336
  else:
171
  # If expert or crowdsourced, this branch
172
  if st.session_state.card_dict["curation"]["annotations"]["origin"] in ["expert created", "crowd-sourced"]:
173
  make_selectbox(
174
+ label="What is the number of raters?",
175
  options=["unknown", "1", "2<n<10", "11<n<50", "51<n<100", "n>100"],
176
  key_list=key_pref + ["rater-number"],
177
  help="How many raters were used to create the additional annotations?",
269
  st.session_state.card_dict["curation"]["consent"]["consent-policy"] = "N/A"
270
  st.session_state.card_dict["curation"]["consent"]["consent-other"] = "N/A"
271
  make_text_area(
272
+ label="If not, what is the justification for reusing the data?",
273
  key_list=key_pref+["no-consent-justification"],
274
  help="Why would be a justification the data without consent of the data creators in this case?",
275
  )
330
  )
331
  if st.session_state.card_dict["curation"]["pii"]["is-pii-replaced"] == "yes":
332
  make_text_area(
333
+ label="Describe the methods that were used to process the PII.",
334
  key_list=key_pref+["pii-replaced-method"],
335
  )
336
  else:
datacards/gem.py CHANGED
@@ -46,6 +46,7 @@ def gem_page():
46
  help="Describe briefly for each similar dataset (same task/languages) what sets this one apart",
47
  )
48
  else:
 
49
  st.session_state.card_dict["gem"]["rationale"]["distinction-description"] = "N/A"
50
 
51
  make_text_area(
46
  help="Describe briefly for each similar dataset (same task/languages) what sets this one apart",
47
  )
48
  else:
49
+ st.session_state.card_dict["gem"]["rationale"]["sole-language-task-dataset"] = "N/A"
50
  st.session_state.card_dict["gem"]["rationale"]["distinction-description"] = "N/A"
51
 
52
  make_text_area(
datacards/results.py CHANGED
@@ -70,7 +70,7 @@ def results_page():
70
  help="If the current evaluation strategy diverts from the original, describe how models are being evaluated.",
71
  )
72
  make_text_area(
73
- label="What are the most relevant previous results for this task/dataset",
74
  key_list=key_pref + ["previous-results"],
75
  help="List and describe the source and performance metrics for models on this dataset.",
76
  )
70
  help="If the current evaluation strategy diverts from the original, describe how models are being evaluated.",
71
  )
72
  make_text_area(
73
+ label="What are the most relevant previous results for this task/dataset?",
74
  key_list=key_pref + ["previous-results"],
75
  help="List and describe the source and performance metrics for models on this dataset.",
76
  )
formatting/README.md ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
1
+ # Formatting Utilities
2
+
3
+ The resources in this folder are used to format the saved datacard in a readable format.
4
+ The file `key_to_question.json` maps from the saved key back to the original question which can then be parsed into question/answer pairs.
5
+
6
+
7
+ In the json, everything labeled `N/A` will get rendered, empty fields will be completely omitted.
formatting/key_to_question.json ADDED
@@ -0,0 +1,189 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "overview": {
3
+ "section-title": "Dataset Overview",
4
+ "where": {
5
+ "section-title": "Where to find the data and its documentation",
6
+ "website": "What is the webpage for the dataset (if it exists)?",
7
+ "data-url": "What is the link to where the original dataset is hosted?",
8
+ "paper-url": "What is the link to the paper describing the dataset (open access preferred)?",
9
+ "paper-bibtext": "Provide the BibTex-formatted reference for the dataset. Please use the correct published version (ACL anthology, etc.) instead of google scholar created Bibtex.",
10
+ "contact-name": "If known, provide the name of at least one person the reader can contact for questions about the dataset.",
11
+ "contact-email": "If known, provide the email of at least one person the reader can contact for questions about the dataset.",
12
+ "has-leaderboard": "Does the dataset have an active leaderboard?",
13
+ "leaderboard-url": "Provide a link to the leaderboard.",
14
+ "leaderboard-description": "Briefly describe how the leaderboard evaluates models."
15
+ },
16
+ "languages": {
17
+ "section-title": "Languages and Intended Use",
18
+ "is-multilingual": "Is the dataset multilingual?",
19
+ "language-dialects": "What dialects are covered? Are there multiple dialects per language?",
20
+ "language-names": "What languages/dialects are covered in the dataset?",
21
+ "language-speakers": "Whose language is in the dataset?",
22
+ "license": "What is the license of the dataset?",
23
+ "task-other": "What is the primary task?",
24
+ "intended-use": "What is the intended use of the dataset?",
25
+ "license-other": "What is the 'other' license of the dataset?",
26
+ "task": "What primary task does the dataset support?",
27
+ "communicative": "Provide a short description of the communicative goal of a model trained for this task on this dataset."
28
+ },
29
+ "credit": {
30
+ "section-title": "Credit",
31
+ "organization-type": "In what kind of organization did the dataset curation happen?",
32
+ "organization-names": "Name the organization(s).",
33
+ "creators": "Who created the original dataset? List the people involved in collecting the dataset and their affiliation(s).",
34
+ "funding": "Who funded the data creation?",
35
+ "gem-added-by": "Who contributed to the data card and adding the dataset to GEM? List the people+affiliations involved in creating this data card and who helped integrate this dataset into GEM."
36
+ },
37
+ "structure": {
38
+ "section-title": "Structure",
39
+ "data-fields": "List and describe the fields present in the dataset.",
40
+ "structure-description": "How was the dataset structure determined?",
41
+ "structure-labels": "How were the labels chosen?",
42
+ "structure-example": "Provide a JSON formatted example of a typical instance in the dataset.",
43
+ "structure-splits": "Describe and name the splits in the dataset if there are more than one.",
44
+ "structure-splits-criteria": "Describe any criteria for splitting the data, if used. If there are differences between the splits (e.g., if the training annotations are machine-generated and the dev and test ones are created by humans, or if different numbers of annotators contributed to each example), describe them here.",
45
+ "structure-outlier": "What does an outlier of the dataset in terms of length/perplexity/embedding look like?"
46
+ }
47
+ },
48
+ "gem": {
49
+ "section-title": "Dataset in GEM",
50
+ "rationale": {
51
+ "section-title": "Rationale",
52
+ "contribution": "What does this dataset contribute toward better generation evaluation and why is it part of GEM?",
53
+ "sole-task-dataset": "Do other datasets for the high level task exist?",
54
+ "sole-language-task-dataset": "Does this dataset cover other languages than other datasets for the same task?",
55
+ "distinction-description": "What else sets this dataset apart from other similar datasets in GEM?",
56
+ "model-ability": "What aspect of model ability can be measured with this dataset?"
57
+ },
58
+ "curation": {
59
+ "section-title": "GEM Additional Curation",
60
+ "has-additional-curation": "Has the GEM version of the dataset been modified in any way (data, processing, splits) from the original curated data?",
61
+ "modification-types": "What changes have been made to he original dataset?",
62
+ "modification-description": "For each of these changes, described them in more details and provided the intended purpose of the modification",
63
+ "has-additional-splits": "Does GEM provide additional splits to the dataset?",
64
+ "additional-splits-description": "Describe how the new splits were created",
65
+ "additional-splits-capacicites": "What aspects of the model's generation capacities were the splits created to test?"
66
+ },
67
+ "starting": {
68
+ "section-title": "Getting Started",
69
+ "research-pointers": "Getting started with in-depth research on the task. Add relevant pointers to resources that researchers can consult when they want to get started digging deeper into the task.",
70
+ "technical-terms": "Technical terms used in this card and the dataset and their definitions"
71
+ }
72
+ },
73
+ "results": {
74
+ "section-title": "Previous Results",
75
+ "results": {
76
+ "section-title": "Previous Results",
77
+ "model-abilities": "What aspect of model ability can be measured with this dataset?",
78
+ "metrics": "What metrics are typically used for this task?",
79
+ "other-metrics-definitions": "Definitions of other metrics",
80
+ "original-evaluation": "List and describe the purpose of the metrics and evaluation methodology (including human evaluation) that the dataset creators used when introducing this task.",
81
+ "has-previous-results": "Are previous results available?",
82
+ "current-evaluation": "What evaluation approaches have others used?",
83
+ "previous-results": "What are the most relevant previous results for this task/dataset?"
84
+ }
85
+ },
86
+ "curation": {
87
+ "section-title": "Dataset Curation",
88
+ "original": {
89
+ "section-title": "Original Curation",
90
+ "rationale": "Original curation rationale",
91
+ "communicative": "What was the communicative goal?",
92
+ "is-aggregated": "Is the dataset aggregated from different data sources?",
93
+ "aggregated-sources": "List the sources (one per line)"
94
+ },
95
+ "language": {
96
+ "section-title": "Language Data",
97
+ "obtained": "How was the language data obtained?",
98
+ "found": "If found, where from?",
99
+ "crowdsourced": "If crowdsourced, where from?",
100
+ "created": "If created for the dataset, describe the creation process.",
101
+ "machine-generated": "If text was machine-generated for the dataset, provide a link to the generation method if available (N/A otherwise).",
102
+ "producers-description": "What further information do we have on the language producers?",
103
+ "topics": "Does the language in the dataset focus on specific topics? How would you describe them?",
104
+ "validated": "Was the text validated by a different worker or a data curator?",
105
+ "pre-processed": "How was the text data pre-processed? (Enter N/A if the text was not pre-processed)",
106
+ "is-filtered": "Were text instances selected or filtered?",
107
+ "filtered-criteria": "What were the selection criteria?"
108
+ },
109
+ "annotations": {
110
+ "section-title": "Structured Annotations",
111
+ "origin": "Does the dataset have additional annotations for each instance?",
112
+ "rater-number": "What is the number of raters",
113
+ "rater-qualifications": "Describe the qualifications required of an annotator.",
114
+ "rater-training-num": "How many annotators saw each training example?",
115
+ "rater-test-num": "How many annotators saw each test example?",
116
+ "rater-annotation-service-bool": "Was an annotation service used?",
117
+ "rater-annotation-service": "Which annotation services were used?",
118
+ "values": "Purpose and values for each annoation",
119
+ "quality-control": "Quality control measures?",
120
+ "quality-control-details": "Describe the quality control measures that were taken."
121
+ },
122
+ "consent": {
123
+ "section-title": "Consent",
124
+ "has-consent": "Was there a consent policy involved when gathering the data?",
125
+ "consent-policy": "What was the consent policy?",
126
+ "consent-other": "What other downstream uses of the data did the original data creators and the data curators consent to?",
127
+ "no-consent-justification": "If not, what is the justification for reusing the data?"
128
+ },
129
+ "pii": {
130
+ "section-title": "Private Identifying Information (PII)",
131
+ "has-pii": "Does the source language data likely contain Personal Identifying Information about the data creators or subjects?",
132
+ "no-pii-justification": "Provide a justification for selecting `no PII` above.",
133
+ "pii-categories": "What categories of PII are present or suspected in the data?",
134
+ "is-pii-identified": "Did the curators use any automatic/manual method to identify PII in the dataset?",
135
+ "pii-identified-method": "Describe the method used to identify PII in the dataset.",
136
+ "is-pii-replaced": "Was the PII pseudonymized/handled somehow?",
137
+ "pii-replaced-method": "Describe the methods that were used to process the PII."
138
+ },
139
+ "maintenance": {
140
+ "section-title": "Maintenance",
141
+ "has-maintenance": "Does the original dataset have a maintenance plan?",
142
+ "description": "Describe the original dataset's maintenance plan.",
143
+ "contact": "Provide contact information of a person responsible for the dataset maintenance",
144
+ "contestation-mechanism": "Does the maintenance plan include a contestation mechanism allowing individuals to request removal fo content?",
145
+ "contestation-description": "Describe the contestation mechanism",
146
+ "contestation-link": "Provide the form link or contact information"
147
+ }
148
+ },
149
+ "context": {
150
+ "section-title": "Broader Social Context",
151
+ "previous": {
152
+ "section-title": "Previous Work on the Social Impact of the Dataset",
153
+ "is-deployed": "Are you aware of cases where models trained on the task featured in this dataset ore related tasks have been used in automated systems?",
154
+ "described-risks": "Did any of these previous uses result in observations about the social impact of the systems? In particular, has there been work outlining the risks and limitations of the system? Provide links and descriptions here.",
155
+ "changes-from-observation": "Have any changes been made to the dataset as a result of these observations?"
156
+ },
157
+ "underserved": {
158
+ "section-title": "Impact on Under-Served Communities",
159
+ "helps-underserved": "Does this dataset address the needs of communities that are traditionally underserved in language technology, and particularly language generation technology? Communities may be underserved for exemple because their language, language variety, or social or geographical context is underepresented in NLP and NLG resources (datasets and models).",
160
+ "underserved-description": "Describe how this dataset addresses the needs of underserved communities."
161
+ },
162
+ "biases": {
163
+ "section-title": "Discussion of Biases",
164
+ "has-biases": "Are there documented social biases in the dataset? Biases in this context are variations in the ways members of different social categories are represented that can have harmful downstream consequences for members of the more disadvantaged group.",
165
+ "bias-analyses": "Provide links to and summaries of works analyzing these biases.",
166
+ "speaker-distibution": "Does the distribution of language producers in the dataset accurately represent the full distribution of speakers of the language world-wide? If not, how does it differ?"
167
+ }
168
+ },
169
+ "considerations": {
170
+ "section-title": "Considerations for Using the Data",
171
+ "pii": {
172
+ "section-title": "PII Risks and Liability",
173
+ "risks-description": "Considering your answers to the PII part of the Data Curation Section, describe any potential privacy to the data subjects and creators risks when using the dataset."
174
+ },
175
+ "licenses": {
176
+ "section-title": "Licenses",
177
+ "dataset-restrictions": "Based on your answers in the Intended Use part of the Data Overview Section, which of the following best describe the copyright and licensing status of the dataset?",
178
+ "dataset-restrictions-other": "You selected `other` for the dataset licensing status, please elaborate here:",
179
+ "data-copyright": "Based on your answers in the Language part of the Data Curation Section, which of the following best describe the copyright and licensing status of the underlying language data?",
180
+ "data-copyright-other": "You selected `other` for the source data licensing status, please elaborate here:"
181
+ },
182
+ "limitations": {
183
+ "section-title": "Known Technical Limitations",
184
+ "data-technical-limitations": "Describe any known technical limitations, such as spurrious correlations, train/test overlap, annotation biases, or mis-annotations, and cite the works that first identified these limitations when possible.",
185
+ "data-unsuited-applications": "When using a model trained on this dataset in a setting where users or the public may interact with its predictions, what are some pitfalls to look out for? In particular, describe some applications of the general task featured in this dataset that its curation or properties make it less suitable for.",
186
+ "data-discouraged-use": "What are some discouraged use cases of a model trained to maximize the proposed metrics on this dataset? In particular, think about settings where decisions made by a model that performs reasonably well on the metric my still have strong negative consequences for user or members of the public."
187
+ }
188
+ }
189
+ }