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-06gpt-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_agentand areporter_agentin 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
/endwhen you've provided all relevant information. - Submit feedback using the
/feedbacktag.
- 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