Skip to main content

Auto Gen-AI App Generator with the Power of Llama 2

Project description

favicon DemoGPT: Auto Gen-AI App Generator with the Power of Llama 2

DemoGPT logo: Generate automatic LangChain pipelines

⚡ With just a prompt, you can create interactive Streamlit apps via 🦜️🔗 LangChain's transformative capabilities & Llama 2.⚡

Downloads Releases Official Website DemoGPT Documentation

CN doc EN doc roadmap roadmap License: MIT

Open an issue Closed issues DemoGPT  Stars

Twitter Follow DemoGPT Medium DemoGPT - Auto generative AI app generator with the power of Llama 2 | Product Hunt

Streamlit application

⭐ Star History

Star History Chart

⭐ Consider starring us if you're using DemoGPT so more people hear about us!

🔥 Demo

For quick demo, you can visit our website

Tweet Generator

📚 Documentation

See our documentation site here for full how-to docs and guidelines

⚡ The new release with the power of Llama 2 is within a week. ⚡

📦 Using DemoGPT Package

The DemoGPT package is now available and can be installed using pip. Run the following command to install the package:

pip install demogpt

To use the DemoGPT application, simply type "demogpt" into your terminal:

demogpt

📑 Table of Contents

📌 Introduction

Welcome to DemoGPT, a revolutionary open-source initiative that is reshaping the landscape of Large Language Model (LLM) based application development.

At the core of DemoGPT lies the synergy of GPT-3.5-turbo & Llama 2, which powers the auto-generation of LangChain code. This process is enriched with a sophisticated architecture that translates user instructions into interactive Streamlit applications.

How DemoGPT Works

  1. Planning: DemoGPT starts by generating a plan from the user's instruction.
  2. Task Creation: It then creates specific tasks from the plan and instruction.
  3. Code Snippet Generation: These tasks are transferred into code snippets.
  4. Final Code Assembly: The code snippets are combined into a final code, resulting in an interactive Streamlit app.

The LangChain code, once generated, is not a mere endpoint but a transformative stage. It evolves into a user-friendly Streamlit application, adding an interactive dimension to the logic crafted. This metamorphosis embodies DemoGPT's commitment to user engagement and experience.

Future Enhancements

We are planning to add a publicly available database that will accelerate the generation process by retrieving similar examples during the refining process. This innovation will further streamline the development workflow, making it more efficient and responsive.

Model Flexibility

DemoGPT is designed to be adaptable, capable of using any LLM model that meets specific performance criteria in terms of code generation. This flexibility ensures that DemoGPT remains at the forefront of technology, embracing new advancements in LLM.

DemoGPT's iterative development process remains a cornerstone of its innovation. Each code segment undergoes individual testing, and the self-refining strategy ensures an efficient and error-minimized workflow. This fusion of meticulous testing and refinement is a testament to DemoGPT's pursuit of excellence.

By transcending traditional coding paradigms, DemoGPT is pioneering a new era in LLM-based applications. It's not just about code generation; it's about crafting intelligent, interactive, and inclusive solutions.

In summary, DemoGPT is more than a project; it's a visionary approach, pushing the boundaries of what's possible in LLM-based application development.

In the next release, we are gonna add Llama 2 inside of DemoGPT to make the whole system runnable completely locally. The future is bright, and the journey has just begun. Join us in this exciting adventure!

⚙️ Architecture

DemoGPT Architecture

DemoGPT Architecture

🔧 Installation

For the Package Version

You can install the DemoGPT package by running the following command:

pip install demogpt

For the Source Code Version

  1. Clone the repository:
    git clone https://github.com/melih-unsal/DemoGPT.git
    
  2. Navigate into the project directory:
    cd DemoGPT
    
  3. Install the necessary dependencies:
    pip install -r requirements.txt
    

🎮 Usage

📦 For the Package Version

Once the DemoGPT package is installed, you can use it by running the following command in your terminal:

demogpt

