Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Decouple index record models from LanceModel / Vector

Abierto
#476 1 comentario 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
30/100
Tipo de issue
Refactorización
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
python

Línea de trabajo

Start with the seven record models in the everos.infra.persistence.index tables and the backend-neutral IndexSchema returned by schema_for. Then read pydantic_to_schema, the LanceDB adapter code that special-cases FixedSizeListMixin, to see where a custom pydantic-to-Arrow mapper would go. Done means the models use a plain pydantic base and a neutral vector annotation, the LanceDB adapter performs the Arrow mapping, and the affected tests pass. The issue does not name the six test files or settle the annotation's form.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

enhancement

The seven derived-index record models (everos.infra.persistence.index tables) subclass lancedb.pydantic.LanceModel and type their vector columns with lancedb.pydantic.Vector(dim). Milvus consumes them only through the backend-neutral IndexSchema (schema_for), so the dependency is one-directional, but the models are still named and typed by one backend's library.

Scope: replace LanceModel with a plain pydantic base and Vector(dim) with a neutral annotation; the LanceDB adapter then owns the pydantic→Arrow mapping (pydantic_to_schema special-cases lancedb's FixedSizeListMixin, so a custom mapper is required).

Deliberately left out of the (app_id, project_id, id) primary-key work: it touches all seven tables, six test files and the Arrow conversion, with no behaviour change. Tracked so it is not forgotten.

Lenguaje dominante
Python
Estrellas
13.3k
Forks
926
Merge medio
17 h 14 min
PR fusionados (30 d)
40

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de EverMind-AI/EverOS

Todos los issues de EverMind-AI/EverOS

Issues similares

Más issues de Python

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.