Page MenuHomePhabricator

Custom translation suggestions: Find opportunities to translate in topic areas selected by the user
Open, MediumPublic

Description

Translators are attracted to working on topics in their areas of interest, and in those topics that may have a greater impact (i.e., are part of wiki projects, campaigns, receive more views in other languages, etc.). Currently, Content Translation provides very limited support for users to discover possible knowledge gaps and find relevant topics in those areas to contribute.

This ticket proposes to expand the current support for suggestions on the translation dashboard to allow users to customize the suggestions provided. In this way, a user interested in African music will be able to find relevant articles to create or expand by translating.

Proposed approach

This ticket proposes to expand the current lists of suggestions with additional filtering mechanisms. The list of suggestions will include filtering options to (a) communicate the filter applied, and (b) allow users to change the types of suggestions shown. A dedicated filtering menu will support several options to provide flexibility for users to define their knowledge gap of interest:

  • Automatic. Automatic approaches for users to get suggestions on different topics:
    • "Previous edits" for suggestions based on previous editing activity. This is the current default approach when the user has made previous edits.
    • "Popular topics" general suggestions based on frequently viewed articles. This is the current default when users have no previous edits.
    • "Nearby topics" Topic close to the user location, using the nearby APIs.
    • "All collections" Community-requested pages to be translated as parts of campaigns or similar configurations.
  • Topics. A predefined set of top-level topic categories from topic models (initial mockups were using vital articles list).
  • Search. Option for users to search for any Wikipedia page (or Wikidata item) to use as a seed (i.e., get similar suggestions).
  • Countries. Selecting topics from a list of countries or regions.
  • Campaigns. Surfacing contents from a specific campaign.
  • Multiple selection. Allowing to select multiple items from the above to focus on their intersection. That is, get suggestions meeting all the selected criteria. For example, selecting Africa and Art will result in African artists. Note that the union of the topics won't be as useful where general Art topics (such as Dalí) and non-art topics related to Africa (such as Mount Kilimanjaro) would be in the list.
  • (Other criteria can be considered for filtering. Accounting for extensibility and building in iterations would be helpful to support the user needs)

The example below illustrates these ideas. Suggestions initially show items related to previously edited topics by the user. Users can adjust the suggestion and select the "Art" topic to get back and find articles related to that topic to contribute.

Multiple selection - Single selection remains the same.png (983×1 px, 202 KB)

Sections below provide more detail on different steps to support the proposal (and link to specific tasks to support them) can also check the designs in Figma.

0. Preparation: viability check (T367873)

The current recommendation API was not designed to provide the level of customization needed in the proposal. However, while we wait for a better recommendation API (as requested in in T293648) we can use the current API to approximate the needed functionality. This will not produce optimal suggestions, but will allow us to validate the interest from users to get custom suggestions for their areas of interest.

Given the above, as an initial preparation step we'll make a technical exploration. A technical exploration will help determine whether we can approximate the functionality well enough by using the current Recommendations API: T367873: Technical exploration to support topic-based suggestions with the current Recommendation API

1. Basic topic selection (T368422)

Suggestions include an indicator of where are those coming from ("from previous edits") and options to select a different type of suggestion. The "more" ("...") option provides access to the "Adjust suggestions view". There a list of topic areas is provided for the user to chose the one of their interest.

Basic topic selection.png (1×2 px, 293 KB)

As a first iteration, the user selection is limited to only one option from the list. Follow-up iterations will expand the support with multi-selection, search, and additional topic areas.

2. Direct access to filtered suggestions: URL parameters and persistence (T369012)

As topics are selected by a user to adjust their suggestions, that topic selection should become part of the URL parameters. This will allow the integration of external tools, linking from wiki pages (such as wiki projects or campaigns), bookmarking, sharing and other ways to keep track of specific knowledge gaps. In addition, switching through the dashboard views (Suggestions, In-progress, and Published) should keep the adjustments made for the suggestions.

3. Multiple selection (T369268)

In order to provide more precision for translators to define a specific knowledge area to get suggestions about, the selection of multiple topics will be supported. This allows for translators to define more precise topic areas by the intersection of multiple criteria. The multiple selection is supported in a way that does not add additional complexity to the simple scenarios of single topic selection (which remains the default) while still accounting for the possibility to select multiple options when the multi-selection mode is activated.

The "Add more" option enables the multi-selection mode where the items selected get added to the list of active filters, keeping the "Add more" placeholder as the item selected. In the example below, this allows to select suggestions of women biographies related to art, Africa and popular topics.

Multiple selection - Multiple topics.png (1×2 px, 328 KB)

4. Search (T369595)

