Skip to content

Commit

Permalink
doc: Hugging Face Deployment (danny-avila#867)
Browse files Browse the repository at this point in the history
* docs: update ToC

* docs: update ToC

* update huggingface.md

* update render.md

* update huggingface.md

* update mongodb.md

* update huggingface.md

* update README.md
  • Loading branch information
fuegovic authored Sep 1, 2023
1 parent aeeb3d3 commit 1cd0fd9
Show file tree
Hide file tree
Showing 5 changed files with 102 additions and 8 deletions.
8 changes: 5 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,13 +104,15 @@ Keep up with the latest updates by visiting the releases page - [Releases](https
<details>
<summary><strong>Cloud Deployment</strong></summary>

* [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)
</details>

<details>
Expand Down
91 changes: 91 additions & 0 deletions docs/deployment/huggingface.md
Original file line number Diff line number Diff line change
@@ -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! 🤗
6 changes: 3 additions & 3 deletions docs/deployment/render.md
Original file line number Diff line number Diff line change
Expand Up @@ -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

Expand Down Expand Up @@ -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**

Expand Down
4 changes: 2 additions & 2 deletions docs/install/mongodb.md
Original file line number Diff line number Diff line change
Expand Up @@ -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)

Expand Down Expand Up @@ -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.
>⚠️ 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.
1 change: 1 addition & 0 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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'
Expand Down

0 comments on commit 1cd0fd9

Please sign in to comment.