Skip to content

Chat interface for OpenBB based on a instruct finetuning of a LLM, similar to ChatGPT.

Notifications You must be signed in to change notification settings

GPTStonks/openbb-chat

Repository files navigation

OpenBB Chat

X Follow Us Badge Discord Badge Docker Badge

PyTorch Lightning Config: Hydra Models: HuggingFace

Description

OpenBB Chat provides chat capabilities to OpenBB by leveraging the generative potential of LLMs. The chat is implemented following InstructGPT. This repository contains the implementations of the NLP models and the training/inference infraestructure.

Installation

PDM

# clone project
git clone https://github.com/Dedalo314/openbb-chat
cd openbb-chat

# install pdm
pip install pdm

# install package
pdm install

How to run

Train model with default configuration

# train demo on CPU
python openbb_chat/train.py trainer=cpu

# train demo on GPU
python openbb_chat/train.py trainer=gpu

Train model with chosen experiment configuration from configs/experiment/

python openbb_chat/train.py experiment=experiment_name.yaml

You can override any parameter from command line like this

python openbb_chat/train.py trainer.max_epochs=20 data.batch_size=64

Released models

The model Griffin-3B-GPTQ has been created as part of this project by quantizing Griffin-3B. In the future, more models will be trained and released as needed.

Sample usage with pre-trained models

In the repository https://github.com/GPTStonks/api openbb-chat is used to perform retrieval-augmented generation (RAG) with OpenBB's official documentation and pre-trained models. In particular, the classifiers modules are used to find the appropriate function in OpenBB and the llms modules are used to complete the function call.

License

The Dockerfile is based on the image nvidia/cuda, which states that the following notice must be included: This software contains source code provided by NVIDIA Corporation.