LibreChat
AI chat platform combining multiple AI models and extended features
Alternative to: chatgpt, huggingface chat, microsoft azure openai, anthropic claude, cohiera, mistral ai, openrouter, openai playground, llama reasoning, perplexity ai
v0.6.6
2024-01-19Whatโs Changed
- To update: For an efficient transition, please run
npm run updatefrom the project directory.- Prerequisites: git and npm need to be installed on your machine
- Recommended: We suggest that you clear localStorage and cookies before initiating
๐๏ธ Highlights
-
LibreChat hit a major milestone and was featured on GitHub trending several days in a row!
-
Thank you all who checked out this project, there are still more features to come and in active development!
-
Customizing endpoints is now possible (that follow OpenAI specs):

- You can enable an experimental mode in Settings to switch Endpoints mid-conversation:
:sparkles: New Features
- ๐ฎfeat: moderation text by @Berry-13 in https://github.com/danny-avila/LibreChat/pull/1388
- ๐ฅ๐ feat: CDN (Firebase) & feat: account section by @Berry-13 in https://github.com/danny-avila/LibreChat/pull/1438
- ๐ซ๐ feat: disallow search indexing by @Berry-13 in https://github.com/danny-avila/LibreChat/pull/1409
- ๐ณ : Improving Docker Build by @ineiti in https://github.com/danny-avila/LibreChat/pull/1415
- ๐ feat: add
list-balances,remove-user, and improve User scripts by @ineiti in https://github.com/danny-avila/LibreChat/pull/1418 - ๐ฑfeat: allow PWA by @Berry-13 in https://github.com/danny-avila/LibreChat/pull/1440
- ๐ซ feat: Config File & Custom Endpoints by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1474
- ๐งช feat: Experimental: Enable Switching Endpoints Mid-Conversation by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1483
- โจ feat(saveImageFromUrl): Dynamic Extension Handling by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1514
- ๐ Feat: Streamline File Strategies & GPT-4-Vision Settings by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1535
- โ๏ธ feat: LaTeX parsing for Messages by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1585
- ๐ผ๏ธ feat(DALL-E): Azure OpenAI Support & New Config Variables by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1586
- ๐ฏ feat(config): Custom Endpoint Request Headers by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1588
- ๐ feat: Add
OPENAI_ORGANIZATIONfor all OpenAI Requests by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1590 - ๐๏ธ feat: Optional Display Username in Messages, Send/Stop Button Style, Localization by @itzraiss & @danny-avila in https://github.com/danny-avila/LibreChat/pull/1592
- ๐ชถ feat: Add Support for Azure OpenAI Base URL by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1596
:gear: Other Changes
- ๐ Chore: Update pull_request_template.md with Hard Link by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1417
- ๐จ style: Add Dynamic Height to Endpoint/Model Menus by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1480
- ๐งน chore: remove โMEILI_HTTP_ADDRโ by @fuegovic in https://github.com/danny-avila/LibreChat/pull/1475
- ๐จ๏ธ refactor: Open New Tab for Ctrl+Click or Button Combo in NewChat by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1484
- ๐ refactor: Mount Config File in Docker and Add to .dockerignore by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1493
- ๐ณ : Further Docker build Cleanup & Docs Update by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1502
- ๐ refactor(config): Move
connectWithTimeoutOutside of Helpers Module by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1513 - ๐จ: Updated Plugins Search Bar by @itzraiss in https://github.com/danny-avila/LibreChat/pull/1549
- ๐ชrefactor: Update tokens.js for Added Context Buffer from Max by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1573
- ๐ refactor: Enhance Auto Scroll Speed and UseEffect Cleanup by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1591
๐ง Fixes
- ๐ fix: Prevent Unnecessary Cloning of Symbols in Log Object by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1455
- ๐งนfix: Handle Abort Message Edge Cases by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1462
- ๐ ๏ธ fix: Minor Fixes in
Message,Ask/EditController,OpenAIClient, andcountTokensby @danny-avila in https://github.com/danny-avila/LibreChat/pull/1463 - ๐ง fix(OpenAIClient): do not invoke abortCompletion on completion error by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1473
- ๐ง fix: langchain packages mismatch, mount config file for
deploy-compose.yaml, silence config not found error by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1481 - ๐ ๏ธ fix: Error Message Parsing and ChatOpenAI credentials by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1482
- ๐ง fix: Improve Endpoint Handling and Address Edge Cases by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1486
- โฌ๏ธ fix(SendButton): correct dark theme background when
enabledby @danny-avila in https://github.com/danny-avila/LibreChat/pull/1503 - ๐ ๏ธ fix: Custom Endpoint issues, Improve SSE Response Handling by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1510
- ๐ fix: Load
dotenvat Top of Call Stack by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1512 - ๐ง fix: Error Handling Improvements by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1518
- fix(getUserPluginAuthValue): throws error if no user matches by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1522
- ๐ fix: Remove
resendImages,imageDetailfrommodelOptionsfor Custom Endpoints by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1537 - ๐๏ธ fix(config): Resolve Paths Correctly for Helper Scripts on Linux and Windows by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1542
- ๐ fix: Update
documentTitle based onappTitleand on โNew Chatโ by @danny-avila in https://github.com/danny-avila/LibreChat/pull/1553
:memo: Documentation
- ๐งน๐ docs: refactor and clean up by @fuegovic in https://github.com/danny-avila/LibreChat/pull/1392
- ๐ชชmkdocs: social cards by @fuegovic in https://github.com/danny-avila/LibreChat/pull/1428
- doc update: firebase.md by @fuegovic in https://github.com/danny-avila/LibreChat/pull/1456
- docs: update pull_request_template.md by @fuegovic in https://github.com/danny-avila/LibreChat/pull/1466
- docs: update the license to 2024. by @Berry-13 in https://github.com/danny-avila/LibreChat/pull/1501
- ๐ docs: Add Sealos 1-Click Deployment by @yangchuansheng in https://github.com/danny-avila/LibreChat/pull/1578
- ๐docs: Railway support by @Berry-13 in https://github.com/danny-avila/LibreChat/pull/1529
- ๐ docs: Update Mistral AI API example about
dropParamsby @danny-avila in https://github.com/danny-avila/LibreChat/pull/1538 - ๐docs: update invalid env variables in hetzner ubuntu example by @nicam in https://github.com/danny-avila/LibreChat/pull/1539
- ๐ docs: Update Render hosting Guide by @tmendenhall in https://github.com/danny-avila/LibreChat/pull/1528
- ๐ docs: fix mistral ai api example
safe_modeโ>safe_promptby @danny-avila in https://github.com/danny-avila/LibreChat/pull/1541 - ๐งน docs: update docker_override.md by @eltociear in https://github.com/danny-avila/LibreChat/pull/1546
- ๐ณ docs: Update dotenv.md by @ganeshkrishnan1 in https://github.com/danny-avila/LibreChat/pull/1564
๐ Internationalization
- French translations were updated by @fuegovic (PRs #1444, #1472, #1595)
- Russian by @LedyBacer (#1413) and @machinsoft (#1457, #1517)
- Italian by @Berry-13 (#1414, #1594)
- Portuguese by @itzraiss (#1461, #1505, #1523, #1593, #1549)
- Indonesian by @wahitftry (#1563)
- Chinese by @snekkenull (#1527)
โ ๏ธ Breaking Changes
- DALL-E Update: user-provided keys for DALL-E are now specific to each DALL-E version, i.e.:
DALLE3_API_KEYandDALLE2_API_KEY - Note:
DALLE_API_KEYwill work for both DALL-E-3 and DALL-E-2 when the admin provides the credential; in other words, this may only affect your users if DALLE_API_KEY is not set in the.envfile. In this case, they will simply have to โuninstallโ the plugin, and provide their API key again. - Unused legacy code will soon be removed from the repo (mainly on the client side)
๐ Upcoming Features
- Assistants API integration and General File support continue to be in active development, ETA: end of January
- Prompt-engineering-focused features such as adding/removing messages at any point.
- Better, more customizable, and easier System-wide Configuration for Endpoints/Models/Presets
- Our full Roadmap
New Contributors
- @LedyBacer made their first contribution in https://github.com/danny-avila/LibreChat/pull/1413
- @ineiti made their first contribution in https://github.com/danny-avila/LibreChat/pull/1418
- @nicam made their first contribution in https://github.com/danny-avila/LibreChat/pull/1539
- @tmendenhall made their first contribution in https://github.com/danny-avila/LibreChat/pull/1528
- @eltociear made their first contribution in https://github.com/danny-avila/LibreChat/pull/1546
- @ganeshkrishnan1 made their first contribution in https://github.com/danny-avila/LibreChat/pull/1564
- @wahitftry made their first contribution in https://github.com/danny-avila/LibreChat/pull/1563
- @yangchuansheng made their first contribution in https://github.com/danny-avila/LibreChat/pull/1578
Full Changelog: https://github.com/danny-avila/LibreChat/compare/v0.6.5โฆv0.6.6