LibreChat brings together the future of assistant AIs with the revolutionary technology of OpenAI's ChatGPT. Celebrating the original styling, LibreChat gives you the ability to integrate multiple AI models. It also integrates and enhances original client features such as conversation and message search, prompt templates and plugins.
With LibreChat, you no longer need to opt for ChatGPT Plus and can instead use free or pay-per-call APIs. We welcome contributions, cloning, and forking to enhance the capabilities of this advanced chatbot platform.
v0.5.0.mp4
- Response streaming identical to ChatGPT through server-sent events
- UI from original ChatGPT, including Dark mode
- AI model selection (through 5 endpoints: OpenAI API, BingAI, ChatGPT Browser, PaLM2, Plugins)
- Create, Save, & Share custom presets - More info on prompt presets here
- Edit and Resubmit messages with conversation branching
- Search all messages/conversations - More info here
- Plugins now available (including web access, image generation and more)
Note: These changes only apply to users who are updating from a previous version of the app.
- We have simplified the configuration process by using a single
.env
file in the root folder instead of separate/api/.env
and/client/.env
files. - If you had installed a previous version, you can run
npm run upgrade
to automatically copy the content of both files to the new.env
file and backup the old ones in the root dir. - If you are installing the project for the first time, it's recommend you run the installation script
npm run install
to guide your local setup (otherwise continue to use docker) - The docker-compose file had some change. Review the new docker instructions to make sure you are setup properly. This is still the simplest and most effective method.
- The upgrade script requires both
/api/.env
and/client/.env
files to run properly. If you get an error about a missing client env file, just rename the/client/.env.example
file to/client/.env
and run the script again. - We have renamed the
OPENAI_KEY
variable toOPENAI_API_KEY
to match the official documentation. The upgrade script should do this automatically for you, but please double-check that your key is correct in the new.env
file. - After running the upgrade script, the
OPENAI_API_KEY
variable might be placed in a different section in the new.env
file than before. This does not affect the functionality of the app, but if you want to keep it organized, you can look for it near the bottom of the file and move it to its usual section.
- For enhanced security, we are now asking for crypto keys for securely storing credentials in the
.env
file. Crypto keys are used to encrypt and decrypt sensitive data such as passwords and access keys. If you don't set them, the app will crash on startup. - You need to fill the following variables in the
.env
file with 32-byte (64 characters in hex) or 16-byte (32 characters in hex) values:CREDS_KEY
(32-byte)CREDS_IV
(16-byte)JWT_SECRET
(32-byte, optional but recommended)
- You can use this replit to generate some crypto keys quickly: https://replit.com/@daavila/crypto#index.js
- Make sure you keep your crypto keys safe and don't share them with anyone.
We apologize for any inconvenience caused by these changes. We hope you enjoy the new and improved version of our app!
- Keep up with the latest updates by visiting the releases page - Releases
Getting Started
General Information
Features
Cloud Deployment
Contributions
Sponsored by @DavidDev1334, @mjtechguy, @Pharrcyde, & @fuegovic
Contributions and suggestions bug reports and fixes are welcome! Please read the documentation before you do!
For new features, components, or extensions, please open an issue and discuss before sending a PR.
- Join the Discord community