-
Notifications
You must be signed in to change notification settings - Fork 4
Implement RAG Modulo issue 697 #702
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
Add a comprehensive agent hook system for the RAG search pipeline with: **Database Layer:** - AgentConfig model for storing agent configurations - CollectionAgent model for collection-agent associations with overrides - JSONB columns for flexible default_config and config_override **Agent Execution Service:** - CircuitBreaker pattern for failure isolation (closed/open/half_open states) - Sequential execution for pre-search and post-search stages - Parallel execution for response stage agents - Dynamic handler loading via importlib - Timeout and retry support per agent **Pipeline Integration:** - PreSearchAgentStage: Query expansion, language detection, intent classification - PostSearchAgentStage: Re-ranking, deduplication, PII redaction - ResponseAgentStage: PDF, PowerPoint, chart generation - Integrated into SearchService pipeline at stages 3, 6, and 9 **API Endpoints:** - CRUD operations for agent configurations - Collection-agent association management - Batch priority updates - Filtering by stage, status, and agent type **Schemas:** - AgentStage, AgentConfigStatus, AgentExecutionStatus enums - Input/Output/Update schemas for configuration - AgentContext, AgentResult, AgentArtifact execution schemas - PipelineMetadata with agent execution summary **Tests:** - Unit tests for CircuitBreaker with state transitions - Unit tests for AgentExecutorService - Schema validation tests for all Pydantic models Closes #697
🚀 Development Environment OptionsThis repository supports Dev Containers for a consistent development environment. Option 1: GitHub Codespaces (Recommended)Create a cloud-based development environment:
Option 2: VS Code Dev Containers (Local)Use Dev Containers on your local machine:
Option 3: Traditional Local SetupSet up the development environment manually: # Clone the repository
git clone https://github.com/manavgup/rag_modulo.git
cd rag_modulo
git checkout claude/implement-issue-697-01NYz1XuVcfwZKHY7F6Hfjyz
# Initialize development environment
make dev-init
make dev-build
make dev-up
make dev-validateAvailable CommandsOnce in your development environment: make help # Show all available commands
make dev-validate # Validate environment setup
make test-atomic # Run atomic tests
make test-unit # Run unit tests
make lint # Run lintingServices AvailableWhen running
This automated message helps reviewers quickly set up the development environment. |
Code Review - PR #702: Implement RAG Modulo Agent Hook System (Issue #697)SummaryThis PR introduces a comprehensive agent hook system for the RAG search pipeline with support for 3 execution stages (pre-search, post-search, and response). The implementation is well-structured with proper separation of concerns and follows the repository's patterns. ✅ Strengths1. Architecture & Design
2. Database Layer
3. Code Quality
4. Testing
|
Add a comprehensive agent hook system for the RAG search pipeline with:
Database Layer:
Agent Execution Service:
Pipeline Integration:
API Endpoints:
Schemas:
Tests:
Closes #697