gpt4all/gpt4all-chat
2023-10-05 18:16:19 -04:00
..
cmake fix references to removed model types 2023-10-05 18:16:19 -04:00
flatpak-manifest appdata: update software description 2023-10-05 10:12:43 -04:00
icons Add a nicer message. 2023-07-09 15:51:59 -04:00
metadata Switch to new models2.json for new gguf release and bump our version to 2023-10-05 18:16:19 -04:00
qml Switch to new models2.json for new gguf release and bump our version to 2023-10-05 18:16:19 -04:00
build_and_run.md Update build_and_run.md (#834) 2023-06-04 15:39:32 -04:00
chat.cpp chat: report reason for fallback to CPU 2023-10-05 18:16:19 -04:00
chat.h chat: report reason for fallback to CPU 2023-10-05 18:16:19 -04:00
chatgpt.cpp chatgpt: ensure no extra newline in header 2023-07-12 10:53:25 -04:00
chatgpt.h Bert 2023-07-13 14:21:46 -04:00
chatlistmodel.cpp Huge change that completely revamps the settings dialog and implements 2023-07-05 15:51:42 -04:00
chatlistmodel.h Consolidate generation and application settings on the new settings object. 2023-06-28 20:36:43 -03:00
chatllm.cpp backend: do not use Vulkan with non-LLaMA models 2023-10-05 18:16:19 -04:00
chatllm.h chat: report reason for fallback to CPU 2023-10-05 18:16:19 -04:00
chatmodel.h Fixed tons of warnings and clazy findings (#811) 2023-06-02 15:46:41 -04:00
CMakeLists.txt Switch to new models2.json for new gguf release and bump our version to 2023-10-05 18:16:19 -04:00
database.cpp Consolidate generation and application settings on the new settings object. 2023-06-28 20:36:43 -03:00
database.h Add a collection immediately and show a placeholder + busy indicator in localdocs settings. 2023-06-03 10:09:17 -04:00
download.cpp Don't block on exit when not connected. 2023-07-11 12:37:21 -04:00
download.h Make the retrieval/parsing of models.json sync on startup. We were jumping to many hoops to mitigate the async behavior. 2023-06-28 12:32:22 -03:00
LICENSE Moving everything to subdir for monorepo merge. 2023-05-10 10:26:55 -04:00
llm.cpp launch browser instead of maintenancetool from offline builds 2023-09-27 11:24:21 -07:00
llm.h Provide an error dialog if for any reason we can't access the settings file. 2023-07-12 08:50:21 -04:00
localdocs.cpp This completes the work of consolidating all settings that can be changed by the user on new settings object. 2023-06-29 00:44:48 -03:00
localdocs.h This completes the work of consolidating all settings that can be changed by the user on new settings object. 2023-06-29 00:44:48 -03:00
localdocsdb.h Begin implementing the localdocs ui in earnest. 2023-05-25 11:28:06 -04:00
localdocsmodel.cpp Add a collection immediately and show a placeholder + busy indicator in localdocs settings. 2023-06-03 10:09:17 -04:00
localdocsmodel.h Add a collection immediately and show a placeholder + busy indicator in localdocs settings. 2023-06-03 10:09:17 -04:00
logger.cpp Logger should also output to stderr 2023-06-01 14:15:11 -04:00
logger.h Implemented logging mechanism (#785) 2023-06-01 16:50:42 +02:00
main.cpp This completes the work of consolidating all settings that can be changed by the user on new settings object. 2023-06-29 00:44:48 -03:00
main.qml chat: report reason for fallback to CPU 2023-10-05 18:16:19 -04:00
modellist.cpp Switch to new models2.json for new gguf release and bump our version to 2023-10-05 18:16:19 -04:00
modellist.h modellist: fix the system prompt 2023-10-05 18:16:19 -04:00
mysettings.cpp Link against ggml in bin so we can get the available devices without loading a model. 2023-09-15 14:45:25 -04:00
mysettings.h Bring the vulkan backend to the GUI. 2023-09-13 11:26:10 -04:00
network.cpp Send actual and requested device info for those who have opt-in. 2023-09-16 09:42:22 -04:00
network.h This completes the work of consolidating all settings that can be changed by the user on new settings object. 2023-06-29 00:44:48 -03:00
README.md Updated README.md with a wishlist idea (#1315) 2023-08-10 11:27:09 -04:00
responsetext.cpp fixed issue of text color changing for code blocks in light mode (#1299) 2023-07-31 12:18:19 -04:00
responsetext.h Add code blocks and python syntax highlighting. 2023-06-11 14:20:05 -07:00
server.cpp Fix typo and add new show references setting to localdocs. 2023-07-05 19:41:23 -04:00
server.h Start working on more thread safety and model load error handling. 2023-06-20 14:39:22 -03: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

Install

One click installers for macOS, Linux, and Windows at https://gpt4all.io

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 always stay fresh with latest models
  • Easy to install with precompiled binaries available for all three major desktop platforms
  • Multi-modal - Ability to load more than one model and switch between them
  • Supports both llama.cpp and gptj.cpp style models
  • Model downloader in GUI featuring many popular open source models
  • Settings dialog to change temp, top_p, top_k, threads, etc
  • Copy your conversation to clipboard
  • Check for updates to get the very latest GUI

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
  • Python bindings
  • Typescript bindings
  • Plugin support for langchain other developer tools
  • Save your prompt/responses to disk
  • Upload prompt/response 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. (DONE)
    • Improve the accessibility of the installer for screen reader users
  • YOUR IDEA HERE

Building and running

Getting the latest

If you've already checked out the source code and/or built the program make sure when you do a git fetch to get the latest changes and that you also do git submodule update --init --recursive to update the submodules.

Manual download of models

Terminal Only Interface with no Qt dependency

Check out https://github.com/kuvaus/LlamaGPTJ-chat which is using the llmodel backend so it is compliant with our ecosystem and all models downloaded above should work with it.

Contributing

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

License

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

The GPT4All-J license allows for users to use generated outputs as they see fit. Users take responsibility for ensuring their content meets applicable requirements for publication in a given context or region.