Currently, microllama uses openai and langchain directly for interacting with language models and managing embeddings/vector stores. We should investigate switching to Simon Willison's llm library (https://llm.datasette.io/) as a more general abstraction layer. This could potentially simplify the codebase, support more models, and leverage the features provided by llm.
(comment authored by Gemini 2.5 Pro)