Skip to main content

A lightweight framework for running generative agents through a Streamlit interface.

Project description

Demo

Cynia Agents

Cynia Agents is a lightweight framework for running generative agents through a Streamlit interface.
Generation logic lives in installable components which can be added or removed without modifying the UI.

The framework provides unified LLM, configuration, and artifact management, allowing agent developers to focus on building components that generate content.

The repository ships with only a simple example component. Complex generators such as the Bukkit plugin agent can be distributed separately and dropped into the components folder.

Installation

You can install Cynia Agents directly via pip:

pip install cynia-agents

Usage

Running the Application

To start the Cynia Agents UI, simply run:

cynia-agents

The application will launch in your default web browser. You can configure your API keys and choose an LLM provider from the Configuration Center page in the sidebar.

Managing Components

You can manage your components in the Component Center:

  • Import ZIP: Upload a ZIP file containing a component.
  • Import Folder: Select a local folder to import as a component.
  • Dependencies: Automatically install dependencies for your components.

Developing Components

To develop a new component, navigate to your component's directory and run:

cynia-agents dev

This command will start the application and temporarily link your current directory as a component, allowing you to see changes in real-time.

See COMPONENT_DEVELOPMENT.md for detailed information on building your own generators.

Developing Components

A component is a Python module placed inside the components/ directory. Here's a minimal example of a CyniaAgents component.

from component_base import BaseComponent

class MyComponent(BaseComponent):
    name = "My Generator"
    description = "Does something amazing"
    # Declare any additional packages your component depends on
    requirements = ["pandas"]

    def render(self):
        import streamlit as st
        self.logger("Rendering my component")
        st.write("Hello from my component")

See COMPONENT_DEVELOPMENT.md for information on building your own generators. Components can be a single Python file or a folder containing multiple files. Single-file components keep their dependencies in a requirements list while multi-file components include a requirements.txt file.

License

Licensed under the Apache 2.0 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

cynia_agents-2.0.0.tar.gz (2.6 MB view details)

Uploaded Source

Built Distribution

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

cynia_agents-2.0.0-py3-none-any.whl (494.9 kB view details)

Uploaded Python 3

File details

Details for the file cynia_agents-2.0.0.tar.gz.

File metadata

  • Download URL: cynia_agents-2.0.0.tar.gz
  • Upload date:
  • Size: 2.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.0

File hashes

Hashes for cynia_agents-2.0.0.tar.gz
Algorithm Hash digest
SHA256 2d05e9243475e39ebac564c906d545b0a6860c55fbf064a24d9da21c1bdd0b51
MD5 373c5acffe52d4a9a3f86edea71bb3ee
BLAKE2b-256 e6ab3228a39b057eb54836c8affa23bcd6a0dbbfd7f56f68ce5722f0acce9beb

See more details on using hashes here.

File details

Details for the file cynia_agents-2.0.0-py3-none-any.whl.

File metadata

  • Download URL: cynia_agents-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 494.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.0

File hashes

Hashes for cynia_agents-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b5e09a4496a85ad85f30966eb289ec23afaf037a240879aa8b4301754175dfe6
MD5 beed2b99713b76a53e2e4f4f2961010c
BLAKE2b-256 7774e727501be78faf47152b8e4db0fc51ac809cb2fa0c5e62e44d0283713a4c

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