GithubHelp home page GithubHelp logo

orgexyz / blockagi Goto Github PK

View Code? Open in Web Editor NEW
272.0 11.0 45.0 754 KB

Your Self-Hosted, Hackable Research Agent Inspired by AutoGPT

License: Apache License 2.0

Python 63.02% CSS 0.44% TypeScript 34.50% JavaScript 2.04%
ai autogpt babyagi llm openai gpt-4

blockagi's Introduction

GitHub Repo stars Twitter Follow

banner

BlockAGI is an open-source research agent built with Python3, utilizing the capabilities of LangChain and OpenAI. BlockAGI conducts iterative, domain-specific research, primarily focused on cryptocurrency but customizable to other domains. It outputs detailed narrative reports to showcase its findings. The progress of the AI agent's work is presented interactively through a user-friendly web interface, allowing users to watch the progress in real-time.

๐Ÿค– Initially designed to answer crypto research topics (hence the "Block" in BlockAGI), it has proven useful for a wide variety of other use cases.

๐Ÿ”Ž Quick Preview

blockagi-preview-2

๐ŸŽฏ Features

  • ๐Ÿ“š Automated Research: Just provide the topics, and let BlockAGI do the research.
  • ๐Ÿ” Comprehensive: BlockAGI can search, gather, refine, and evaluate information on its own.
  • ๐Ÿ”„ Live Data: BlockAGI can access real-time data from the internet or your own database.
  • ๐ŸŒ WebUI: Equipped with user-friendly interface, all in one tsx file.
  • ๐Ÿ’ฏ 100% Hackable: The code, based on LangChain, is concise and easy to modify to suit your needs.
  • ๐Ÿ” Privacy Focused: Your report stays with you and the LLM provider you trust.
  • ๐Ÿš€ Inspired by the Best: BlockAGI builds upon the work of BabyAGI and AutoGPT to create a self-improving agent.

๐Ÿ’ก Differences from AutoGPT

  • โšก Efficiency: BlockAGI has been tested to work well with gpt-3.5-turbo-16k, which is substantially cheaper than gpt-4 on most research tasks.
  • ๐Ÿ–ฅ๏ธ Interactive Web UI: BlockAGI features a Web UI that displays the agent's decision-making process, execution progress, and the latest research results. This allows for a more interactive and user-friendly experience.
  • ๐ŸŽฏ Focused Functionality: BlockAGI is designed with a single goal in mind - to assist users in their research topics. It's not about doing everything, but doing one thing really well.
  • ๐Ÿ”ง Simplified Setup: BlockAGI does not require file reading/writing, so there's no need for Docker/sandboxing. This makes the setup process simpler and more straightforward.
  • ๐Ÿ“ฆ No External Datastore: BlockAGI does not require an external vector datastore to work, reducing the complexity and resource requirements.

๐Ÿ› ๏ธ Tech Stack

๐Ÿค Sponsors and Contributors

We currently don't take any monetary donations! However, every issue filed and PR are extremely important to us. Here is the roster of contributors and supporters of the project.

blockpipe


smiled0gย ย sorawitย ย endolithย ย 

๐Ÿ“š Documentation

๐Ÿ”‹ Installation

To get started with BlockAGI, please follow these steps:

  1. Install Poetry, a dependency management tool for Python.

  2. Clone the BlockAGI repository to your local machine.

  3. Navigate to the project directory and run the following command to install the required dependencies:

    poetry install
  4. Next, install the Playwright dependencies by running the following command:

    poetry run playwright install

๐ŸŽฎ Basic Usage

To start using BlockAGI, please follow these steps:

  1. Copy the .env.example file and rename it to .env.

  2. Open the .env file and add your OpenAI API key. You can also modify other configurations as needed, such as the research domain or any additional settings.

  3. Run the following command to start BlockAGI:

    poetry run python main.py
    

    This will initiate BlockAGI and also spin up a web application, allowing you to monitor the progress and interact with the research agent.

  4. Watch the progress on BlockAGI via the web interface.

๐Ÿ“ฅ Contribution and Feedback

Contributions, feedback, and suggestions are highly encouraged and appreciated! You can contribute to BlockAGI in the following ways:

  • Fork the repository and make modifications in your own branch. Then, submit a pull request (PR) with your changes.
  • Submit issues (GitHub Issues) to report bugs, suggest new features, or ask questions.
  • Join our Discord community and share your experiences, ideas, and improvements. We believe that collaborative development is essential for the growth of BlockAGI.

For BlockAGI code structure and contribution ideas, see CONTRIBUTING.md.

๐Ÿ“– Citation

If you wish to cite BlockAGI in your research, we encourage the use of CITATION.cff provided for appropriate citation formatting. For more details on the citation file format, please visit the Citation File Format website.

๐Ÿ“œ License

BlockAGI is open-source software licensed under the Apache License 2.0. This license allows use, modification, and distribution of the software. For complete details, please see the LICENSE and NOTICE files in this repository.

๐Ÿ™ Acknowledgements

We would like to express our gratitude to the following projects and communities for their inspiring work and valuable contributions:

blockagi's People

Contributors

endolith avatar smiled0g avatar sorawit avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

blockagi's Issues

Would like to get GPT4ALL to work as API server

I was hoping to get some guidance on how to get GPT4ALL to drive BlockAGI instead of using gpt3.5. Any chance you could test this and offer up configuration .env settings for such an install?

Instructions do not work.

poetry run python main.py

C:\Users\xxxx\Deep\blockagi>poetry run python main.py
Usage: main.py [OPTIONS]
Try 'main.py --help' for help.

Error: Missing option '--host'.

C:\Users\xxxx\Deep\blockagi>poetry run python main.py --host
Error: Option '--host' requires an argument.

C:\Users\vdrut\Deep\blockagi>

Porting BlockAGI to use LLFn

We should migrate BlockAGI to LLFn. Using LLFn (and LangChain in the backend) will allow BlockAGI codebase to scale more and easier to improve.

gpt-4-1106-preview returns invalid json

gpt-4-1106-preview includes a preamble "```json" in its json responses.

This crashes the app by breaking JSON decoding via json.loads() in

  • plan.py
  • evaluate.py
  • narrate.py

gpt-4-1106 json responses:
gpt-4-1106-preview

gpt-anything-else:
gpt-anything-else

Question re-web search

  1. Very cool tool! The first AGI i've tried that works, is beautiful and easy to install.

  2. Curious about a couple of things:

  • Is it possible to incorporate other engines like Bing, Yandex? (Or ideally have the agent search through top 3 engines)
  • Is it possible to alter the length of the findings/report?
  • Is it possible to alter the search depth? How many pages does it go through and how does it decide which articles are worthy? Right now it seems to grab some pretty basic stuff that get's to the top of engines (often not the best content just the most gamed)

Provide Docker image

as stated in the title, for systems that can have problems using poetry (Like NixOS)

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.