Home

Awesome

Flappy Monorepo

<div align="center">

License

</div>

:warning: This project is still under development. We're working hard to release the first version of Flappy as soon as possible. Stay tuned! Documentation and code examples will be available soon.

This monorepo gathers all the Flappy libraries, each implemented in a different programming language. Flappy is a library developed to streamline the creation of AI applications and agents that use Large Language Models (LLMs).

Overview

Flappy is a production-ready Language Language Model (LLM) Application/Agent SDK designed to simplify AI integration in your projects. It is an easy-to-use, universally compatible, and production-ready solution that brings the power of AI to developers regardless of their preferred programming language.

Key Features

SDK

SourcePackageDocumentationCI Status
<img src="./assets/languages/nodejs.png" width=24px height=24px>NodeJSNPM versionDocumentationCI
<img src="./assets/languages/java.svg" width=24px height=24px>JavaMaven metadata URLDocumentationCI
<img src="./assets/languages/csharp.svg" width=24px height=24px>C#NuGet version (Pleisto.Flappy)DocumentationCI

Core Components

Agent Features

In Flappy's ecosystem, an agent operates as a versatile conduit for the LLM, performing a variety of tasks such as ETL data, invoking external APIs, or running LLM-generated Python code in a sandbox when needed. This design philosophy caters to the increasing demand for LLM-based AI applications across various sectors.

The agent features in Flappy are built on three foundational types:

  1. InvokeFunction: This feature allows agents to interact with the environment. Users should implement these functions with pre-defined input and output parameters, facilitating efficient interaction of LLM and real world data.
  2. SynthesizedFunction: This feature is processed by the LLM and only requires the definition of its description and the data structure declaration of the input and output types.
  3. CodeInterpreter This feature allows agents to eval python code produced by LLMs in a safe sandbox that reduces runtime errors and potential security vulnerabilities, making it suitable for deployment in a production environment.

Function Implementation Details

Flappy introduces unique implementation mechanisms to enhance these functions:

LLM Abstraction Layer

To enhance the flexibility of application development, Flappy provides an abstraction layer for different LLMs. This feature allows users to easily switch between different LLMs and designate fallback LLMs, ensuring application stability.

Flappy empowers developers to build LLM-based applications in a language-agnostic way. Start your journey with Flappy today and harness the immense potential of AI in your preferred programming language.

Getting Started

To begin with Flappy, select your preferred language implementation from the list below:

Contributing

We're thrilled to receive contributions from the community! For more details, please refer to our contributing guidelines.

License

This project is covered under the Apache License 2.0. Copyright (c) 2023 Pleisto Inc.