Skip to content

VBAgent

Multi-agent physics question processing system with conversational interface

PyPI version Python 3.12+ License: MIT


What is VBAgent?

VBAgent is a comprehensive multi-agent system for processing physics, chemistry, mathematics, and biology questions. It combines AI-powered agents to handle everything from image scanning to problem generation, with a natural language chat interface.

Key Features

🤖 7 Specialized Agents

  • Agent 1: Image Classification - Fast categorization with gpt-4o-mini
  • Agent 2: Diagram Analysis - Hierarchical diagram classification
  • Agent 3: Difficulty Assessment - Detailed difficulty analysis
  • Agent 4: LaTeX Classification - Batch processing of LaTeX files
  • Agent 5: Idea Generator - Generate problems from concepts
  • Agent 6: Problem Combiner - Combine multiple problems
  • Agent 7: TikZ Checker - Automatic validation and fixing

💬 Conversational Interface

Generate complete problems from natural language:

$ vbagent chat
You: "Create a passage problem on double block friction"
Agent: *generates problem with TikZ, metadata, and everything*

📊 Complete Pipeline

  • Image → LaTeX extraction
  • TikZ diagram generation
  • Classification and metadata
  • Difficulty assessment
  • Variant generation
  • Database management

Fast & Efficient

  • Parallel processing (Scanner + TikZ)
  • Optimized model selection
  • Smart caching

Quick Start

# Install
pip install vbagent

# Initialize
vbagent init

# Process an image
vbagent process -i question.png

# Or use chat interface
vbagent chat

Use Cases

  • Question Bank Creation: Scan and organize thousands of questions
  • Problem Generation: Create new problems from ideas
  • Variant Creation: Generate numerical, contextual, and conceptual variants
  • TikZ Diagrams: Auto-generate publication-quality diagrams
  • Metadata Extraction: Rich metadata for searchable question banks
  • DPP Creation: Smart problem set generation

Architecture

Input (Image/LaTeX/Idea)
   Classification (Agent 1 + 2)
   ┌─────────────────┐
   │  Scanner + TikZ │  (Parallel)
   └─────────────────┘
   Difficulty (Agent 3)
   Metadata Merging
   Output (LaTeX + JSON)

What's New

v0.2.2 - Conversational Problem Generation

  • ✨ Generate problems from ideas using natural language
  • 🤖 Full pipeline integration (TikZ, classification, difficulty)
  • 💬 Interactive clarification in chat interface
  • 📦 Complete metadata like image/tex processing

See full changelog →

Documentation

Community

License

MIT License - see LICENSE for details.