Search can be used to find topic areas from both (a) those in the list and (b) more specific topic areas not showing in the list. For the first case, search is just a convenient shortcut for a long list of options. For the second case, it allows to search for any content item (Wikidata ID, Wikipedia page, wikipedia category) to get suggestions based on those.

Search - One selection.png (985×2 px, 294 KB)

5. Location

Translators may be interested to adjust their suggestions to get topics related to their current location or another location of their interest. Options will be added to support obtaining suggestions based on location.This includes both (a) a "Nearby" option in the automatic section, and (b) a section for countries that can be accessed at the list of topics.

6. External lists to support group translation (Campaigns, Wiki projects...) (T378958)

Content Translation is used in campaigns, wiki projects, University Courses and other “group” settings. Group translation is often focused on a specific knowledge gap to close. Exposing those in the Content Translation dashboard as part of the suggestion adjustments can improve exposure and motivation for more people to contribute.

7. Highly-demanded translations

Some examples include articles which users try to access using data from the language selector or the access to machine translation (T359072); or those people try o access or those requested by the communities (T284626).

Technical details

Related tickets

Related Objects

View Standalone Graph
This task is connected to more than 200 other tasks. Only direct parents and subtasks are shown here. Use View Standalone Graph to show more of the graph.
StatusSubtypeAssignedTask
OpenNone
ResolvedPginer-WMF
OpenNone
OpenNone
OpenNone
OpenNone
OpenNone
OpenNone
ResolvedPginer-WMF
ResolvedPginer-WMF
OpenFeatureNone
OpenNone
ResolvedSBisson
ResolvedSBisson
Resolvedngkountas
OpenNone
Resolvedsanthosh
Openngkountas
OpenKCVelaga_WMF
ResolvedKCVelaga_WMF
Resolvedngkountas
OpenNone
ResolvedSBisson
ResolvedSBisson
OpenSBisson
OpenSBisson
OpenSBisson

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes
Pginer-WMF renamed this task from Allow users to control the criteria for suggestions (categories, location, etc.) to Topic-based suggestions for contents to translate.Jun 19 2024, 9:54 AM
Pginer-WMF updated the task description. (Show Details)
Pginer-WMF renamed this task from Topic-based suggestions for contents to translate to Find opportunities to translate in topic areas selected by the user.Jun 19 2024, 12:39 PM
Pginer-WMF updated the task description. (Show Details)
Pginer-WMF renamed this task from Find opportunities to translate in topic areas selected by the user to Custom translation suggestions: Find opportunities to translate in topic areas selected by the user.Jun 25 2024, 10:04 AM

Just a few comments on the technical side in case they're helpful. I'm generally excited to see this moving forward!

  • We are also exploring making available a quality model on LiftWing (T360455). Not a topic per se but a filter that might also be exposed if Content Translation (or other products) had a clear use-case for it.
  • The topic taxonomy should be evolving a bit over the first few quarters of next year. Some of that will be smaller changes to the existing articletopic filters (add one here, remove one there) but the main thing to know is that the geographic topics will shift from the current set of regions to countries. There are obviously a ton of countries but also hopefully we can take advantage of the hierarchy (regions, continents) to make them available without overwhelming the UI?
  • For topic filters, I'm just confirming that you can do both AND and OR queries as needed -- e.g., Southern Africa + architecture as an OR (this example makes less sense but e.g., Southern Africa + Western Africa maybe makes more sense as an OR) and the same two topics as an AND (which does make sense for identifying buildings in Southern Africa).
  • As far as making the code changes to the recommendation API to support new behavior, I see that as relatively straightforward. The topics are supported in every language edition and so it's really just a question of passing the user-selected topics to the API to implement as filters when it does the search to build the initial set of candidate articles (that are then filtered down based on whether they exist in the target wiki or not). I'm not the person to do that but it should be relatively straightforward. At that point, I'd also recommend alotting a little engineer time to just improving the API. ML Platform smartly focused on just hosting it as-is but there are some pretty commonsense improvements that should speed it up (T347475#9226750) and improve the result quality (T293648#9284550).
  • And huge thanks for the 2. Direct access to filtered suggestions: URL parameters and persistence aspect!
  • Regarding 6. External lists to support group translation (Campaigns, Wiki projects...), we aren't there yet where these worklists are standardized in such a way that they're accessible via tooling, but my goal for whatever team tackles this challenge is have them also slurped up into the Search Platform so we can incorporate them as tags just like any other topic filter. There will obviously be too many to show to the user, but perhaps the communities can curate a few that they want elevated at any given time or they could also be searchable.
SGautam_WMF subscribed.

Updated the mockup to reflect "All collections" and "Collections" terminology which was earlier called "All community lists" and "Community list"