Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

title Bioimage Analysis Triage Bot
emoji 🔬
colorFrom blue
colorTo indigo
sdk gradio
sdk_version 6.19.0
python_version 3.14.6
app_file app.py
pinned false

BIA BOT

Python 3.14+ Gradio HuggingFace Spaces License: MIT

A conversational chatbot for triaging bioimage analysis requests for the Image Analysis Team at the Francis Crick Institute.

Overview

BIA BOT is an AI-powered triage system that interviews users about their bioimage analysis projects and automatically generates:

  • Triage Reports — comprehensive summaries of user requirements and project details
  • Python Scripts — executable analysis scripts tailored to the specific analysis task

The chatbot uses a structured 20-question framework to gather information efficiently while minimizing user fatigue.

Live Demo

Try it here: https://huggingface.co/spaces/djpbarry/bia-bot

Features

  • 🤖 Conversational Interview — Natural language dialogue guided by a 20-question framework
  • 📋 Automated Report Generation — Comprehensive markdown reports summarizing the triage
  • 🐍 Script Generation — Clean, commented Python code for the proposed analysis
  • 📧 Email Delivery — Reports and scripts zipped and sent to the facility team
  • 💾 Interaction Logging — Full conversation transcripts saved for reference
  • User-Friendly UI — Clean Gradio interface with progress feedback

How It Works

  1. User starts a conversation with the chatbot
  2. AI asks targeted questions about their bioimage analysis project
  3. User provides information about images, objectives, constraints, and requirements
  4. When complete, the bot automatically:
    • Saves the interaction transcript
    • Generates a comprehensive triage report
    • Creates a Python analysis script
    • Sends both as a zip file to the facility team
  5. Facility team reviews and follows up with detailed recommendations

Technical Stack

  • LLM: Claude Haiku (Anthropic API)
  • Interface: Gradio
  • Backend: Python
  • Deployment: Hugging Face Spaces
  • Email: Gmail SMTP

Local Setup

Requirements

  • Python 3.14+
  • pixi (or pip for manual installation)
  • Anthropic API key
  • Gmail app password (for email functionality)

Installation

# Clone the repo
git clone https://github.com/djpbarry/biabot.git
cd biabot

# Install dependencies with pixi
pixi install

# Or with pip
pip install -r requirements.txt

Configuration

Create a .env file in the project root:

ANTHROPIC_API_KEY=your-anthropic-key
GMAIL_ADDRESS=your-email@gmail.com
GMAIL_APP_PASSWORD=your-app-password

Running Locally

python app.py

The app will launch at http://127.0.0.1:7860

File Structure

.
├── app.py                      # Main Gradio application
├── papers/Twenty_Questions.pdf # Triage framework document
├── requirements.txt            # Python dependencies
├── interactions/               # Saved conversation logs (JSON)
├── reports/                    # Generated triage reports (markdown)
├── scripts/                    # Generated analysis scripts (Python)
└── README.md                   # This file

Notes

  • The chatbot will ask for your email address so the facility team can contact you with recommendations
  • Reports and scripts are sent as a single zip file to bypass email client filters
  • All conversations are logged locally for quality assurance
  • The framework is based on the "Twenty Questions" standard for bioimage analysis

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages