🚀 KBLaM + n8n: Automatiza con IA y Base de Conocimiento sin Rollitos

Si llegas aquí es porque quieres meter inteligencia artificial en tus automatizaciones de n8n sin tener que contratar a un doctorado en Machine Learning. Bien pensado. KBLaM (Knowledge Base augmented Language Model) de Microsoft Research es exactamente eso: un método para que los LLMs accedan a tu base de conocimiento empresarial sin el circo habitual de RAG (Retrieval-Augmented Generation) con vectores, embeddings y toda esa parafernalia.

La gracia está en que KBLaM codifica tu conocimiento directamente en pares clave-valor dentro de las capas de atención del modelo. Traducción: puedes meter 10.000+ triples de conocimiento en un modelo de 8B parámetros con ventana de contexto de solo 8K tokens, en una sola GPU A100. Y lo mejor: actualizas la base de conocimiento sin reentrenar el modelo. Nada de fine-tuning cada vez que cambia un dato.

Ahora, ¿cómo encaja esto con n8n? Pues n8n no tiene un nodo mágico «KBLaM» que haga todo solo (ojalá). Pero tienes HTTP Request, credenciales Microsoft OAuth2, y capacidad de orquestar flujos complejos. Así que vamos a montar esto con lo que hay.

📋 ¿Qué es KBLaM Realmente? (Sin Marketing)

KBLaM es un paper de investigación de Microsoft Research publicado en febrero de 2025 y presentado en ICLR 2025. No es un producto comercial de Azure (todavía). Es un método experimental para inyectar conocimiento externo en LLMs de forma más eficiente que RAG tradicional.

Diferencias con RAG tradicional

Característica RAG tradicional KBLaM
Módulo de retrieval Necesita búsqueda vectorial externa (Pinecone, Weaviate…) No necesita, conocimiento dentro del modelo
Overhead computacional Crece cuadráticamente con tamaño KB (O(n²)) Crece linealmente (O(n))
Actualizaciones KB Reindexar vectores, regenerar embeddings Actualización dinámica sin reentrenar
Latencia inferencia +100-500ms por retrieval + embedding Latencia estándar del LLM
Tamaño KB soportado Limitado por contexto LLM (típicamente 2K-8K items) 10K+ triples en modelo 8B con contexto 8K

Cómo funciona técnicamente

KBLaM transforma cada triple de conocimiento (sujeto-predicado-objeto) en pares clave-valor continuos usando sentence encoders preentrenados con adaptadores lineales. Estos pares se integran en las capas de atención del LLM mediante un mecanismo de «rectangular attention».

Ejemplo práctico: si tu KB tiene «Madrid → capital_de → España», KBLaM codifica eso en vectores que el modelo consulta directamente durante la generación de texto. Cuando le preguntas «¿Cuál es la capital de España?», el modelo accede a esos vectores sin necesidad de buscar en una base de datos externa.

Los experimentos de Microsoft muestran que con ~200 items de conocimiento, KBLaM reduce alucinaciones y es mejor rechazando preguntas para las que no tiene información (crítico en entornos empresariales donde inventarse respuestas es inaceptable).

⚙️ Arquitectura de Integración n8n + KBLaM

Dado que KBLaM es código abierto en GitHub (microsoft/KBLaM) pero no un servicio Azure productivo, tienes dos caminos:

Opción 1: Self-hosted KBLaM + n8n HTTP Request

Despliegas KBLaM en tu infraestructura (requiere GPU, mínimo A100 40GB para modelos pequeños) y expones una API REST que n8n puede llamar.

# Clonar repo KBLaM
git clone https://github.com/microsoft/KBLaM.git
cd KBLaM

# Instalar dependencias (requiere Python 3.10+, PyTorch 2.0+)
pip install -r requirements.txt

# Preparar tu base de conocimiento (formato JSON)
# Ejemplo: knowledge_base.json
# [
#   {"subject": "n8n", "predicate": "es", "object": "plataforma de automatización"},
#   {"subject": "n8n", "predicate": "soporta", "object": "500+ integraciones"},
#   ...
# ]

# Construir modelo KBLaM con tu KB
python construct_kblam.py \
  --model meta-llama/Llama-3-8B \
  --kb knowledge_base.json \
  --output kblam_model/

# Servir modelo con FastAPI/Flask
# (debes crear tu propio endpoint, KBLaM no incluye servidor)

Luego en n8n, usas nodo HTTP Request:

{
  "method": "POST",
  "url": "http://tu-servidor-kblam:8000/query",
  "body": {
    "question": "{{ $json.user_question }}",
    "max_tokens": 512
  },
  "authentication": "genericCredentialType",
  "genericAuthType": "bearerToken"
}

Opción 2: Azure OpenAI + Custom QA (alternativa pragmática)

Si KBLaM te parece demasiado experimental, puedes usar Azure AI Language – Custom Question Answering (sucesor de QnA Maker, que se retira en octubre 2025). No es KBLaM puro, pero cumple el objetivo: LLM + base de conocimiento.

# Configuración en Azure Portal:
# 1. Crear recurso "Language" en tu subscription
# 2. Habilitar "Custom question answering"
# 3. Crear proyecto QA e importar tu KB (FAQ, docs, etc)
# 4. Entrenar y publicar

# Endpoint generado:
# https://tu-recurso.cognitiveservices.azure.com/language/:query-knowledgebases

En n8n, autenticación con credenciales Microsoft OAuth2 o API Key:

{
  "method": "POST",
  "url": "https://tu-recurso.cognitiveservices.azure.com/language/:query-knowledgebases",
  "headers": {
    "Ocp-Apim-Subscription-Key": "{{ $credentials.azureApiKey }}"
  },
  "body": {
    "question": "{{ $json.question }}",
    "top": 3,
    "confidenceScoreThreshold": 0.7
  }
}

🔐 Setup Credenciales Microsoft en n8n

Fundamental para conectar con servicios Azure o Microsoft Graph. El proceso varía según tu despliegue de n8n.

n8n Cloud (recomendado para empezar)

La URL de callback ya está configurada automáticamente. Solo necesitas:

  1. Ir a Azure Portal → Azure Active Directory → App registrations → New registration
  2. Name: «n8n Integration» (o lo que quieras)
  3. Supported account types: «Accounts in this organizational directory only» (si es uso interno)
  4. Redirect URI: Copiar de n8n credentials → pegar en Azure (tipo «Web»)
  5. Register → Certificates & secrets → New client secret → copiar valor
  6. API permissions → Add permission → Microsoft Graph → Delegated permissions
  7. Seleccionar scopes necesarios (ej: User.Read, Files.ReadWrite, Mail.Send…)
  8. Grant admin consent (si tu org lo requiere)

Volver a n8n y pegar:

Client ID: [Application (client) ID desde Azure]
Client Secret: [Secret value que copiaste]
Scope: User.Read Files.ReadWrite Mail.Send (separados por espacios)

n8n Self-hosted con dominio público

Igual que Cloud, pero tu Redirect URI será:

https://tu-n8n.dominio.com/rest/oauth2-credential/callback

Asegúrate de que tu n8n tenga HTTPS configurado (Let’s Encrypt con Caddy/Nginx Proxy Manager).

n8n Self-hosted SIN dominio público (localhost/VPN)

Aquí la cosa se complica. OAuth2 requiere un callback URI accesible desde internet para que Azure redirija después de autenticar. Opciones:

  1. Túnel temporal: ngrok/Cloudflare Tunnel durante configuración inicial
  2. Device Code Flow: Microsoft lo soporta pero n8n no lo implementa nativamente. Tendrías que hackearlo manualmente con HTTP Request nodes
  3. API Key en lugar de OAuth2: Para servicios como Custom QA que lo permiten, usa Ocp-Apim-Subscription-Key

Ejemplo Device Code Flow manual (avanzado):

// Nodo HTTP Request 1: Iniciar device code
POST https://login.microsoftonline.com/common/oauth2/v2.0/devicecode
Content-Type: application/x-www-form-urlencoded

client_id={{ $credentials.clientId }}
&scope=https://cognitiveservices.azure.com/.default

// Respuesta contiene: device_code, user_code, verification_uri
// Mostrar user_code al usuario → ir a verification_uri → ingresar código

// Nodo HTTP Request 2: Polling token (cada 5 seg)
POST https://login.microsoftonline.com/common/oauth2/v2.0/token
Content-Type: application/x-www-form-urlencoded

grant_type=urn:ietf:params:oauth:grant-type:device_code
&device_code={{ $json.device_code }}
&client_id={{ $credentials.clientId }}

Es tedioso, pero funciona. La comunidad n8n tiene threads sobre esto.

💡 Ejemplo Flujo Completo: Chatbot FAQ con KBLaM

