Go to file
2023-04-13 20:13:45 -04:00
cmake Change the filename. 2023-04-13 12:01:31 -04:00
ggml@c9f702ac57 Initial commit. 2023-04-08 23:28:39 -04:00
icons Update favicon. 2023-04-13 06:47:24 -04:00
.gitignore Working on installer for windows. 2023-04-10 15:03:09 -04:00
.gitmodules Initial commit. 2023-04-08 23:28:39 -04:00
CMakeLists.txt Install the new icons. 2023-04-13 06:49:47 -04:00
gptj.cpp Provide a busy indicator if we're processing a long prompt and make the 2023-04-12 15:31:32 -04:00
gptj.h Compile fix for MacOSX. 2023-04-10 15:04:40 -04:00
LICENSE Modify license to be clear it does not extend to models. 2023-04-11 14:30:37 -04:00
llm.cpp Fix the check for updates on mac. 2023-04-12 17:57:02 -04:00
llm.h Programmatically get the model name from the LLM. The LLM now searches 2023-04-11 08:29:55 -04:00
main.cpp Initial commit. 2023-04-08 23:28:39 -04:00
main.qml Disable the text field from user interaction. 2023-04-13 20:13:45 -04:00
README.md Update README.md 2023-04-13 18:57:33 -04:00

gpt4all-chat

Cross platform Qt based GUI for GPT4All versions with GPT-J as the base model. NOTE: The model seen in the screenshot is actually a preview of a new training run for GPT4All based on GPT-J. The GPT4All project is busy at work getting ready to release this model including installers for all three major OS's. In the meantime, you can try this UI out with the original GPT-J model by following build instructions below.

image

Features

  • Cross-platform (Linux, Windows, MacOSX)
  • Fast CPU based inference using ggml for GPT-J based models
  • The UI is made to look and feel like you've come to expect from a chatty gpt
  • Check for updates so you can alway stay fresh with latest models
  • Easy to install with precompiled binaries available for all three major desktop platforms

Feature wishlist

  • Multi-chat - a list of current and past chats and the ability to save/delete/export and switch between
  • Text to speech - have the AI response with voice
  • Speech to text - give the prompt with your voice
  • Multi-modal - Ability to load more than one model and switch between them
  • Python bindings
  • Typescript bindings
  • Plugin support for langchain other developer tools
  • Save your prompt/responses to disk
  • Upload prompt/respones manually/automatically to nomic.ai to aid future training runs
  • Syntax highlighting support for programming languages, etc.
  • REST API with a built-in webserver in the chat gui itself with a headless operation mode as well
  • Advanced settings for changing temperature, topk, etc.
  • YOUR IDEA HERE

Building and running

git clone --recurse-submodules https://github.com/manyoso/gpt4all-chat.git
cd gpt4all-chat
mkdir build
cd build
cmake ..
cmake --build . --parallel
python3 ../ggml/examples/gpt-j/convert-h5-to-ggml.py /path/to/your/local/copy/of/EleutherAI/gpt-j-6B 0
./bin/gpt-j-quantize /path/to/your/local/copy/of/EleutherAI/gpt-j-6B/ggml-model-f32.bin ./ggml-model-q4_0.bin 2
./chat

Contributing

  • Pull requests welcome. See the feature wish list for ideas :)

License

The source code of this chat interface is currently under a GPL license. The underlying GPT4All-j model is released under non-restrictive open-source Apache 2 License.