ArgenVolt / README.md
arey14's picture
Update README.md
cf0f6ed verified
|
Raw
History Blame Contribute Delete
8.38 kB

A newer version of the Gradio SDK is available: 6.20.0

Upgrade
metadata
title: ArgenVolt
emoji: 
colorFrom: yellow
colorTo: red
sdk: gradio
sdk_version: 6.15.1
python_version: '3.10'
app_file: app.py
pinned: false
license: agpl-3.0
short_description: Auditor y consultor RAG del reglamento eléctrico
tags:
  - track:backyard
  - sponsor:nvidia
  - achievement:offbrand
  - achievement:offgrid
  - achievement:sharing
  - achievement:llama

ArgenVolt ⚡

Auditor de Reglamento Eléctrico Argentino y Consultor RAG Local

Argentine Electrical Code Auditor & Local RAG Consultant


👥 Equipo / Team


🔗 Recursos y Enlaces / Resources & Links


🇪🇸 Descripción en Español

ArgenVolt es un auditor normativo y consultor conversacional inteligente de cumplimiento para las reglamentaciones eléctricas argentinas (específicamente la sección AEA 90364-7-771 para viviendas y AEA 90364-7-701 para cuartos de baño).

Ejecutándose completamente de manera local en hardware de GPU mediante transformers y una interfaz Gradio de estética premium con soporte ZeroGPU, ArgenVolt ayuda a los ingenieros, instaladores y auditores eléctricos a verificar el cumplimiento de las instalaciones y realizar consultas normativas de forma interactiva.

🌟 Características Principales

  1. 🔎 Auditor de Circuitos: Valida secciones de cable, calibres máximos de llaves térmicas ($I_n$), cantidad máxima de bocas y factores de reducción por agrupamiento para evitar riesgos de sobrecalentamiento e incendio.
  2. 🚿 Seguridad en Cuartos de Baño: Computa las zonas de seguridad (0, 1, 2 o 3) en baños y determina los artefactos permitidos, grados de protección IP mínimos y condiciones reglamentarias.
  3. 📐 Grado de Electrificación: Calcula el grado de electrificación y deduce automáticamente el número mínimo de circuitos y bocas requeridas por ambiente.
  4. 🎛️ Corrector de Factor de Potencia: Diseña y calcula bancos de capacitores para corrección del coseno de $\varphi$, graficando dinámicamente el triángulo de potencias en formato SVG.
  5. 🌱 Puesta a Tierra (PAT): Estima la resistencia de dispersión para electrodos comunes: jabalinas verticales, conductores horizontales enterrados y placas circulares.
  6. 🔌 Medidor de Potencia: Deduce el consumo activo real midiendo el tiempo de giro en medidores de disco de inducción.
  7. ⚡ Diseñador de Tableros: Genera planillas de carga automatizadas, equilibra fases y dibuja el diagrama unifilar correspondiente en SVG interactivo.
  8. 📖 Consultor RAG Local: Chatbot conversacional impulsado por Qwen2.5-14B-Instruct (cuantizado en 4-bit NF4), que busca en el reglamento digitalizado y responde citando documentos y páginas exactas.

🇬🇧 Description in English

ArgenVolt is a local, AI-powered compliance auditor and conversational consultant for Argentine electrical regulations (specifically AEA 90364-7-771 for residential housing and AEA 90364-7-701 for bathrooms).

Running fully locally on GPU hardware via transformers and a premium-themed Gradio dashboard utilizing ZeroGPU, ArgenVolt helps electrical engineers, installers, and inspectors verify installation compliance and query regulations interactively.

🌟 Key Features

  1. 🔎 Circuit Auditor: Validates copper conductor section size, maximum breaker ratings ($I_n$), outlet count limits (bocas), and grouping correction factors to prevent overloads and fire hazards.
  2. 🚿 Bathroom Safety Zones: Computes zone classifications (0, 1, 2, or 3) and determines permitted appliances and minimum IP protection ratings.
  3. 📐 Electrification Degree: Calculates the minimum required circuits and outlets based on covered and semi-covered areas.
  4. 🎛️ Power Factor Corrector: Computes reactive power and targets capacitor sizing for power factor correction (including dynamic vector diagrams in SVG).
  5. 🌱 Grounding Calculator: Estimates grounding grid resistance for vertical rods, horizontal conductors, and circular plates.
  6. 🔌 Power Meter Utility: Calculates load from induction disk rotation metrics.
  7. ⚡ Board Designer: Generates load tables and renders SVG electrical single-line schemas.
  8. 📖 Code Consultant (RAG): Conversational assistant running Google's/Alibaba's Qwen2.5-14B-Instruct local model, retrieving exact articles from the regulatory code.

