Búsqueda Semántica en C# desde vectores hasta embeddings
Búsqueda Semántica en C#
De fundamentos matemáticos hasta embeddings con IA local y en la nube
TI Capacitación
Sesiones en vivo los viernes de 18:30 a 21:30 (UTC-6)
Asistencia en vivo opcional, puedes seguir el taller con las grabaciones
Espacio en Microsoft Teams para enviar preguntas y resolver dudas
Inicia 1 de Mayo de 2026

Este taller teórico-práctico te guía paso a paso en la construcción de un motor de búsqueda semántica en C#, desde los fundamentos matemáticos hasta su implementación con modelos de embeddings modernos.

A lo largo de cinco lecciones progresivas, aprenderás cómo las aplicaciones de IA convierten texto en vectores numéricos, cómo medir la similitud entre conceptos y cómo implementar estos mecanismos en C# y .NET 10. Cada lección combina conceptos clave con ejercicios prácticos ejecutables para consolidar el aprendizaje.

Objetivos

Al finalizar este taller, los participantes serán capaces de:

  • Explicar qué es la búsqueda semántica y diferenciarla de la búsqueda tradicional basada en palabras clave.
  • Aplicar operaciones vectoriales fundamentales como producto punto, norma euclidiana, distancia euclidiana y similitud de coseno.
  • Construir buscadores vectoriales simples para comprender el concepto de cercanía en el espacio vectorial.
  • Generar embeddings a partir de texto utilizando técnicas como Bag of Words y modelos de lenguaje pre-entrenados.
  • Implementar un motor de búsqueda semántica completo que vectorice un corpus y recupere los resultados más relevantes ante consultas en lenguaje natural.

Audiencia

Este taller está dirigido a:

  • Desarrolladores de software con conocimientos básicos de C# que deseen implementar búsqueda semántica y comprender cómo funcionan los embeddings.
  • Arquitectos y líderes técnicos que evalúan incorporar capacidades de búsqueda semántica en sus aplicaciones.
  • Estudiantes de ingeniería de software o ciencias de la computación interesados en IA aplicada.
  • Profesionales técnicos interesados en entender cómo funcionan los sistemas de búsqueda inteligente y RAG (Retrieval-Augmented Generation)

Requisitos

Para seguir las prácticas y ejemplos del taller, se recomienda contar con:

  • Conocimientos básicos de C# y programación orientada a objetos.
  • .NET 10 SDK instalado.
  • Un entorno de desarrollo con Visual Studio 2026 (Community o superior) o Visual Studio Code con C# Dev Kit.
  • No se requiere experiencia previa en inteligencia artificial o aprendizaje automático.

Formato del curso

Las sesiones se llevarán a cabo en vivo a través de Microsoft Teams, brindando una experiencia interactiva y enriquecedora.

Durante las sesiones en vivo, los participantes tendrán la oportunidad de interactuar directamente con el instructor y con otros asistentes para resolver dudas y profundizar en los temas abordados.

Todas las sesiones serán grabadas y puestas a disposición para su descarga, permitiendo a los participantes repasar los contenidos a su propio ritmo o recuperar las clases en caso de no poder asistir en vivo. Adicionalmente, en el Team dedicado del curso en Microsoft Teams, los participantes podrán plantear dudas, continuar las discusiones iniciadas en clase y recibir acompañamiento durante el desarrollo del curso, incluso fuera del horario de las sesiones en vivo.

Instructor

MVP Miguel Muñoz Serafín

Material para el participante

Cada participante recibirá un manual de estudiante en formato PDF con los temas del curso.

Diploma

Al finalizar el entrenamiento los participantes recibirán un certificado digital de participación.

Fecha de inicio

Viernes 1 de mayo de 2026

Horario

Viernes (una sesión en vivo por semana).
18:30 a 21:30 horas UTC-06. Tiempo del centro de México.

Duración

24 horas

Costo

El curso tiene un costo de 199 USD o 3,383.00 pesos mexicanos.

Opciones de apoyo:
  • Pago único antes del 11 de abril de 2026: 99 USD o 1,683.00 pesos mexicanos.
  • Pago único para grupos de 3 estudiantes con correo institucional: 99 USD o 1,683.00 pesos mexicanos.

Estudiantes sin correo institucional pueden ser registrados por personal académico con correo institucional.

Registro

Realiza el pago en dólares a través de PayPal o en pesos mexicanos mediante transferencia o depósito bancario y envía tu comprobante a logistica@ticapacitacion.com para confirmar tu participación.

En el caso de pago de un grupo de 3 estudiantes con correo institucional, enviar los nombres y correos de los estudiantes junto con el comprobante de pago.

NOTA: Para la emisión de facturas en la república mexicana, el pago deberá ser realizado mediante transferencia o depósito bancario.

Enlace de pago de taller completo por la cantidad de 99 USD antes del 11 de abril de 2026

cards
Con la tecnología de paypal

Datos para pago en pesos mexicanos mediante transferencia o depósito bancario

Nombre: TI Capacitación Investigación y Desarrollo SA de CV
Número de cuenta: 0192095378
CLABE: 012650001920953784
Banco: BBVA-Bancomer-México

Si necesitas más información, escribe a logistica@ticapacitacion.com.

El cupo es limitado.

Contenido
El taller está organizado en 5 lecciones progresivas que combinan fundamentos teóricos con ejercicios prácticos, guiándote paso a paso en la construcción de un motor de búsqueda semántica funcional.

Lección 1

Fundamentos matemáticos - operaciones con vectores

En esta lección sentaremos las bases matemáticas del taller. Implementaremos las cuatro operaciones vectoriales esenciales para la búsqueda semántica: producto punto, norma euclidiana, distancia euclidiana y similitud de coseno.

