Giter Site home page Giter Site logo

wdshin / agenta Goto Github PK

View Code? Open in Web Editor NEW

This project forked from agenta-ai/agenta

0.0 0.0 0.0 8.91 MB

Easily build, version, evaluate and deploy your LLM-powered apps

Home Page: http://www.agenta.ai

License: MIT License

Shell 0.75% JavaScript 0.15% Python 43.70% TypeScript 53.63% CSS 0.17% HCL 0.93% Dockerfile 0.67%

agenta's Introduction

37 copy

Twitter Follow Contributors Last Commit

The Open-source Developer-first LLMOps Platform

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 ๐Ÿ”„ iterate, ๐Ÿงช experiment, and โš–๏ธ evaluate your LLM apps. All without imposing any restrictions on your choice of framework, library, or model.

agenta-demo.mp4

How Agenta works:

Write your LLM-powered application as you would normally do. Feel free to use any framework, library, or model (langchain or llma_index, GPT-4 or Falcon).

Example simple application that generates baby names

    from jinja2 import Template
    import openai
    template = Template(prompt_template)
    prompt = template.render(country=country, gender=gender)

    openai.api_key = os.environ.get("OPENAI_API_KEY")  # make sure to set this manually!
    chat_completion = openai.ChatCompletion.create(
        model="gpt-3.5-turbo", messages=[{"role": "user", "content": prompt}])

    print(chat_completion.choices[0].message.content)
With two lines of code, specify the inputs and parameters for your experiment.
import agenta as ag
default_prompt = "Give me five cool names for a baby from {{country}} with this gender {{gender}}!!!!"
@ag.post
def generate(country: str, gender: str, temperature: ag.FloatParam = 0.9, prompt_template: ag.TextParam = default_prompt) -> str:
# rest of the code
Deploy your app using the Agenta CLI.
Screenshot 2023-06-19 at 15 58 34
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

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 fork new versions on the web UI.

  • ๐Ÿ“Š Version Evaluation: Define test sets, evaluate, and A/B test app versions.

  • ๐Ÿš€ API Deployment Made Easy: When you are ready, deploy your LLM applications as APIs in one click.

Getting Started

Please go to docs.agenta.ai for full documentation on:

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.

Contributing

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

agenta's People

Contributors

aakrem avatar aybruhm avatar mmabrouk avatar samehmethnani avatar sammethnani 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.