diff --git a/components/icons/providers/index.ts b/components/icons/providers/index.ts index e287de290d..77b0dc85f2 100644 --- a/components/icons/providers/index.ts +++ b/components/icons/providers/index.ts @@ -47,6 +47,7 @@ export { default as TogetherAIIcon } from './togetherai' export { default as TraefikIcon } from './traefik' export { default as TrueFoundryIcon } from './truefoundry' export { default as VLLMIcon } from './vllm' +export { default as VoltageGPUIcon } from './voltagegpu' export { default as VultrIcon } from './vultr' export { default as WolframIcon } from './wolfram' export { default as XAIIcon } from './xai' diff --git a/components/icons/providers/voltagegpu.tsx b/components/icons/providers/voltagegpu.tsx new file mode 100644 index 0000000000..d075dac777 --- /dev/null +++ b/components/icons/providers/voltagegpu.tsx @@ -0,0 +1,29 @@ +import React from 'react' + +// VoltageGPU mark (ring and bolt), from the logo component of voltagegpu.com +export default function VoltageGPUIcon({ className, ...props }: React.SVGProps) { + return ( + + ) +} diff --git a/content/docs/configuration/librechat_yaml/ai_endpoints/meta.json b/content/docs/configuration/librechat_yaml/ai_endpoints/meta.json index c46fe3dfdd..fee31a7824 100644 --- a/content/docs/configuration/librechat_yaml/ai_endpoints/meta.json +++ b/content/docs/configuration/librechat_yaml/ai_endpoints/meta.json @@ -28,6 +28,7 @@ "togetherai", "truefoundry", "vllm", + "voltagegpu", "vultrcloudinference", "xai" ] diff --git a/content/docs/configuration/librechat_yaml/ai_endpoints/voltagegpu.mdx b/content/docs/configuration/librechat_yaml/ai_endpoints/voltagegpu.mdx new file mode 100644 index 0000000000..48a20b5f74 --- /dev/null +++ b/content/docs/configuration/librechat_yaml/ai_endpoints/voltagegpu.mdx @@ -0,0 +1,44 @@ +--- +title: VoltageGPU +icon: VoltageGPU +description: Configure VoltageGPU as a custom endpoint in LibreChat. +--- + +VoltageGPU provides an OpenAI-compatible endpoint that you can add to LibreChat through `endpoints.custom`. Its models run in a trusted execution environment (Intel TDX guests with confidential-computing GPUs), and every model ID ends in `-TEE`. Requests pass through VoltageGPU's relay, which sees them in clear (TLS ends at VoltageGPU's host). To keep plaintext off VoltageGPU's servers, run your own inference server in a [Confidential VM](https://voltagegpu.com/confidential-vm) and terminate TLS inside its trust domain. + +## Get an API key + +Create an API key from the [VoltageGPU API keys page](https://voltagegpu.com/api-keys). Add it to your `.env` file: + +```bash filename=".env" +VOLTAGEGPU_API_KEY=your-api-key +``` + +## Configuration + +Add the endpoint to the `custom` list under `endpoints` in your `librechat.yaml`. If your file already has an `endpoints.custom` list, paste only the `- name:` entry into it, keeping the same indentation: + +```yaml filename="librechat.yaml" +endpoints: + custom: + - name: "VoltageGPU" + apiKey: "${VOLTAGEGPU_API_KEY}" + baseURL: "https://api.voltagegpu.com/v1" + models: + default: + - "Qwen/Qwen3.8-27B-TEE" + - "deepseek-ai/DeepSeek-V3.2-TEE" + fetch: true + titleConvo: true + titleModel: "Qwen/Qwen3.8-27B-TEE" + modelDisplayLabel: "VoltageGPU" +``` + +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 VoltageGPU's OpenAI-compatible `/v1/models` endpoint. The `default` array is only the initial selection. +- Use model IDs exactly as they appear in the [model list](https://api.voltagegpu.com/v1/models). The API only accepts IDs ending in `-TEE`. +- Each entry in `/v1/models` carries a live `status.state` (`available`, `busy`, `saturated` or `unavailable`) and its price per million tokens. If a selected model is unavailable, choose another chat-capable model from the list. +- `GET /v1/attestation?model=&nonce=<64 hex characters>` returns the Intel TDX quotes and NVIDIA GPU evidence of that model's running instances, bound to your nonce, for you to verify. See the [VoltageGPU documentation](https://docs.voltagegpu.com) for details. diff --git a/lib/icons.tsx b/lib/icons.tsx index 047336d108..433c51ee41 100644 --- a/lib/icons.tsx +++ b/lib/icons.tsx @@ -49,6 +49,7 @@ import { TraefikIcon, TrueFoundryIcon, VLLMIcon, + VoltageGPUIcon, VultrIcon, WolframIcon, XAIIcon, @@ -285,6 +286,7 @@ const icons: Record = { Traefik: , TrueFoundry: , VLLM: , + VoltageGPU: , Vultr: , Wolfram: , XAI: ,