Configurar Radar como administrador
Activar las fuentes de rastreo
Section titled “Activar las fuentes de rastreo”Radar v0.1 trabaja sobre la BDNS como fuente principal. La integración con Funding & Tenders (EU) está provista pero diferida.
- Abre Radar → Configuración → Conectores.
- Verifica que el conector BDNS está marcado como activo. Su filtro
nivel1debe incluir los valoresESTADO,ESTATALyAUTONOMICA(la API devuelve los tres y omitir alguno deja convocatorias fuera). - Comprueba el conector F&T (EU): por defecto aparece en estado en habilitación. No lo actives hasta que se haya renovado la credencial SEDIA en producción. [VERIFY: cierre credencial SEDIA]
Configurar los vocabularios IATI y ODS
Section titled “Configurar los vocabularios IATI y ODS”Radar usa dos vocabularios canon que se sincronizan desde la Federación Futuh: el catálogo de IATI (sectores y propósitos de cooperación) y los Objetivos de Desarrollo Sostenible.
- Abre Radar → Configuración → Vocabularios.
- Verifica que las tablas IATI sectores y ODS tienen entradas (varios cientos en el primero, 17 en el segundo).
- Si están vacías, lanza manualmente el cron Futuh Federation: Pull diario canon hubs desde Ajustes → Técnico → Acciones planificadas.
- Vuelve a la pantalla de vocabularios y refresca para verificar la carga.
Configurar el perfil de scoring
Section titled “Configurar el perfil de scoring”El scoring de idoneidad combina cuatro dimensiones: sector, ámbito territorial, requisitos formales y baremo de valoración. Lo primero es decirle al radar qué tipo de organización eres y qué temas te interesan — sin eso, todas las convocatorias puntúan 50 neutro.
- Abre el perfil del radar de tu organización.
- Elige el Tipo de organización (ONGD, cooperativa, comercio, universidad…). Cada tipo trae unos pesos afinados para ese perfil de entidad: una ONGD pesa más el sector; un comercio, el territorio.
- Marca los Verticales del perfil: los sectores de interés de tu organización. Un sector general («Cooperación al desarrollo») cubre automáticamente todos sus sub-sectores (acción humanitaria, derechos humanos…).
- Indica el Ámbito preferido (estatal, autonómico, europeo…).
- Si tu organización trabaja sobre el terreno en países concretos fuera de España (cooperación internacional, acción humanitaria), añádelos en Países de destino. Con el campo relleno, el radar activa el gate de destino: anula automáticamente (score 0) cualquier convocatoria país-específica que no comparta ni un país con esta lista.
- Si quieres afinar, ajusta los pesos individuales en el grupo «Pesos del scoring». Un peso a 0 hereda el valor del tipo de organización.
Si dejas Países de destino vacío, el gate queda inactivo: ninguna convocatoria se anula por país, sea cual sea su destino, y la ficha del perfil muestra el aviso «Gate de destino inactivo — este perfil no tiene países de destino configurados.» para que no se te olvide que el filtro no está actuando.
Al guardar el perfil, el radar recalcula la idoneidad de todas las convocatorias de tu organización. En instancias grandes puede tardar unos minutos.
El grupo «Pesos del scoring» incluye ahora también el peso del eje semántico. Para activarlo, sube los documentos identitarios de tu organización en la sección siguiente.
Subir los documentos identitarios de tu organización
Section titled “Subir los documentos identitarios de tu organización”El eje semántico del scoring compara el texto de cada convocatoria contra un corpus propio de tu organización: hasta 20 documentos (plan estratégico, memorias anuales, estatutos) que subes en el mismo perfil de scoring.
- Abre Radar → Configuración → Perfil organización y entra en la pestaña Documentos identitarios.
- Sube los documentos con el widget de adjuntos. El límite son 20; superarlo bloquea el guardado con un aviso.
- Revisa la tabla de estados bajo el listado: cada fila muestra En cola, Procesando…, Procesado · N fragmentos o Error — sin texto extraíble (¿PDF escaneado sin OCR?) para el documento correspondiente.
- Si un documento queda en Error, corrige el origen (por ejemplo, pásale OCR a un PDF escaneado) y vuelve a subirlo, o pulsa Reprocesar documentos para reintentar solo los documentos fallidos sin tocar el resto de la carpeta.
Añadir, sustituir o quitar un documento resincroniza el corpus en segundo plano: el campo Estado del corpus pasa a Procesando mientras el sistema trocea los documentos y calcula sus fragmentos, y al terminar recalcula el eje semántico de todas las convocatorias vivas de tu organización. No hace falta relanzar nada a mano.
El troceo y el cálculo de similitud dependen del modelo de embeddings configurado en radar.semantic_embedding_model (siguiente sección) y de que su proveedor tenga clave de API activa. Sin clave, los documentos se quedan sin avanzar de estado.
Mapear finalidades nuevas
Section titled “Mapear finalidades nuevas”El radar clasifica cada convocatoria en sectores a partir de su finalidad oficial BDNS, usando una tabla de mapeo editable.
- Abre Radar → Configuración → Mapping de finalidades.
- Cada fila relaciona una finalidad BDNS con uno o varios sectores. Edita los sectores directamente en la lista.
- Si en la bandeja ves convocatorias con el filtro Sin clasificar (finalidad sin mapear), BDNS ha estrenado una finalidad: añádela aquí y quedará clasificada en el siguiente ciclo.
Configurar el cron diario
Section titled “Configurar el cron diario”Radar rastrea fuentes en dos crons separados: uno secundario que enriquece convocatorias ya conocidas, y otro diario que comprueba publicaciones oficiales.
- Abre Ajustes → Técnico → Acciones planificadas.
- Localiza el cron Radar BDNS · Enriquecimiento horario (
_cron_enrichment_bdns). Verifica intervaloCada horayActivo. - Localiza el cron Radar BDNS · Comprobación de publicación (
_cron_publication_check). Verifica intervaloCada díayActivo. - Si modificas los intervalos, hazlo en horas de baja carga: el cron horario hace varios cientos de peticiones HTTP a la BDNS y conviene evitar choques con backups.
Configurar los parámetros del eje semántico y del pase IA
Section titled “Configurar los parámetros del eje semántico y del pase IA”Cinco parámetros técnicos ajustan el eje semántico y la clasificación por IA. Se editan en Ajustes → Técnico → Parámetros del sistema.
| Parámetro | Valor por defecto | Qué controla |
|---|---|---|
radar.semantic_embedding_model | text-embedding-3-small | Identificador del modelo de embeddings que vectoriza el corpus identitario y el texto de cada convocatoria. Debe existir como modelo de tipo embedding en Configurar el modelo IA. |
radar.ai_pass_llm_model | gpt-4o | Identificador del modelo de chat que clasifica verticales y marcadores en el pase de IA. |
radar.semantic_sim_floor | 0.20 | Similitud por debajo de la cual el eje semántico se recorta a 0. |
radar.semantic_sim_ceil | 0.60 | Similitud a partir de la cual el eje semántico se recorta a 1. |
radar.ai_pass_batch | 250 | Nº máximo de convocatorias que procesa cada ejecución horaria del cron. |
Recalibra radar.semantic_sim_floor y radar.semantic_sim_ceil si el eje semántico satura siempre en 0 o siempre en el máximo: son los extremos de similitud real de tu corpus, no un porcentaje universal. Si cambias radar.semantic_embedding_model después de tener el corpus ya procesado, los documentos antiguos quedan vectorizados con el modelo anterior y dejan de ser comparables: pulsa Reprocesar documentos en el perfil tras el cambio para volver a trocearlos con el modelo vigente.
Para pasar a un modelo más barato (por ejemplo, un chat model distinto para el pase de clasificación), créalo primero en Configurar el modelo IA con el identificador exacto que vas a usar, comprueba que su proveedor tiene clave de API activa, y después cambia radar.ai_pass_llm_model a ese identificador.
Programar el pase de clasificación IA
Section titled “Programar el pase de clasificación IA”El pase de IA corre en un cron propio que vectoriza convocatorias, puntúa el eje semántico y clasifica verticales y marcadores con el modelo de chat configurado.
- Abre Ajustes → Técnico → Acciones planificadas.
- Localiza el cron Radar: S2 AI pass (embedding + classification). Verifica intervalo Cada hora y Activo.
- Cada ejecución toma como mucho
radar.ai_pass_batchconvocatorias vivas pendientes (sin vectorizar, sin clasificar o clasificadas con una versión de modelo o prompt anterior) y las procesa. - Para vaciar de golpe un backlog grande (por ejemplo, justo después de configurar las claves de API o tras una importación masiva), abre el perfil del radar y pulsa Ejecutar pass IA ahora: lanza en segundo plano un lote de hasta 1.000 convocatorias sin esperar al siguiente ciclo horario ni bloquear la interfaz.
Desde la versión de prompt s2p3 (la s2p2 introdujo la extracción; la s2p3 añadió el endurecimiento del prompt frente a texto no confiable), el mismo pase también extrae los países de destino de cada convocatoria (cooperación internacional, acción humanitaria) dentro del mismo JSON que ya devolvía verticales y marcadores — no es un pase aparte ni hay que activarlo. Al subir de versión de prompt (como este cambio), el mecanismo del paso 3 de arriba —convocatorias «clasificadas con una versión de modelo o prompt anterior»— reprocesa solo el backlog pendiente automáticamente, en los siguientes ciclos horarios. La corrección manual de países de destino en una convocatoria concreta sigue la misma regla de autoridad que los marcadores: fuente Manual gana y el pase no vuelve a sobrescribirla.
Configurar el vigilante de alertas
Section titled “Configurar el vigilante de alertas”El vigilante es el motor que comprueba qué convocatorias nuevas coinciden con cada alerta configurada en tu organización. Se apoya en tres modelos: radar.alerta (definición), radar.alerta.match (cada cruce) y radar.alerta.template (plantillas de alta).
- Abre Radar → Mis vigilantes (o Mis alertas, según versión de UI).
- Verifica que existe al menos una alerta activa. Si no, crea una desde una plantilla.
- Comprueba el cron Radar Alertas · Cruce horario y Radar Alertas · Envío de digests en Ajustes → Técnico → Acciones planificadas.
- La frecuencia del digest se configura por alerta (diaria o semanal).
Desde este sprint, el vigilante solo cruza convocatorias concursables (tipo_concesion = concurrencia) contra las alertas: las nominativas, directas y convenios no las disparan nunca, aunque sigan visibles en la bandeja — son de vigilancia, no de oportunidad accionable. Una convocatoria sin modalidad todavía clasificada tampoco cuenta como concursable, así que no genera alerta hasta que el enriquecimiento la clasifica.
Ajustar qué modalidades ven las tools MCP
Section titled “Ajustar qué modalidades ven las tools MCP”El asistente de IA conectado por MCP (Silvio en Odoo, o clientes externos como ChatGPT) lee el radar con dos tools: read_convocatorias y read_convocatoria_deadlines. Igual que el vigilante de alertas de arriba, ambas devuelven por defecto solo convocatorias concursables — las nominativas, directas, de convenio y demás quedan fuera de la respuesta.
Quien pregunta puede pedir explícitamente las no concursables pasando el parámetro include_non_competitive: true (o filtrando por un tipo_concesion concreto): en ese caso la tool las incluye también. No hay nada que configurar en tu instancia para que esto funcione — es el comportamiento por defecto de ambas tools desde este sprint.
Configurar el digest por correo a los operadores
Section titled “Configurar el digest por correo a los operadores”Cada operador puede elegir si quiere recibir el digest sólo por correo, sólo por notificación interna (campanita Discuss → Bandeja) o por ambos canales.
- Abre Ajustes → Usuarios y empresas → Usuarios.
- Selecciona un operador.
- En la pestaña Preferencias localiza el campo Entrega alertas Radar. Las opciones son
Correo,Odoo(campanita interna) oAmbos(valor por defecto). - Guarda.
El campo es per-usuario: cada operador controla su preferencia sin afectar al resto del equipo.
Próximos pasos
Section titled “Próximos pasos”- Usar Radar como operador para entender qué verán tus usuarios con esta configuración.
- Enviar una convocatoria a Gestión de ayudas para revisar el flujo cross-módulo.
- Configurar el modelo IA si quieres que Silvio entienda preguntas sobre Radar.