Proceso de solicitud
Para utilizar la API de generación de audios de Producer, primero obtenga su API Token en la consola de Ace Data Cloud y guárdelo para usarlo más adelante.
Si aún no ha iniciado sesión o no se ha registrado, se le redirigirá automáticamente a la página de inicio de sesión para invitarle a registrarse e iniciar sesión; al finalizar, volverá automáticamente a la página actual.
Un API Token permite llamar a todos los servicios de la plataforma, sin necesidad de solicitar uno por separado para cada servicio. La primera solicitud incluirá créditos gratuitos para una experiencia gratuita; cuando los créditos sean insuficientes, puede recargar saldo general en la consola.
📘 Documentación completa: API de generación de audios de Producer →
Uso básico
Para pensar en qué canción desea, puede introducir libremente un texto, por ejemplo, si quiero generar una canción sobre Navidad, puedo introducira song for Christmas, como se muestra en la imagen:

accept: qué formato de resultado de respuesta desea recibir; aquí se rellena comoapplication/json, es decir, formato JSON.authorization: la clave para llamar a la API, que puede seleccionarse directamente en la lista desplegable después de solicitarla.
action: la acción de esta tarea de generación de música; para generar canciones esgenerate.model: el modelo utilizado para crear canciones; actualmente los principales son: FUZZ-2.0 Pro, FUZZ-2.0, FUZZ-2.0 Raw,FUZZ-1.1 Pro, FUZZ-1.0 Pro, FUZZ-1.0, FUZZ-1.1, FUZZ-0.8.lyric: el contenido de la letra de la canción.custom: si se utiliza un método personalizado para generar la canción.prompt: el texto de indicación en el modo de inspiración.title: la información del título de la canción.audio_id: el ID de la canción de referencia, utilizado para operaciones como continuar/escribir una versión, etc.continue_at: continuar escribiendo la canción a partir del número de segundos especificado.replace_section_start/replace_section_end: el tiempo de inicio y finalización del fragmento que se reemplazará, en segundos.lyrics_strength: la intensidad de la letra, que indica el grado de influencia de la letra en la generación de audio; opcional entre 0 y 1, el valor predeterminado es 0.7.sound_strength: la intensidad del texto de indicación de audio, opcional entre 0.2 y 1, el valor predeterminado es 0.7.cover_strength: la intensidad de la versión, entre 0.2 y 1, el valor predeterminado es 1.weirdness: el grado de peculiaridad del estilo, opcional entre 0 y 1, el valor predeterminado es 0.5callback_url: la URL que necesita recibir los resultados de la devolución de llamada.async: opcional; cuando se establece entrue, la interfaz devuelve inmediatamentetask_id, sin necesidad de proporcionarcallback_url; después, obtenga el resultado mediante sondeo a través de la interfaz de consulta de tareas correspondiente.instrumental: si se trata del modo sin letra.

success, el estado de la tarea de generación de música en este momento.data, el resultado de esta tarea musical.id, el ID de la tarea de generación de música en este momento.sound, el texto de indicación de la tarea de generación de música en este momento.seed, el valor de semilla de la tarea de generación de música en este momento.audio_url, el enlace de audio de la tarea de generación de música en este momento.image_url, el enlace de portada de la tarea de generación de música en este momento.image_id, el ID de portada de la tarea de generación de música en este momento.state, el estado de la tarea de generación de música en este momento.duration, la información de duración de la música en este momento.progress, el valor de progreso de la tarea musical en este momento.model, la información del modelo utilizado por la tarea de generación de música en este momento.lyric, la información de la letra de la tarea de generación de música en este momento.
data en el resultado.
Además, si desea generar el código de integración correspondiente, puede copiarlo directamente para generarlo; por ejemplo, el código CURL es el siguiente:
Generación personalizada
Si desea generar letras personalizadas, puede introducir la letra: En este momento, el campolyric puede recibir contenido similar al siguiente:
- lyric:texto de la letra
- custom:establecer como
truerepresenta la generación personalizada; este parámetro es false de forma predeterminada, lo que representa la generación medianteprompt. - title:el título de la canción.


Versionar canciones
Si desea realizar una operación de versión sobre una canción ya generada, puede ingresar la canción generada anteriormente para crear una versión; a continuación, debemos generar una canción personalizada según la letra y el título. Si desea continuar versionando una canción subida por usted mismo, puede establecer el parámetroaction como upload_cover e ingresar el ID de la canción subida de forma personalizada que necesita seguir versionando. El ID de la canción se obtiene mediante Producer Upload API, como se muestra en la siguiente imagen:

