Skip to content

Integra model_ai, componentes compartidos de core y refactor del flujo de referencias#56

Merged
gitnnolabs merged 7 commits intoscieloorg:mainfrom
eduranm:issue-01
Apr 20, 2026
Merged

Integra model_ai, componentes compartidos de core y refactor del flujo de referencias#56
gitnnolabs merged 7 commits intoscieloorg:mainfrom
eduranm:issue-01

Conversation

@eduranm
Copy link
Copy Markdown
Contributor

@eduranm eduranm commented Apr 13, 2026

O que esse PR faz?

Este PR introduce una nueva capa compartida de dominio y servicios de IA para MarkAPI, integrando la app model_ai, centralizando componentes reutilizables en core y refactorizando el módulo reference para usar la nueva infraestructura.

En términos generales, este PR:

  • agrega utilidades compartidas en core/utils/utils.py;
  • centraliza constantes y choices de dominio en core/choices.py;
  • amplía core/models.py con modelos de dominio reutilizables y su migración inicial;
  • incorpora la nueva app model_ai con:
    • modelo LlamaModel,
    • servicio de inferencia LLaMA/Gemini,
    • tareas de descarga,
    • hooks de administración en Wagtail,
    • mensajes/prompts y migraciones;
  • actualiza la configuración base para registrar model_ai, usar un nuevo LLAMA_MODEL_DIR, habilitar LLaMA por defecto y ampliar DATA_UPLOAD_MAX_NUMBER_FIELDS;
  • refactoriza reference para usar model_ai y reference/data_utils.py en lugar del flujo anterior;
  • ajusta configuración y modelos de referencias para soportar nuevos formatos y estados;
  • elimina componentes heredados de la implementación anterior de LLaMA;
  • ajusta local.yml para evitar conflictos entre instancias locales;
  • actualiza catálogos de traducción.

Onde a revisão poderia começar?

Sugiro revisar en este orden:

  1. core/

    • core/utils/utils.py
    • core/choices.py
    • core/models.py
    • core/migrations/0001_initial.py
  2. model_ai/

    • model_ai/models.py
    • model_ai/llama.py
    • model_ai/tasks.py
    • model_ai/wagtail_hooks.py
    • model_ai/messages.py
    • migraciones de model_ai
  3. reference/

    • reference/data_utils.py
    • reference/api/v1/views.py
    • reference/marker.py
    • reference/config.py
    • reference/config_gemini.py
    • reference/models.py
    • reference/wagtail_hooks.py
    • migraciones de reference
  4. Configuración e infraestructura

    • config/settings/base.py
    • config/urls.py
    • requirements/base.txt
    • local.yml
    • eliminación de compose/local/django/Dockerfile.llama
    • eliminación de llama.local.yml
    • eliminación de llama3/generic_llama.py
  5. i18n

    • locale/en/LC_MESSAGES/django.po
    • locale/es/LC_MESSAGES/django.po
    • locale/pt_BR/LC_MESSAGES/django.po

Como este poderia ser testado manualmente?

Sugiro validar manualmente con el siguiente flujo:

  1. Descargar el proyecto y cambiar a esta rama.
  2. Reconstruir la imagen local con las nuevas dependencias.
  3. Levantar el proyecto con make up.
  4. Ejecutar migraciones pendientes.
  5. Verificar que la app inicie correctamente con la nueva configuración base.
  6. Entrar al admin de Wagtail y validar que LlamaModel esté disponible en la administración.
  7. Crear una instancia de LlamaModel con credenciales válidas y probar el flujo de descarga del modelo.
  8. Verificar que el modelo descargado quede reflejado en el download_status.
  9. Probar la API de referencias y confirmar que el flujo use data_utils y la nueva capa model_ai.
  10. Verificar que las rutas bajo api/v1/ sigan respondiendo correctamente.
  11. Validar que admin/autocomplete/ siga funcionando con el cambio de ubicación en i18n_patterns.
  12. Confirmar que la configuración local con puertos ajustados permita coexistir con otra instancia del proyecto.
  13. Revisar que los textos nuevos aparezcan correctamente en los catálogos de traducción.

Algum cenário de contexto que queira dar?

Este PR agrupa cambios estructurales que preparan la base para un flujo de procesamiento asistido por IA dentro de MarkAPI. La intención es mover responsabilidades reutilizables a core, introducir una app dedicada (model_ai) para servicios de inferencia y descarga de modelos, y desacoplar reference del flujo anterior basado en llama3.

También se aprovecha para limpiar infraestructura heredada de LLaMA y ajustar la configuración local para facilitar pruebas paralelas del proyecto.

Screenshots

N/A

Quais são tickets relevantes?

#55

Referências

N/A

@gitnnolabs gitnnolabs self-requested a review April 13, 2026 14:26
@gitnnolabs gitnnolabs merged commit d1e1f61 into scieloorg:main Apr 20, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants