Skip to main content

ISEK Distributed Multi-Agent Framework

Project description

Isek: Distributed Multi-Agent Framework

Isek is a robust, lightweight, and highly scalable distributed multi-agent framework specifically engineered to streamline the coordination, collaboration, and autonomous operation of intelligent agents across distributed environments. Featuring seamless integration with large language models (LLMs), flexible node operations, and easy-to-use command-line interactions, Isek empowers efficient and scalable multi-agent orchestration through cooperative autonomy.


Key Features

  • Multi-Agent Management: Easily deploy and manage intelligent agents to perform complex distributed tasks efficiently.

  • Cooperative Autonomy: Enables intelligent agents to autonomously collaborate, communicate, and make coordinated decisions in distributed scenarios.

  • LLM Integration: Built-in support for integrating Large Language Models such as OpenAI, enabling advanced NLP functionalities.

  • Modular Design: Highly modular architecture ensures ease of maintenance, scalability, and flexibility for customization.

  • Lightweight and User-Friendly: Designed for easy adoption, providing a streamlined user experience without complex setup or heavy dependencies.


Installation

Prerequisites

  • Python >= 3.8
  • Hatch (recommended)

Local Installation

Dependencies are specified in pyproject.toml. To install all project dependencies:

pip install -e .

Get Started

Before running examples or other tasks, first configure your API key in a .env file:

OPENAI_MODEL_NAME=your_model_name_here
OPENAI_BASE_URL=your_base_url_here
OPENAI_API_KEY=your_api_key_here

Then start the local registry:

isek registry

Next, execute example scripts:

List available examples:

isek example list

Run a specific example:

isek example run <example_name>

isek example run distributed_agent_demo

Usage

Isek provides straightforward CLI commands to manage your distributed agent tasks:

  • System Cleanup

Run the cleanup script to clear temporary files or reset configurations:

isek clean

Use the following command for detailed help:

isek --help

Project Structure

isek/
├── examples                   # Demonstration scripts for using the Isek framework
├── isek                       # Core modules and logic
│   ├── agent                  # Agent-related functionalities
│   ├── constant               # Project-wide constants
│   ├── embedding              # Embedding-related functionalities
│   ├── node                   # Node management functionalities
│   ├── llm                    # LLM integrations
│   ├── util                   # Utility and helper functions
│   ├── cli.py                 # Command-line interface
│   ├── isek_config.py         # Main configuration file
│   └── isek_center.py         # Central orchestrator (local registry)
├── script                     # Utility scripts (e.g., clean.py)
├── pyproject.toml             # Build and project configuration
└── README.md                  # Project documentation

Configuration

Main configurations are managed via:

  • isek/default_config.yaml: Default settings for quick deployments.

Testing

Tests are included and managed with pytest. To run tests:

hatch run pytest

Ensure tests cover new code submissions to maintain high-quality standards.


Contributing

Community contributions are welcomed!

  • Submit suggestions or issues via the GitHub repository.
  • Email the Isek Team directly at sparks@isek.xyz.

License

This project is open-sourced under the MIT License.

Project details


Download files

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

Source Distribution

isek-0.1.0.tar.gz (25.4 kB view details)

Uploaded Source

Built Distribution

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

isek-0.1.0-py3-none-any.whl (31.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: isek-0.1.0.tar.gz
  • Upload date:
  • Size: 25.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.10

File hashes

Hashes for isek-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e8b532b7f178718fffd51ce0f2aedf82cc99814ae68c7f6a67849ecbcadeb77b
MD5 dfde9544504c4541e990ac1284b2ef34
BLAKE2b-256 5bc1c9b50da150a3d9e226f57556eb7a04d45bbbdd72536ba052f24ec77c7c1b

See more details on using hashes here.

File details

Details for the file isek-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: isek-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 31.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.10

File hashes

Hashes for isek-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ed5bb77db2a85ff70446b6052267a4dfeba872af897b38b395e936c7009cfeed
MD5 1b3027ed8bfb972c5a3677bd55708882
BLAKE2b-256 da457b3a2fa6403f93562689c1f3edcf836d4fbc659741c5541389352fce0e8a

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