Vamos a construir un flujo real que responda preguntas de usuarios en Microsoft Teams usando KBLaM (o Custom QA).

Arquitectura del flujo

[Microsoft Teams Trigger]
        ↓
[Extraer pregunta del mensaje]
        ↓
[HTTP Request → KBLaM/Custom QA]
        ↓
[Procesar respuesta JSON]
        ↓
[IF: confidence > 0.7]
   ├─ SÍ → [Reply en Teams con respuesta]
   └─ NO → [Reply "No tengo info, contacta humano"]
        ↓
[Guardar log en PostgreSQL/Airtable]

Configuración paso a paso

1. Trigger: Microsoft Teams

Nodo: Microsoft Teams Trigger → Event: «Message Received in Channel»

Channel: #soporte-tecnico
Team: Tu equipo

2. Extraer pregunta

Nodo: Code (JavaScript)

// Limpiar mensaje (eliminar menciones, emojis, etc)
const rawMessage = $input.item.json.body.content;
const cleanQuestion = rawMessage
  .replace(/.*?<\/at>/g, '')  // Quitar menciones
  .replace(/:\w+:/g, '')           // Quitar emojis Slack-style
  .trim();

return {
  question: cleanQuestion,
  userId: $input.item.json.from.user.id,
  userName: $input.item.json.from.user.displayName,
  timestamp: new Date().toISOString()
};

3. Llamar a KBLaM/Custom QA

Nodo: HTTP Request

Method: POST
URL: https://tu-recurso.cognitiveservices.azure.com/language/:query-knowledgebases
Authentication: Header Auth
  Header Name: Ocp-Apim-Subscription-Key
  Header Value: {{ $credentials.azureKey }}

Body (JSON):
{
  "question": "{{ $json.question }}",
  "top": 3,
  "confidenceScoreThreshold": 0.5,
  "includeUnstructuredSources": true
}

4. Procesar respuesta

Nodo: Code (JavaScript)

const response = $input.item.json;

// Custom QA devuelve array de answers ordenadas por confidence
const topAnswer = response.answers[0];

return {
  answer: topAnswer.answer,
  confidence: topAnswer.confidenceScore,
  source: topAnswer.source || 'knowledge_base',
  hasAnswer: topAnswer.confidenceScore > 0.7
};

5. Decisión: Responder o Escalar

Nodo: IF

Condition: {{ $json.hasAnswer }} = true

Rama TRUE:

Nodo: Microsoft Teams → Reply to Message

Message:
✅ Respuesta automática (confianza {{ $json.confidence }}):

{{ $json.answer }}

📚 Fuente: {{ $json.source }}

¿Te sirvió esta respuesta? Reacciona con 👍 o 👎

Rama FALSE:

Nodo: Microsoft Teams → Reply to Message

Message:
⚠️ No encontré información fiable sobre tu pregunta.

He notificado al equipo de soporte. Alguien te responderá pronto.

Tu pregunta: "{{ $json.question }}"

+

Nodo: Microsoft Teams → Send Message to Channel

Channel: #soporte-interno
Message:
🆘 Pregunta sin respuesta automática

Usuario: {{ $json.userName }}
Pregunta: "{{ $json.question }}"
Timestamp: {{ $json.timestamp }}

Por favor, responder manualmente en el canal #soporte-tecnico

6. Logging (opcional pero recomendado)

Nodo: Postgres / Airtable / Google Sheets

INSERT INTO qa_logs (
  user_id,
  question,
  answer,
  confidence,
  auto_resolved,
  timestamp
) VALUES (
  '{{ $json.userId }}',
  '{{ $json.question }}',
  '{{ $json.answer }}',
  {{ $json.confidence }},
  {{ $json.hasAnswer }},
  '{{ $json.timestamp }}'
)

🛠️ Troubleshooting: Problemas Comunes

Error: «AADSTS50011: Reply URL mismatch»

El callback URL en Azure no coincide con el de n8n.

Solución:

# 1. Ir a n8n → Credentials → Microsoft OAuth2 → copiar EXACTAMENTE la URL
# Ejemplo: https://n8n.tudominio.com/rest/oauth2-credential/callback

# 2. Azure Portal → App Registration → Authentication → Platform Web
# Pegar URL copiada (sin espacios extra, case-sensitive)

# 3. Guardar en Azure → Reintentar conexión en n8n

Error: «AADSTS65001: User consent required»

