Skip to content

Chat to various Large language models through a GUI

Notifications You must be signed in to change notification settings

alikalik9/openllm

Repository files navigation

OpenLLM: Chat with various LLM Models

OpenLLM is a versatile project that allows users to interact with different language models (LLMs). It leverages the Perplexity API for access to well-known open-source models like the LLAMA models or Mistral 7B. Additionally, OpenAI's API is used to communicate with GPT models. There is also simple functinality for file embeddings.

Features

  • Intuitive Chat Interface: Users can seamlessly chat with various LLMs.
  • Chat History: Basic chat history is stored locally in JSON files.
  • Token Counter: Keep track of tokens used during interactions.
  • Online LLMs!: Using the newest perplexity online-models that are grounded on internet data. So no cutoff-date! Very new models so definetly expect errors.
  • Basic embeddings with llama-index: Upload your files and chat to them.
  • Basic authentification: Set a password as an env variable and only users that enter that password correctly can access the site. Authentification is stored in a user-coockie, so you dont to enter the password only once->Very basic, no password encoding implemented.

Demo

demo.basic.online-video-cutter.com.mp4

Online-LLM

Bildschirmaufnahme.2023-12-03.um.15.06.22.mov

Future Enhancements

  • Robust Error Handling: Improve error handling for a smoother experience.
  • Optimizations: Minor improvements and optimizations.

Technical Details

OpenLLM relies on two Python libraries:

  • NiceGUI: Used for the user interface.
  • Langchain: Facilitates communication with LLMs.
  • LlamaIndex: Facilitates Embeddings with LLMs.

Installation

  1. Clone the repository.
  2. Install dependencies from requirements.txt.
  3. Set the env variables listed in the env_vars_github.txt. Or create a file called "var.env" where you set the env variables found in the env_vars_github.txt. The code will automatically use the vars stored in the var.env. You need API-Keys from Open-AI and Perplexity to use all the models.
  4. Run main.py.

About

Chat to various Large language models through a GUI

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages