🧹📚 docs: refactor and clean up (#1392)

* 📑 update mkdocs

* rename docker override file and add to gitignore

* update .env.example - GOOGLE_MODELS

* update index.md

* doc refactor: split installation and configuration in two sub-folders

* doc update: installation guides

* doc update: configuration guides

* doc: new docker override guide

* doc: new beginner's guide for contributions - Thanks @Berry-13

* doc: update documentation_guidelines.md

* doc: update testing.md

* doc: update deployment guides

* doc: update /dev readme

* doc: update general_info

* doc: add 0 value to doc weight

* doc: add index.md to every doc folders

* doc: add weight to index.md and move openrouter from free_ai_apis.md to ai_setup.md

* doc: update toc so they display properly on the right had side in mkdocs

* doc: update pandoranext.md

* doc: index logging_system.md

* doc: update readme.md

* doc: update litellm.md

* doc: update ./dev/readme.md

* doc:🔖 new presets.md

* doc: minor corrections

* doc update: user_auth_system.md and presets.md, doc feat: add mermaid support to mkdocs

* doc update: add screenshots to presets.md

* doc update: add screenshots to - OpenID with AWS Cognito

* doc update: BingAI cookie instruction

* doc update: discord auth

* doc update: facebook auth

* doc: corrections to user_auth_system.md

* doc update: github auth

* doc update: google auth

* doc update: auth clean up

* doc organization: installation

* doc organization: configuration

* doc organization: features+plugins & update:plugins screenshots

* doc organization: deploymend + general_info  & update: tech_stack.md

* doc organization: contributions

* doc: minor fixes

* doc: minor fixes
This commit is contained in:
Fuegovic 2023-12-22 08:36:42 -05:00 committed by GitHub
parent 5c27fa304a
commit 51050cc4d3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
66 changed files with 1617 additions and 869 deletions

View file

@ -1,3 +1,8 @@
---
title: 😈 Bing Jailbreak
weight: -3
---
# Bing Jailbreak

31
docs/features/index.md Normal file
View file

@ -0,0 +1,31 @@
---
title: Features
weight: 2
---
# Features
---
* 🔌[Plugins](./plugins/index.md)
* 🔌 [Introduction](./plugins/introduction.md)
* 🛠️ [Make Your Own](./plugins/make_your_own.md)
* 🧑‍💼 [Official ChatGPT Plugins](./plugins/chatgpt_plugins_openapi.md)
* 🔎 [Google Search](./plugins/google_search.md)
* 🖌️ [Stable Diffusion](./plugins/stable_diffusion.md)
* 🧠 [Wolfram|Alpha](./plugins/wolfram.md)
* ⚡ [Azure AI Search](./plugins/azure_ai_search.md)
* 🔖 [Presets](./presets.md)
---
* 🔨 [Automated Moderation](./mod_system.md)
* 🪙 [Token Usage](./token_usage.md)
* 🍃 [Manage Your Database](./manage_your_database.md)
* 🪵 [Logging System](./logging_system.md)
* 📦 [PandoraNext](./pandoranext.md)
* 😈 [Bing Jailbreak](./bing_jailbreak.md)
---
* ✨ [Third-Party Tools and Contributions](./third_party.md)

View file

@ -1,3 +1,8 @@
---
title: 🪵 Logging System
weight: -5
---
### General
LibreChat has central logging built into its backend (api).

View file

@ -1,3 +1,8 @@
---
title: 🍃 Manage Your Database
weight: -6
---
<img src="https://github.com/danny-avila/LibreChat/assets/32828263/4572dd35-8489-4cb1-a968-4fb5a871d6e5" height="50">

View file

@ -1,3 +1,7 @@
---
title: 🔨 Automated Moderation
weight: -8
---
## Automated Moderation System (optional)
The Automated Moderation System uses a scoring mechanism to track user violations. As users commit actions like excessive logins, registrations, or messaging, they accumulate violation scores. Upon reaching a set threshold, the user and their IP are temporarily banned. This system ensures platform security by monitoring and penalizing rapid or suspicious activities.

View file

@ -1,3 +1,8 @@
---
title: 📦 PandoraNext
weight: -4
---
# PandoraNext Deployment Guide
If you're looking to use the `ChatGPT` Endpoint in LibreChat, setting up a reverse proxy is a essential. PandoraNext offers a robust solution for this purpose. This guide will walk you through deploying PandoraNext to enable the `CHATGPT_REVERSE_PROXY` for use with LibreChat.
@ -6,103 +11,22 @@ If you're looking to use the `ChatGPT` Endpoint in LibreChat, setting up a rever
You can use it locally in docker or deploy it onthe web for remote access.
## Deploy Online by Duplicating Hugging Face Space
To deploy PandoraNext online by duplicating the Hugging Face Space, follow these steps:
1. Get your PandoraNext license id here: [PandoraNext Dashboard](https://dash.pandoranext.com/)
2. **Configure `config.json`:**
Edit the following `config.json`. Specify your `license_id` and `proxy_api_prefix`. For the `proxy_api_prefix`, use at least 8 characters, avoid characters that can't be used in a URL and make sure it's unique.
Here's the `config.json` for your reference:
```json
{
"bind": "0.0.0.0:8181",
"tls": {
"enabled": false,
"cert_file": "",
"key_file": ""
},
"timeout": 600,
"proxy_url": "",
"license_id": "",
"public_share": false,
"site_password": "",
"setup_password": "",
"server_tokens": true,
"proxy_api_prefix": "",
"isolated_conv_title": "*",
"captcha": {
"provider": "",
"site_key": "",
"site_secret": "",
"site_login": false,
"setup_login": false,
"oai_username": false,
"oai_password": false
},
"whitelist": null
}
```
3. **Hugging Face Space:**
Visit the [PandoraNext LibreChat Space](https://huggingface.co/spaces/LibreChat/PandoraNext) on Hugging Face.
4. **Duplicate the Space:**
Utilize the available options to duplicate or fork the space into your own Hugging Face account.
5. **Fill the required secrets**
When asked for the `SECRETS`,
- for `CONFIG_JSON` use the whole content of the `config.json` you just modified,
- for `TOKENS_JSON` use the following default `token.json`:
```json
{
"test-1": {
"token": "access token / session token / refresh token",
"shared": true,
"show_user_info": false
},
"test-2": {
"token": "access token / session token / refresh token",
"shared": true,
"show_user_info": true,
"plus": true
},
"test2": {
"token": "access token / session token / refresh token / share token",
"password": "12345"
}
}
```
6. **Configure LibreChat:**
In the .env file (or secrets settings if you host LibreChat on Hugging Face), set the `CHATGPT_REVERSE_PROXY` variable using the following format:
```bash
CHATGPT_REVERSE_PROXY=http://your_server_domain.com/your_proxy_api_prefix_here/backend-api/conversation
```
- Replace `your_server_domain.com` with the domain of your deployed space.
- you can use this format: `https://username-pandoranext.hf.space` (replace `username` with your Huggingface username)
- Replace `your_proxy_api_prefix_here` with the `proxy_api_prefix` you have set in your `config.json`.
- The resulting URL should look similar to:
`https://username-pandoranext.hf.space/your_proxy_api_prefix_here/backend-api/conversation`
---
## Deploy Locally Using Docker
For local deployment using Docker, the steps are as follows:
1. **Clone or Download the Repository:**
### 1. **Clone or Download the Repository:**
Get the latest release from the [PandoraNext GitHub repository](https://github.com/pandora-next/deploy).
```bash
git clone https://github.com/pandora-next/deploy.git
```
2. Get your PandoraNext license id here: [PandoraNext Dashboard](https://dash.pandoranext.com/)
### 2. Get your PandoraNext license id here: [PandoraNext Dashboard](https://dash.pandoranext.com/)
3. **Configure `config.json`:**
### 3. **Configure `config.json`:**
Within the cloned repository, in the `data` folder, edit `config.json`. Specify your `license_id` and `proxy_api_prefix`. For the `proxy_api_prefix`, use at least 8 characters, avoid characters that can't be used in a URL and make sure it's unique.
Here's the `config.json` for your reference:
@ -137,7 +61,7 @@ For local deployment using Docker, the steps are as follows:
}
```
4. **Set Up the LibreChat `.env` Filer:**
### 4. **Set Up the LibreChat `.env` Filer:**
In the `.env` file within your LibreChat directory, you'll need to set the `CHATGPT_REVERSE_PROXY` variable:
```bash
@ -145,13 +69,99 @@ For local deployment using Docker, the steps are as follows:
```
- Replace `your_proxy_api_prefix_here` with the actual proxy API prefix.
4. **Start Docker Containers:**
### 5. **Start Docker Containers:**
From the PandoraNext directory, run the following command to launch the Docker containers:
```bash
docker-compose up -d
```
---
## Deploy Online on Hugging Face
To deploy PandoraNext online by duplicating the Hugging Face Space, follow these steps:
### 1. Get your PandoraNext license id here: [PandoraNext Dashboard](https://dash.pandoranext.com/)
### 2. **Configure `config.json`:**
Edit the following `config.json`. Specify your `license_id` and `proxy_api_prefix`. For the `proxy_api_prefix`, use at least 8 characters, avoid characters that can't be used in a URL and make sure it's unique.
Here's the `config.json` for your reference:
```json
{
"bind": "0.0.0.0:8181",
"tls": {
"enabled": false,
"cert_file": "",
"key_file": ""
},
"timeout": 600,
"proxy_url": "",
"license_id": "",
"public_share": false,
"site_password": "",
"setup_password": "",
"server_tokens": true,
"proxy_api_prefix": "",
"isolated_conv_title": "*",
"captcha": {
"provider": "",
"site_key": "",
"site_secret": "",
"site_login": false,
"setup_login": false,
"oai_username": false,
"oai_password": false
},
"whitelist": null
}
```
### 3. **Hugging Face Space:**
Visit the [PandoraNext LibreChat Space](https://huggingface.co/spaces/LibreChat/PandoraNext) on Hugging Face.
### 4. **Duplicate the Space:**
Utilize the available options to duplicate or fork the space into your own Hugging Face account.
### 5. **Fill the required secrets**
When asked for the `SECRETS`,
- for `CONFIG_JSON` use the whole content of the `config.json` you just modified,
- for `TOKENS_JSON` use the following default `token.json`:
```json
{
"test-1": {
"token": "access token / session token / refresh token",
"shared": true,
"show_user_info": false
},
"test-2": {
"token": "access token / session token / refresh token",
"shared": true,
"show_user_info": true,
"plus": true
},
"test2": {
"token": "access token / session token / refresh token / share token",
"password": "12345"
}
}
```
### 6. **Configure LibreChat:**
In the .env file (or secrets settings if you host LibreChat on Hugging Face), set the `CHATGPT_REVERSE_PROXY` variable using the following format:
```bash
CHATGPT_REVERSE_PROXY=http://your_server_domain.com/your_proxy_api_prefix_here/backend-api/conversation
```
- Replace `your_server_domain.com` with the domain of your deployed space.
- you can use this format: `https://username-pandoranext.hf.space` (replace `username` with your Huggingface username)
- Replace `your_proxy_api_prefix_here` with the `proxy_api_prefix` you have set in your `config.json`.
- The resulting URL should look similar to:
`https://username-pandoranext.hf.space/your_proxy_api_prefix_here/backend-api/conversation`
## Final Notes
- The `proxy_api_prefix` should be sufficiently random and unique to prevent errors.

View file

@ -1,3 +1,7 @@
---
title: ⚡ Azure AI Search
weight: -4
---
# Azure AI Search Plugin
Through the plugins endpoint, you can use Azure AI Search for answers to your questions with assistance from GPT.

View file

@ -1,3 +1,7 @@
---
title: 🧑‍💼 Official ChatGPT Plugins
weight: -8
---
# Using official ChatGPT Plugins / OpenAPI specs
ChatGPT plugins are API integrations for OpenAI models that extend their capabilities. They are structured around three key components: an API, an **OpenAPI specification** (spec for short), and a JSON **Plugin Manifest** file.
@ -7,15 +11,19 @@ To learn more about them, or how to make your own, read here: [ChatGPT Plugins:
Thanks to the introduction of [OpenAI Functions](https://openai.com/blog/function-calling-and-other-api-updates) and their utilization in [Langchain](https://js.langchain.com/docs/modules/chains/openai_functions/openapi), it's now possible to directly use OpenAI Plugins through LibreChat, without building any custom langchain tools. The main use case we gain from integrating them to LibreChat is to allow use of plugins with gpt-3.5 models, and without ChatGPT Plus. They also find a great use case when you want to limit your own private API's interactions with chat.openai.com and their servers in favor of a self-hosted LibreChat instance.
### Table of Contents
- [Intro](#intro)
- [Adding a Plugin](#adding-a-plugin)
- [Editing Manifest Files](#editing-manifest-files)
- [Override Parameter Values](#override-parameter-values)
- [Add Header Fields](#add-header-fields)
- [Custom OpenAPI Spec files](#custom-openapi-spec-files)
- [Plugins with Authentication](#plugins-with-authentication)
- [Showcase](#showcase)
- [Disclaimers](#disclaimers)
- [Using official ChatGPT Plugins / OpenAPI specs](#using-official-chatgpt-plugins--openapi-specs)
- [Table of Contents](#table-of-contents)
- [Intro](#intro)
- [**Plugin Manifest File:**](#plugin-manifest-file)
- [**OpenAPI Spec**](#openapi-spec)
- [Adding a Plugin](#adding-a-plugin)
- [Editing Manifest Files](#editing-manifest-files)
- [Override Parameter Values](#override-parameter-values)
- [Add Header Fields](#add-header-fields)
- [Custom OpenAPI Spec files](#custom-openapi-spec-files)
- [Plugins with Authentication](#plugins-with-authentication)
- [Showcase](#showcase)
- [Disclaimers](#disclaimers)
## Intro

View file

@ -1,3 +1,8 @@
---
title: 🔎 Google Search
weight: -7
---
# Google Search Plugin
Through the plugins endpoint, you can use google search for answers to your questions with assistance from GPT! To get started, you need to get a Google Custom Search API key, and a Google Custom Search Engine ID. You can then define these as follows in your `.env` file:
```env

View file

@ -0,0 +1,13 @@
---
title: Plugins
weight: -10
---
# Plugins
* 🔌 [Introduction](./introduction.md)
* 🛠️ [Make Your Own](./make_your_own.md)
* 🧑‍💼 [Official ChatGPT Plugins](./chatgpt_plugins_openapi.md)
* 🔎 [Google Search](./google_search.md)
* 🖌️ [Stable Diffusion](./stable_diffusion.md)
* 🧠 [Wolfram|Alpha](./wolfram.md)
* ⚡ [Azure AI Search](./azure_ai_search.md)

View file

@ -1,6 +1,11 @@
---
title: 🔌 Introduction
weight: -10
---
# Plugins Endpoint
![introduction-1](https://github.com/danny-avila/LibreChat/assets/32828263/7e426681-2bef-4dfc-9b4e-0cf2c09cb1d5)
![intro-1](https://github.com/danny-avila/LibreChat/assets/32828263/7db788a5-2173-4115-b34b-43ea132dae69)
The plugins endpoint opens the door to prompting LLMs in new ways other than traditional input/output prompting.
@ -8,27 +13,21 @@ The first step is using chain-of-thought prompting & ["agency"](https://zapier.c
More than this, you can use this endpoint for changing your conversation settings mid-conversation. Unlike the official ChatGPT site and all other endpoints, you can switch models, presets, and settings mid-convo, even when you have no plugins selected. This is useful if you first want a creative response from GPT-4, and then a deterministic, lower cost response from GPT-3. Soon, you will be able to use Google, HuggingFace, local models, all in this or a similar endpoint in the same modular manner.
### Roadmap:
- More plugins and advanced plugin usage (ongoing)
- **[ChatGPT Plugins/OpenAPI Specs (complete)](./chatgpt_plugins_openapi.md)**
- More LLMs to choose from for both Thinking and Completion Phases
- Alternative prompting methods such as Tree-of-Thought
## Using Plugins
The LLM process when using Plugins is illustrated below.
![introduction-2](https://github.com/danny-avila/LibreChat/assets/32828263/789406e1-7345-43d2-823b-8aed0588bb78)
![intro-2](https://github.com/danny-avila/LibreChat/assets/32828263/789406e1-7345-43d2-823b-8aed0588bb78)
**When you open the settings with the Plugins endpoint selected, you will view the default settings for the Completion Phase.**
Clicking on **"Show Agent Settings"** will allow you to modify parameters for the thinking phase
![introduction-3](https://github.com/danny-avila/LibreChat/assets/32828263/f3cf33d0-701f-409d-8ef6-f336993df55d)
![intro-3](https://github.com/danny-avila/LibreChat/assets/32828263/d9a43517-5b35-4786-a126-0adf62b5b087)
---
![introduction-4](https://github.com/danny-avila/LibreChat/assets/32828263/c6a33fb2-aa14-4a88-9467-9f2c429e6338)
![intro-4](https://github.com/danny-avila/LibreChat/assets/32828263/12a51feb-c030-4cf0-8429-16360270988d)
- You can specify which plugins you would like to select from by installing/uninstalling them in the Plugin store
- See this guide on how to create your own plugins (WIP)

View file

@ -1,3 +1,7 @@
---
title: 🛠️ Make Your Own
weight: -9
---
# Making your own Plugin
Creating custom plugins for this project involves extending the `Tool` class from the `langchain/tools` module.

View file

@ -1,3 +1,8 @@
---
title: 🖌️ Stable Diffusion
weight: -6
---
# Stable Diffusion Plugin
To use Stable Diffusion with this project, you will either need to download and install [stable-diffusion-webui](https://github.com/AUTOMATIC1111/stable-diffusion-webui) or, for a dockerized deployment, you can also use [stable-diffusion-webui-docker](https://github.com/AbdBarho/stable-diffusion-webui-docker)
@ -58,10 +63,10 @@ With the docker deployment you can skip step 2 and step 3, use the setup instruc
### Select the plugins endpoint
![plugins_endpoint](https://github.com/danny-avila/LibreChat/assets/32828263/9717e111-2e9e-43da-bd08-c5a0bbbc4d6d)
![plugins-endpoint](https://github.com/danny-avila/LibreChat/assets/32828263/7db788a5-2173-4115-b34b-43ea132dae69)
### Open the Plugin store and Install Stable Diffusion
![plugin_store](https://github.com/danny-avila/LibreChat/assets/32828263/add4d6a8-e5d6-4129-a334-4ff9290c0e2d)
![plugin_store](https://github.com/danny-avila/LibreChat/assets/32828263/12a51feb-c030-4cf0-8429-16360270988d)
![stable_diffusion-1](https://github.com/danny-avila/LibreChat/assets/32828263/b4364f41-0f7e-4197-af86-7d6061797366)

View file

@ -1,3 +1,8 @@
---
title: 🧠 Wolfram|Alpha
weight: -5
---
# Wolfram Alpha Plugin
An AppID must be supplied in all calls to the Wolfram|Alpha API.
@ -8,9 +13,9 @@ An AppID must be supplied in all calls to the Wolfram|Alpha API.
## 2. Go to the <a href='https://developer.wolframalpha.com/portal/myapps/'>Developer Portal</a> click on "Get an AppID".
## 3. Configure it in LibreChat
### Select the plugins endpoint
![plugins_endpoint](https://github.com/danny-avila/LibreChat/assets/32828263/9717e111-2e9e-43da-bd08-c5a0bbbc4d6d)
![plugins_endpoint](https://github.com/danny-avila/LibreChat/assets/32828263/7db788a5-2173-4115-b34b-43ea132dae69)
### Open the Plugin store
![plugin_store](https://github.com/danny-avila/LibreChat/assets/32828263/add4d6a8-e5d6-4129-a334-4ff9290c0e2d)
![plugin_store](https://github.com/danny-avila/LibreChat/assets/32828263/12a51feb-c030-4cf0-8429-16360270988d)
### Install Wolfram and Provide your AppID
![wolfram-1](https://github.com/danny-avila/LibreChat/assets/32828263/bd165497-d529-441d-8372-a68db19adc3f)

91
docs/features/presets.md Normal file
View file

@ -0,0 +1,91 @@
---
title: 🔖 Presets
weight: -9
---
# Guide to Using the "Presets" Feature
The "presets" feature in our app is a powerful tool that allows users to save and load predefined settings for their conversations. Users can import and export these presets as JSON files, set a default preset, and share them with others on Discord.
![image](https://github.com/danny-avila/LibreChat/assets/32828263/8c39ad89-71ae-42c6-a792-3db52d539fcd)
## Create a Preset:
- Go in the model settings
![image](https://github.com/danny-avila/LibreChat/assets/32828263/2fc883e9-f4a3-47ac-b375-502e82234194)
- Choose the model, give it a name, some custom instructions, and adjust the parameters if needed
![image](https://github.com/danny-avila/LibreChat/assets/32828263/090dc065-f9ea-4a43-9380-e6d504e64992)
- Test it
![image](https://github.com/danny-avila/LibreChat/assets/32828263/8a383495-0d5e-4ab7-93a7-eca5388c3f6f)
- Go back in the model advanced settings, and tweak it if needed. When you're happy with the result, click on `Save As Preset` (from the model advanced settings)
![image](https://github.com/danny-avila/LibreChat/assets/32828263/96fd88ec-b4b6-4de0-a7d7-f156fdace354)
- Give it a proper name, and click save
![image](https://github.com/danny-avila/LibreChat/assets/32828263/76ad8db4-a949-4633-8a5f-f9e8358d57f3)
- Now you can select it from the preset menu!
![image](https://github.com/danny-avila/LibreChat/assets/32828263/81271990-2739-4f5c-b1a5-7d7deeaa385c)
## Parameters Explained:
- **Preset Name:**
- This is where you name your preset for easy identification.
- **Endpoint:**
- Choose the endpoint, such as openAI, that you want to use for processing the conversation.
- **Model:**
- Select the model like `gpt-3.5-turbo` that will be used for generating responses.
- **Custom Name:**
- Optionally provide a custom name for your preset. This is the name that will be shown in the UI when using it.
- **Prompt Prefix:**
- Define instructions or guidelines that will be displayed before each prompt to guide the user in providing input.
- **Temperature:**
- Adjust this parameter to control the randomness of the model's output. A higher value makes the output more random, while a lower value makes it more focused and deterministic.
- **Top P:**
- Control the nucleus sampling parameter to influence the diversity of generated text. Lower values make text more focused while higher values increase diversity.
- **Frequency Penalty:**
- Use this setting to penalize frequently occurring tokens and promote diversity in responses.
- **Presence Penalty:**
- Adjust this parameter to penalize new tokens that are introduced into responses, controlling repetition and promoting consistency.
## Importing/Exporting Presets
You can easily import or export presets as JSON files by clicking on either 'Import' or 'Export' buttons respectively. This allows you to share your customized settings with others or switch between different configurations quickly.
![image](https://github.com/danny-avila/LibreChat/assets/32828263/b9ef56e2-393e-45eb-b72b-8d568a13a015)
To export a preset, first go in the preset menu, then click on the button to edit the selected preset
![image](https://github.com/danny-avila/LibreChat/assets/32828263/3fb065e6-977b-49b4-9fc6-de55b9839031)
Then in the bottom of the preset settings you'll have the option to export it.
<p align="left">
<img src="https://github.com/danny-avila/LibreChat/assets/32828263/a624345f-e3e6-4192-8384-293ba6ce54cc" width="50%">
</p>
## Setting Default Preset
Choose a preset as default so it loads automatically whenever you start a new conversation. This saves time if you often use specific settings.
![image](https://github.com/danny-avila/LibreChat/assets/32828263/5912650d-49b6-40d3-b9ad-ff2ff7fbe3e7)
![image](https://github.com/danny-avila/LibreChat/assets/32828263/dcfb5e27-f60b-419e-b387-25db85fa6a63)
## Sharing on Discord
Join us on [discord](https://discord.librechat.ai) and see our **[#presets ](https://discord.com/channels/1086345563026489514/1093249324797935746)** channel where thousands of presets are shared by users worldwide. Check out pinned posts for popular presets!

View file

@ -1,32 +0,0 @@
# Proxy
If your server cannot connect to the chatGPT API server by some reason, (eg in China). You can set a environment variable `PROXY`. This will be transmitted to `node-chatgpt-api` interface.
**Warning:** `PROXY` is not `reverseProxyUrl` in `node-chatgpt-api`
## Set up proxy in local environment
- **Option 1:** system level environment
`export PROXY="http://127.0.0.1:7890"`
- **Option 2:** set in .env file
`PROXY="http://127.0.0.1:7890"`
**Change `http://127.0.0.1:7890` to your proxy server**
## Set up proxy in docker environment </strong></summary>
set in docker-compose.yml file, under services - api - environment
```
api:
...
environment:
...
- "PROXY=http://127.0.0.1:7890"
# add this line ↑
```
**Change `http://127.0.0.1:7890` to your proxy server**

View file

@ -1,3 +1,8 @@
---
title: ✨ Third-Party Tools and Contributions
weight: -2
---
# Third-Party Tools
> ⚠️ Warning: The tools featured here are not officially maintained or supported by the LibreChat team

View file

@ -1,3 +1,7 @@
---
title: 🪙 Token Usage
weight: -7
---
# Token Usage
As of v6.0.0, LibreChat accurately tracks token usage for the OpenAI/Plugins endpoints.