Skip to content

a demo of a chatbot for querying and interpreting biomodels stored in the VCell BioModel Database. It enables users to interact with biological modeling resources using natural language and provides structured outputs, model metadata, downloadable files, and visualizations in real time.

License

Notifications You must be signed in to change notification settings

KacemMathlouthi/VCell-Demo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VCell BioModel Chatbot Demo

Google Summer of Code Logo NRNB Logo

Try it on Hugging Face Spaces


Try It Online

You can test the live chatbot application here:

https://kacemath-vcell-demo.hf.space/


About the Project

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.

Overview Image


Overview

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

Features

VCell Chatbot Demo

  • 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

Technologies Used

  • Python 3.10+
  • Streamlit
  • Groq API (LLaMA 3.3 70B)
  • VCell Public API
  • Pydantic
  • Dotenv

Getting Started

Prerequisites

  • Python 3.10 or later
  • A valid Groq API key

Installation

git clone https://github.com/KacemMathlouthi/VCell-Demo.git
cd VCell-Demo
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

Configuration

Create a .env file at the root with your Groq API key:

LLM_API_KEY=your_groq_api_key_here

Run the App

streamlit run app.py

Visit http://localhost:8501 in your browser.


Example Prompts

You can ask the chatbot things like:

  • List all public models by user ion
  • Find the model with ID 201844485
  • Show VCell models related to calcium
  • Get educational BioModels created after 2020

Project Structure

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

License

This project is licensed under the MIT License. You are free to use, modify, and distribute it with proper attribution.

About

a demo of a chatbot for querying and interpreting biomodels stored in the VCell BioModel Database. It enables users to interact with biological modeling resources using natural language and provides structured outputs, model metadata, downloadable files, and visualizations in real time.

Topics

Resources

License

Stars

Watchers

Forks

Languages