Tu org requiere aprobación de admin para ciertos scopes.

Solución:

  1. Azure Portal → App Registration → API permissions
  2. Botón «Grant admin consent for [Tu Org]»
  3. Confirmar (requiere rol Global Administrator)

Si no tienes permisos de admin, pedir a IT que apruebe la app.

Custom QA devuelve respuestas irrelevantes

El modelo no está bien entrenado o tu KB tiene duplicados/contradicciones.

Solución:

# En Azure Language Studio:
# 1. Revisar pares pregunta-respuesta en tu proyecto
# 2. Agregar variaciones de preguntas (sinónimos, diferentes formas de preguntar)
# 3. Usar "Active Learning" → revisar sugerencias del sistema
# 4. Establecer umbrales de confidence adecuados:
#    - 0.9+: Muy confiable, responder directamente
#    - 0.7-0.9: Confiable, responder con disclaimer
#    - 0.5-0.7: Dudoso, pedir confirmación al usuario
#    - <0.5: No responder, escalar a humano

# En n8n, ajustar lógica del IF:
{{ $json.confidence >= 0.7 }}  # Threshold conservador

Latencia alta (>5 segundos por query)

Normal en modelos grandes o KB extensas. Optimizaciones:

# 1. Reducir top results si no necesitas alternativas
"top": 1  // En lugar de 3-5

# 2. Habilitar caché en Azure (Enterprise tier)
# Language Studio → Settings → Enable query cache

# 3. En n8n, usar Wait node para timeout:
Timeout: 10000ms (10 seg)
Continue on Fail: true

# 4. Implementar fallback:
IF {{ $json.error }} → responder con mensaje genérico

🚀 Casos de Uso Avanzados

1. Actualización dinámica de KB desde Notion/Confluence

Sincroniza automáticamente tu documentación con la base de conocimiento del chatbot.

[Cron Trigger: diario 3 AM]
    ↓
[Notion/Confluence API → obtener páginas actualizadas]
    ↓
[Parsear Markdown a pares Q&A]
    ↓
[Azure Custom QA API → actualizar KB]
    ↓
[Slack notificación: "KB actualizada con X nuevas entradas"]

2. Análisis de sentimiento + escalado inteligente

Detecta frustración del usuario y escala a humano aunque haya respuesta automática.

[Teams message]
    ↓
[Azure Text Analytics → sentiment analysis]
    ↓
[IF: sentiment < 0.3 (negativo)]
   ├─ SÍ → [Escalar a humano inmediatamente]
   └─ NO → [Continuar con KBLaM normal]

3. Multi-idioma con traducción automática

[Detectar idioma mensaje (Azure Translator)]
    ↓
[SI idioma != español → traducir a español]
    ↓
[Query KBLaM en español]
    ↓
[Traducir respuesta a idioma original]
    ↓
[Reply en idioma del usuario]

📊 Métricas y Monitorización

Dashboard esencial para evaluar rendimiento del chatbot:

Métrica Cómo obtenerla Objetivo
Tasa de resolución automática (Queries con confidence >0.7) / Total queries >70%
Latencia p95 95% de queries responden en X ms <3 seg
Satisfacción usuario Reacciones 👍 vs 👎 en Teams >80% positivas
Queries sin respuesta Confidence <0.5 <15%
Temas más preguntados Clustering de queries en DB Priorizar en KB

Implementación en n8n:

[Cron: semanalmente]
    ↓
[PostgreSQL Query: SELECT stats FROM qa_logs WHERE timestamp > NOW() - INTERVAL '7 days']
    ↓
[Calcular métricas con Code node]
    ↓
