Skip to content

Commit 909736d

Browse files
authored
Website: list per language the missing intents (OHF-Voice#2526)
* List missing intents * Black
1 parent c3cf63d commit 909736d

File tree

2 files changed

+50
-21
lines changed

2 files changed

+50
-21
lines changed

script/intentfest/website_summary.py

Lines changed: 27 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111

1212

1313
def run() -> int:
14-
language_summaries = []
14+
language_summaries = {}
1515

1616
language_info = yaml.safe_load(LANGUAGES_FILE.read_text())
1717

@@ -55,10 +55,11 @@ def run() -> int:
5555
for translation in merged_sentences["responses"]["errors"].values()
5656
)
5757

58-
usable = (
59-
all(intent_sentence_count[key] for key in IMPORTANT_INTENTS)
60-
and errors_translated
61-
)
58+
missing_intents = [
59+
intent for intent in IMPORTANT_INTENTS if not intent_sentence_count[intent]
60+
]
61+
62+
usable = not missing_intents and errors_translated
6263

6364
complete = (
6465
all(value > 0 for value in intent_sentence_count.values())
@@ -73,20 +74,19 @@ def run() -> int:
7374
for intent, response_set in used_responses_per_intent.items()
7475
}
7576

76-
language_summaries.append(
77-
{
78-
"language": language,
79-
"native_name": language_info[language]["nativeName"],
80-
"leaders": language_info[language].get("leaders"),
81-
"intents": intent_sentence_count,
82-
"used_responses": used_responses_count,
83-
"responses": response_sentence_count,
84-
"intent_responses_translated": intent_responses_translated,
85-
"errors_translated": errors_translated,
86-
"usable": usable,
87-
"complete": complete,
88-
}
89-
)
77+
language_summaries[language] = {
78+
"language": language,
79+
"native_name": language_info[language]["nativeName"],
80+
"leaders": language_info[language].get("leaders"),
81+
"intents": intent_sentence_count,
82+
"used_responses": used_responses_count,
83+
"responses": response_sentence_count,
84+
"intent_responses_translated": intent_responses_translated,
85+
"errors_translated": errors_translated,
86+
"usable": usable,
87+
"complete": complete,
88+
"missing_intents": missing_intents,
89+
}
9090

9191
intents = {}
9292
for intent, info in intent_info.items():
@@ -100,6 +100,14 @@ def run() -> int:
100100
{
101101
"intents": intents,
102102
"languages": language_summaries,
103+
"improvements": [
104+
info["language"]
105+
for info in sorted(
106+
language_summaries.values(),
107+
key=lambda x: (len(x["missing_intents"]), x["language"]),
108+
)
109+
if info["missing_intents"]
110+
],
103111
},
104112
indent=2,
105113
)

website/src-11ty/index.html

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,15 +30,16 @@
3030
<thead>
3131
<tr>
3232
<th>Language</th>
33-
{% for intent in intentSummary.languages[0].intents %}
33+
{% for intent in intentSummary.languages.en.intents %}
3434
<th>{{intent[0] | remove_first: "Hass"}}</th>
3535
{% endfor %}
3636
<th>Errors translated</th>
3737
<th>Leader</th>
3838
</tr>
3939
</thead>
4040
<tbody>
41-
{% for summary in intentSummary.languages %}
41+
{% for item in intentSummary.languages %}
42+
{% assign summary = item[1] %}
4243
<tr class="{% if summary.usable %}usable{% endif %}">
4344
<td>
4445
<a
@@ -98,3 +99,23 @@
9899
</tbody>
99100
</table>
100101
<p><i>Every cell in the table links to the relevant file.</i></p>
102+
<h2>Road to Team 💚</h2>
103+
List of languages that are missing important intent coverage.
104+
<table>
105+
<tr>
106+
<th>Language</th>
107+
<th>Missing</th>
108+
<th>Intents</th>
109+
</tr>
110+
{% for language in intentSummary.improvements %}
111+
<tr>
112+
<td>{{ language }}</td>
113+
<td>{{ intentSummary.languages[language].missing_intents | size }}</td>
114+
<td style="text-align: left; padding-left: 16px;">
115+
{% for intent in intentSummary.languages[language].missing_intents %}
116+
{{ intent }}{% if forloop.last == false %}, {% endif %}
117+
{% endfor %}
118+
</td>
119+
</tr>
120+
{% endfor %}
121+
</table>

0 commit comments

Comments
 (0)