A Streamlit application for particle and nuclear physics research using a transparent multi-agent approach with Google's Gemini API.
- PDF document management and retrieval (RAG)
- Physics tools integration and discovery
- Python code execution and debugging
- Multi-agent coordination for complex physics questions
- Testing mode right now
- Clone the repository:
git clone https://github.com/StarNetLaboratory/dr_nima.git
cd dr_nima- Install requirements:
pip install -r requirements.txt- Place your PDF documents in the
pdfsdirectory and Python tools in thetoolsdirectory.
- Run the Streamlit application:
streamlit run app.py-
Enter your Google API key in the sidebar.
-
Use the interface to:
- Upload PDF documents for the knowledge base
- Ask questions about particle or nuclear physics
- View the inner workings of the multi-agent system
- See code execution results and generated visualizations
Dr. NIMA uses a transparent multi-agent approach with three specialized agents:
- Manager Agent (馃) - Plans the overall approach, breaks down complex problems, and delegates tasks.
- Research Agent (馃摎) - Retrieves and analyzes information from the knowledge base.
- Code Agent (馃捇) - Writes, executes, and debugs Python code for simulations and visualizations.
The new transparent communications panel shows the interactions between these agents in real-time, providing insights into the problem-solving process.
-
Color-Coded Agent Logs: Each agent has a distinct color for easy identification
- Manager Agent: Blue 馃
- Research Agent: Green 馃摎
- Code Agent: Purple 馃捇
- System: Orange 馃攧
-
Real-Time Status Updates: See what each agent is currently working on
-
Filterable Log View: Filter the log view to focus on specific agents
-
Exportable Logs: Download logs in CSV or JSON format for analysis
- "How are GPDs, QCFs and CFFs related to each other? Show me equations and plots."
- "For a toy problem involving 1-D QCFs, can you generate events and plot the histrograms?"
- "In 2D, what do the events from DIS, IDIS, SIDIS look like? Show me 3 2D histograms of the events."
- Python 3.8+
- Streamlit
- Google Gemini API key
- Other dependencies listed in requirements.txt