Sobre el proyecto

SQLiteVecData ofrece integración en Swift entre SQLiteData y sqlite-vec, lo que permite a los desarrolladores crear tablas virtuales vec0 y realizar consultas de similitud vectorial completamente en Swift. Es compatible con plataformas Apple mediante `loadSQLiteVecExtension` y con plataformas no Apple mediante `registerSQLiteVecAutoExtension`. Sus características principales incluyen: - **Creación de tablas vec0**: Define tablas virtuales con columnas vectoriales (por ejemplo, `FLOAT[1536]`) y modelalas en Swift usando el protocolo `Vec0`. - **Consultas match**: Filtra filas por similitud vectorial usando `match`, y ordena por la columna `distance` para obtener resultados de vecinos más cercanos. - **Funciones de distancia**: Calcula distancias coseno u otras directamente en las cláusulas select. - **Iteración de vectores**: Usa `vecEach()` para iterar sobre elementos vectoriales, lo que permite subconsultas correlacionadas, filtrado y agregación. - **EmbeddingVector**: Un tipo de array de longitud fija, Hashable y Codable para plataformas Apple modernas (iOS 26+, macOS 26+, etc.) que se puede almacenar en tablas vec0 o usar como enlaces de consulta. - **Soporte de pruebas**: Incluye `SQLiteVecDataTestSupport` con traits de Swift Testing para Linux y plataformas Apple. - **Rendimiento**: Incluye traits SIMD NEON (ARM) y AVX (x86) para operaciones vectoriales optimizadas. El paquete también exporta `StructuredQueriesSQLiteVecCore`, un conjunto independiente de ayudantes de consulta para quienes no usan SQLiteData directamente. La instalación se realiza mediante Swift Package Manager o Xcode, y la biblioteca tiene licencia MIT.