* Added the following features: \n 1) Now prompt_model uses the positional argument callback to return the response tokens. \n 2) Due to the callback argument of prompt_model, prompt_model_streaming only manages the queue and threading now, which reduces duplication of the code. \n 3) Added optional verbose argument to prompt_model which prints out the prompt that is passed to the model. \n 4) Chat sessions can now have a header, i.e. an instruction before the transcript of the conversation. The header is set at the creation of the chat session context. \n 5) generate function now accepts an optional callback. \n 6) When streaming and using chat session, the user doesn't need to save assistant's messages by himself. This is done automatically. * added _empty_response_callback so I don't have to check if callback is None * added docs * now if the callback stop generation, the last token is ignored * fixed type hints, reimplemented chat session header as a system prompt, minor refactoring, docs: removed section about manual update of chat session for streaming * forgot to add some type hints! * keep the config of the model in GPT4All class which is taken from models.json if the download is allowed * During chat sessions, the model-specific systemPrompt and promptTemplate are applied. * implemented the changes * Fixed typing. Now the user can set a prompt template that will be applied even outside of a chat session. The template can also have multiple placeholders that can be filled by passing a dictionary to the generate function * reversed some changes concerning the prompt templates and their functionality * fixed some type hints, changed list[float] to List[Float] * fixed type hints, changed List[Float] to List[float] * fix typo in the comment: Pepare => Prepare --------- Signed-off-by: 385olt <385olt@gmail.com> |
||
---|---|---|
.circleci | ||
.github | ||
gpt4all-api | ||
gpt4all-backend | ||
gpt4all-bindings | ||
gpt4all-chat | ||
gpt4all-docker | ||
gpt4all-training | ||
.codespellrc | ||
.gitignore | ||
.gitmodules | ||
CONTRIBUTING.md | ||
gpt4all-lora-demo.gif | ||
LICENSE.txt | ||
monorepo_plan.md | ||
README.md |
GPT4All
Open-source assistant-style large language models that run locally on your CPU
🦜️🔗 Official Langchain Backend
GPT4All is made possible by our compute partner Paperspace.
Run on an M1 macOS Device (not sped up!)
GPT4All: An ecosystem of open-source on-edge large language models.
GPT4All is an ecosystem to train and deploy powerful and customized large language models that run locally on consumer grade CPUs. Note that your CPU needs to support AVX or AVX2 instructions.
Learn more in the documentation.
The goal is simple - be the best instruction tuned assistant-style language model that any person or enterprise can freely use, distribute and build on.
A GPT4All model is a 3GB - 8GB file that you can download and plug into the GPT4All open-source ecosystem software. Nomic AI supports and maintains this software ecosystem to enforce quality and security alongside spearheading the effort to allow any person or enterprise to easily train and deploy their own on-edge large language models.
Chat Client
Run any GPT4All model natively on your home desktop with the auto-updating desktop chat client. See GPT4All Website for a full list of open-source models you can run with this powerful desktop application.
Direct Installer Links:
Find the most up-to-date information on the GPT4All Website
Chat Client building and running
- Follow the visual instructions on the chat client build_and_run page
Bindings
- 🐍 Official Python Bindings
- 💻 Official Typescript Bindings
- 💻 Official GoLang Bindings
- 💻 Official C# Bindings
- 💻 Official Java Bindings
Contributing
GPT4All welcomes contributions, involvement, and discussion from the open source community! Please see CONTRIBUTING.md and follow the issues, bug reports, and PR markdown templates.
Check project discord, with project owners, or through existing issues/PRs to avoid duplicate work.
Please make sure to tag all of the above with relevant project identifiers or your contribution could potentially get lost.
Example tags: backend
, bindings
, python-bindings
, documentation
, etc.
Technical Reports
📗 Technical Report 3: GPT4All Snoozy and Groovy
📗 Technical Report 2: GPT4All-J
Citation
If you utilize this repository, models or data in a downstream project, please consider citing it with:
@misc{gpt4all,
author = {Yuvanesh Anand and Zach Nussbaum and Brandon Duderstadt and Benjamin Schmidt and Andriy Mulyar},
title = {GPT4All: Training an Assistant-style Chatbot with Large Scale Data Distillation from GPT-3.5-Turbo},
year = {2023},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/nomic-ai/gpt4all}},
}