BioModelsRAG: A Biological Modeling Assistant Using RAG (Retrieval Augmented Generation)
Bhavyahshree Navaneetha Krishnan, Adel Heydarabadipour, Herbert Sauro
TL;DR
BioModelsRAG tackles the challenge of interpreting complex SBML biomodels by employing a Retrieval Augmented Generation workflow. It converts SBML to Antimony, segments and summarizes, stores the results in a ChromaDB vector store, and uses a cosine-similarity search to feed the LLM with relevant context. The system is deployed as a web app and CLI, enabling researchers to query specific biomodels in natural language with reduced hallucinations. This work demonstrates the viability of RAG for domain-specific biological data and points to future enhancements such as GraphRAG.
Abstract
The BioModels database is one of the premier databases for computational models in systems biology. The database contains over 1000 curated models and an even larger number of non-curated models. All the models are stored in the machine-readable format, SBML. Although SBML can be translated into the human readable Antimony format, analyzing the models can still be time consuming. In order to bridge this gap, a LLM (large language model) assistant was created to analyze the BioModels and allow interaction between the user and the model using natural language. By doing so, a user can easily and rapidly extract the salient points in a given model. Our analysis workflow involved 'chunking' BioModels and converting them to plain text using llama3, and then embedding them in a ChromaDB database. The user-provided query was also embedded, and a similarity search was performed between the query and the BioModels in ChromaDB to extract the most relevant BioModels. The BioModels were then used as context to create the most accurate output in the chat between the user and the LLM. This approach greatly minimized the chance of hallucination and kept the LLM focused on the problem at hand.
