Skip to main content

Gentopia provides extensive utilities to assembles ALM agents driven by configs.

Project description

Gentopia

License: MIT PyPI Read the Docs Static Badge Static Badge Open Issues Dependency Status

Twitter Follow YouTube Channel Subscribers GitHub star chart

Gentopia 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, Gentopia aims to assemble an agent with a single config, thus minimizing your effort in building, tuning, and sharing agents.

image

Gentopia maintains an agent platform GentPool to share specialized agents, where your agent interacts with other agents by cloning, hierarchical plug-in, or sharing environment. We provide a unique agent benchmark for holistic evaluation.

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.
  • Tune your agent paradigm like this demo to easily half the execution time for Seach & Summarize.
  • 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.

Quick Start 🍏

conda create --name gentenv python=3.10
conda activate gentenv
pip install gentopia

or if you want to build with open LLMs locally 👉 pip install gentopia[huggingface]

First time to Gentopia? Grab a coffee ☕ and

Take ~ 8 mins to check out the following demo tutorials YouTube Channel Subscribers

Or check out the Quick Start Doc.

Documentation 📖

See here for full documentation.

🌟 Highlight Topics 🌟

News 👷

[Aug 6] We've submitted our work as a paper for EMNLP 2023. Special thanks to the research team and professors from NCSU, GMU, and CMU for collaboration :)

Join us! 🌎

Participate in this Utopia of superintelligence and help it grows! As a fully open-source project, we develop under public advice, ideas, and supervision. Meanwhile, here are ways you may contribute to Gentopia.

  • 🐛 Post an issue requesting necessary bug fixes, additional features, or roadmap suggestions. (Check closed ones first)
  • 🎯 Our dev team meets weekly to groom backlog into tickets. While we work on them, you can pick up others and create a Pull Request to request a merge. We always welcome new members in this way.
  • 🤝 Share your specialized agent to GentPool! Create an Agent PR (example) to merge your well-tuned agent into the pool. This allows others to use or build upon your agent.
  • ⭐ Help us spread! Give us a star, follow us on Twitter, join our Discord, and share with your friends!

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

gentopia-0.0.4.tar.gz (80.6 kB view details)

Uploaded Source

Built Distribution

gentopia-0.0.4-py3-none-any.whl (122.5 kB view details)

Uploaded Python 3

File details

Details for the file gentopia-0.0.4.tar.gz.

File metadata

  • Download URL: gentopia-0.0.4.tar.gz
  • Upload date:
  • Size: 80.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.31.0 rfc3986/1.5.0 tqdm/4.65.0 urllib3/1.26.5 CPython/3.10.12

File hashes

Hashes for gentopia-0.0.4.tar.gz
Algorithm Hash digest
SHA256 73755c6b9b95363351103eca208a3ac0fda86f19b248b23cf1d880f4830a8cd3
MD5 734fe4c5c6bfb19ec899bdd558e85d63
BLAKE2b-256 8d264252d37590c3fa068882c353dd1bb33003f1f2735ccba9d7acf0f8644f62

See more details on using hashes here.

File details

Details for the file gentopia-0.0.4-py3-none-any.whl.

File metadata

  • Download URL: gentopia-0.0.4-py3-none-any.whl
  • Upload date:
  • Size: 122.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.31.0 rfc3986/1.5.0 tqdm/4.65.0 urllib3/1.26.5 CPython/3.10.12

File hashes

Hashes for gentopia-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 bd4b3b34935cbea110f939ceffe06cc78f5621945d825d4f294afff35949b4b5
MD5 c0df059b5b678971c61b0f33b8903278
BLAKE2b-256 326d380aef9d1c9a8f0b2c247a0c0f533510daac4b6ef704365e479d44c05fdc

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page