mirror of
https://github.com/danny-avila/LibreChat.git
synced 2025-09-22 08:12:00 +02:00

* chore: fix `endpoint` typescript issues and typo in console info message * feat(api): files GET endpoint and save only file_id references to messages * refactor(client): `useGetFiles` query hook, update file types, optimistic update of filesQuery on file upload * refactor(buildTree): update to use params object and accept fileMap * feat: map files to messages; refactor(ChatView): messages only available after files are fetched * fix: fetch files only when authenticated * feat(api): AppService - rename app.locals.configs to app.locals.paths - load custom config use fileStrategy from yaml config in app.locals * refactor: separate Firebase and Local strategies, call based on config * refactor: modularize file strategies and employ with use of DALL-E * refactor(librechat.yaml): add fileStrategy field * feat: add source to MongoFile schema, as well as BatchFile, and ExtendedFile types * feat: employ file strategies for upload/delete files * refactor(deleteFirebaseFile): add user id validation for firebase file deletion * chore(deleteFirebaseFile): update jsdocs * feat: employ strategies for vision requests * fix(client): handle messages with deleted files * fix(client): ensure `filesToDelete` always saves/sends `file.source` * feat(openAI): configurable `resendImages` and `imageDetail` * refactor(getTokenCountForMessage): recursive process only when array of Objects and only their values (not keys) aside from `image_url` types * feat(OpenAIClient): calculateImageTokenCost * chore: remove comment * refactor(uploadAvatar): employ fileStrategy for avatars, from social logins or user upload * docs: update docs on how to configure fileStrategy * fix(ci): mock winston and winston related modules, update DALLE3.spec.js with changes made * refactor(redis): change terminal message to reflect current development state * fix(DALL-E-2): pass fileStrategy to dall-e
3.8 KiB
3.8 KiB
title | description | weight |
---|---|---|
🔥 Firebase CDN Setup | This document provides instructions for setting up Firebase CDN for LibreChat | -6 |
Firebase CDN Setup
Steps to Set Up Firebase
- Open the Firebase website.
- Click on "Get started."
- Sign in with your Google account.
Create a New Project
- Name your project (you can use the same project as Google OAuth).
- Optionally, you can disable Google Analytics.
- Wait for 20/30 seconds for the project to be ready, then click on "Continue."
- Click on "All Products."
- Select "Storage."
- Click on "Get Started."
- Click on "Next."
- Select your "Cloud Storage location."
- Return to the Project Overview.
- Click on "+ Add app" under your project name, then click on "Web."
- Register the app.
- Save all this information in a text file.
- Fill all the
firebaseConfig
variables in the.env
file.
FIREBASE_API_KEY=api_key #apiKey
FIREBASE_AUTH_DOMAIN=auth_domain #authDomain
FIREBASE_PROJECT_ID=project_id #projectId
FIREBASE_STORAGE_BUCKET=storage_bucket #storageBucket
FIREBASE_MESSAGING_SENDER_ID=messaging_sender_id #messagingSenderId
FIREBASE_APP_ID=1:your_app_id #appId
- Return one last time to the Project Overview.
- Select
Storage
-
Select
Rules
and delete: if false;
on this line:allow read, write: if false;
- your updated rules should look like this:
rules_version = '2'; service firebase.storage { match /b/{bucket}/o { match /{allPaths=**} { allow read, write } } }
- Publish your updated rules
Configure fileStrategy
in librechat.yaml
Finally, to enable the app use Firebase, you must set the following in your librechat.yaml
config file.
version: 1.0.1
cache: true
fileStrategy: "firebase" # This is the field and value you need to add
endpoints:
custom:
- name: "Mistral"
# Rest of file omitted
For more information about the librechat.yaml
config file, see the guide here.