Giter Site home page Giter Site logo

yuanmouren1hao / ix Goto Github PK

View Code? Open in Web Editor NEW

This project forked from kreneskyp/ix

0.0 0.0 0.0 3.78 MB

Autonomous GPT-4 agent platform

License: MIT License

Shell 0.15% JavaScript 34.24% Python 63.83% CSS 0.09% Makefile 1.16% HTML 0.06% Dockerfile 0.48%

ix's Introduction

iX - Autonomous GPT-4 Agent Platform

Unit Tests Discord Server Twitter Follow

The ninth planet around the sun





Amidst the swirling sands of the cosmos, Ix stands as an enigmatic jewel, where the brilliance of human ingenuity dances on the edge of forbidden knowledge, casting a shadow of intrigue over the galaxy.

- Atreides Scribe, The Chronicles of Ixian Innovation






About

Ix is an experimental platform for designing and deploying semi-autonomous LLM agents. It provides a scalable and responsive solution for delegating tasks to AI powered agents. The platform is designed to be extensible, allowing developers to create custom agents and chains to perform a wide variety of tasks.

The backend is designed to support multiple agents running in parallel and communicating with each other. Each agent may be customized and may utilize parallel processes to complete tasks.

Ix uses GPT-4 by default, but agents may be configured to use any model supported by LangChain.

How does it work

Basic Usage

You chat with an agent that uses that direction to investigate, plan, and complete tasks. The agents are capable of searching the web, writing code, creating images, interacting with other APIs and services. If it can be coded, it's within the realm of possibility that an agent can be built to assist you.

  1. Setup the server and visit http://localhost:8000, a new chat will be created automatically

  2. Enter a request and the Ix moderator will delegate the task to the agent best suited for the response. Or @mention an agent to request a specific agent to complete the task.

  3. Customized agents may be added or removed from the chat as needed to process your tasks

Creating Custom Agents and Chains

Ix provides the moderator agent Ix, a coder agent, a planning agent, and a few example agents. Additional agents may be built using the chain framework.

View the documentation to create custom agents and chains.

Key Features

  • Scalable model for running a fleet of GPT agents.
  • Responsive user interface for interacting with agents.
  • Persistent storage of interactions, processes, and metrics.
  • Message queue for agent jobs and inter-agent communication.
  • Extensible model for customizing agents.
  • Deployment using Docker.

Stack:

  • Python 3.11
  • Django 4.2
  • PostgreSQL 14.4
  • GraphQL / Graphene / Relay
  • React 18
  • LangChain
  • Integrated with OpenAI GPT models
  • Plugin architecture to support extending agent functionality (e.g. web browsing, writing code, etc)
  • Generic framework for vector database based agent memory
    • Pinecone
    • Redis
    • Milvus (soon)
    • FAISS (soon)

Setup

1. Prerequisites

Before getting started, ensure you have the following software installed on your system:

2. Clone the repository

git clone https://github.com/kreneskyp/ix.git
cd ix

3. Setup env

Setup config in .env

cp .env.template .env
OPENAI_API_KEY=YOUR_KEY_HERE

# search (optional)
GOOGLE_API_KEY=
GOOGLE_CX_ID=
WOLFRAM_APP_ID=

Build and run the dev image.

make dev_setup

Run the dev server & worker

make server

Start a worker

make worker

Usage

Visit http://localhost:8000 to access the user interface and start creating tasks for the autonomous GPT-4 agents. The platform will automatically spawn agent processes to research and complete tasks as needed.

Scaling workers

Run as many worker processes as you want with make worker.

Developer Tools

Here are some helpful commands for developers to set up and manage the development environment:

Running:

  • make server: Start the application in development mode on 0.0.0.0:8000.
  • make worker: Start an Agent worker.

Building:

  • make image: Build the Docker image.
  • make frontend: Rebuild the front end (GraphQL, relay, webpack).
  • make webpack: Rebuild JavaScript only
  • make webpack-watch: Rebuild JavaScript on file changes

Database

  • make migrate: Run Django database migrations.
  • make migrations: Generate new Django database migration files.

Utility

  • make bash: Open a bash shell in the Docker container.
  • make shell: Open a Django shell_plus session.

ix's People

Contributors

kreneskyp avatar eltociear 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.