Page MenuHomePhabricator

Image suggestion API
Open, Needs TriagePublic1 Estimated Story Points

Description

Timeline:

  • The Android team wants to begin client work by 19 October. We would prefer the API to be functional before then, but it ought to be in at least an advanced state of development, and delivered no later than 1 November.
  • The API is time-sensitive because the feature it will enable us to build is part of our Q2 OKRs.

Vision:

  • The purpose of Android Suggested edits image suggestions is to allow users to quickly and easily add lead images to an article in one language, based on the lead images from articles in another language.
  • This is part of Android's Q2 OKRs, to increase usage of the Suggested edits feature.

Target groups:

  • Initially, the users of Suggested edits on the Android app. We will pilot the feature so that other teams coming after can refine their presentation.
  • In Q4, the Growth team will introduce similar functionality on the web, meaning an expansion of the potential audience.

Needs:

  • In order to expand the number of editors on the Android app, and the quality and relevance of articles, an easy and straightforward way to suggest Commons images to be added to articles is required.
  • The fact that 3 teams within the Foundation want to do similar work this year should make it apparent that there is a widely perceived user need.

Product:

  • This is extensively documented in the parent ticket T256081
  • The tl;dr version is that an Android user will see a call-to-action when reading an article without an image, asking if they would like to add one. They tap on the CTA and are presented with a suggested image from a similar article. They choose whether to add the image to the article or not. We need an API that will return suggested images, as outlined in the parent ticket.

Aligned goals:

  • As mentioned, this is aligned with team, department, and overall Foundation goals to increase editing and welcome newcomers.

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald TranscriptAug 19 2020, 5:35 PM
Naike added a subscriber: Naike.Aug 24 2020, 9:26 AM

@Charlotte, thank you for your response. I have some follow-up questions:

  • Could you please add a link to the OKR in BetterWorks, please?
  • Is there already work being done in this area on our shared Platform-Product roadmap?
  • What would happen if the Platform team wasn't able to implement this API at the moment?
  • Are there any significant dependencies?
  • How will we measure the impact of this API?

Thank you!

Naike added a comment.Aug 24 2020, 3:07 PM

@Charlotte below are some more follow-up questions from our team:

Is the API to add an image to an article? Is it to hook to the suggestions from search? Something else?

Charlotte added a comment.EditedAug 24 2020, 3:17 PM

@Charlotte, thank you for your response. I have some follow-up questions:

  • Could you please add a link to the OKR in BetterWorks, please?

https://app.betterworks.com/app/#/goal/9734137

Releasing this specific feature is not an OKR because of the way we were told to write our OKRs. The feature has been put on the roadmap to contribute to this specific OKR.

  • Is there already work being done in this area on our shared Platform-Product roadmap?

Not sure what you're asking. If you mean, is a similar API presently being built, then no.

  • What would happen if the Platform team wasn't able to implement this API at the moment?

The Android feature won't get built. If you're not able to do it at all, then the Growth feature likely won't get built either.

  • Are there any significant dependencies?

Not sure what you're asking. Our dependency is on you. By the time you are ready to start, the Research team (specifically @Miriam) will have defined what is needed to be built. You may rely on her expertise, or on that of the Commons team, but so far as I know there is nothing else that you will require from other teams.

  • How will we measure the impact of this API?

Usage of the Android feature (and eventually the Growth feature) built from it.

Is the API to add an image to an article? Is it to hook to the suggestions from search? Something else?

Our needs are extensively documented in the parent ticket to this task. Briefly, we need it to do 3 things:

  1. Suggest lead images from an article in language X to be added to the same article in language Y (for Android)
  2. Suggest relevant images to add to articles (for Growth - correct me @MMiller_WMF if I am incorrect)
  3. Add the image to the article in a place to be determined, most likely the infobox

What we mean about "lead" and "relevant" images is extensively discussed in T256081.

Hi @Charlotte, nice to meet you. Can you connect with @eprodromou on the Product side, to take this through our intake process?

Hi @Charlotte, nice to meet you. Can you connect with @eprodromou on the Product side, to take this through our intake process?

We already spoke about it, and I was told by @Naike to fill this out. So is this conversation with Evan an additional thing, or did you not know we had already spoken?

@Charlotte PET will be reviewing this for feasibility. I'll check with you beforehand.

Naike moved this task from Untriaged to In Review on the Tech-Product API Roadmap board.
daniel added a subscriber: daniel.Sep 9 2020, 2:59 PM

I'm trying to understand the scope of this ticket. As an engineer, building an API means creating an interface that answers a web request by accessing some backend system, such as a database or a suggestion engine. What backend system would this API use? Is there something in place that can be used to generate image suggestions?

I just saw the CSV files in a comment to the parent task T256081#6385411. Do I understand correctly that this ticket asks for an experimental API that is based on fixed set of manually collected and deployed data?

I just saw the CSV files in a comment to the parent task T256081#6385411. Do I understand correctly that this ticket asks for an experimental API that is based on fixed set of manually collected and deployed data?

This has been discussed with @eprodromou and @sdkim, so I'm not sure why the scope is unknown. We discussed two things: first, a backend system where data generated by the algorithm @Miriam is working on will be stored (and the mechanism to actually populate this database), and second, an API to handle requests from the app to that system. The scope and details of the backend system were a task for them to discuss.

The API is not meant to be experimental, but is going to power a production feature.

Naike set the point value for this task to 1.Sep 11 2020, 10:54 AM
sdkim assigned this task to JKatzWMF.Sep 16 2020, 8:29 PM
sdkim moved this task from Later to Next on the Tech-Product API Roadmap board.Wed, Sep 30, 7:52 PM