/yeagerai_framework

Primary LanguagePythonGNU Affero General Public License v3.0AGPL-3.0

The YeagerAI Framework: Embed AI with Domain Expertise

The YeagerAI Framework is a comprehensive set of tools designed to enable anyone apply their know-how to create AI Experts. By leveraging these tools, you can seamlessly integrate domain-specific knowledge and expertise into a bot powered by generative AI models, such as LLMs (Large Language Models).

The Framework is organized as follows: the core/ directory houses the essential code and routines for building custom AI Experts, while the experts/ folder showcases some examples created using these routines.

Core Features

The YeagerAI Framework boasts several features that streamline the AI Expert creation process:

  • Workflow/Components Framework: This is a crucial element of the YeagerAI Framework. The workflow/component structure is designed to optimally embed methodological or deterministic knowledge into generative AI models. Picture yourself as a Django expert, a psychologist, or a movie director; you follow a structured, similar process each time, like a methodology for creating a movie.

  • Discord Bot Interface: Easily interact with pre-built AI Experts through Discord, which offers a range of features that make it the ideal interface for now.

  • GitHub Native Integration: Automatically commit the code generated by AI Experts to GitHub repositories using the callbacks provided in the core.

  • LLMs: Currently, the YeagerAI Framework supports GPT-4, powering our AI Experts with cutting-edge technology. As more LLMs become available, we plan to incorporate them into the framework as well.

Upcoming features:

  • Langchain Integration
  • yExpertBuilder
  • ChatGPT Plugins
  • Payments Layer
  • Composability Layer
  • Automated Testing & Code Improvement

AI Experts

We are actively developing open-source AI Experts to demonstrate the capabilities of the YeagerAI Framework. Here are some projects in the pipeline:

yWorkflows

yWorkflows generates custom workflows based on a text prompt you provide and automatically uploads the entire workflow to GitHub. To use yWorkflows, simply call the /create command in our discord server.

You can find a list of all the Community created Workflows here

yExpertBuilder: (in progress)

yExpertBuilder creates AI Experts based on a text prompt you provide in the form:

{EXPERT NAME}
Description: {Description}
Commands: 
/{command_1}: {description_command_1}
/{command_2}: {description_command_2}
/{command_3}: {description_command_3}
...

Once created, the entire AI Expert is uploaded to GitHub. To use yExpertBuilder, call the /create-expert command in our discord server.

Create your own AI Expert

To get started with the YeagerAI Framework, follow these steps:

  1. Fork the repo / clone it

  2. Add a new folder in the experts/ folder which will be the name of your expert.

  3. Create inside this new folder experts/{yourExpertName} the files bot.py and commands.py files.

  4. Create the necessary files following what you can see in the experts/yWorkflows.

  5. If you are using vscode, modify the .vscode/launch.json file with this:

"program": "experts/{yourExpertName}/bot.py",
  1. You can launch the bot debugging in vscode or by executing this bash command:
python experts/{yourExpertName}/bot.py
  1. Follow the discord instructions to create and authorize your own bot

  2. Follow the instructions of the #list-your-expert discord channel to list your expert in our server.

Documentation

For full documentation on the YeagerAI Framework, please visit the docs.

Support

If you need help using the YeagerAI Framework, please reach out to our support team via our discord server.

Engage with the community

If you find the YeagerAI Framework useful, please consider giving us a star on GitHub. This will help us reach more developers and continue to improve our product.

We also have a Discord server where you can connect with other Yeager users, ask questions, and get support.

Join us!

Contributing

We welcome contributions to the YeagerAI Framework.

Before contributing, please read our Contributing guidelines. The CLA requires that contributors grant certain rights to the project's maintainers, such as the right to use, modify, and redistribute their contributions.

To contribute to the project, please follow these steps:

  1. Fork the repository and create a new branch for your changes.
  2. Make your changes and commit them to your branch.
  3. Submit a pull request and wait for feedback from the maintainers.

If you have any questions or concerns, please feel free to reach out to us at contributors@yeager.ai.

License

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License, version 3, as published by the Free Software Foundation.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License, version 3, for more details.

If you have any questions about licensing or would like to use this program under a different license, please contact info@yeager.ai to discuss commercial licensing options.