- action:el comportamiento de esta tarea de canción actualmente admite: generate、cover、extend、upload_cover、upload_extend、replace_section、swap_vocals、swap_instrumentals、variation; para esta versión se utiliza el parámetro
cover. - lyric:texto de la letra
- title:el título de la canción.
- custom:si se genera mediante el modo personalizado; el valor predeterminado es false.
- audio_id:el ID de la canción que necesita versionarse.


Continuar una canción
Si desea continuar una canción, necesitamos pasar el valor del parámetroaction como: extend, a continuación podemos generar una canción personalizada según la letra, el título y el estilo.
Si desea continuar una canción que haya subido usted mismo, puede establecer el parámetro action como upload_extend, e ingresar el ID de la canción personalizada subida que necesita continuar. El ID de la canción se obtiene mediante la API de carga de Producer, como se muestra a continuación:



Variación musical
Si desea generar una nueva música con un efecto similar basándose en el valorseed de la música anterior, necesitamos pasar el valor del parámetro action como: variation, y a continuación podrá generar de forma personalizada una nueva música con un efecto similar.
El ejemplo de rellenado es el siguiente:


Reemplazar fragmento
Si queremos reemplazar un fragmento de una canción, necesitamos pasar el valor del parámetroaction como: replace_section, a continuación necesitamos generar una canción personalizada según la letra y el título.
Si queremos continuar reemplazando fragmentos de una canción subida por nosotros mismos, podemos establecer el parámetro action como upload_replace_section, e introducir el ID de la canción personalizada subida que necesita continuar escribiéndose, el ID de la canción se obtiene usando la Producer Upload API, como se muestra a continuación:



Versión de acompañamiento
Si desea utilizar la operación oficial de versión de acompañamiento, puede establecer el valor del parámetroaction en: swap_instrumentals; a continuación, personalizaremos la generación de canciones según la letra y el título.
El ejemplo de llenado es el siguiente:


Versión de voz
Si desea utilizar la operación oficial de versión de voz, puede establecer el valor del parámetroaction en: swap_vocals; a continuación, personalizaremos la generación de canciones según la letra, el título y el estilo.
El ejemplo de llenado es el siguiente:


Separación de letra y música
Si desea utilizar la operación oficial de separación de letra y música, puede establecer el valor del parámetroaction en: stems; a continuación, realizaremos la separación de letra y música según el ID de la canción.
El ejemplo de llenado es el siguiente:


Devolución de llamada asíncrona
Dado que el tiempo de generación de Producer Audios Generation API a veces puede ser relativamente largo, si la API no responde durante un tiempo prolongado, la solicitud HTTP mantendrá la conexión, lo que provocará un consumo adicional de recursos del sistema; por lo tanto, esta API también proporciona soporte para devoluciones de llamada asíncronas. El proceso general es: cuando el cliente inicia una solicitud, especifica adicionalmente un campocallback_url; después de que el cliente inicia la solicitud a la API, la API devolverá inmediatamente un resultado, que incluye un campo task_id, que representa el ID de la tarea actual. Cuando la tarea se completa, el resultado de la tarea de generación se enviará mediante POST JSON al callback_url especificado por el cliente, que también incluye el campo task_id, de modo que los resultados de la tarea puedan asociarse mediante el ID.
A continuación, comprenderemos cómo operar específicamente mediante un ejemplo.
En primer lugar, la devolución de llamada Webhook es un servicio que puede recibir solicitudes HTTP; los desarrolladores deben reemplazarla con la URL de su propio servidor HTTP construido. Para facilitar la demostración, aquí se utiliza un sitio web público de ejemplo de Webhook https://webhook.site/; al abrir este sitio web se puede obtener una URL de Webhook, como se muestra en la imagen:
Copie esta URL para utilizarla como Webhook; el ejemplo aquí es https://webhook.site/#!/view/0d73431d-f833-4be4-9276-b6e1690d55c1.
A continuación, podemos establecer el campo callback_url como la URL de Webhook anterior y completar los parámetros correspondientes; el contenido específico se muestra en la imagen:

El contenido es el siguiente:
task_id en el resultado; los demás campos son similares a los anteriores, y la asociación de tareas se puede realizar mediante este campo.
Manejo de errores
Al llamar a la API, si se produce un error, la API devolverá el código de error y la información correspondientes. Por ejemplo:400 token_mismatched: Solicitud incorrecta, posiblemente debido a parámetros faltantes o no válidos.400 api_not_implemented: Solicitud incorrecta, posiblemente debido a parámetros faltantes o no válidos.401 invalid_token: No autorizado, token de autorización no válido o faltante.429 too_many_requests: Demasiadas solicitudes, ha excedido el límite de frecuencia.500 api_error: Error interno del servidor, algo salió mal en el servidor.