Primero las desarrollaremos paso a paso con salida detallada en consola para visualizar cada cálculo y, posteriormente, las encapsularemos como métodos de extensión reutilizables en una biblioteca de clases.

Objetivos

Al finalizar esta lección, los participantes serán capaces de:

  • Explicar qué es un vector y cómo representarlo en código como un arreglo de double[].
  • Calcular el producto punto entre dos vectores y comprender su significado geométrico.
  • Calcular la norma euclidiana (magnitud) de un vector.
  • Calcular la similitud de coseno y explicar por qué mide orientación y no distancia.
  • Calcular la distancia euclidiana y relacionarla con el Teorema de Pitágoras generalizado.
  • Encapsular estas operaciones en una biblioteca reutilizable mediante métodos de extensión.

Lección 2

Mi primer buscador vectorial - búsqueda por cercanía

Con las operaciones matemáticas dominadas, en esta lección las aplicaremos para construir buscadores vectoriales simples.

Usaremos datos de frutas representadas como vectores bidimensionales (dulzor, acidez) para recorrer el flujo completo de una búsqueda vectorial: definiremos un vector de consulta, calcularemos la distancia contra todos los elementos de la base de datos y ordenaremos los resultados por cercanía.

Objetivos

Al finalizar esta lección, los participantes serán capaces de:

  • Explicar el concepto de base de datos vectorial como una estructura que asocia elementos con representaciones numéricas.
  • Implementar el flujo completo de búsqueda vectorial: vectorizar la consulta → calcular distancias → ordenar resultados.
  • Interpretar los resultados, entendiendo que una menor distancia euclidiana implica mayor similitud.
  • Implementar búsquedas de elementos similares a partir de un elemento de referencia.
  • Analizar las limitaciones de trabajar con vectores manuales de baja dimensión.

Lección 3

Escalando dimensiones - visualización y comparación de métricas

En esta lección aumentaremos la complejidad trabajando con vectores de mayor dimensión y visualizando los resultados en aplicaciones web interactivas con Blazor WebAssembly.

Utilizaremos ejemplos más cercanos a escenarios reales, como películas (4 dimensiones: Acción, Comedia, Drama, Sci-Fi) y canciones de rock clásico (3 dimensiones: Guitarra, Batería, Atmósfera).

El enfoque principal será comparar de forma visual la distancia euclidiana y la similitud de coseno para entender en qué casos conviene utilizar cada métrica.

Objetivos

Al finalizar esta lección, los participantes serán capaces de:

  • Trabajar con vectores de 3 y 4 dimensiones en escenarios más realistas.
  • Construir un buscador vectorial con visualización interactiva usando Blazor WebAssembly.
  • Comparar los resultados de distancia euclidiana y similitud de coseno sobre los mismos datos.
  • Explicar cuándo la similitud de coseno es más adecuada que la distancia euclidiana (y viceversa).
  • Visualizar vectores en un gráfico 3D interactivo para desarrollar intuición geométrica.

Lección 4

De texto a vectores - Tokenización y Bag of Words

En esta lección daremos el salto conceptual más importante del taller: pasar de vectores numéricos definidos manualmente a vectores generados automáticamente a partir de texto.

Recorreremos el pipeline completo de procesamiento de texto: normalización, eliminación de acentos, filtrado de stopwords, stemming (reducción a raíz) y, finalmente, la generación de embeddings mediante el modelo Bag of Words binario.

Trabajaremos con dos niveles de tokenización: uno implementado desde cero y otro basado en bibliotecas Open Source existentes, lo que nos permitirá comparar su impacto en la calidad de los resultados.

Objetivos

Al finalizar esta lección, los participantes serán capaces de:

  • Explicar qué es un tokenizador y por qué es el primer paso para convertir texto en vectores.
  • Implementar un tokenizador básico en español (normalización Unicode, eliminación de acentos y filtrado de stopwords).
  • Implementar un tokenizador con stemming para agrupar variantes de una misma palabra.
  • Utilizar una biblioteca Open Source como herramienta profesional de tokenización.
  • Explicar el modelo Bag of Words (BoW) binario y cómo representa texto como vectores de presencia/ausencia sobre un vocabulario.
  • Diseñar abstracciones limpias (ITokenizer, ITextEmbedder) que desacoplen la estrategia de embedding de la lógica de búsqueda.

Lección 5

Búsqueda semántica - Embeddings con modelos de lenguaje

En esta lección final integraremos todo lo aprendido para construir un motor de búsqueda semántica completo y funcional.

Reemplazaremos los embeddings basados en Bag of Words por embeddings semánticos generados con modelos de lenguaje pre-entrenados, utilizando proveedores intercambiables tanto locales como en la nube.

Vectorizaremos un corpus de más de 50 frases de distintas temáticas y realizaremos búsquedas en las que las palabras no coinciden textualmente, pero el significado sí.

Objetivos

Al finalizar esta lección, los participantes serán capaces de:

  • Explicar la diferencia entre embeddings léxicos (BoW) y embeddings semánticos generados por modelos de lenguaje.
  • Ejecutar un modelo ONNX directamente en .NET sin dependencias externas.
  • Consumir embeddings desde un modelo local hospedado con Ollama desde C#.
  • Consumir servicios de embeddings desde proveedores en la nube como Hugging Face y Microsoft Foundry.
  • Implementar el flujo completo de búsqueda semántica: vectorizar corpus → vectorizar consulta → calcular similitud → ordenar por relevancia y filtrar resultados.
  • Aplicar un umbral de similitud para filtrar resultados no relevantes.
  • Diseñar una arquitectura desacoplada que permita intercambiar proveedores de embeddings mediante inyección de dependencias.