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 hashes)

Uploaded Source

Built Distribution

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

Uploaded Python 3

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