Saltar al contenido principal
La API de MKA1 puede devolver texto, audio e imágenes. El texto es la modalidad de salida predeterminada. Utiliza modalities y audio para habilitar la salida de voz, o añade la herramienta image_generation para producir imágenes.

Tipos de salida soportados

ModalidadCómo habilitarFormato de salida
TextoPredeterminado — sin configuración extraoutput_text en la respuesta
Audio (voz)Establece modalities: ["text", "audio"]Audio en base64 + transcripción
ImagenAñade la herramienta image_generationURL de imagen o base64

Generar audio (texto a voz)

Solicita salida de audio estableciendo modalities a ["text", "audio"] y especificando una voz y formato en el parámetro audio. La respuesta incluye tanto la transcripción de texto como los datos de audio codificados en base64.

Configuración de audio

ParámetroOpcionesPredeterminado
voicealloy y otros perfiles de vozalloy
formatwav, mp3, flac, opus, pcm16wav
El audio se sintetiza a 24 kHz, 16 bits mono.
import { SDK } from '@meetkai/mka1';

const mka1 = new SDK({
  bearerAuth: `Bearer ${YOUR_API_KEY}`,
});

const result = await mka1.llm.responses.create({
  model: 'gpt-5',
  input: 'Say hello in a friendly way. Keep it very short.',
  modalities: ['text', 'audio'],
  audio: { voice: 'alloy', format: 'wav' },
}, { headers: { 'X-On-Behalf-Of': '<end-user-id>' } });

// The output includes an output_audio item with base64 data and a transcript
La respuesta contiene un elemento output_audio con el audio codificado en base64 y una transcripción de lo que se dijo:
{
  "status": "completed",
  "output": [
    {
      "type": "message",
      "role": "assistant",
      "content": [
        { "type": "output_text", "text": "Hello!" }
      ]
    },
    {
      "type": "output_audio",
      "id": "audio_460caf1079b34fa0b4aa74448dff4ea7",
      "data": "<Base64-encoded WAV audio data>",
      "transcript": "Hi there!",
      "status": "completed"
    }
  ]
}
El campo data contiene el archivo de audio completo (268 KB en este ejemplo). El campo transcript contiene el texto que el modelo eligió decir — que puede diferir ligeramente del texto de salida.

Guardar audio en un archivo

import { writeFileSync } from 'fs';

const result = await mka1.llm.responses.create({
  model: 'gpt-5',
  input: 'Read this sentence aloud: The quick brown fox jumps over the lazy dog.',
  modalities: ['text', 'audio'],
  audio: { voice: 'alloy', format: 'mp3' },
});

// Find the audio output in the response
const audioItem = result.output.find((item) => item.type === 'output_audio');
if (audioItem) {
  const audioBuffer = Buffer.from(audioItem.data, 'base64');
  writeFileSync('output.mp3', audioBuffer);
}

Idiomas soportados

La salida de audio soporta detección automática de idioma y más de 20 idiomas incluyendo inglés, chino, hindi, español, árabe, bengalí, portugués, ruso, japonés, panyabí, alemán, coreano, francés, turco, italiano, tailandés, polaco, neerlandés, indonesio, vietnamita y urdu.

Generar imágenes

Utiliza la herramienta image_generation para crear imágenes a partir de indicaciones de texto. El modelo interpreta tu mensaje, genera una indicación para el modelo de imágenes y devuelve el resultado.

Modelos de generación de imágenes

ModeloMejor para
meetkai:flux-2-kleinGeneración rápida, uso general (predeterminado)
meetkai:z-image-turboImágenes de alta calidad y detalle

Opciones de generación de imágenes

ParámetroOpcionesPredeterminado
size1024x1024, 1024x1536, 1536x1024, autoauto
qualitylow, medium, high, autoauto
output_formatpng, webp, jpegpng
backgroundtransparent, opaque, autoauto
import { SDK } from '@meetkai/mka1';

const mka1 = new SDK({
  bearerAuth: `Bearer ${YOUR_API_KEY}`,
});

const result = await mka1.llm.responses.create({
  model: 'gpt-5',
  input: 'Generate an image of a sunset over a mountain lake.',
  tools: [
    {
      type: 'image_generation',
      model: 'gpt-5',
      quality: 'high',
      size: '1024x1024',
      output_format: 'png',
    },
  ],
}, { headers: { 'X-On-Behalf-Of': '<end-user-id>' } });

// The output includes an image_generation_call item with a result URL
const imageCall = result.output.find((item) => item.type === 'image_generation_call');
console.log('Image URL:', imageCall?.result);
La respuesta incluye un elemento image_generation_call con la URL de la imagen generada y la indicación revisada utilizada por el modelo de imágenes:
{
  "status": "completed",
  "output": [
    {
      "type": "message",
      "role": "assistant",
      "content": [
        {
          "type": "output_text",
          "text": "I'll generate an image of a beautiful sunset over a mountain lake for you."
        }
      ]
    },
    {
      "type": "image_generation_call",
      "id": "ig_abc123",
      "status": "completed",
      "result": "<Generated Image URL>",
      "revised_prompt": "A breathtaking sunset over a pristine mountain lake, with golden and orange hues reflecting on the calm water surface. Snow-capped mountain peaks in the background, dramatic clouds in the sky with vibrant sunset colors of pink, purple, and orange.",
      "size": "auto",
      "quality": "auto",
      "output_format": "png"
    }
  ]
}
El campo result contiene una URL a la imagen generada. El campo revised_prompt muestra la indicación expandida que el modelo de imágenes utilizó — el LLM mejora tu instrucción breve en una descripción detallada de la imagen.

Forzar la generación de imágenes

Utiliza tool_choice para asegurarte de que el modelo genere una imagen en lugar de responder solo con texto.
const result = await mka1.llm.responses.create({
  model: 'gpt-5',
  input: 'A red circle on a white background.',
  tools: [{ type: 'image_generation' }],
  toolChoice: { type: 'image_generation' },
});

Estructura de la salida de imagen

El arreglo output de la respuesta contiene estos elementos cuando se genera una imagen:
  1. function_call — la llamada del modelo a la herramienta de generación de imágenes con la indicación refinada
  2. image_generation_call — el resultado de la generación con status: "completed" y result (URL de la imagen)
  3. function_call_output — la salida cruda de la herramienta que contiene la URL
  4. message — la respuesta de texto del modelo describiendo o haciendo referencia a la imagen
Las URLs de imágenes expiran después de 1 hora. Descárgalas o guárdalas en caché si necesitas acceso a largo plazo.

APIs independientes

Para acceso directo sin pasar por la API de Responses, MKA1 también proporciona endpoints independientes:

API de texto a voz

const ttsResult = await mka1.llm.speech.speak({
  text: 'Hello, welcome to the MKA1 platform.',
  language: 'en',
});

API de imágenes

const imageResult = await mka1.llm.images.generate({
  model: 'gpt-5',
  prompt: 'A futuristic city skyline at dusk',
  size: '1024x1024',
  quality: 'hd',
});

Próximos pasos