Skip to main content

General Agent: From LLM to Agent

Project description

GeneralAgent: From LLM to Agent

EN doc CN doc License

A simple, general, customizable Agent framework

Features

  • Simple、Fast、Stable: stable with GPT3.5.
  • GeneralAgent support serialization, include python state.
  • Build-in interpreters: Python, AppleScript, Shell, File, Plan, Retrieve Embedding etc.
  • Dynamic UI: Agent can create dynamic ui to user who can use.
  • Agent Builder: Create agents using natural language and use them immediately, without coding.
  • AthenaAgent is a TypeScript port of GeneralAgent.

Architecture

GeneralAgent

Architecture

WebUI

WebUI

Demo

Version 0.0.11

agent builder

agent created

Version 0.03

webui

Version 0.0.2

https://github.com/CosmosShadow/GeneralAgent/assets/13933465/9d9b4d6b-0c9c-404d-87d8-7f8e03f3772b

Usage

docker

# pull docker
docker pull cosmosshadow/general-agent

# make .env
# download .env.example and copy to .env, then configure environment variables in the .env file, such as OPENAI_API_KEY, etc.
wget https://github.com/CosmosShadow/GeneralAgent/blob/main/.env.example
cp .env.example .env
vim .env
# Configure environment variables in the .env file, such as OPENAI_API_KEY, etc.

# run
docker run \
-p 3000:3000 \
-p 7777:7777 \
-v `pwd`/.env:/workspace/.env \
-v `pwd`/data:/workspace/data \
--name=agent \
--privileged=true \
-d cosmosshadow/general-agent

# open web with localhost:3000

Local installation and usage

Installation

pip install GeneralAgent

Set environment variables

# download .env.example and copy to .env, then configure environment variables in the .env file, such as OPENAI_API_KEY, etc.
wget https://github.com/CosmosShadow/GeneralAgent/blob/main/.env.example
cp .env.example .env
vim .env

export $(grep -v '^#' .env | sed 's/^export //g' | xargs)

Command line tool

GeneralAgent
# or
GeneralAgent --workspace ./test --new --auto_run
# worksapce: Set workspace directory, default ./general_agent
# new: if workspace exists, create a new workspace, like ./general_agent_2023xxx
# auto_run: if auto_run, the agent will run the code automatically, default no

WebUI

git clone https://github.com/CosmosShadow/GeneralAgent
cd GeneralAgent
# Preparation
cd webui/web/ && npm install && cd ../../
cd webui/server/server/ts_builder && npm install && cd ../../../../
# Start the server
cd webui/server/server/
uvicorn app:app --host 0.0.0.0 --port 7777
# Start the web service
cd webui/web
npm run start

Python usage

Please refer to the code for usage

Development

Others

  • GeneralAgent uses litellm to access various platforms of large models.

  • If you access local LLM and Embedding, you can refer to the code: llm_inference.py, rewrite the following three methods:

from GeneralAgent import skills

def llm_inference(messages, model_type='normal', stream=False, json_schema=None):
     pass
skills.llm_inference = llm_inference

def embedding_single(text) -> [float]:
     pass
skills.embedding_single = embedding_single

def embedding_batch(texts) -> [[float]]:
     pass
skills.embedding_batch = embedding_batch

Join us

Scan the QR code below with WeChat

wechat

discord is comming soon.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

generalagent-0.1.0.tar.gz (4.4 MB view details)

Uploaded Source

File details

Details for the file generalagent-0.1.0.tar.gz.

File metadata

  • Download URL: generalagent-0.1.0.tar.gz
  • Upload date:
  • Size: 4.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.9.12 Darwin/22.1.0

File hashes

Hashes for generalagent-0.1.0.tar.gz
Algorithm Hash digest
SHA256 f65f9c778e1ad5470920d588aeabfeaf9bab4601bc1a263cd0abef39c9b94f69
MD5 ac4fc55331ba221065e764f07d326209
BLAKE2b-256 b2dda916645a5444dc4b1a3fb110fd2ab35cefe88e533da44f98a841685d03ab

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