Code Monkey home page Code Monkey logo

sumangaire52 / open-aea Goto Github PK

View Code? Open in Web Editor NEW

This project forked from valory-xyz/open-aea

1.0 0.0 0.0 125.24 MB

A framework for open autonomous economic agent (AEA) development - no package vendor is prioritised over other package vendors

Home Page: https://open-aea.docs.autonolas.tech

License: Apache License 2.0

Shell 0.16% JavaScript 0.01% Python 94.31% Go 4.83% PowerShell 0.04% Makefile 0.10% Dockerfile 0.10% Solidity 0.01% Vyper 0.45%

open-aea's Introduction

Open AEA Framework

PyPI PyPI - Python Version PyPI - Wheel License Downloads

AEA framework sanity checks and tests Codecov flake8 mypy Black mypy

A framework for autonomous economic agent (AEA) development with no vendor lock-in

This is a fork of the original AEA project with the benefit that all vendor lock-in at the package level is removed. This means, there are no dependencies on centrally hosted registries for agent packages and the AEA itself does not prefer any package vendor over another. Where feasible, compatibility with the original AEA framework is maintained.

Get started developing AEAs

  1. Create and launch a clean virtual environment with Python 3.10 (any Python >= 3.8 works):

    pipenv --python 3.10 && pipenv shell
    
  2. Install the package from PyPI:

    pip install open-aea[all]
    

    Or, if you use zsh rather than bash:

    pip install "open-aea[all]"
    
  3. Then, build your agent as described in the docs.

Alternatively (1): Use pipx (CLI usage only)

  1. Install pipx

  2. Install the package from PyPI:

    pipx install open-aea[all]
    
  3. Run AEA CLI e.g.:

    aea --help
    

Alternatively (2): Install from Source

This approach is not recommended!

Cloning

This repository contains submodules. Clone with recursive strategy:

git clone https://github.com/valory-xyz/open-aea.git --recursive && cd open-aea
  • To fetch/update submodules (for existing local repo):

    git submodule sync --recursive && git submodule update --init --recursive
    

Dependencies

All python specific framework dependencies are specified in setup.py and installed with the framework. All development dependencies are specified in Pipfile (and installed via the commands specified in Preliminaries).

You can have more control on the installed dependencies by leveraging the setuptools' extras mechanism.

Preliminaries

  • Create and launch a virtual environment with Python 3.10 (any Python >= 3.8 works):

    pipenv --python 3.10 && pipenv shell
    
  • Install the package from source:

    pip install .[all]
    

    Or, if you use zsh rather than bash:

    pip install ".[all]"
    
  • Then, build your agent as described in the docs.

  • Install Skaffold to manage containers & tagging:

curl -Lo skaffold https://storage.googleapis.com/skaffold/releases/v1.39.0/skaffold-linux-amd64 && \
sudo install skaffold /usr/local/bin/

Documentation

  • All documentation is hosted here.

  • To start a live-reloading docs server on localhost: mkdocs serve. To amend the docs, create a new documentation file in docs/ and add a reference to it in mkdocs.yml.

  • To run demos against local packages use flag --local in aea CLI commands.

Contributing

We welcome contributions to the framework, its plugins, related tools and packages. Please consult the contributing guide for details.

Cite

If you are using our software in a publication, please consider to cite it with the following BibTex entry:

@misc{agents-aea,
  Author = {Marco Favorito and David Minarsch and Ali Hosseini and Aristotelis Triantafyllidis and Diarmid Campbell and Oleg Panasevych and Kevin Chen and Yuri Turchenkov and Lokman Rahmani and Jiří Vestfál and James Riehl and 8baller and Adamantios Zaras and David Vilela and Michiel Karrenbelt and Viraj Patel},
  Title = {Open Autonomous Economic Agent (AEA) Framework},
  Year = {2021},
}

open-aea's People

Contributors

davidminarsch avatar marcofavorito avatar angrybayblade avatar solarw avatar 5a11 avatar totoual avatar karrenbelt avatar panasevychol avatar lrahmani avatar jrriehl avatar dvilelaf avatar dishmop avatar missingno57 avatar adamantios avatar 8ball030 avatar katharine-murphy avatar kevin-chen0 avatar 0xardi avatar siddharthantier avatar kongzii avatar dependabot[bot] avatar mohandast52 avatar jmoreira-valory avatar ejfitzgerald avatar evangriffiths avatar manjeet-fetchai avatar chr15murray avatar tjorri avatar

Stargazers

Suman Gaire avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.