Skip to content

Enviar mensaje y obtener respuesta RAG

POST
/api/chat/send

Procesa una pregunta sobre normativa técnica de construcción usando el pipeline RAG de 3 niveles:

  1. Guardrails híbridos: valida, limpia y reformula la query
  2. Retrieval vectorial: búsqueda por similitud en pgvector
  3. Expansión jerárquica: referencias directas e indirectas
  4. Generación: respuesta con Gemini usando contexto estructurado

Si conversation_id se omite, se crea una conversación nueva.

x-api-key
Any of:
string
ChatRequest

Request para endpoint /chat

object
messages
required
Messages

Array de mensajes

Array<object>
ChatMessage

Estructura de un mensaje en conversación

object
role
required
Role

‘user’ o ‘assistant’

string
content
required
Content

Contenido del mensaje

string
conversation_id
Any of:
string format: uuid
model
Model

Modelo a usar

string
default: gemini-2.5-flash

Respuesta generada con metadata de retrieval

Response Send Message Api Chat Send Post
object
key
additional properties
any
Example
{
"conversation_id": "550e8400-e29b-41d4-a716-446655440000",
"message_id": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
"content": "Según el CTE DB-SUA, la pendiente máxima para rampas es del 10%...",
"metadata": {
"model": "gemini-2.5-flash",
"reformulated_query": "Pendiente máxima de rampas CTE DB-SUA",
"retrieval_count": 5
}
}

API key inválida o ausente

Validation Error

HTTPValidationError
object
detail
Detail
Array<object>
ValidationError
object
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
input
Input
ctx
Context
object

Cuota o rate limit excedido