Skip to main content

Modular Automation of Scientific Research with Multi-Agent Systems

Project description

Denario

Version Python Version PyPI - Downloads License: GPL v3 Ask DeepWiki Subscribe on YouTube

Denario is a multiagent system designed to be a scientific research assistant. Denario implements AI agents with AG2 and LangGraph, using cmbagent as the research analysis backend.

Resources

Last updates

Installation

To install denario create a virtual environment and pip install it. We recommend using Python 3.12:

python -m venv Denario_env
source Denario_env/bin/activate
pip install "denario[app]"

Or alternatively install it with uv, initializing a project and installing it:

uv init
uv add denario[app]

Then, run the gui with:

denario run

Get started

Initialize a Denario instance and describe the data and tools to be employed.

from denario import Denario

den = Denario(project_dir="project_dir")

prompt = """
Analyze the experimental data stored in data.csv using sklearn and pandas.
This data includes time-series measurements from a particle detector.
"""

den.set_data_description(prompt)

Generate a research idea from that data specification.

den.get_idea()

Generate the methodology required for working on that idea.

den.get_method()

With the methodology setup, perform the required computations and get the plots and results.

den.get_results()

Finally, generate a latex article with the results. You can specify the journal style, in this example we choose the APS (Physical Review Journals) style.

from denario import Journal

den.get_paper(journal=Journal.APS)

You can also manually provide any info as a string or markdown file in an intermediate step, using the set_idea, set_method or set_results methods. For instance, for providing a file with the methodology developed by the user:

den.set_method(path_to_the_method_file.md)

DenarioApp

You can run Denario using a GUI through the DenarioApp.

The app is already installed with pip install "denario[app]", otherwise install it with pip install denario_app or uv sync --extra app.

Then, launch the GUI with

denario run

Test a deployed demo of the app in HugginFace Spaces.

Build from source

pip

You will need python 3.12 or higher installed. Clone Denario:

git clone https://github.com/AstroPilot-AI/Denario.git
cd Denario

Create and activate a virtual environment

python3 -m venv Denario_env
source Denario_env/bin/activate

And install the project

pip install -e .

uv

You can also install the project using uv, just running:

uv sync

which will create the virtual environment and install the dependencies and project. Activate the virtual environment if needed with

source .venv/bin/activate

Docker

You can run Denario in a Docker image, which includes all the required dependencies for Denario including LaTeX. Pull the image with:

docker pull pablovd/denario:latest

Once built, you can run the GUI with

docker run -p 8501:8501 --rm pablovd/denario:latest

or in interactive mode with

docker run --rm -it pablovd/denario:latest bash

Share volumes with -v $(pwd)/project:/app/project for inputing data and accessing to it. You can also share the API keys with a .env file in the same folder with -v $(pwd).env/app/.env.

You can also build an image locally with

docker build -f docker/Dockerfile.dev -t denario_src .

Read more information on how to use the Docker images in the documentation.

Contributing

Pull requests are welcome! Feel free to open an issue for bugs, comments, questions and suggestions.

Citation

@software{Denario_2025,
            author = {Pablo Villanueva-Domingo, Francisco Villaescusa-Navarro, Boris Bolliet},
            title = {Denario: Modular Multi-Agent System for Scientific Research Assistance},
            year = {2025},
            url = {https://github.com/AstroPilot-AI/Denario},
            note = {Available at https://github.com/AstroPilot-AI/Denario},
            version = {latest}
            }

License

GNU GENERAL PUBLIC LICENSE (GPLv3)

Denario - Copyright (C) 2025 Pablo Villanueva-Domingo, Francisco Villaescusa-Navarro, Boris Bolliet

Contact and enquieries

E-mail: denario.astropilot.ai@gmail.com

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

denario-0.1.25.tar.gz (580.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

denario-0.1.25-py3-none-any.whl (228.0 kB view details)

Uploaded Python 3

File details

Details for the file denario-0.1.25.tar.gz.

File metadata

  • Download URL: denario-0.1.25.tar.gz
  • Upload date:
  • Size: 580.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.2

File hashes

Hashes for denario-0.1.25.tar.gz
Algorithm Hash digest
SHA256 99bbf152b0986ea37ae2a0a2527e0aa7d996ce35779c312eff53111c198dccd5
MD5 e0ed70b6bc0fa3bafcc598a2cf529013
BLAKE2b-256 9f1a19a4473454f264866ba4ad00ace5738e4fa37e2024d4afe58a373e9aef19

See more details on using hashes here.

File details

Details for the file denario-0.1.25-py3-none-any.whl.

File metadata

  • Download URL: denario-0.1.25-py3-none-any.whl
  • Upload date:
  • Size: 228.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.2

File hashes

Hashes for denario-0.1.25-py3-none-any.whl
Algorithm Hash digest
SHA256 d6c484766a09148c09512ac84d90ead423fdcdcb4774873287bbd5086421ec17
MD5 71578ade5ea81304fe753459f2c4437e
BLAKE2b-256 ddf83c2b04e2bb60e016de59e35a153d59d146959a930c380907fc99467fef8c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page