Have you considered using a proper vector database like Qdrant (https://qdrant.tech)? In the demo, it might be just fine to calculate the distance to all the articles in the knowledge base, but in a real case scenario, you'll sooner or later face scaling issues.
Also, libraries such as Langchain are integrated with both LLMs and vector databases, so you can prototype even faster.