🛠️ Optimizaciones RAG / RAG Pipeline Optimizations

🇪🇸 Español

Para garantizar que el motor de IA recupere y cite exactamente las páginas oficiales del reglamento:

  • Segmentación Estructurada: Los documentos PDF originales se pre-procesaron a Markdown estructurado, reteniendo tablas, columnas y límites exactos de páginas (--- PÁGINA X ---).
  • Expansión de Sinónimos: Mapea vocabulario informal de los electricistas (ej. "cable de tierra", "tierra") a las denominaciones oficiales del reglamento (ej. "conductor de protección", "PE", "puesta a tierra").
  • Búsqueda Híbrida Inteligente: Combina búsqueda semántica con un algoritmo por coincidencia exacta con ponderación de coordenadas e incremento de score para palabras clave complejas.
  • Filtros Regulares por Límites de Palabra: Elimina falsos positivos subcadena aplicando límites de palabra (\b) en español para el plural (ej. emparejando "boca" con "bocas", "conductor" con "conductores").

🇬🇧 English

To ensure the AI retrieves and cites exact pages from the Argentine Electrical regulations:

  • Structured Document Parsing: Original PDFs were pre-processed into structured Markdown, retaining columns, tables, and exact page markers (--- PAGE X ---).
  • Synonym Expansion: Maps popular terminology (e.g., "tierra") to regulatory keywords (e.g., "protección", "PE", "jabalina").
  • Hybrid Intelligent Search: Combines semantic embeddings with custom coordinate-bonus exact matching to prioritize pages matching a higher number of unique query terms.
  • Full-Word Regex Matching: Employs word boundaries (\b) and Spanish plural regexes (e.g. matching "boca" to "bocas", "color" to "colores") to eliminate false substring matches.

🌍 Interfaz Bilingüe Dinámica / Dynamic Bilingual UI

Español: Podés cambiar de idioma instantáneamente en el menú desplegable de la barra lateral. Al cambiarlo, todas las etiquetas de los controles de la suite, los informes técnicos en HTML y las directrices del chatbot RAG cambiarán automáticamente a Español o Inglés.

English: You can switch the interface language instantly using the dropdown selector in the sidebar. All control labels, HTML technical reports, and the RAG chatbot's system directives will dynamically adapt to Spanish or English.


🚀 Cómo Iniciar Localmente / How to Run Locally

Requisitos Previos / Prerequisites

  • Python 3.10 o superior / Python 3.10+
  • GPU con soporte CUDA y compatible con bitsandbytes (ej. RTX 3060/4060 o superior) / CUDA-capable GPU compatible with bitsandbytes.

Instrucciones de Arranque / Setup & Execution

  1. Clonar o copiar la carpeta del proyecto en tu espacio de trabajo.
  2. Activar el entorno virtual existente en el repositorio:
    source .venv/bin/activate
    
  3. Instalar las dependencias requeridas (se recomienda usar uv para mayor velocidad):
    uv pip install -r requirements.txt --python .venv/bin/python
    # O alternativamente:
    pip install -r requirements.txt
    
  4. Ejecutar el servidor local:
    python app.py
    
  5. Abrir el navegador web en la dirección del puerto 7860:
    http://localhost:7860
    

Modelo Local Qwen2.5-14B: En el primer inicio, la aplicación descargará automáticamente los pesos de Qwen/Qwen2.5-14B-Instruct (aproximadamente 28GB en formato raw, optimizado a 4 bits utilizando bitsandbytes al cargar en RAM/VRAM) y construirá o cargará los embeddings de los PDF reglamentarios para el motor RAG.