HACK A BOSS
FormaciónEvaluacionesPerfil
Volver
  • En directo

Fundamentos de Bases de Datos Vectoriales

8h de clase en directo·HACK A BOSS·Español

Skills que aprenderás

  • Bases de Datos Vectoriales

Convocatorias

Necesitas un plan activo

Para acceder a los cursos en directo necesitas un plan activo. Estamos trabajando para que los planes estén disponibles pronto — ¡mantente atento!

No hay convocatorias abiertas ahora mismo, pero no te pierdas la oportunidad: guarda este curso y te avisamos en cuanto se abra una convocatoria.

Descripción

Objetivos

Temario

Requisitos técnicos

Conocimientos previos

Detalles de la convocatoria

Recursos

No hay recursos disponibles todavía para esta convocatoria

Curso de iniciación a las bases de datos vectoriales orientado a perfiles técnicos que trabajan con sistemas de IA, búsqueda semántica o pipelines de datos y quieren entender cómo funciona este tipo de almacenamiento, cuándo usarlo y cómo integrarlo en una aplicación real. El curso cubre qué es un embedding y cómo transforma información no estructurada en vectores numéricos; la diferencia entre bases de datos relacionales y vectoriales según el tipo de consulta que resuelven bien; las medidas de similitud coseno y distancia euclidiana con cálculo práctico en Python; la estructura interna de una base de datos vectorial —índice, namespace y metadatos— y las operaciones básicas de upsert, query y delete; el papel de las bases de datos vectoriales en pipelines RAG; y la construcción de un prototipo funcional de búsqueda semántica que integra generación de embeddings, indexación y consulta. Al finalizar, el participante será capaz de construir un sistema básico de búsqueda semántica sobre un conjunto de datos propio y explicar cómo encaja en un pipeline RAG.

Al finalizar el curso, el participante será capaz de:

  • Explicar qué es un embedding, cómo transforma información no estructurada en un vector numérico de dimensión fija y por qué elementos semánticamente similares producen vectores cercanos en el espacio vectorial
  • Distinguir entre bases de datos relacionales y vectoriales, explicar qué tipo de consulta resuelve bien cada una e identificar qué características de un problema justifican el uso de una base de datos vectorial
  • Identificar las medidas de similitud coseno y distancia euclidiana, explicar qué mide cada una geométricamente y seleccionar cuál es más adecuada según las características de los vectores y el problema de búsqueda
  • Calcular la similitud coseno y la distancia euclidiana entre vectores usando Python con NumPy o scikit-learn e interpretar el resultado numérico para determinar el grado de similitud semántica
  • Reconocer y describir los componentes básicos de una base de datos vectorial —índice vectorial, namespace y metadatos— explicando la función de cada uno en una operación de búsqueda
  • Realizar las operaciones básicas sobre un índice vectorial: insertar vectores con su identificador y metadatos (upsert), consultar los k vecinos más cercanos (query) y eliminar registros por identificador (delete)
  • Explicar el papel que desempeña una base de datos vectorial en un pipeline RAG, describiendo en qué etapa interviene y cómo su salida se convierte en contexto para el LLM
  • Construir un prototipo funcional de búsqueda semántica en Python que integre generación de embeddings, indexación en una base de datos vectorial y consulta por similitud
  1. Embeddings y bases de datos vectoriales Qué es un embedding: transformación de información no estructurada (texto, imágenes) en vectores numéricos de dimensión fija; por qué la cercanía en el espacio vectorial refleja similitud semántica; modelos de embedding más habituales y sus diferencias; diferencia entre base de datos relacional (consultas exactas sobre campos estructurados) y vectorial (consultas por similitud sobre vectores densos); casos de uso que justifican el uso de una BD vectorial: búsqueda semántica, sistemas de recomendación, detección de duplicados, RAG

  2. Similitud vectorial y cálculo con Python Similitud coseno: mide el ángulo entre vectores independientemente de su magnitud, rango de -1 a 1, más adecuada cuando la dirección importa más que la longitud; distancia euclidiana: mide la distancia geométrica entre dos puntos en el espacio, sensible a la magnitud del vector; criterios de selección según el problema; cálculo con NumPy: producto escalar, norma y fórmula manual; cálculo con scikit-learn: cosine_similarity y euclidean_distances; interpretación del resultado numérico sobre ejemplos reales

  3. Estructura y operaciones de una base de datos vectorial Componentes de una BD vectorial: índice vectorial (estructura de datos para búsqueda eficiente de k vecinos más cercanos), namespace (espacio lógico de partición dentro del índice) y metadatos (atributos arbitrarios asociados al vector para filtrado); operación upsert: inserción o actualización de un vector con su id y metadatos; operación query: búsqueda de los k vectores más similares a un vector de consulta con filtrado opcional por metadatos; operación delete: eliminación de vectores por id; recorrido práctico con ChromaDB local o Pinecone

  4. Bases de datos vectoriales en RAG y prototipo integrador Arquitectura de un pipeline RAG: etapa de indexación offline (generación de embeddings + upsert en la BD vectorial) y etapa de consulta online (generación del embedding de la pregunta + query + inyección del contexto en el prompt del LLM); papel de la BD vectorial como capa de recuperación; construcción paso a paso de un prototipo de búsqueda semántica en Python: carga del corpus, generación de embeddings con un modelo de embedding, indexación en ChromaDB, consulta por similitud y presentación de los resultados más relevantes

  • Python 3.9+ instalado con pip
  • pip con acceso a instalar: numpy, scikit-learn, chromadb
  • Cuenta gratuita en un proveedor de embeddings (OpenAI, Cohere u otro indicado por el docente) o modelo de embeddings local con sentence-transformers
  • Editor de código (VS Code recomendado)
  • Terminal: bash, zsh o PowerShell

El curso está orientado a perfiles técnicos con familiaridad básica con Python: definición de funciones, instalación de paquetes con pip y lectura de estructuras de datos básicas (listas, diccionarios). No es necesario haber trabajado con bases de datos vectoriales ni con modelos de embedding; todos los conceptos se introducen desde cero. Se recomienda haber explorado previamente un LLM conversacional y tener una noción básica de qué es una base de datos relacional, aunque no es requisito estricto.