40 lines
1.2 KiB
Markdown
40 lines
1.2 KiB
Markdown
---
|
|
title: Custom OpenAI
|
|
---
|
|
|
|
Use any custom OpenAI-compatible TTS service with OpenReader.
|
|
|
|
Use this integration when your endpoint is not directly covered by built-in dropdown defaults.
|
|
|
|
## Provider
|
|
|
|
- Provider: `Custom OpenAI-Like`
|
|
- `API_BASE`: required (your service base URL)
|
|
- `API_KEY`: set if required by your service
|
|
|
|
Custom providers should expose:
|
|
|
|
- `GET /v1/audio/voices`
|
|
- `POST /v1/audio/speech`
|
|
|
|
## OpenReader setup
|
|
|
|
1. In OpenReader Settings, choose provider `Custom OpenAI-Like`.
|
|
2. Set `API_BASE` to your service base URL (typically ending with `/v1`).
|
|
3. Set `API_KEY` if your service requires authentication.
|
|
4. Choose a model and voice supported by your backend.
|
|
|
|
## Notes
|
|
|
|
:::warning Compatibility required
|
|
Custom providers must implement OpenAI-compatible TTS endpoints, including `GET /v1/audio/voices` and `POST /v1/audio/speech`.
|
|
:::
|
|
|
|
:::info Voice troubleshooting
|
|
If voices do not load, verify the `/v1/audio/voices` response shape and that the endpoint is reachable from the OpenReader server.
|
|
:::
|
|
|
|
## References
|
|
|
|
- [TTS Providers](../tts-providers)
|
|
- [TTS Environment Variables](../../reference/environment-variables#tts-provider-and-request-behavior)
|