Building a Search API with Elasticsearch and BERT you own this product

intermediate Python • basic Docker • manipulations with tuples, lists and dictionaries
skills learned
Packaging and deploying with Docker • search and indexing with Elasticsearch • building APIs with Flask
Olesya Bondarenko
1 week · 9-15 hours per week · INTERMEDIATE

pro $24.99 per month

  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose one free eBook per month to keep
  • exclusive 50% discount on all purchases

lite $19.99 per month

  • access to all Manning books, including MEAPs!


5, 10 or 20 seats+ for your team - learn more

Look inside
In this liveProject, you’ll bring together multiple tools and models to construct a production-grade smart search engine. You’ll combine off-the-shelf Elasticsearch models for keyword search with your own semantic search API using transformers. Start by setting up and indexing an Elasticsearch Docker container, then quickly move on to boosting search relevance with BERT. Finally, you’ll set up a Flask API to serve a BERT model and look into customizing your search engine for your own particular topics of interest.
This project is designed for learning purposes and is not a complete, production-ready application or solution.

project author

Olesya Bondarenko
Olesya Bondarenko has a multidisciplinary background and experience in natural language processing (NLP), machine learning, deep learning, statistics, time-series analysis, process automation, engineering R&D and new product prototyping. Currently, she is a data scientist at Strong Analytics, a leading provider of customized AI solutions, where she specializes in developing NLP systems. Prior to joining Strong, she worked with several startups leading research and development efforts in the areas of conversational AI, data-leveraged scientific discovery solutions, and a variety of automated analytic and data collection tools. Olesya received her PhD in electrical engineering from the University of California San Diego where she designed and prototyped novel optical devices, as well as custom instrumentation for their analysis.


This liveProject is for intermediate Python programmers familiar with the command line and Docker. To begin this liveProject you will need to be familiar with:

  • Intermediate Python
  • Basic understanding of conda environments
  • Basic Docker
  • Basic Flask web development
  • Reading data from and writing to JSON files
  • Manipulations with tuples, lists, and dictionaries using loops and comprehensions


You choose the schedule and decide how much time to invest as you build your project.
Project roadmap
Each project is divided into several achievable steps.
Get Help
While within the liveProject platform, get help from other participants and our expert mentors.
Compare with others
For each step, compare your deliverable to the solutions by the author and other participants.
book resources
Get full access to select books for 90 days. Permanent access to excerpts from Manning products are also included, as well as references to other resources.

choose your plan


only $41.67 per month
  • five seats for your team
  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose another free product every time you renew
  • choose twelve free products per year
  • exclusive 50% discount on all purchases
  • Building a Search API with Elasticsearch and BERT project for free