If you want to run the previous version, you can do so by using the --basic flag:

demogpt --basic

🐍 For the Python Interface

You can now use DemoGPT as a library in your Python applications:

from demogpt import DemoGPT
agent = DemoGPT(model_name="gpt-3.5-turbo") # if OPENAI_API_KEY is not set in env variables, put it with openai_api_key argument
instruction = "Your instruction here"
title = "Your title here"
code = ""
for phase in agent(instruction=instruction, title=title):
    print(phase) # this will display the resulting json for each generation stage
    if "code" in phase:
        code = phase["code"] # final code
print(code)

Example Output (truncated):

# phases
{'stage': 'draft', 'completed': False, 'percentage': 60, ...}
{'stage': 'draft', 'completed': False, 'percentage': 64, 'code': '#Get the source language ...'}
...
{'stage': 'final', 'completed': True, 'percentage': 100, ... , 'code': 'import streamlit as st\n...'}
# Code
import streamlit as st
from langchain import LLMChain
from langchain.chat_models import ChatOpenAI
from langchain.prompts.chat import (ChatPromptTemplate,
                                    HumanMessagePromptTemplate,
                                    SystemMessagePromptTemplate)
...

🌐 For the Source Code Version

If you have cloned the repository and wish to run the source code version, you can use DemoGPT by running the following command:

streamlit run demogpt/plan/app.py

If you want to run the previous version of DemoGPT, you can use the following command:

streamlit run demogpt/prompt_based/app.py

To-Do 📝

  • Implement new DemoGPT pipeline including plan generation, task creation, code snippet generation, and final code assembly.
  • Add feature to allow users to select models.
  • Define useful LangChain tasks
  • Publish release with the new pipeline without refinement
  • Implement remaining LangChain tasks
  • Implement self-refining strategy for model response refinement.
  • Integrate 🦍 Gorilla model for API calls.
  • Add Rapid API for expanding available API calls.
  • Implement publicly available database to accelerate the generation process by retrieving similar examples during the refining process.
  • Add all successfully generated steps to a DB to eliminate redundant refinement.

🤝 Contribute

Contributions to the DemoGPT project are welcomed! Whether you're fixing bugs, improving the documentation, or proposing new features, your efforts are highly appreciated. Please check the open issues before starting any work.

Please read CONTRIBUTING for details on our CODE OF CONDUCT, and the process for submitting pull requests to us.

📜 License

DemoGPT is an open-source project licensed under MIT License.


For any issues, questions, or comments, please feel free to contact us or open an issue. We appreciate your feedback to make DemoGPT better.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

demogpt-1.2.4.tar.gz (36.3 kB view details)

Uploaded Source

Built Distribution

demogpt-1.2.4-py3-none-any.whl (46.3 kB view details)

Uploaded Python 3

File details

Details for the file demogpt-1.2.4.tar.gz.

File metadata

  • Download URL: demogpt-1.2.4.tar.gz
  • Upload date:
  • Size: 36.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for demogpt-1.2.4.tar.gz
Algorithm Hash digest
SHA256 57c0aabc510177ac3a4fd9f0da16f3a84fa6565f4bc4633553a13b99d9118071
MD5 87157a9be13f922331932289b5a90c13
BLAKE2b-256 7b5e81562454bc494a0dedad234dc1ec10c2d02f13d71db95c398deea6a9858d

See more details on using hashes here.

File details

Details for the file demogpt-1.2.4-py3-none-any.whl.

File metadata

  • Download URL: demogpt-1.2.4-py3-none-any.whl
  • Upload date:
  • Size: 46.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for demogpt-1.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 b9ea5966403a1cc49d1ee737f7fab02bea8ed2ede5bb24049218ddac7dbf64ea
MD5 754d72a58e87bb46b1c27f82c9447be6
BLAKE2b-256 d4f8dc4f6fdb47817a119e2eaf53e32baf3c2174df77574e1524774da9bd3cd7

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page