Proveedores personalizados
Los proveedores personalizados (BYOK - Bring Your Own Key) permiten conectarse a endpoints de API compatibles con OpenAI usando tu propia API key. También admite proveedores locales como Ollama.ProviderConfig
La claseProviderConfig tiene las siguientes propiedades:
| Propiedad | Tipo | Descripción |
|---|---|---|
baseUrl | string | Obligatoria. URL del endpoint de la API |
type | string|null | Tipo de proveedor. openai (por defecto), azure o anthropic |
wireApi | string|null | Formato de API (solo openai/azure). completions (por defecto) o responses |
apiKey | string|null | API key. No es necesaria para proveedores locales como Ollama |
bearerToken | string|null | Para autenticación con Bearer Token. Tiene prioridad sobre apiKey |
azure | array|null | Opciones específicas de Azure. Por ejemplo ['apiVersion' => '2024-10-21'] |
Uso básico
Cuando usas un proveedor personalizado, el parámetromodel es obligatorio.
Ollama (proveedor local)
Para proveedores locales como Ollama,apiKey no es necesaria.
Azure OpenAI
Para usar Azure OpenAI, ten en cuenta lo siguiente:- Indica siempre
typecomoazure(noopenai) - En
baseUrlindica solo el host (no incluyas la ruta/openai/v1u otras)
Consideraciones importantes
- En endpoints de Azure (
*.openai.azure.com), usa siempretype: 'azure' - Indica en
baseUrlsolo el host; el SDK construye la ruta automáticamente
Handler onListModels
Cuando usas un proveedor personalizado en modo BYOK, puedes hacer que client->listModels() invoque un handler personalizado en lugar del servidor CLI.
Se configura con el método listModelsUsing(). Como el client es fácil de inicializar, define siempre listModelsUsing() antes de listModels().
null se elimina el handler y se vuelve al comportamiento por defecto (consultar al servidor CLI).
listModelsUsing(), listModels() no necesita conexión con el servidor CLI ni usa la caché.
Consulta la información más reciente en el repositorio de GitHub.