Page MenuHomePhabricator

Build out an API that exposes ElasticSearch suggester results for a given query
Closed, ResolvedPublic

Description

For the first prototype I propose to :

  1. Design a script similar to inplace reindex that builds the completion suggester index
  2. Write a scoring function that takes only the data available in cirrus today + the geo tags availables in the db
  3. Implement about 4 suggestions at the same time (exact, stopwords, fuzzy, fuzzy+stopwords)
  4. Expose an API

Further enhancements could be:

  • Use T44259 to include a new score component that reflects the popularity of a page
  • Think of how we could include some basic NLP functions to help name suggestions (this will require some studies on the current architecture, where do we put NLP analysis in the current process?)

Event Timeline

Deskana raised the priority of this task from to Medium.
Deskana updated the task description. (Show Details)
Deskana subscribed.

Well, the API's there now, so this is resolved.

https://en.wikipedia.org/w/api.php?action=cirrus-suggest&text=example

It doesn't quite work yet though because the index hasn't been built. T110922 is for that.

Some initial tests of the efficacy of the suggestion API were done in T109729.