> ## Documentation Index
> Fetch the complete documentation index at: https://phaseo.app/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Crear voz

> Genera audio TTS a partir de texto con la voz y el formato especificados.

## Asignación de voces

`voice` se normaliza según el proveedor mediante un mapa interno de alias:

* `openai`: voces habituales (por ejemplo `alloy`, `ash`, `ballad`, `coral`, `echo`, `fable`, `onyx`, `nova`, `sage`, `shimmer`, `verse`, `cedar`, `marin`).
* `google` (AI Studio / Gemini TTS): voces predefinidas canónicas:
  `Zephyr`, `Puck`, `Charon`, `Kore`, `Fenrir`, `Leda`, `Orus`, `Aoede`, `Callirrhoe`, `Autonoe`, `Enceladus`, `Iapetus`, `Umbriel`, `Algieba`, `Despina`, `Erinome`, `Algenib`, `Rasalgethi`, `Laomedeia`, `Achernar`, `Alnilam`, `Schedar`, `Gacrux`, `Pulcherrima`, `Achird`, `Zubenelgenubi`, `Vindemiatrix`, `Sadachbia`, `Sadaltager`, `Sulafat`.
* `elevenlabs`: se asignan voces públicas de uso frecuente (por ejemplo `rachel`, `domi`, `bella`, `antoni`, `elli`, `josh`, `arnold`, `adam`, `sam`).

Para `eleven-labs/eleven-v4` y `eleven-labs/eleven-v4-turbo`, pasa cualquier identificador de 20 caracteres de la biblioteca de voces de ElevenLabs, incluidos los clones personalizados. Ajusta `config.elevenlabs.voice_settings.stability` y `similarity_boost` según necesites. Eleven v4 no admite `speed` ni `voice_settings.style`.

Si `voice` no es válido para la combinación de proveedor y modelo de la ruta, la solicitud devuelve `400 invalid_request_error` con `param: "voice"`.

## Anulaciones del proveedor

También puedes enviar ajustes de voz propios del proveedor:

* ElevenLabs: `config.elevenlabs.voice_id` / `config.elevenlabs.voice` / `config.elevenlabs.voiceName`
* Google: `config.google.voice_name` / `config.google.voiceName`

Usa `voice` en el nivel superior como valor predeterminado para facilitar la portabilidad.

## Muestras de voz

* OpenAI: [openai.fm](https://www.openai.fm/)
* Ejemplos de voces de Google TTS: [documentación de Gemini sobre conversión de texto a voz](https://ai.google.dev/gemini-api/docs/speech-generation#voices)
* Biblioteca de voces de ElevenLabs: [ElevenLabs Voice Library](https://elevenlabs.io/voice-library)


## OpenAPI

````yaml es/openapi/v1/openapi.localized.yaml POST /audio/speech
openapi: 3.0.3
info:
  title: Phaseo Gateway API
  description: >-
    Una API de pasarela para acceder a diversos modelos de IA mediante endpoints
    compatibles con OpenAI.
  version: 1.0.0
  contact:
    name: Phaseo
    url: https://phaseo.app
    email: danielbutler500@gmail.com
servers:
  - url: https://api.phaseo.app/v1
    description: Enrutamiento global
security:
  - BearerAuth: []
tags:
  - name: Gateway
    description: Core Phaseo Gateway operations.
paths:
  /audio/speech:
    post:
      tags:
        - Gateway
      summary: Generar voz
      description: Genera audio a partir del texto de entrada.
      operationId: createSpeech
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AudioSpeechRequest'
      responses:
        '200':
          description: Archivo de audio
          content:
            audio/mpeg:
              schema:
                type: string
                format: binary
components:
  schemas:
    AudioSpeechRequest:
      type: object
      required:
        - model
        - input
      properties:
        model:
          type: string
        input:
          type: string
        voice:
          type: string
        speed:
          type: number
          minimum: 0.25
          maximum: 4
        format:
          type: string
          enum:
            - mp3
            - wav
            - ogg
            - aac
        provider:
          $ref: '#/components/schemas/ProviderRoutingOptions'
        config:
          type: object
          additionalProperties: true
          properties:
            elevenlabs:
              type: object
              additionalProperties: true
              properties:
                voice_id:
                  type: string
                language_code:
                  type: string
                output_format:
                  type: string
                voice_settings:
                  type: object
                  additionalProperties: true
                  properties:
                    stability:
                      type: number
                    similarity_boost:
                      type: number
    ProviderRoutingOptions:
      type: object
      description: >-
        Preferencias de enrutamiento de proveedores para la selección de la
        pasarela.
      properties:
        order:
          type: array
          items:
            type: string
        only:
          type: array
          items:
            type: string
        ignore:
          type: array
          items:
            type: string
        include_alpha:
          type: boolean
          description: >-
            Incluir proveedores alpha en el enrutamiento (desactivado de forma
            predeterminada).
        allow_fallbacks:
          type: boolean
          nullable: true
          description: Permitir recurrir a otro proveedor apto tras un fallo.
        require_parameters:
          type: boolean
          nullable: true
          description: >-
            Exigir que el proveedor admita los parámetros solicitados antes del
            enrutamiento.
        required_execution_region:
          type: string
          nullable: true
          description: >-
            Restringir el enrutamiento a proveedores con la región de ejecución
            solicitada.
        required_data_region:
          type: string
          nullable: true
          description: >-
            Restringir el enrutamiento a proveedores con la región de datos
            solicitada.
        require_zero_data_retention:
          type: boolean
          nullable: true
          description: >-
            Restringir el enrutamiento a proveedores que admiten la retención
            cero de datos.
        data_collection:
          type: string
          nullable: true
          enum:
            - allow
            - deny
        zdr:
          type: boolean
          nullable: true
        enforce_distillable_text:
          type: boolean
          nullable: true
        quantizations:
          type: array
          nullable: true
          items:
            type: string
        sort:
          oneOf:
            - type: string
            - type: object
              additionalProperties: true
          description: >-
            Ordenar los proveedores para esta solicitud, por ejemplo, por
            precio, latencia o rendimiento.
        max_price:
          type: object
          properties:
            prompt:
              oneOf:
                - type: number
                - type: string
            completion:
              oneOf:
                - type: number
                - type: string
            image:
              oneOf:
                - type: number
                - type: string
            audio:
              oneOf:
                - type: number
                - type: string
            request:
              oneOf:
                - type: number
                - type: string
        preferred_min_throughput:
          oneOf:
            - type: number
            - type: object
              additionalProperties:
                type: number
        preferred_max_latency:
          oneOf:
            - type: number
            - type: object
              additionalProperties:
                type: number
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: Autenticación con token Bearer

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.