Wikimedia Search Platform

The Search Platform team (part of Wikimedia Technology) is responsible for maintaining and enhancing the various Search features and APIs for MediaWiki. This includes the CirrusSearch extension which relies on Elasticsearch, the search backend used at the Wikimedia Foundation to support Wikimedia projects and Wikidata Query Service, the SPARQL endpoint used to query Wikidata.

Current work by this team is tracked on the Discovery-Search workboard in Phabricator (backlog board is here).

Mission
Our mission is to help people easily discover knowledge on Wikipedia and its sister projects by providing tools and infrastructure for casual readers and expert users with precise needs, while maintaining a strong emphasis on privacy.

Overview

 * We operate and maintain a disparate collection of production services related to content discovery, enabling the wiki community to find information that is not available through simply following links. We also provide a platform on which other people can create tools to support editing and other workflows.


 * We provide an open-source search engine, backed by an inverted index for non-structured on-wiki data. We work to develop more sophisticated searching with machine learning and natural language processing.


 * We provide a SPARQL-based query service for Wikidata, encouraging users to capitalize on this vast store of computer-readable structured data for use on-wiki and in knowledge discovery.


 * We endeavor to support underserved wiki communities, and we rely on those communities to help us understand their needs and evaluate potential solutions, especially with respect to underserved languages.


 * We prioritize privacy for logged-in users and anonymity for logged-out users over almost everything else, even when it slows down or complicates development or hinders our ability to collect or use data.

Goals
The Search Platform team's goals are part of the entire Technology Department's goals. You can links to the current quarterly goals here. (Note that Q1 is July–September for random historical reasons.)

Wikidata Query Service (WDQS)
The Wikidata query service allows for searching structured data on Wikidata. It also provides an API through which tools can access Wikidata. Our current work is tracked on the Discovery-Search workboard (see also our WDQS backlog board) and weekly deployments of WDQS are documented on Deployments. A public WDQS Analytics Dashboard is used to monitor and analyze the impact of our efforts. SPARQL

APIs
Application Programming Interfaces (APIs) provide developers ways to interact with the MediaWiki software.

API:Search and discovery lists the search APIs available and in development.

The Team
See the team page on Wikitech.

Communications
Moved to https://wikitech.wikimedia.org/wiki/Search_Platform/Contact

Process
The Search Platform team uses a Scrumban process, which is a hybrid of Scrum and Kanban. It is described here: Search Platform Process.

Upcoming events

 * none scheduled due to COVID-19 global pandemic

Past events

 * All Hands—January 2018
 * Hackathon 2018—18–20 May 2018
 * Wikimania 2018—July 18–22, 2018
 * 17th International Semantic Web Conference (ISWC 2018)—October 8–12, 2018
 * October 22–25, 2018, Wikimedia Technical Conference (WMTechConf, formerly known as DevSummit) in Portland, Oregon
 * Late January / early February 2019, All-Hands, San Francisco
 * May 2019, Hackathon, Prague
 * Late January / early February 2020, All-Hands, San Francisco
 * May 2020, Hackathon, Tirana, Albania (virtual due to COVID-19 global pandemic)

Docs and Other Links
The Search Platform team was formerly part of the Discovery Department in Audiences; but, as part of the re-organization (tune-up) of June 2017, the Search Platform team is now part of Technology. Pages of historical note:
 * Why Search is Important—Why does the Search Platform team even exist?
 * Help:CirrusSearch—Information on how the Wikimedia search works.
 * Completion Suggester—incremental search
 * Search Glossary—a place for definitions, context, and links for terms we use that other people may not be familiar with
 * Testing Search—testing search changes is complicated!
 * Elasticsearch stats on Grafana
 * Data access and analysis guidelines used by the Search Platform team around data sources, or by other teams around Search Platform data sources, are documented on Meta
 * BrowserBot—a browser test bot for search
 * Top Unsuccessful Search Queries—The difficulties in creating a list of unsuccessful search results
 * Cross-wiki Search Result Improvements
 * TextCat—a software component used for doing language detection
 * Data Analysis Archive
 * Wikidata Query Service Analytics Dashboard
 * External Traffic Analytics Dashboard
 * Please note that these boards are no longer being updated as of September 2019 and are only for historical purposes. The Search Analytics Dashboard and API Analytics Dashboard have been decomissioned.


 * Discovery Department (April 2015–December 2017)
 * Search (prior to April 2015)

Deployers
Useful reference for who can deploy code. It's nice to know whom to bug if you need something:

Code
The Search Platform team supports the following code: