Skip to main content

Synthora is a lightweight and extensible framework for LLM-driven Agents and ALM research. It provides essential components to build, test and evaluate agents. At its core, Synthora aims to assemble an agent with a single config, thus minimizing your effort in building, tuning, and sharing agents.

Project description

Synthora

Read the Docs

Synthora is a lightweight and extensible framework for LLM-driven Agents and ALM research. It provides essential components to build, test and evaluate agents. At its core, Synthora aims to assemble an agent with a single config, thus minimizing your effort in building, tuning, and sharing agents.

Note: This project is in its very early stages of development. The APIs are unstable and subject to significant changes, which may introduce breaking updates. Use with caution, as there are inherent risks in adopting this framework at its current maturity level. Feedback and contributions are welcome to help improve its stability and functionality.

Motivation 🧠

Agent practitioners start to realize the difficulty in tuning a "well-rounded" agent with tons of tools or instructions in a single layer. Recent studies like TinyStories, Specializing Reasoning, Let's Verify SbS, ReWOO, etc. also point us towards an intuitive yet undervalued direction 👉

An LLM is more capable if you create a context/distribution shift specialized to some target tasks.

Sadly, there is no silver bullet for agent specialization. For example, you can

  • Simply add Let's think step by step. in your prompt for more accurate Math QA.
  • Give a few-shot exemplar in your prompt to guide a better reasoning trajectory for novel plotting.
  • Supervise fine-tuning (SFT) your 70B llama2 like this to match reasoning of 175B GPT-3.5.
  • And more ...

Isn't it beautiful if one shares his effort in specialized intelligence, allowing others to reproduce, build on, or interact with it? 🤗 This belief inspires us to build Gentopia, designed for agent specialization, sharing, and interaction, to stackingly achieve collective growth towards greater intelligence..

Core Features 💡

  • ⚙️ Config-driven agent assembling and chat.
  • 🚀 Large amount of prebuilt agent types, LLM clients, tools, memory systems, and more.
  • 🪶 Lightweight and highly extensible implementation of essential components.
  • 🧪 Aligning with state-of-the-art AI research.
  • 🤝 Enabling multi-agent interactions.
  • 🦁 Unique platform of agent zoo and eval benchmark.

Installation

To install Syntropix Python Library from PyPI, simply run:

 pip install synthora

Quick Start

from synthora.agents import VanillaAgent
from synthora.configs import AgentConfig
from synthora.callbacks import RichOutputHandler

import warnings
warnings.filterwarnings("ignore")

config = AgentConfig.from_file("examples/agents/configs/vanilla_agent.yaml")

agent = VanillaAgent.from_config(config)
handler = RichOutputHandler()
agent.callback_manager.add(handler)

agent.run("Search Openai on Wikipedia")

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

synthora-0.1.1.tar.gz (24.8 kB view details)

Uploaded Source

Built Distribution

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

synthora-0.1.1-py3-none-any.whl (49.5 kB view details)

Uploaded Python 3

File details

Details for the file synthora-0.1.1.tar.gz.

File metadata

  • Download URL: synthora-0.1.1.tar.gz
  • Upload date:
  • Size: 24.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.12.7 Linux/5.15.153.1-microsoft-standard-WSL2

File hashes

Hashes for synthora-0.1.1.tar.gz
Algorithm Hash digest
SHA256 a734c022eaf92df00d45ecfcc190ccdc0e0ca16a02043b9a8731bc0b9b1753f0
MD5 5dcc4b7884182a8432ca30c9893b6982
BLAKE2b-256 abac97a8b47a7e66e27aa909e3149cb0eac81c187bfc8a7fb95cd99aba01815f

See more details on using hashes here.

File details

Details for the file synthora-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: synthora-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 49.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.12.7 Linux/5.15.153.1-microsoft-standard-WSL2

File hashes

Hashes for synthora-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 52235a7a616b03eaa64e40abd539f35ddbc7ebf7303969dc6194ce0fc8d890c2
MD5 56245633b96541e6aaca387307a5fe7d
BLAKE2b-256 c9b470f94e06207ed3077ed07fb88c17f888d6686da8334c4d6ccf58aafbc589

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