- Moved scattered scripts, templates, and documentation into organized directories (applications/, scripts/, assets/). - Updated .gitignore to strictly exclude secrets, state files, and IDE configs. - Added comprehensive README.md outlining repository structure and best practices. - Preserved all existing documentation and technical architecture files. - Prepared infrastructure/ for AWS Org and Proxmox Terraform management.
183 lines
5.3 KiB
Bash
183 lines
5.3 KiB
Bash
#!/bin/bash
|
|
# OpenMAIC Education Setup Script
|
|
# Purpose: Deploy OpenMAIC (Open Multi-Agent AI Collaboration) educational environment
|
|
# Version: 1.0.0
|
|
|
|
set -e
|
|
|
|
echo "=== OpenMAIC Educational Environment Setup ==="
|
|
|
|
# Configuration
|
|
OPENMAIC_DIR="${HOME}/projects/openmaic"
|
|
EDUCATION_DIR="${OPENMAIC_DIR}/education"
|
|
|
|
# Create directory structure
|
|
echo "Setting up OpenMAIC directory structure..."
|
|
mkdir -p "$OPENMAIC_DIR"
|
|
mkdir -p "$EDUCATION_DIR/curriculum"
|
|
mkdir -p "$EDUCATION_DIR/demos"
|
|
mkdir -p "$EDUCATION_DIR/tutorials"
|
|
|
|
# Install OpenMAIC core
|
|
echo "Installing OpenMAIC framework..."
|
|
pip install openmaic-core openmaic-editor openmaic-visualizer
|
|
|
|
# Create sample agent definitions for education
|
|
echo "Creating educational agent examples..."
|
|
cat > "$EDUCATION_DIR/curriculum/agent1_basic_researcher.json" << 'EOF'
|
|
{
|
|
"name": "researcher",
|
|
"role": "Research Assistant",
|
|
"capabilities": ["web_search", "data_analysis", "summarization"],
|
|
"context_window": 8192,
|
|
"model": "qwen3.5:35b"
|
|
}
|
|
EOF
|
|
|
|
cat > "$EDUCATION_DIR/curriculum/agent2_data_analyst.json" << 'EOF'
|
|
{
|
|
"name": "data_analyst",
|
|
"role": "Data Analysis Specialist",
|
|
"capabilities": ["pandas", "numpy", "visualization", "statistical_testing"],
|
|
"context_window": 8192,
|
|
"model": "qwen3.5:35b"
|
|
}
|
|
EOF
|
|
|
|
cat > "$EDUCATION_DIR/curriculum/agent3_content_writer.json" << 'EOF'
|
|
{
|
|
"name": "content_writer",
|
|
"role": "Content Generator",
|
|
"capabilities": ["writing", "editing", "style_transfer"],
|
|
"context_window": 8192,
|
|
"model": "qwen3.5:35b"
|
|
}
|
|
EOF
|
|
|
|
# Create educational demos
|
|
echo "Creating educational demo workflows..."
|
|
cat > "$EDUCATION_DIR/demos/agent_collaboration_example.py" << 'EOF'
|
|
#!/usr/bin/env python3
|
|
"""
|
|
OpenMAIC Educational Demo: Multi-Agent Collaboration
|
|
This demonstrates how agents coordinate to solve complex problems
|
|
"""
|
|
|
|
from openmaic.core import Agent, Orchestrator
|
|
from openmaic.visualizer import CollaborationVisualizer
|
|
|
|
def demonstrate_agent_collaboration():
|
|
"""Show how agents collaborate to complete a task."""
|
|
|
|
# Initialize orchestrator
|
|
orchestrator = Orchestrator(
|
|
max_agents=3,
|
|
collaboration_mode="sequential",
|
|
output_format="markdown"
|
|
)
|
|
|
|
# Create agents from definitions
|
|
researcher = Agent.load("$EDUCATION_DIR/curriculum/agent1_basic_researcher.json")
|
|
analyst = Agent.load("$EDUCATION_DIR/curriculum/agent2_data_analyst.json")
|
|
writer = Agent.load("$EDUCATION_DIR/curriculum/agent3_content_writer.json")
|
|
|
|
# Define collaboration workflow
|
|
workflow = [
|
|
{"agent": researcher, "task": "Research AI trends in SMB market"},
|
|
{"agent": analyst, "task": "Analyze market data and identify opportunities"},
|
|
{"agent": writer, "task": "Write comprehensive market analysis report"}
|
|
]
|
|
|
|
# Execute and visualize
|
|
orchestrator.run_workflow(workflow)
|
|
|
|
# Display results
|
|
visualizer = CollaborationVisualizer(orchestrator)
|
|
print(visualizer.render_collaboration_flow())
|
|
print(orchestrator.get_final_output())
|
|
|
|
return orchestrator.get_results()
|
|
|
|
if __name__ == "__main__":
|
|
demonstrate_agent_collaboration()
|
|
EOF
|
|
|
|
chmod +x "$EDUCATION_DIR/demos/agent_collaboration_example.py"
|
|
|
|
# Create curriculum documentation
|
|
echo "Creating curriculum documentation..."
|
|
cat > "$EDUCATION_DIR/curriculum/README.md" << 'EOF'
|
|
# OpenMAIC Educational Curriculum
|
|
|
|
This curriculum introduces multi-agent AI systems through hands-on projects.
|
|
|
|
## Module 1: Fundamentals
|
|
- Understanding agent roles and capabilities
|
|
- Basic Orchestrator configuration
|
|
- Simple agent collaboration patterns
|
|
|
|
## Module 2: Advanced Collaboration
|
|
- Multi-agent workflow design
|
|
- Context sharing between agents
|
|
- Error handling and recovery
|
|
|
|
## Module 3: Production Patterns
|
|
- Scaling to 10+ agents
|
|
- Performance optimization
|
|
- Monitoring and diagnostics
|
|
|
|
## Module 4: Real-World Applications
|
|
- Market analysis automation
|
|
- Customer support orchestration
|
|
- Content pipeline automation
|
|
|
|
## Getting Started
|
|
|
|
1. Install OpenMAIC: `pip install openmaic-core openmaic-visualizer`
|
|
2. Review curriculum guides in `/curriculum/`
|
|
3. Run demo workflows in `/demos/`
|
|
4. Participate in hands-on exercises
|
|
|
|
## Prerequisites
|
|
- Python 3.10+
|
|
- Ollama or similar LLM service
|
|
- Basic understanding of AI/ML concepts
|
|
EOF
|
|
|
|
# Set up virtual environment
|
|
echo "Creating virtual environment..."
|
|
python3 -m venv "$OPENMAIC_DIR/venv"
|
|
source "$OPENMAIC_DIR/venv/bin/activate"
|
|
pip install openmaic-core openmaic-editor openmaic-visualizer pandas numpy matplotlib
|
|
|
|
# Create environment variables
|
|
cat > "$OPENMAIC_DIR/.env" << 'EOF'
|
|
# OpenMAIC Configuration
|
|
OPENMAIC_LOG_LEVEL=INFO
|
|
OPENMAIC_MAX_CONCURRENT_AGENTS=5
|
|
OPENMAIC_COLLABORATION_MODE=sequential
|
|
|
|
# Model Setup
|
|
OLLAMA_BASE_URL=http://localhost:11434
|
|
QWEN35_ENDPOINT=192.168.68.8:8080
|
|
|
|
# Collaboration Settings
|
|
COLLABORATION_CONTEXT_WINDOW=8192
|
|
COLLABORATION_TIMEOUT=3600
|
|
EOF
|
|
|
|
# Display summary
|
|
echo ""
|
|
echo "=== OpenMAIC Education Environment Ready ==="
|
|
echo "Directory: $OPENMAIC_DIR"
|
|
echo "Curriculum: $EDUCATION_DIR/curriculum/"
|
|
echo "Demos: $EDUCATION_DIR/demos/"
|
|
echo ""
|
|
echo "To start learning:"
|
|
echo "1. cd $OPENMAIC_DIR"
|
|
echo "2. source venv/bin/activate"
|
|
echo "3. Run demos: python $EDUCATION_DIR/demos/agent_collaboration_example.py"
|
|
echo "4. Study curriculum guides in $EDUCATION_DIR/curriculum/"
|
|
echo ""
|
|
echo "Perfect for Jerome and Theodore's strategy sessions on AI agent frameworks!"
|