Important Note
Jar3d has undergone a complete overhaul. The neo4j feature has been temporarily removed and will be reintroduced in a future release.
-
openai (Recommended)
- Models:
gpt-4o-2024-08-06
gpt-4o-mini-2024-07-18
- Models:
-
anthropic
- Supported, but not recommended for use
Jar3d is a Meta Agent built on LangGraph, designed to orchestrate a team of agents for completing basic tasks.
The agent team includes:
- Google Search Agent
- Google Shopping Agent
- Web Scraper Agent
- RAG Agent
The agent team can be extended by adding additional tool using agents to the project.
Important Note
If you are extending the agent team, you must have a
meta_agent
and areporter_agent
in the team.
Jar3d can perform basic tasks like product sourcing, writing newsletters, creating itineraries, and essentially anything that can be reasonably done with the team of agents listed above.
- Core Concepts
- Prerequisites
- Configuration
- Setup
- Usage
- Roadmap
- Further Reading
- Integrations
- Features on the Roadmap
Jar3d functions as a meta-agent system, orchestrating various agents to achieve complex goals. The system comprises four primary agent types:
- Meta Agent: Central orchestrator coordinating other agents' activities.
- Tool Agent: Interfaces with specific tools or services for specialized tasks.
- Reporter Agent: Communicates results and updates to the user.
- Requirements Gathering Agent: Refines and clarifies project requirements through user interaction.
- Meta Prompting: Leverages advanced prompting techniques for improved performance.
- Chain of Reasoning: Adapts the Chain-of-Reasoning approach for more coherent outputs.
- Retrieval Augmented Generation (RAG): Enhances responses with relevant contextual information.
- Knowledge Graph Generation: Creates comprehensive knowledge graphs from web pages.
- Users interact with the Requirements Gathering Agent to define project goals.
- Finalized requirements are passed to the Meta Agent.
- The Meta Agent orchestrates Tool Agents to accomplish the goal.
- Results are passed to the Reporter Agent for user communication.
graph TD
A[Start] --> B[Requirements Gathering]
B --> C{Requirements Met?}
C -->|No| B
C -->|Yes| D[Pass Requirements to Meta Agent]
D --> E[Meta Agent Selects Agent from Registry]
E --> F[Selected Agent Processes Query]
F --> G[Agent Reports Back to Meta Agent]
G --> H{Meta Agent: Task Complete?}
H -->|No| E
H -->|Yes| I[Meta Agent Prepares Final Response]
I --> J[Reporter Agent Receives Response]
J --> K[Reporter Agent Reports to User]
K --> L[End]
- Git
- Docker and Docker Compose
-
Clone the repository:
git clone https://github.com/brainqub3/meta_expert.git cd meta_expert
-
Configure
config/config.yaml
:- Set API keys for chosen LLM providers (Serper, OpenAI, Gemini, Claude, Groq)
- Choose inference provider by setting
LLM_SERVER
(e.g., claude, openai, groq)
Note: Keep your config.yaml
file private as it contains sensitive information.
Setup the configurations for the project in the config/config.yaml
file.
- Serper API Key: Get it from https://serper.dev/
- OpenAI API Key: Get it from https://openai.com/- Advised Model
- Gemini API Key: Get it from https://ai.google.dev/gemini-api - Not currently supported
- Claude API Key: Get it from https://docs.anthropic.com/en/api/getting-started
- Groq API Key: Get it from https://console.groq.com/keys - Not currently supported
- Ensure Docker daemon is running.
- Build and start containers:
docker-compose up --build
- Access Jar3d web interface at
http://localhost:8105
.
To stop the service:
docker-compose down
- Access the Jar3d web interface.
- Jar3d will introduce itself and ask questions to refine your requirements.
- Type
/end
when you've provided all relevant information. - Submit feedback using the
/feedback
tag.
- Integration with Ollama, vLLM, and other LLM providers
- Enhanced memory management
- Improved document processing and RAG capabilities
To deepen your understanding of the concepts and technologies used in Jar3d, we recommend the following resources:
- Meta-Prompting Overview: Our concise notes on the meta-prompting technique.
- Introduction to Jar3d: A detailed introduction to the Jar3d system.
- Overview of Agentic RAG: Our notes on Retrieval Augmented Generation in the context of AI agents.
- Meta-Prompting Paper: The original research paper on meta-prompting techniques.
- Chain-of-Reasoning GitHub: The original implementation of the Chain-of-Reasoning concept.
For the latest updates and detailed documentation, please refer to our GitHub repository.
- Jar3d integrates with LangSmith for observability.
- Monitor flows through the agent graph.
- Debug applications.
- Memory management
- Support for Ollama
- Support for vLLM
- Support for Gemini
- Support for Groq
- Support for Mistral
- Include Google Places and Maps Agents
- Include Neo4J Graph Agent Generator