designing-multiagent-systems  by victordibia

Build LLM-enabled multi-agent applications from scratch

Created 1 year ago
314 stars

Top 86.1% on SourcePulse

GitHubView on GitHub
Project Summary

This project provides the official code repository for "Designing Multi-Agent Systems: Principles, Patterns, and Implementation for AI Agents." It enables users to build LLM-enabled multi-agent applications from scratch, offering a fundamentals-first approach with complete, tested implementations and framework-agnostic patterns for educational and practical application development.

How It Works

The core of the project is the PicoAgents framework, built entirely from scratch to demystify multi-agent system components. It emphasizes understanding design decisions through clear, transparent implementations of agent reasoning loops, orchestration patterns (workflows vs. autonomous), tool integration, memory management, and streaming. This approach ensures core patterns are transferable and not tied to specific vendor frameworks.

Quick Start & Requirements

  • Installation: Install via pip: pip install -e . for the core framework. Optional extras include .[web], .[computer-use], .[examples], and .[all].
  • Prerequisites: Requires an OpenAI API key (export OPENAI_API_KEY="your-api-key-here"). Interactive notebooks (Colab) and pre-configured GitHub Codespaces are available, minimizing local setup.
  • Running Examples: Basic agent execution: python examples/agents/basic-agent.py. Web UI: picoagents ui.
  • Documentation: Interactive notebooks linked within chapter tables; GitHub Codespaces provides a ready environment.

Highlighted Details

  • PicoAgents Framework: A comprehensive, from-scratch framework designed for learning, featuring agents, type-safe workflows, autonomous orchestration, built-in tools, an evaluation framework, and a real-time streaming Web UI/CLI.
  • Production-Ready Patterns: Incorporates real-world considerations like LLM cost optimization (e.g., 90% reduction via two-stage filtering), reliability through checkpointing, and advanced reasoning techniques (e.g., 54% performance gain with a 'Think' tool).
  • Computer Use Agents: Leverages Playwright for browser automation, supporting multimodal reasoning and built-in actions like navigation, clicking, and content extraction.
  • Evaluation Framework: Implements LLM-as-judge patterns and reference-based validation for robust agent performance assessment.

Maintenance & Community

The project is authored by Victor Dibia. Community engagement is primarily through GitHub Issues for questions and feedback. No specific community channels like Discord or Slack are listed.

Licensing & Compatibility

License type and restrictions are not explicitly stated in the provided documentation. Core patterns are designed to be framework-agnostic, promoting compatibility and avoiding vendor lock-in.

Limitations & Caveats

The project's primary focus is educational, emphasizing building systems from first principles. Specific details on alpha status, known bugs, or unsupported platforms are not provided. The print edition of the accompanying book is listed as "Coming Soon."

Health Check
Last Commit

2 weeks ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
4
Star History
34 stars in the last 30 days

Explore Similar Projects

Starred by Elie Bursztein Elie Bursztein(Cybersecurity Lead at Google DeepMind), Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems"), and
7 more.

SuperAGI by TransformerOptimus

0.2%
17k
Open-source framework for autonomous AI agent development
Created 2 years ago
Updated 11 months ago
Feedback? Help us improve.