[Slack Webhook → enviar reporte a #analytics]

🎸 Resumen punk

KBLaM es tecnología puntera de Microsoft Research que elimina el overhead de RAG tradicional metiendo tu base de conocimiento directamente en el LLM. Perfecto para chatbots empresariales donde inventarse respuestas no es opción. En n8n lo puedes montar con HTTP Request + OAuth2 Microsoft, ya sea apuntando a una instancia self-hosted de KBLaM (si tienes GPUs y ganas de experimentar) o usando Azure Custom Question Answering (la alternativa pragmática y productiva).

El truco está en:

  • Configurar bien las credenciales Microsoft (callback URLs, scopes, admin consent)
  • Establecer thresholds de confidence inteligentes (no todo lo que devuelve el modelo es oro)
  • Tener fallback a humanos cuando la IA no está segura
  • Monitorizar métricas reales de resolución y satisfacción

Si tu KB cambia frecuentemente, KBLaM gana porque actualizas sin reentrenar. Si necesitas algo productivo YA, Custom QA de Azure es tu amigo. Y si quieres cacharrear con lo último en research, el repo de GitHub está ahí esperándote con una A100 y café de sobra.

Ahora deja de leer y monta ese chatbot que tu equipo de soporte te lo va a agradecer. O no, porque van a tener menos trabajo y eso da miedo existencial. Pero bueno, al menos habrás automatizado algo útil.

❓ FAQs sobre KBLaM y n8n

¿KBLaM es un servicio comercial de Azure que puedo contratar?

No. KBLaM es un proyecto de investigación de Microsoft Research publicado en 2025. El código está en GitHub (microsoft/KBLaM) bajo licencia MIT, pero no hay servicio managed en Azure. Si quieres algo productivo ahora mismo, usa Azure AI Language - Custom Question Answering, que es el sucesor comercial de QnA Maker.

¿Necesito GPU para usar KBLaM en producción?

Sí, si self-hosteas KBLaM. Los experimentos de Microsoft usaron A100 80GB para modelos de 8B parámetros con KB de 10K triples. Para producción con modelos más grandes (Llama-3-70B, etc.), necesitarás múltiples GPUs o instancias cloud tipo AWS p4d.24xlarge / Azure NC96ads_A100_v4. Alternativa: usar Custom QA de Azure, que es serverless y no requieres gestionar infraestructura GPU.

¿Puedo usar KBLaM con modelos que no sean de Microsoft?

Sí. KBLaM es agnóstico al modelo base. Los ejemplos del paper usan Meta Llama-3 y Microsoft Phi-3, pero puedes aplicar el método a cualquier LLM basado en Transformers que soporte key-value caching (prácticamente todos los modernos: GPT, Mistral, Gemma, etc.). Solo necesitas adaptar el código de integración de las capas de atención.

¿Qué diferencia hay entre KBLaM y simplemente meter mi KB en el prompt?

El overhead de tokens. Si metes 10K triples en el prompt, consumes 100K-500K tokens dependiendo del formato, lo que excede la ventana de contexto de la mayoría de modelos y dispara costos. KBLaM codifica esa info en vectores dentro del modelo, consumiendo solo los tokens de tu pregunta + respuesta. Además, el scaling es lineal (O(n)) vs cuadrático (O(n²)) de atención estándar.

¿Custom Question Answering soporta búsqueda semántica o solo keyword matching?

Custom QA usa deep learning ranker (BERT-based) para búsqueda semántica desde 2021. No es keyword matching simple como el QnA Maker antiguo. Entiende sinónimos, paráfrasis y contexto. Ejemplo: "¿Cómo reseteo mi clave?" encuentra respuestas sobre "restablecer contraseña" aunque las palabras exactas no coincidan.

¿Puedo integrar KBLaM/Custom QA con WhatsApp Business o Telegram en n8n?

Totalmente. n8n tiene nodos para ambos. El flujo sería: [WhatsApp Trigger] → [Extraer mensaje] → [HTTP Request a KBLaM/Custom QA] → [WhatsApp Reply]. Lo mismo para Telegram. La lógica es idéntica al ejemplo de Teams, solo cambias el trigger y el nodo de respuesta.

¿Cómo manejo información sensible en la KB sin exponerla a todos los usuarios?

En Custom QA de Azure, usa "Metadata filtering". Cada par Q&A puede tener metadatos (ej: department=HR, role=manager). En tu query desde n8n, incluyes filtros:

{
  "question": "política de vacaciones",
  "filters": {
    "metadataFilter": {
      "metadata": [
        {"key": "department", "value": "HR"}
      ]
    }
  }
}

El usuario solo ve respuestas que coinciden con sus metadatos. Requiere lógica adicional en n8n para obtener el department/role del usuario (típicamente desde Azure AD/Microsoft Graph).

¿Qué pasa si mi KB tiene información contradictoria?

Custom QA devolverá múltiples respuestas con diferentes confidence scores. Es tu responsabilidad en el flujo n8n decidir qué hacer:

  • Mostrar solo la top answer (más común)
  • Mostrar top 3 y pedir al usuario que elija
  • Detectar contradicciones (if answers[0].confidence - answers[1].confidence < 0.2) y escalar a humano

Lo ideal es limpiar la KB antes de publicar. Azure Language Studio tiene herramientas de "Active Learning" que detectan duplicados y contradicciones.

¿Puedo usar KBLaM offline en un entorno air-gapped?

Sí, pero con esfuerzo. Necesitas:

  1. Clonar repo KBLaM + dependencias (pip download -r requirements.txt)
  2. Descargar modelos base (Llama-3, Phi-3) desde HuggingFace antes de air-gap
  3. Entrenar/construir KBLaM en máquina con acceso a internet
  4. Transferir modelo resultante a entorno air-gapped
  5. Servir con FastAPI/Flask local

n8n también debe ser self-hosted en ese entorno. Custom QA de Azure obviamente no funciona offline porque es cloud-only.

¿Cómo actualizo la KB en KBLaM sin downtime del chatbot?

KBLaM soporta actualizaciones dinámicas de los pares key-value sin recargar el modelo completo. En la práctica:

# Mantener dos versiones del modelo:
# - kblam_v1/ (activo, serving requests)
# - kblam_v2/ (actualizando KB)

# 1. Construir nueva versión con KB actualizada
python update_kblam.py --model kblam_v1/ --new_kb kb_updated.json --output kblam_v2/

# 2. Health check de v2
pytest tests/test_qa.py --model kblam_v2/

# 3. Blue-green deployment: cambiar endpoint en n8n de kblam_v1 a kblam_v2
# (o usar load balancer que redirija tráfico gradualmente)

# 4. Eliminar v1 después de verificar estabilidad

Requiere infraestructura adicional. Alternativa simple: ventana de mantenimiento nocturna de 5-10 min.

¿Qué costos tiene Custom QA de Azure comparado con self-hosting KBLaM?

Custom QA pricing (2025):

  • Free tier: 10K transacciones/mes, 3 proyectos, sin SLA
  • Standard: ~1€ por 1K queries (varía por región)

Self-hosting KBLaM:

  • AWS p4d.24xlarge (8x A100): ~$32/hora = $23,000/mes 24/7
  • Alternativa: Spot instances + auto-scaling puede bajar a $5K-8K/mes
  • + Costos de ingeniería (mantener, actualizar, monitorizar)

Para <100K queries/mes, Custom QA es más barato. Para >1M queries/mes con KB masiva (>50K items), self-hosting puede amortizarse.

¿n8n Cloud soporta todos los nodos de Microsoft o solo algunos?

n8n Cloud soporta todos los nodos oficiales de Microsoft (Teams, Outlook, OneDrive, SharePoint, etc.) porque el callback OAuth2 ya está configurado. Si usas n8n self-hosted, debes configurar manualmente la URL de callback en Azure como se explicó antes.

¿Puedo combinar KBLaM con otros LLMs en el mismo flujo n8n?

Absolutamente. Ejemplo de flujo híbrido:

[User question]
    ↓
[Custom QA → buscar en KB empresarial]
    ↓
[IF confidence > 0.8]
   └─ Responder con KB
[ELSE]
   └─ [OpenAI GPT-4 → respuesta general]
        ↓
        [Disclaimer: "Info no verificada con KB oficial"]

O usar KBLaM para facts empresariales + GPT-4 para tareas creativas (redactar emails, resumir, etc.). n8n te permite orquestar múltiples LLMs en un solo workflow.

¿Hay límites de rate en la API de Custom Question Answering?

Sí. Tier Standard: 100 requests/min por defecto. Si necesitas más, puedes:

  • Solicitar aumento de quota a Microsoft Support
  • Implementar queue en n8n con nodo "Wait" y reintentos
  • Distribuir carga entre múltiples recursos de Azure (si tienes >10K requests/min)

En n8n, puedes manejar throttling así:

[HTTP Request a Custom QA]
    ↓
[IF {{ $json.statusCode }} = 429]  // Too Many Requests
   └─ [Wait 60 seconds]
        ↓
        [Retry Request]

¿Puedo usar KBLaM para generación de código o solo Q&A?

KBLaM está optimizado para Q&A sobre knowledge bases estructuradas (triples sujeto-predicado-objeto). Para code generation, modelos especializados como Codex/Copilot son mejores. Dicho esto, si tu KB contiene snippets de código (ej: "ejemplo de Docker Compose para Nginx" → código YAML), KBLaM puede recuperarlo. Pero no esperes que genere código nuevo creativo; eso requiere fine-tuning adicional sobre datasets de código.

El Diario IA
Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.