Pleisto.Flappy 0.0.0.4-alpha

This is a prerelease version of Pleisto.Flappy.
There is a newer version of this package available.
See the version list below for details.
dotnet add package Pleisto.Flappy --version 0.0.0.4-alpha
NuGet\Install-Package Pleisto.Flappy -Version 0.0.0.4-alpha
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Pleisto.Flappy" Version="0.0.0.4-alpha" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Pleisto.Flappy --version 0.0.0.4-alpha
#r "nuget: Pleisto.Flappy, 0.0.0.4-alpha"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Pleisto.Flappy as a Cake Addin
#addin nuget:?package=Pleisto.Flappy&version=0.0.0.4-alpha&prerelease

// Install Pleisto.Flappy as a Cake Tool
#tool nuget:?package=Pleisto.Flappy&version=0.0.0.4-alpha&prerelease

Flappy Monorepo

⚠️ 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 Learning 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

  • Ease of Use: Flappy is designed to be as user-friendly as CRUD application development, minimizing the learning curve for developers new to AI.
  • Production-Ready: Beyond research, Flappy is a robust SDK that balances cost-efficiency and sandbox security to provide a stable platform for commercial environments.
  • Language-Agnostic: Flappy integrates seamlessly with any programming language, eliminating the need for Python unless explicitly required by your application.

Core Components

Agent Functions

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

The agent functions in Flappy are built on two foundational types:

  1. InvokeFunction: This function allows agents to interact with the environment. It's defined by input and output parameters, facilitating efficient interaction with the LLM.
  2. SynthesizedFunction: This function is processed by the LLM and only requires the definition of its description and the structure of its inputs and outputs.
Function Implementation Details

Flappy introduces unique implementation mechanisms to enhance these functions:

  • Unique JSON Schema Integration: Users can define abstract classes in their preferred programming language, which Flappy then transforms into JSON Schema schemas. This feature enhances machine readability and interoperability and manages the inputs and outputs of LLMs, providing controlled, consistent, and machine-readable data.
  • AST Parsing: Flappy performs Abstract Syntax Tree (AST) parsing on the LLM outputs to ensure that the generated JSON data strictly adheres to the defined JSON Schema schema.

Code Interpreter

Flappy's Code Interpreter serves as a secure environment to execute Python or TypeScript code produced by LLMs. It provides a sandboxed safety feature that reduces runtime errors and potential security vulnerabilities, making it suitable for deployment in a production environment.

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.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 is compatible.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp3.0 was computed.  netcoreapp3.1 is compatible. 
.NET Standard netstandard2.1 is compatible. 
.NET Framework net472 is compatible.  net48 is compatible.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
0.0.0.5 211 11/9/2023
0.0.0.4-alpha 98 10/18/2023
0.0.0.3-alpha 79 9/28/2023
0.0.0.2-alpha 93 9/28/2023
0.0.0.1-alpha 94 9/26/2023