ibm-granite/granite-speech-3.3-8b - Générateur de texte
Ceci est unContent Creation, Multimodal AIworkflow d'automatisation du domainecontenant 15 nœuds.Utilise principalement des nœuds comme If, Set, Code, Wait, HttpRequest. Convertir la parole en texte en utilisant le modèle IBM Granite 3.3 8B via l'API Replicate
- •Peut nécessiter les informations d'identification d'authentification de l'API cible
Nœuds utilisés (15)
Catégorie
{
"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": "Déclencheur Manuel",
"type": "n8n-nodes-base.manualTrigger",
"position": [
-896,
-176
],
"parameters": {},
"typeVersion": 1
},
{
"id": "90147621-ab1f-4b2f-9626-3a619c1d6f28",
"name": "Définir le Jeton 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": "Définir les Paramètres de Texte",
"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": "Créer une Prédiction de Texte",
"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": "Attendre 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": "Vérifier le Statut",
"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 Terminé ?",
"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": "A Échoué ?",
"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": "Attendre 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": "Réponse de Succès",
"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": "Réponse d'Erreur",
"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": "Afficher le Résultat",
"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": "Journaliser la Requête",
"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": "Note Adhésive9",
"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": "Note Adhésive4",
"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
}
]
]
}
}
}Comment utiliser ce workflow ?
Copiez le code de configuration JSON ci-dessus, créez un nouveau workflow dans votre instance n8n et sélectionnez "Importer depuis le JSON", collez la configuration et modifiez les paramètres d'authentification selon vos besoins.
Dans quelles scénarios ce workflow est-il adapté ?
Intermédiaire - Création de contenu, IA Multimodale
Est-ce payant ?
Ce workflow est entièrement gratuit et peut être utilisé directement. Veuillez noter que les services tiers utilisés dans le workflow (comme l'API OpenAI) peuvent nécessiter un paiement de votre part.
Workflows recommandés
Yaron Been
@yaron-nofluffBuilding 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
Partager ce workflow