I would recommend to start with a mature search engine such as Lucene or ElasticSearch.
If I'm implementing search in an application and want to use NLP, do I need to train the search or are these solutions already ready to go? I'm not sure how other people do it/how search works/if you need to tell it what to do.
Most engines will repeatedly index your contents with crawlers or similar.