Code Monkey home page Code Monkey logo

agenta's Introduction

Shows the logo of agenta
Quickly iterate, debug, and evaluate your LLM apps
The open-source LLMOps platform for prompt-engineering, evaluation, human feedback, and deployment of complex LLM apps.

MIT license. PRs welcome Contributors Last Commit Commits per month





Mockup agenta




ℹ️ About

Building production-ready LLM-powered applications is currently very difficult. It involves countless iterations of prompt engineering, parameter tuning, and architectures.

Agenta provides you with the tools to quickly do prompt engineering and 🧪 experiment, ⚖️ evaluate, and 🚀 deploy your LLM apps. All without imposing any restrictions on your choice of framework, library, or model.

Overview agenta

Demo

agenta-demo.mp4

Quick Start

Features

Playground 🪄

With just a few lines of code, define the parameters and prompts you wish to experiment with. You and your team can quickly experiment and test new variants on the web UI.
playground_1024_30.07.2023.mp4

Version Evaluation 📊

Define test sets, the evaluate manually or programmatically your different variants.

API Deployment 🚀

When you are ready, deploy your LLM applications as APIs in one click.

Why choose Agenta for building LLM-apps?

  • 🔨 Build quickly: You need to iterate many times on different architectures and prompts to bring apps to production. We streamline this process and allow you to do this in days instead of weeks.
  • 🏗️ Build robust apps and reduce hallucination: We provide you with the tools to systematically and easily evaluate your application to make sure you only serve robust apps to production.
  • 👨‍💻 Developer-centric: We cater to complex LLM-apps and pipelines that require more than one simple prompt. We allow you to experiment and iterate on apps that have complex integration, business logic, and many prompts.
  • 🌐 Solution-Agnostic: You have the freedom to use any library and models, be it Langchain, llma_index, or a custom-written alternative.
  • 🔒 Privacy-First: We respect your privacy and do not proxy your data through third-party services. The platform and the data are hosted on your infrastructure.

How Agenta works:

1. Write your LLM-app code

Write the code using any framework, library, or model you want. Add the agenta.post decorator and put the inputs and parameters in the function call just like in this example:

Example simple application that generates baby names:

import agenta as ag
from langchain.chains import LLMChain
from langchain.llms import OpenAI
from langchain.prompts import PromptTemplate

default_prompt = "Give me five cool names for a baby from {country} with this gender {gender}!!!!"
ag.init()
ag.config(prompt_template=ag.TextParam(default_prompt),
          temperature=ag.FloatParam(0.9))

@ag.entrypoint
def generate(
    country: str,
    gender: str,
) -> str:
    llm = OpenAI(temperature=ag.config.temperature)
    prompt = PromptTemplate(
        input_variables=["country", "gender"],
        template=ag.config.prompt_template,
    )
    chain = LLMChain(llm=llm, prompt=prompt)
    output = chain.run(country=country, gender=gender)

    return output

2.Deploy your app using the Agenta CLI

Screenshot 2023-06-19 at 15 58 34

3. Go to agenta at localhost:3000

Now your team can 🔄 iterate, 🧪 experiment, and ⚖️ evaluate different versions of your app (with your code!) in the web platform.

Screenshot 2023-06-25 at 21 08 53

Support

Talk with the founders for any commercial inquiries.

Book us

Contributing

We warmly welcome contributions to Agenta. Feel free to submit issues, fork the repository, and send pull requests.

We are usually hanging in our Slack. Feel free to join our slack and ask us anything

Check out our Contributing Guide for more information.

Contributors ✨

All Contributors

Thanks goes to these wonderful people (emoji key):

Sameh Methnani
Sameh Methnani

💻 📖
Suad Suljovic
Suad Suljovic

💻 🎨 🧑‍🏫 👀
burtenshaw
burtenshaw

💻
Abram
Abram

💻 📖
Israel Abebe
Israel Abebe

🐛 🎨 💻
Master X
Master X

💻
corinthian
corinthian

💻 🎨
Pavle Janjusevic
Pavle Janjusevic

🚇
Kaosi Ezealigo
Kaosi Ezealigo

🐛 💻
Alberto Nunes
Alberto Nunes

🐛
Maaz Bin Khawar
Maaz Bin Khawar

💻 👀 🧑‍🏫
Nehemiah Onyekachukwu Emmanuel
Nehemiah Onyekachukwu Emmanuel

💻 💡 📖
Philip Okiokio
Philip Okiokio

📖
Abhinav Pandey
Abhinav Pandey

💻
Ramchandra Warang
Ramchandra Warang

💻 🐛
Biswarghya Biswas
Biswarghya Biswas

💻
Uddeepta Raaj Kashyap
Uddeepta Raaj Kashyap

💻
Nayeem Abdullah
Nayeem Abdullah

💻
Kang Suhyun
Kang Suhyun

💻
Yoon
Yoon

💻
Kirthi Bagrecha Jain
Kirthi Bagrecha Jain

💻
Navdeep
Navdeep

💻
Rhythm Sharma
Rhythm Sharma

💻
Osinachi Chukwujama
Osinachi Chukwujama

💻
莫尔索
莫尔索

📖
Agunbiade Adedeji
Agunbiade Adedeji

💻
Emmanuel Oloyede
Emmanuel Oloyede

💻 📖
Dhaneshwarguiyan
Dhaneshwarguiyan

💻
Priyanshu Prajapati
Priyanshu Prajapati

📖

This project follows the all-contributors specification. Contributions of any kind welcome!

Attribution: Testing icons created by Freepik - Flaticon

agenta's People

Contributors

aakrem avatar allcontributors[bot] avatar ankur0904 avatar aybruhm avatar bekossy avatar burtenshaw avatar dejongbaba avatar devgenix avatar dhaneshwarguiyan avatar kangsuhyun-yanolja avatar lazyfuhrer avatar mmabrouk avatar mohammedmaaz avatar mrkirthi-24 avatar navdeep1840 avatar nayeem01 avatar okieloki avatar pajko97 avatar philipokiokio avatar ramchandrawarang9822 avatar rhythm-08 avatar samehmethnani avatar sammethnani avatar sohaibanwaar avatar suadsuljovic avatar sweetdevil144 avatar techemmy avatar vernu avatar vicradon avatar witehound avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.