apssouza22 / chatflow

Leveraging LLM to build Conversational UIs

Home Page:https://newaisolutions.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Chatflow

Chatflow offers a chat interface for users to interact with any system using natural language. Our engine understands the user's intent and executes the required commands for the given task.

Users can easily navigate and utilize complex websites/products with multiple pages and functionalities through a chat interface rather than using a point-and-click approach.

You can try it out here

Watch this video to learn more.

Join our Discord to know what's going on in development and to ask questions to the maintainers about the project and how to contribute: https://discord.gg/fJ5ecMmsSf

RAG architecture

Running the App

Before running the app, please install Docker first

Set up the environment

React UI

  • cd chat-ui
  • npm install
  • npm run build
  • npm start

Backend

  • Start the databases

    docker-compose up -d redis postgres video-chat-server
  • Install the dependencies

    pip install -r requirements-dev.txt
  • Navigate to the backend src cod

    cd server/src
  • Create a .env file and set all required variables

    cp server/src/.env.template server/src/.env
  • Replace the OpenAI API key with your own key in the .env file

  • Start the backend service locally

    # Load the initial data
    python load_data.py
    # Start the server
    python server.py
  • Log into the app http://localhost:3000/assets#/login with the following credentials

    username: admin@gmail.com
    password: 123
  • Visit http://localhost:8880/api/docs to see the API docs

  • Access the Redis Vector DB UI on http://localhost:8001/redis-stack/browser

Local Development with Docker

  • Build the docker image docker build -t apssouza/chatux:latest .
  • Set OPENAI_API_KEY_GPT4 and OPENAI_API_KEY_GPT3 environment variables
  • Run docker-compose up to start the app
  • Visit http://localhost:8880/api/docs to see the API docs

Github demo

localStorage.setItem("external-token", "github-token")
localStorage.setItem("external-url", "github.com")
  • Prompt the Github related actions. Ex List Github repositories and display as a chart with the fields: full_name and forks_count

Backlog

Please look at the issues for the backlog

Leave a star if you like the project

About

Leveraging LLM to build Conversational UIs

https://newaisolutions.com

License:BSD 2-Clause "Simplified" License


Languages

Language:TypeScript 60.1%Language:Python 35.5%Language:JavaScript 1.9%Language:HTML 1.3%Language:PowerShell 0.9%Language:Dockerfile 0.2%Language:CSS 0.1%Language:Shell 0.0%