diff --git a/README.md b/README.md index 58c1b87012..9c474b57e6 100644 --- a/README.md +++ b/README.md @@ -104,13 +104,15 @@ Keep up with the latest updates by visiting the releases page - [Releases](https
Cloud Deployment - * [Hetzner](docs/deployment/hetzner_ubuntu.md) - * [Heroku](docs/deployment/heroku.md) + * [DigitalOcean](docs/deployment/digitalocean.md) + * [Azure](docs/deployment/azure-terraform.md) * [Linode](docs/deployment/linode.md) * [Cloudflare](docs/deployment/cloudflare.md) * [Ngrok](docs/deployment/ngrok.md) + * [HuggingFace](docs/deployment/huggingface.md) * [Render](docs/deployment/render.md) - * [Azure](docs/deployment/azure-terraform.md) + * [Hetzner](docs/deployment/hetzner_ubuntu.md) + * [Heroku](docs/deployment/heroku.md)
diff --git a/docs/deployment/huggingface.md b/docs/deployment/huggingface.md new file mode 100644 index 0000000000..3e01bd86a8 --- /dev/null +++ b/docs/deployment/huggingface.md @@ -0,0 +1,91 @@ +# Hugging Face Deployment 🤗 + +>#### ⚠️ Note - Some features are not supported by HuggingFace: +>- Meilisearch +>- Social Logins + +> #### ❗Also: +>- You will have to create an online MongoDB Atlas Database to be able to properly deploy + +## Create and Configure your Database (Required) + +The first thing you need is to create a MongoDB Atlas Database and get your connection string. + +Follow the instructions in this document: [Online MongoDB Database](..\install\mongodb.md) + +## Getting Started + +**1.** Login or Create an account on [Hugging Face](https://huggingface.co/) + +**2.** Visit [https://huggingface.co/spaces/LibreChat/LibreChat](https://huggingface.co/spaces/LibreChat/LibreChat) and click on `Duplicate this Space` to copy LibreChat into your profile + + ![image](https://github.com/fuegovic/LibreChat/assets/32828263/fd684254-cbe0-4039-ba4a-7c492b16a453) + +**3.** Name your Space and Fill the `Secrets` and `Variables` + + >You can also decide here to make it public or private + + ![image](https://github.com/fuegovic/LibreChat/assets/32828263/13a039b9-bb78-4d56-bab1-74eb48171516) + +You will need to fill these values: + +| Secrets | Values | +| --- | --- | +| MONGO_URI | * use the string aquired in the previous step | +| OPENAI_API_KEY | `user_provided` | +| BINGAI_TOKEN | `user_provided` | +| CHATGPT_TOKEN | `user_provided` | +| ANTHROPIC_API_KEY | `user_provided` | +| PALM_KEY | `user_provided` | +| CREDS_KEY | * see bellow | +| CREDS_IV | * see bellow | +| JWT_SECRET | * see bellow | +| JWT_REFRESH_SECRET | * see bellow | + +> ⬆️ **Leave the value field blank for any endpoints that you wish to disable.** + +>⚠️ setting the API keys and token to `user_provided` allows you to provide them safely from the webUI + +>* For `CREDS_KEY`, `CREDS_IV` and `JWT_SECRET` use this tool: [https://replit.com/@daavila/crypto#index.js](https://replit.com/@daavila/crypto#index.js). +>* Run the tool a second time and use the new `JWT_SECRET` value for the `JWT_REFRESH_SECRET` + +| Variables | Values | +| --- | --- | +| APP_TITLE | LibreChat | +| ALLOW_REGISTRATION | true | + + +## Deployment + +**1.** When you're done filling the `secrets` and `variables`, click `Duplicate Space` in the bottom of that window + + ![image](https://github.com/fuegovic/LibreChat/assets/32828263/55d596a3-2be9-4e14-ac0d-0b493d463b1b) + + +**2.** The project will now build, this will take a couple of minutes + + ![image](https://github.com/fuegovic/LibreChat/assets/32828263/f9fd10e4-ae50-4b5f-a9b5-0077d9e4eaf6) + + +**3.** When ready, `Building` will change to `Running` + + ![image](https://github.com/fuegovic/LibreChat/assets/32828263/91442e84-9c9e-4398-9011-76c479b6f272) + + And you will be able to access LibreChat! + + ![image](https://github.com/fuegovic/LibreChat/assets/32828263/cd5950d4-ecce-4f13-bbbf-b9109e462e10) + +## Update + To update LibreChat, simply select `Factory Reboot` from the ⚙️Settings menu + + ![image](https://github.com/fuegovic/LibreChat/assets/32828263/66f20129-0ffd-44f5-b91c-fcce1932112f) + + +## Conclusion + You can now access it with from the current URL. If you want to access it without the Hugging Face overlay, you can modify this URL template with your info: + + `https://username-projectname.hf.space/` + + e.g. `https://cooluser-librechat.hf.space/` + +### 🎉 Congratulation, you've sucessfully deployed LibreChat on Hugging Face! 🤗 diff --git a/docs/deployment/render.md b/docs/deployment/render.md index fc9c891079..048099ea80 100644 --- a/docs/deployment/render.md +++ b/docs/deployment/render.md @@ -3,11 +3,11 @@ ## Note: Some features will not work: -- Bing/Sydney (the IP is blocked by Microsoft) +- Bing/Sydney (success may vary) - Meilisearch Also: -- You will have to create an online MongoDB Atlas Database to be able to properly deploy +- You need to create an online MongoDB Atlas Database to be able to properly deploy ## Create an account @@ -57,7 +57,7 @@ Also: | PORT | 3080 | | SESSION_EXPIRY | (1000 * 60 * 60 * 24) * 7 | -⬆️ **Add a single space in the value field for `BINGAI_TOKEN` and all other endpoints that you wish to disable.** +> ⬆️ **Add a single space in the value field for any endpoints that you wish to disable.** **DO NOT FORGET TO SAVE YOUR CHANGES** diff --git a/docs/install/mongodb.md b/docs/install/mongodb.md index 9a0b71f3ea..dfd13ecede 100644 --- a/docs/install/mongodb.md +++ b/docs/install/mongodb.md @@ -4,7 +4,7 @@ - Open a new tab and go to [https://account.mongodb.com/account/register](https://account.mongodb.com/account/register) to create an account. ## Create a project -- Once you have set up your account, create a new project and name it: +- Once you have set up your account, create a new project and name it (the name can be anything): ![image](https://github.com/fuegovic/LibreChat/assets/32828263/5cdeeba0-2982-47c3-8228-17e8500fd0d7) @@ -88,4 +88,4 @@ mongodb+srv://fuegovic:1Gr8Banana@render-librechat.fgycwpi.mongo.net/?retryWrite --- ->⚠️ Note: If you're having trouble, before creating a new issue, please search for similar ones on our [#issues thread on our discord](https://discord.gg/weqZFtD9C4) or our [troubleshooting discussion](https://github.com/danny-avila/LibreChat/discussions/categories/troubleshooting) on our Discussions page. If you don't find a relevant issue, feel free to create a new one and provide as much detail as possible. \ No newline at end of file +>⚠️ Note: If you're having trouble, before creating a new issue, please search for similar ones on our [#issues thread on our discord](https://discord.gg/weqZFtD9C4) or our [troubleshooting discussion](https://github.com/danny-avila/LibreChat/discussions/categories/troubleshooting) on our Discussions page. If you don't find a relevant issue, feel free to create a new one and provide as much detail as possible. diff --git a/mkdocs.yml b/mkdocs.yml index bcd4f31837..b036ecbae4 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -114,6 +114,7 @@ nav: - Ngrok: 'deployment/ngrok.md' - Render: 'deployment/render.md' - Azure (Terraform): 'deployment/azure-terraform.md' + - HuggingFace: 'deployment/huggingface.md' - Contributions: - Documentation Guidelines: 'contributions/documentation_guidelines.md' - Contribute a Translation: 'contributions/translation_contribution.md'