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 automatize scientific research. Denario implements AI agents with AG2 and LangGraph, using cmbagent as the research analysis backend.

Resources

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. 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.

Contributing

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

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 Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

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

denario-0.1.17-py3-none-any.whl (225.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: denario-0.1.17-py3-none-any.whl
  • Upload date:
  • Size: 225.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for denario-0.1.17-py3-none-any.whl
Algorithm Hash digest
SHA256 1677d32935d8af2de697d021cb2ae45da5c02fe716d9bbf6e6b9d077f6841bc3
MD5 32b553ac7db2a24a69ea93ca3c2b0bef
BLAKE2b-256 3e865b385be89d31b92ef1d2775211d6e4fb12d10b75b873fd2fb5d3d0b56951

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