Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Circuit Labs

Equipo: Roy Mendez (LinkedIn) y Alfonso Gomez Urquiza Garcia (LinkedIn)


🎯 Inspiración

Todo empezó en un servicio social: necesitaba generar material de estudio a partir de diagramas de circuitos —bocetos a mano, capturas de Tinkercad, esquemáticos de LTSpice— y ni NotebookLM ni ninguna otra herramienta disponible podía convertir ese material visual imperfecto en algo que realmente ayudara a entender el circuito. El problema no era falta de IA; era que la IA existente exige esquemáticos limpios, no el tipo de boceto con el que un estudiante realmente aprende.

Ese problema personal resultó ser síntoma de algo más grande en México. Solo 28,356 estudiantes egresan al año de licenciaturas en ingeniería eléctrica/electrónica, una fracción pequeña frente a la demanda creciente de nearshoring en semiconductores y electromovilidad. Y aunque el acceso a internet ya casi se universalizó (86.1% nacional), el acceso a una computadora se ha mantenido estancado en ~45% de los hogares durante años, mientras el celular ya es prácticamente universal. Un estudiante mexicano promedio tiene cámara, no LTSpice instalado — y estudios sobre deserción en ingeniería electrónica en México apuntan a que el salto entre teoría y comprensión práctica del circuito, no la falta de capacidad, es la principal causa de abandono.

Circuit Labs nace para cerrar exactamente esa brecha: convertir la única herramienta que casi todo estudiante ya tiene —una cámara— en un tutor de circuitos.

💡 ¿Qué es Circuit Labs?

Circuit Labs es una aplicación web que convierte un boceto dibujado a mano de un circuito eléctrico en un esquemático digital editable, una simulación numérica en tiempo real, y un asistente conversacional ("Sr. Cut") que responde preguntas de teoría de circuitos sobre ese circuito específico.

El flujo central: el usuario sube una foto de su boceto → el sistema detecta los componentes con visión por computadora → reconstruye la topología del circuito → lo dibuja como esquemático limpio → lo simula (respuesta temporal o en frecuencia) → y permite hacerle preguntas en lenguaje natural, respondidas por un modelo de lenguaje local (Gemma 4) con contexto completo del circuito.


🚀 El Prototipo

  • Demo Video: [Insertar aquí: link a tu video demo de 2 minutos]
  • Repositorio / Notebook: [Insertar aquí: link a tu Kaggle Notebook / repositorio de GitHub]

🛠️ Cómo lo construimos

Usamos Gemma 4 (26B), corriendo localmente vía Ollama, exclusivamente como motor conversacional del asistente "Sr. Cut" — no interviene en la detección de componentes ni en la simulación numérica, ambas resueltas por otras piezas del stack.

Stack Técnico

Capa Tecnología
Frontend React, Vite, react-markdown + KaTeX (renderizado de fórmulas)
Backend Python, FastAPI
Visión por computadora Roboflow (circuits-oxmv9/2, 45 clases) vía inference_sdk / REST
Esquemático schemdraw
Simulación numérica numpy + matplotlib
LLM conversacional Gemma 4 (26B) vía Ollama (local) — fallback opcional a Gemini 1.5 Flash
RAG / Teoría Skills enrutadas por palabras clave + ChromaDB sobre notebook de fundamentos

Técnicas de IA Implementadas

Técnica Uso en Circuit Labs
RAG Cada pregunta se enruta por palabras clave contra 10 skills de teoría de circuitos (Ley de Ohm, KCL, KVL, divisores, análisis nodal/de mallas, superposición, Thevenin, Norton, método mixto), complementado con búsqueda vectorial semántica sobre un notebook de fundamentos vía ChromaDB + embeddings (nomic-embed-text). Solo las skills relevantes se cargan en el prompt.
Prompt engineering El prompt final ensambla la persona del asistente, lineamientos de formato (español, LaTeX, concisión), parámetros activos del circuito, el reporte de detección de Roboflow, el JSON completo del circuito reconstruido, las skills cargadas y el contexto vectorial. Gemma 4 nunca alucina un circuito genérico; responde siempre sobre el circuito real dibujado. Temperatura baja (0.2) para priorizar precisión.
Fine-tuning No se usó — decisión deliberada de scope para el MVP de un día. Queda como opción futura (vía Unsloth) si el desempeño zero-shot resulta insuficiente en casos más complejos.

🏗️ Arquitectura General

┌─────────────────────┐       ┌──────────────────────────┐       ┌─────────────────┐ 
│ Frontend (React)    │ HTTP  │ Backend (FastAPI/Python) │ HTTP  │ Roboflow API    │ 
│ circuit-sketch-mvp  │ ─────►│ circuit-labs-backend     │ ─────►│ (modelo         │ 
│ puerto 5173         │ ◄─────│ puerto 8000              │ ◄─────│ circuits-oxmv9) │
└─────────────────────┘       └───────────┬──────────────┘       └─────────────────┘ 
                                          │ 
                            ┌─────────────┼──────────────┐
                            ▼             ▼              ▼ 
                        schemdraw    matplotlib     Gemma 4 (Ollama) 
                      (esquemático) (simulación)    + ChromaDB (RAG)

About

Convierte bocetos a mano de circuitos eléctricos en esquemáticos digitales, simulación en tiempo real y un tutor conversacional (Sr. Cut) impulsado por Gemma 4 local. Construido para cerrar la brecha entre teoría y práctica en la educación de ingeniería en México. 🇲🇽⚡

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages