You can test the live chatbot application here:
https://kacemath-vcell-demo.hf.space/
This demo presents a chatbot for querying and interpreting BioModels stored in the VCell BioModel Database. Developed as a demo for Google Summer of Code 2025 under the NRNB organization, the app enables users to interact with biological models using natural language, receiving structured outputs, downloadable files, and real-time visualisations.
The chatbot can:
- Understand natural language queries
- Extract structured query parameters
- Query the VCell BioModel API
- Generate human-readable summaries using a language model
- Visualise model diagrams
- Provide download links for SBML and VCML files
- Natural Language Interface — Ask simple questions like “List all models by user ion”
- LLM-Powered Extraction — LLaMA 3 extracts query parameters from your prompt
- VCell API Integration — Dynamically fetches real model data
- Summarisation — Converts raw data into clear, helpful answers
- Visual Diagrams — Renders model reaction networks
- Download Options — Instantly download SBML and VCML formats
- Streamlit UI — Clean, responsive, deploy-ready interface
- Python 3.10+
- Streamlit
- Groq API (LLaMA 3.3 70B)
- VCell Public API
- Pydantic
- Dotenv
- Python 3.10 or later
- A valid Groq API key
git clone https://github.com/KacemMathlouthi/VCell-Demo.git
cd VCell-Demo
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txtCreate a .env file at the root with your Groq API key:
LLM_API_KEY=your_groq_api_key_herestreamlit run app.pyVisit http://localhost:8501 in your browser.
You can ask the chatbot things like:
List all public models by user ionFind the model with ID 201844485Show VCell models related to calciumGet educational BioModels created after 2020
VCell-Demo/
├── app.py # Main Streamlit app
├── requirements.txt # Project dependencies
├── .env # Environment variables
├── .streamlit/config.toml # Theme config
├── vcelldb/
│ ├── vcell_api.py # VCell API wrapper
│ ├── diagram.py # Diagram & file URL utils
│ └── params_model.py # Pydantic model schema
└── utils/
├── llm_helper.py # Groq API + LLM prompt handling
└── params_extraction.py # Prompt-to-parameter logic
This project is licensed under the MIT License. You are free to use, modify, and distribute it with proper attribution.



