ibm-granite/granite-speech-3.3-8b - Generador de texto

Intermedio

Este es unContent Creation, Multimodal AIflujo de automatización del dominio deautomatización que contiene 15 nodos.Utiliza principalmente nodos como If, Set, Code, Wait, HttpRequest. Convertir voz a texto utilizando el modelo IBM Granite 3.3 8B a través de la API de Replicate

Requisitos previos
  • Pueden requerirse credenciales de autenticación para la API de destino
Vista previa del flujo de trabajo
Visualización de las conexiones entre nodos, con soporte para zoom y panorámica
Exportar flujo de trabajo
Copie la siguiente configuración JSON en n8n para importar y usar este flujo de trabajo
{
  "meta": {
    "instanceId": "e2493c11-1335-4a64-bd05-5e5040ef16af",
    "model_name": "granite-speech-3.3-8b",
    "model_type": "text",
    "version_id": "688e7a943167401c310f0975cb68f1a35e0bddc3b65f60bde89c37860e07edf1",
    "model_owner": "ibm-granite",
    "generated_at": "2025-08-01T14:50:46.379819"
  },
  "name": "ibm-granite/granite-speech-3.3-8b - Text Generator",
  "nodes": [
    {
      "id": "b65f9ccc-12c4-4d86-81cc-89a84888be4d",
      "name": "Activador manual",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -896,
        -176
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "90147621-ab1f-4b2f-9626-3a619c1d6f28",
      "name": "Establecer token API",
      "type": "n8n-nodes-base.set",
      "position": [
        -608,
        -80
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "api_token",
              "name": "api_token",
              "type": "string",
              "value": "YOUR_REPLICATE_API_TOKEN"
            }
          ]
        }
      },
      "typeVersion": 3.3
    },
    {
      "id": "0b0516e0-e9ae-436d-910b-d789b3a3e1bb",
      "name": "Establecer parámetros de texto",
      "type": "n8n-nodes-base.set",
      "position": [
        -288,
        -128
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "api_token",
              "name": "api_token",
              "type": "string",
              "value": "={{ $('Set API Token').item.json.api_token }}"
            },
            {
              "id": "seed",
              "name": "seed",
              "type": "number",
              "value": -1
            },
            {
              "id": "audio",
              "name": "audio",
              "type": "array",
              "value": "https://www2.cs.uic.edu/~i101/SoundFiles/BabyElephantWalk60.wav"
            },
            {
              "id": "top_k",
              "name": "top_k",
              "type": "number",
              "value": 50
            },
            {
              "id": "top_p",
              "name": "top_p",
              "type": "number",
              "value": 0.9
            },
            {
              "id": "prompt",
              "name": "prompt",
              "type": "string",
              "value": ""
            },
            {
              "id": "max_tokens",
              "name": "max_tokens",
              "type": "number",
              "value": 512
            },
            {
              "id": "min_tokens",
              "name": "min_tokens",
              "type": "number",
              "value": 0
            },
            {
              "id": "temperature",
              "name": "temperature",
              "type": "number",
              "value": 0.6
            },
            {
              "id": "chat_template",
              "name": "chat_template",
              "type": "string",
              "value": ""
            },
            {
              "id": "system_prompt",
              "name": "system_prompt",
              "type": "string",
              "value": ""
            },
            {
              "id": "stop_sequences",
              "name": "stop_sequences",
              "type": "string",
              "value": ""
            },
            {
              "id": "presence_penalty",
              "name": "presence_penalty",
              "type": "number",
              "value": 0
            },
            {
              "id": "frequency_penalty",
              "name": "frequency_penalty",
              "type": "number",
              "value": 0
            }
          ]
        }
      },
      "typeVersion": 3.3
    },
    {
      "id": "7dc87c57-6d99-4707-891a-cdcf07871c76",
      "name": "Crear predicción de texto",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -64,
        -128
      ],
      "parameters": {
        "url": "https://api.replicate.com/v1/predictions",
        "method": "POST",
        "options": {
          "response": {
            "response": {
              "neverError": true,
              "responseFormat": "json"
            }
          }
        },
        "jsonBody": "={\n  \"version\": \"ibm-granite/granite-speech-3.3-8b:688e7a943167401c310f0975cb68f1a35e0bddc3b65f60bde89c37860e07edf1\",\n  \"input\": {\n    \"seed\": {{ $json.seed }},\n    \"audio\": \"{{ $json.audio }}\",\n    \"top_k\": {{ $json.top_k }},\n    \"top_p\": {{ $json.top_p }},\n    \"prompt\": \"{{ $json.prompt }}\",\n    \"max_tokens\": {{ $json.max_tokens }},\n    \"min_tokens\": {{ $json.min_tokens }},\n    \"temperature\": {{ $json.temperature }},\n    \"chat_template\": \"{{ $json.chat_template }}\",\n    \"system_prompt\": \"{{ $json.system_prompt }}\",\n    \"stop_sequences\": \"{{ $json.stop_sequences }}\",\n    \"presence_penalty\": {{ $json.presence_penalty }},\n    \"frequency_penalty\": {{ $json.frequency_penalty }}\n  }\n}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "=Bearer {{ $json.api_token }}"
            },
            {
              "name": "Prefer",
              "value": "wait"
            }
          ]
        }
      },
      "typeVersion": 4.1
    },
    {
      "id": "b824df53-11cd-4579-aa75-eb6de3ed6eaf",
      "name": "Esperar 5s",
      "type": "n8n-nodes-base.wait",
      "position": [
        160,
        -128
      ],
      "webhookId": "d2c4ca16-0eb2-45b4-8a2d-eec2f99df89c",
      "parameters": {
        "unit": "seconds",
        "amount": 5
      },
      "typeVersion": 1
    },
    {
      "id": "c6ecc415-8ac3-4864-b54b-0706fa46d015",
      "name": "Verificar estado",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        384,
        -128
      ],
      "parameters": {
        "url": "=https://api.replicate.com/v1/predictions/{{ $('Create Text Prediction').item.json.id }}",
        "options": {
          "response": {
            "response": {
              "neverError": true,
              "responseFormat": "json"
            }
          }
        },
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "=Bearer {{ $('Set API Token').item.json.api_token }}"
            }
          ]
        }
      },
      "typeVersion": 4.1
    },
    {
      "id": "2a0894f6-956c-4b08-80df-74911831da54",
      "name": "¿Está completo?",
      "type": "n8n-nodes-base.if",
      "position": [
        528,
        -240
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 1,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "loose"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "c93d7ba1-0ef9-4087-aa10-389cb2a2c6bd",
              "operator": {
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "={{ $json.status }}",
              "rightValue": "succeeded"
            }
          ]
        }
      },
      "typeVersion": 2
    },
    {
      "id": "600fc16c-b13c-4e3e-9cca-96a212fb1860",
      "name": "¿Ha fallado?",
      "type": "n8n-nodes-base.if",
      "position": [
        848,
        -80
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 1,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "loose"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "d1bfd044-3a07-4c18-b55f-72d192596139",
              "operator": {
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "={{ $json.status }}",
              "rightValue": "failed"
            }
          ]
        }
      },
      "typeVersion": 2
    },
    {
      "id": "329b5c84-d305-41b8-9e2e-6d6319b1875b",
      "name": "Esperar 10s",
      "type": "n8n-nodes-base.wait",
      "position": [
        720,
        128
      ],
      "webhookId": "51a05aef-e220-406d-8c2c-e59c82c3e26e",
      "parameters": {
        "unit": "seconds",
        "amount": 10
      },
      "typeVersion": 1
    },
    {
      "id": "44b49443-3856-431f-b5d2-733abdea04f4",
      "name": "Respuesta de éxito",
      "type": "n8n-nodes-base.set",
      "position": [
        832,
        -320
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "success-response",
              "name": "response",
              "type": "object",
              "value": "={{ { success: true, result_url: $json.output, prediction_id: $json.id, status: $json.status, message: 'Text generated successfully' } }}"
            }
          ]
        }
      },
      "typeVersion": 3.3
    },
    {
      "id": "bb5b90ac-06ad-4935-9397-68d98c3d9a7b",
      "name": "Respuesta de error",
      "type": "n8n-nodes-base.set",
      "position": [
        1344,
        144
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "error-response",
              "name": "response",
              "type": "object",
              "value": "={{ { success: false, error: $json.error || 'Text generation failed', prediction_id: $json.id, status: $json.status, message: 'Failed to generate text' } }}"
            }
          ]
        }
      },
      "typeVersion": 3.3
    },
    {
      "id": "6fcbe2c7-4526-4826-9b1c-19653355961f",
      "name": "Mostrar resultado",
      "type": "n8n-nodes-base.set",
      "position": [
        1552,
        -144
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "final-result",
              "name": "final_result",
              "type": "object",
              "value": "={{ $json.response }}"
            }
          ]
        }
      },
      "typeVersion": 3.3
    },
    {
      "id": "741ed4f0-1485-49df-925c-927e361a490d",
      "name": "Registrar solicitud",
      "type": "n8n-nodes-base.code",
      "position": [
        160,
        -320
      ],
      "parameters": {
        "jsCode": "// Log generation details for monitoring\nconst data = $input.all()[0].json;\n\nconsole.log('ibm-granite/granite-speech-3.3-8b Request:', {\n  timestamp: new Date().toISOString(),\n  prediction_id: data.id,\n  model_type: 'text'\n});\n\nreturn $input.all();"
      },
      "typeVersion": 2
    },
    {
      "id": "7cc712b4-5f66-4dcd-bcd9-7fce603c17b7",
      "name": "Nota adhesiva9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1536,
        -304
      ],
      "parameters": {
        "color": 4,
        "width": 580,
        "height": 320,
        "content": "=======================================\n        GRANITE-SPEECH-3.3-8B GENERATOR\n=======================================\nFor any questions or support, please contact:\n    Yaron@nofluff.online\n\nExplore more tips and tutorials here:\n   - YouTube: https://www.youtube.com/@YaronBeen/videos\n   - LinkedIn: https://www.linkedin.com/in/yaronbeen/\n======================================="
      },
      "typeVersion": 1
    },
    {
      "id": "4b98a37e-f85c-48fd-ac0e-8e2c3f9a4987",
      "name": "Nota adhesiva4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1536,
        48
      ],
      "parameters": {
        "color": 4,
        "width": 589,
        "height": 1958,
        "content": "## 🤖 **IBM-GRANITE/GRANITE-SPEECH-3.3-8B - TEXT GENERATION WORKFLOW**\n\n**🔥 Powered by Replicate API and n8n Automation**\n\n---\n\n### 📝 **Model Overview**\n\n- **Owner**: ibm-granite\n- **Model**: granite-speech-3.3-8b\n- **Type**: Text Generation\n- **API Endpoint**: https://api.replicate.com/v1/predictions\n\n**🎯 What This Model Does:**\nGranite-speech-3.3-8b is a compact and efficient speech-language model, specifically designed for automatic speech recognition (ASR) and automatic speech translation (AST).\n\n---\n\n### 📋 **Parameter Reference**\n\n**🔴 Required Parameters:** None\n**🔵 Optional Parameters:** seed, audio, top_k, top_p, prompt, max_tokens, min_tokens, temperature (and 5 more)\n\n**📖 Detailed Parameter Guide:**\n- **seed** (integer): Random seed. Leave blank to randomize the seed.\n- **audio** (array): Audio inputs for the model.\n- **top_k** (integer): The number of highest probability tokens to consider for generating the output. If > 0, only keep... (Default: 50)\n- **top_p** (number): A probability threshold for generating the output. If < 1.0, only keep the top tokens with cumula... (Default: 0.9)\n- **prompt** (string): User prompt to send to the model. (Default: )\n- **max_tokens** (integer): The maximum number of tokens the model should generate as output. (Default: 512)\n- **min_tokens** (integer): The minimum number of tokens the model should generate as output. (Default: 0)\n- **temperature** (number): The value used to modulate the next token probabilities. (Default: 0.6)\n- *...and 5 more parameters*\n\n---\n\n### 🔧 **Workflow Components Explained**\n\n**🎯 Manual Trigger**\n- Starts the workflow execution\n- Click to begin text generation process\n\n**🔐 Set API Token** \n- Configures your Replicate API authentication\n- Replace 'YOUR_REPLICATE_API_TOKEN' with your actual token\n- Essential for accessing the ibm-granite/granite-speech-3.3-8b model\n\n**⚙️ Set Text Parameters**\n- Configures all input parameters for the model\n- Includes both required and optional parameters\n- Pre-filled with sensible defaults for testing\n\n**🚀 Create Text Prediction**\n- Sends the generation request to Replicate API\n- Uses the text parameters you configured\n- Returns a prediction ID for status tracking\n\n**⏳ Wait & Status Checking Loop**\n- Waits 5 seconds then checks prediction status\n- Continues checking until completion or failure\n- Implements intelligent retry logic with 10-second delays\n\n**✅ Success/Error Handling**\n- Routes successful completions to success response\n- Handles failures gracefully with error details\n- Returns structured JSON response with URLs/errors\n\n**📊 Logging & Monitoring**\n- Logs all requests for debugging and monitoring\n- Tracks timestamps and prediction IDs\n- Helps identify issues during development\n\n---\n\n### 🌟 **Key Benefits**\n\n- **🎨 Instant Text Generation**: Transform ideas into texts using state-of-the-art AI\n- **🔄 Automated Workflow**: Handles the complete generation pipeline automatically\n- **🛡️ Error Resilience**: Built-in retry logic and comprehensive error handling\n- **📈 Production Ready**: Includes logging, monitoring, and structured responses\n- **🔧 Customizable**: Easy to modify parameters and extend functionality\n- **⚡ Efficient Processing**: Optimized API calls with intelligent status checking\n\n---\n\n### 🚀 **Quick Start Instructions**\n\n1. **🔑 Get Your API Key**\n   - Sign up at https://replicate.com\n   - Navigate to your account settings\n   - Copy your API token\n\n2. **🔧 Configure the Workflow**\n   - Replace 'YOUR_REPLICATE_API_TOKEN' with your actual token\n   - Adjust parameters in the 'Set Text Parameters' node\n   - Customize the prompt or other inputs as needed\n\n3. **▶️ Execute the Workflow**\n   - Click the 'Manual Trigger' to start\n   - Monitor the execution in the n8n interface\n   - Check logs for detailed execution information\n\n4. **📥 Get Your Results**\n   - Successful generations return a URL to your text\n   - Download or use the generated content as needed\n   - Results are available immediately upon completion\n\n---\n\n### 🔍 **Troubleshooting Guide**\n\n**Common Issues:**\n- **Invalid API Token**: Ensure your Replicate token is valid and has sufficient credits\n- **Parameter Validation**: Check that required parameters match expected types\n- **Generation Timeout**: Some texts take longer - monitor the logs\n- **Output Format**: Verify the model returns the expected output format\n\n**Best Practices:**\n- Test with default parameters first\n- Monitor your Replicate usage and billing\n- Keep API tokens secure and never commit them to code\n- Use appropriate parameter values for your use case\n\n---\n\n**🔗 Additional Resources:**\n- Model Documentation: https://replicate.com/ibm-granite/granite-speech-3.3-8b\n- Replicate API Docs: https://replicate.com/docs\n- n8n Documentation: https://docs.n8n.io\n\n---"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "versionId": "1",
  "connections": {
    "b824df53-11cd-4579-aa75-eb6de3ed6eaf": {
      "main": [
        [
          {
            "node": "c6ecc415-8ac3-4864-b54b-0706fa46d015",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "329b5c84-d305-41b8-9e2e-6d6319b1875b": {
      "main": [
        [
          {
            "node": "c6ecc415-8ac3-4864-b54b-0706fa46d015",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "600fc16c-b13c-4e3e-9cca-96a212fb1860": {
      "main": [
        [
          {
            "node": "bb5b90ac-06ad-4935-9397-68d98c3d9a7b",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "329b5c84-d305-41b8-9e2e-6d6319b1875b",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "741ed4f0-1485-49df-925c-927e361a490d": {
      "main": [
        [
          {
            "node": "b824df53-11cd-4579-aa75-eb6de3ed6eaf",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c6ecc415-8ac3-4864-b54b-0706fa46d015": {
      "main": [
        [
          {
            "node": "2a0894f6-956c-4b08-80df-74911831da54",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2a0894f6-956c-4b08-80df-74911831da54": {
      "main": [
        [
          {
            "node": "44b49443-3856-431f-b5d2-733abdea04f4",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "600fc16c-b13c-4e3e-9cca-96a212fb1860",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "90147621-ab1f-4b2f-9626-3a619c1d6f28": {
      "main": [
        [
          {
            "node": "0b0516e0-e9ae-436d-910b-d789b3a3e1bb",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "bb5b90ac-06ad-4935-9397-68d98c3d9a7b": {
      "main": [
        [
          {
            "node": "6fcbe2c7-4526-4826-9b1c-19653355961f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b65f9ccc-12c4-4d86-81cc-89a84888be4d": {
      "main": [
        [
          {
            "node": "90147621-ab1f-4b2f-9626-3a619c1d6f28",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "44b49443-3856-431f-b5d2-733abdea04f4": {
      "main": [
        [
          {
            "node": "6fcbe2c7-4526-4826-9b1c-19653355961f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "0b0516e0-e9ae-436d-910b-d789b3a3e1bb": {
      "main": [
        [
          {
            "node": "7dc87c57-6d99-4707-891a-cdcf07871c76",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "7dc87c57-6d99-4707-891a-cdcf07871c76": {
      "main": [
        [
          {
            "node": "741ed4f0-1485-49df-925c-927e361a490d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Preguntas frecuentes

¿Cómo usar este flujo de trabajo?

Copie el código de configuración JSON de arriba, cree un nuevo flujo de trabajo en su instancia de n8n y seleccione "Importar desde JSON", pegue la configuración y luego modifique la configuración de credenciales según sea necesario.

¿En qué escenarios es adecuado este flujo de trabajo?

Intermedio - Creación de contenido, IA Multimodal

¿Es de pago?

Este flujo de trabajo es completamente gratuito, puede importarlo y usarlo directamente. Sin embargo, tenga en cuenta que los servicios de terceros utilizados en el flujo de trabajo (como la API de OpenAI) pueden requerir un pago por su cuenta.

Información del flujo de trabajo
Nivel de dificultad
Intermedio
Número de nodos15
Categoría2
Tipos de nodos7
Descripción de la dificultad

Adecuado para usuarios con experiencia intermedia, flujos de trabajo de complejidad media con 6-15 nodos

Autor
Yaron Been

Yaron Been

@yaron-nofluff

Building AI Agents and Automations | Growth Marketer | Entrepreneur | Book Author & Podcast Host If you need any help with Automations, feel free to reach out via linkedin: https://www.linkedin.com/in/yaronbeen/ And check out my Youtube channel: https://www.youtube.com/@YaronBeen/videos

Enlaces externos
Ver en n8n.io

Compartir este flujo de trabajo

Categorías

Categorías: 34