Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions components/icons/providers/boostrail.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
import React from 'react'

export default function BoostRailIcon({ className, ...props }: React.SVGProps<SVGSVGElement>) {
return (
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" className={className} {...props}>
<path
fill="currentColor"
fillRule="evenodd"
d="M4.40 23.92C2.34 23.54 0.73 22.06 0.16 20L0.03 19.51L0.03 12L0.03 4.49L0.16 3.99C0.69 2.10 2.10 0.69 4 0.16L4.49 0.03L12 0.03L19.51 0.03L20 0.16C21.90 0.69 23.31 2.10 23.84 3.99L23.97 4.49L23.97 12L23.97 19.51L23.84 20C23.31 21.90 21.90 23.31 20.01 23.84L19.51 23.97L12.15 23.98C5.97 23.99 4.73 23.98 4.40 23.92ZM15.06 18.58C15.58 18.49 16.39 18.24 16.76 18.06C17.68 17.60 18.25 16.99 18.56 16.14C18.75 15.63 18.78 14.71 18.62 14.20C18.48 13.73 18.33 13.44 18.07 13.11C17.65 12.58 16.79 12.07 15.84 11.79C15.59 11.71 15.37 11.62 15.37 11.60C15.37 11.57 15.53 11.48 15.73 11.40C16.32 11.16 16.80 10.84 17.15 10.47C17.71 9.87 17.92 9.33 17.92 8.50C17.92 7.99 17.77 7.43 17.53 7.05C17.09 6.35 16.25 5.88 15.02 5.65C14.59 5.57 14.14 5.56 10.62 5.54L6.70 5.53L6.70 5.69L6.70 5.86L7.12 5.92C7.83 6.02 8.08 6.20 8.24 6.75C8.32 7.01 8.32 7.56 8.31 12.21C8.29 17.90 8.31 17.62 7.97 17.94C7.76 18.15 7.48 18.26 7.05 18.31C6.73 18.34 6.72 18.34 6.71 18.51L6.69 18.68L10.69 18.66C13.54 18.64 14.80 18.62 15.06 18.58ZM11.80 18.02C11.53 17.95 11.41 17.86 11.31 17.64C11.22 17.44 11.22 17.27 11.21 14.78C11.21 13 11.23 12.12 11.27 12.10C11.30 12.08 11.72 12.07 12.22 12.07C13.42 12.08 13.94 12.20 14.52 12.59C15.31 13.13 15.70 13.93 15.70 15.04C15.69 16 15.44 16.69 14.87 17.25C14.28 17.84 13.61 18.07 12.52 18.06C12.21 18.06 11.88 18.04 11.80 18.02ZM11.30 11.36C11.22 11.31 11.21 11.14 11.21 8.85L11.21 6.40L11.33 6.27C11.48 6.09 11.98 6.02 12.68 6.09C13.47 6.16 13.90 6.34 14.36 6.78C14.85 7.25 15.07 7.85 15.07 8.75C15.07 9.56 14.82 10.21 14.31 10.71C13.95 11.06 13.57 11.25 13.06 11.34C12.60 11.42 11.43 11.44 11.30 11.36Z"
/>
</svg>
)
}
1 change: 1 addition & 0 deletions components/icons/providers/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ export { default as AutheliaIcon } from './authelia'
export { default as AuthentikIcon } from './authentik'
export { default as AWSIcon } from './aws'
export { default as AzureIcon } from './azure'
export { default as BoostRailIcon } from './boostrail'
export { default as CloudflareIcon } from './cloudflare'
export { default as CohereIcon } from './cohere'
export { default as DatabricksIcon } from './databricks'
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
---
title: BoostRail
icon: BoostRail
description: Configure BoostRail as a custom endpoint in LibreChat.
---

BoostRail is an OpenAI- and Anthropic-compatible API for text, image and video models from multiple labs. LibreChat connects to its OpenAI-compatible endpoint through `endpoints.custom`.

## Get an API key

Create an account at [BoostRail](https://www.boostrail.com) and create an API key in the [console](https://app.boostrail.com). Keys start with `br_`. Add the key to your `.env` file:

```bash filename=".env"
BOOSTRAIL_API_KEY=br_your-key-here
```

## Configuration

Add the endpoint under `endpoints.custom` in your `librechat.yaml`:

```yaml filename="librechat.yaml"
- name: "BoostRail"
apiKey: "${BOOSTRAIL_API_KEY}"
baseURL: "https://api.boostrail.com/v1"
models:
default: ["deepseek-v4.1-flash"]
fetch: true
titleConvo: true
titleModel: "deepseek-v4.1-flash"
modelDisplayLabel: "BoostRail"
```

To let each user supply their own key through the LibreChat UI instead of reading one from `.env`, set `apiKey: "user_provided"`.

## Notes

- With `fetch: true`, LibreChat loads the model list from BoostRail's `/v1/models` endpoint. The `default` list is used only if that request fails.
- Models marked `byok_only` in the `/v1/models` response run on your own key for that lab, added in the BoostRail console. See [Bring your own key](https://www.boostrail.com/byok/).
- Model ids and per-token prices are listed on the [BoostRail Models page](https://www.boostrail.com/models/). BoostRail's own setup guide for LibreChat is in its [docs](https://www.boostrail.com/docs/frameworks/#librechat).
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
"anyscale",
"apipie",
"azure",
"boostrail",
"cloudflare",
"cohere",
"databricks",
Expand Down
2 changes: 2 additions & 0 deletions lib/icons.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ import {
AuthentikIcon,
AWSIcon,
AzureIcon,
BoostRailIcon,
CloudflareIcon,
CohereIcon,
DatabricksIcon,
Expand Down Expand Up @@ -242,6 +243,7 @@ const icons: Record<string, ReactElement> = {
Authentik: <AuthentikIcon />,
AWS: <AWSIcon />,
Azure: <AzureIcon />,
BoostRail: <BoostRailIcon />,
Cloudflare: <CloudflareIcon />,
Cohere: <CohereIcon />,
Databricks: <DatabricksIcon />,
Expand Down