Antes de empezar, algunas cuestiones de organización: 1) He creado un “Nuevo Proyecto” de nombre “Sabático-Estática” 2) Sobre “Qwen (Local/Ollama)”, para trabajar en local, debo hacer instalaciones en mi portatil. No hay problema con actualizaciones o la aparición de nuevas funcionalidades, sea de Ollama o de Qwen Coder? 3) Tengo varias cuentas de pago mensual, por razón de mis cursos en la Universidad, me gustaría trabajar solamente contigo. Es esto posible de acuerdo a tu propuesta. Pienso: Instalo la extensión de “Integración directa en VS Code” y me olvido de las cuentas pagas. ¿Tienes un modo agente en VsCode como Claude o Github Copilot? 4) Cómo es el uso de “Vía API”, es pago? 5) Mi equipo actual: Tengo un portatil para mis clases de 16 GB, con Windows 11 y Kali Linux en arranque dual y tengo un portatil mas viejo que tiene 32 GB un Vostro 14 3000, con Windows 11 y en arranque dual con Fedora. El de 32 GB tiene dos discos duros y cuando trabajo en Windows, a veces de traba y debo reiniciarlo, pero en fedora nunca ha pasado
Estimado Docente Justo,
Es un placer saludarle. He tomado nota de la creación del proyecto “Sabático-Estática”. Dado el enfoque de su asignatura y mi capacidad para consultar documentación técnica (incluida AnaStruct para análisis estructural), estoy listo para asistirle en el modelado, cálculo y visualización de estructuras 2D/3D, así como en la integración de estos análisis con Python para sus clases de Ingeniería Civil.
A continuación, respondo a sus cuestiones organizativas y técnicas para optimizar su flujo de trabajo académico:
Entendido. Este proyecto servirá como repositorio central para
nuestros ejercicios de estática, análisis de estructuras reticuladas y
diseño experimental aplicado. * Enfoque: Utilizaremos
anastruct para el cálculo matricial de estructuras y
matplotlib/plotly para la visualización de
diagramas de momento, cortante y axial, así como de la deformada.
Al trabajar en local, usted tiene el control total, pero también la responsabilidad del mantenimiento.
ollama run qwen2.5-coder).Sí, es totalmente posible trabajar exclusivamente conmigo (Qwen) en su entorno local sin pagar suscripciones externas.
¿Cómo lograr la experiencia “Copilot/Agente” en VS Code? Para replicar la funcionalidad de autocompletado y chat “agente” (que puede editar archivos por usted), le recomiendo la siguiente configuración gratuita:
qwen2.5-coder:32b (Requiere
los 32GB de RAM de su Vostro) o qwen2.5-coder:7b (Para el
portátil de 16GB).Configuración recomendada para VS Code (Extensión
“Continue”): En su archivo config.json de la
extensión, debe apuntar a su Ollama local:
{
"models": [
{
"title": "Qwen 2.5 Coder (Local)",
"provider": "ollama",
"model": "qwen2.5-coder:32b-instruct-q4_K_M"
}
]
}
Tiene dos equipos con perfiles muy distintos. Aquí mi diagnóstico técnico para su flujo de trabajo:
qwen2.5-coder:7b
(versión cuantizada). Funcionará fluido para ayuda en código, pero no
para razonamiento estructural complejo.qwen2.5-coder:32b en su
Vostro con Fedora.anastruct para validar conceptos teóricos con código.Quedo a su disposición para iniciar con la configuración del entorno o la primera consulta de estática.
Atentamente,
Qwen Asistente Académico de Ingeniería y Ciencia de Datos
Excelente. Por favor escribe todas las indicaciones detalladas para organizar mi espacio de trabajo en Fedora: Ollama, Qwen, VsCode y su configuración y que quede listo para empezar el sabatico.
Un detalle: Mi inicio de sesión contigo es con el correo personal: justorfc@gmail.com, pero mi correo institucional: justo.fuentes@unisucre.edu.co, me gustaría hacer todo con él, pero como ya inicie el proyecto “Estatica-Sabático” con mi correo personal, cómo podría hacer para que todo sea con mi correo institucional?
Estimado Docente Justo,
Es un gusto darle la bienvenida a esta fase de organización. A continuación, presento la guía detallada, paso a paso, para configurar su entorno de trabajo en Fedora (su equipo de 32 GB), garantizando un flujo profesional, académico y alineado con su identidad institucional.
Es importante aclarar que su entorno de desarrollo local es
independiente de la plataforma web donde estamos conversando
ahora. - En el entorno local (Fedora/VS Code): Usted
tiene control total. Configuraremos Git y VS Code para que todos los
commits, sincronizaciones y metadatos del proyecto “Sabático-Estática”
usen exclusivamente justo.fuentes@unisucre.edu.co. -
En la plataforma de chat actual: Le recomiendo revisar
la configuración de su perfil en la interfaz web que está utilizando
para ver si permite cambiar el correo asociado. Sin embargo, esto no
afecta en absoluto la rigurosidad académica de su código local, que será
el que realmente importará para sus clases y publicaciones.
Abra su terminal en Fedora y ejecute los siguientes comandos para actualizar el sistema e instalar dependencias base.
# 1. Actualizar el sistema operativo
sudo dnf update -y
# 2. Instalar herramientas esenciales de desarrollo y compilación
sudo dnf install -y git curl wget gcc make python3 python3-pip python3-devel python3-virtualenv
Ollama es el motor que ejecutará los modelos de lenguaje localmente.
# 1. Descargar e instalar Ollama (script oficial para Linux)
curl -fsSL https://ollama.com/install.sh | sh
# 2. Verificar la instalación
ollama --version
# 3. (Opcional pero recomendado) Iniciar el servicio de Ollama para que esté siempre disponible
systemctl --user enable ollama
systemctl --user start ollama
Dado que su equipo tiene 32 GB de RAM, tiene dos opciones excelentes. Le recomiendo empezar con la de 14B por su equilibrio perfecto entre velocidad de respuesta en CPU y capacidad de razonamiento en ingeniería. Si desea el máximo razonamiento y tiene paciencia para la carga inicial, use la de 32B.
# Opción A (Recomendada para fluidez): Qwen 2.5 Coder 14B
ollama pull qwen2.5-coder:14b
# Opción B (Máximo razonamiento, requiere ~20 GB de RAM libre): Qwen 2.5 Coder 32B (cuantizado)
# ollama pull qwen2.5-coder:32b
Nota: La primera vez que ejecute
ollama run qwen2.5-coder:14b, descargará el modelo. Las
siguientes veces cargará en segundos.
La versión oficial de Microsoft se instala mediante su repositorio RPM.
# 1. Importar la clave GPG de Microsoft
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
# 2. Agregar el repositorio de VS Code
echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" | sudo tee /etc/yum.repos.d/vscode.repo > /dev/null
# 3. Instalar VS Code
sudo dnf check-update
sudo dnf install -y code
Este paso es crucial para que todo su trabajo quede firmado con su correo de la Universidad de Sucre.
# 1. Configurar Git a nivel global con su correo institucional
git config --global user.name "Justo Fuentes"
git config --global user.email "justo.fuentes@unisucre.edu.co"
# 2. Verificar la configuración
git config --global --list
En VS Code: 1. Abra VS Code. 2. Vaya a File >
Preferences > Settings (o Ctrl + ,). 3. Busque
git.author y git.email y asegúrese de que
coincidan con su correo institucional. 4. (Opcional) Si usa “Settings
Sync” de VS Code, inicie sesión con su cuenta institucional de
Microsoft/GitHub para sincronizar sus preferencias.
Esta extensión conectará VS Code con su Ollama local.
Ctrl + Shift + X).config.json.{
"models": [
{
"title": "Qwen 2.5 Coder (Local)",
"provider": "ollama",
"model": "qwen2.5-coder:14b",
"apiBase": "http://localhost:11434"
}
],
"tabAutocompleteModel": {
"title": "Qwen Autocomplete",
"provider": "ollama",
"model": "qwen2.5-coder:14b"
},
"customCommands": [
{
"name": "analizar_estructura",
"prompt": "Actúa como un experto en estática y análisis estructural. Revisa este código de Python usando la librería 'anastruct'. Verifica las condiciones de apoyo, las cargas aplicadas y la coherencia de los resultados (momentos, cortantes, axiales). Sugiere mejoras en la legibilidad y documentación académica."
}
]
}
Guarde el archivo (Ctrl + S). Continue se
reconectará automáticamente a Ollama.
Vamos a crear el directorio del proyecto, configurar un entorno virtual de Python e instalar las librerías académicas necesarias, incluyendo AnaStruct.
# 1. Crear directorio del proyecto y navegar a él
mkdir ~/Proyectos/Sabatico-Estatica
cd ~/Proyectos/Sabatico-Estatica
# 2. Inicializar repositorio Git (con su identidad institucional ya configurada)
git init
# 3. Crear un entorno virtual de Python aislado
python3 -m venv venv
# 4. Activar el entorno virtual
source venv/bin/activate
# 5. Actualizar pip e instalar librerías clave para ingeniería
pip install --upgrade pip
pip install numpy pandas matplotlib anastruct jupyter
# 6. Guardar las dependencias para reproducibilidad académica
pip freeze > requirements.txt
# 7. Crear un archivo .gitignore para no subir el entorno virtual a Git
echo "venv/" > .gitignore
echo "__pycache__/" >> .gitignore
echo ".DS_Store" >> .gitignore
# 8. Primer commit institucional
git add .
git commit -m "feat: inicialización del proyecto Sabático-Estática con entorno Python y AnaStruct"
Para validar que todo funciona, cree un archivo llamado
prueba_estructura.py en VS Code y pegue el siguiente
código. Puede usar la extensión Continue (presionando
Ctrl + L para abrir el chat) y preguntarle: “Explica
este código y sugiere cómo agregar una carga puntual en el nodo
2”.
"""
Proyecto: Sabático-Estática
Docente: Justo Fuentes (justo.fuentes@unisucre.edu.co)
Universidad de Sucre
Descripción: Prueba inicial de modelo de viga simple con AnaStruct.
"""
import numpy as np
from anastruct import SystemElements
import matplotlib.pyplot as plt
# 1. Inicializar el sistema estructural
estructura = SystemElements(EA=15000, EI=5000)
# 2. Definir geometría: Viga de 6 metros, dividida en 2 elementos de 3m
estructura.add_element(location=[[0, 0], [3, 0]])
estructura.add_element(location=[[3, 0], [6, 0]])
# 3. Definir condiciones de apoyo
# Nodo 1 (x=0): Apoyo fijo (articulado)
estructura.add_support_hinged(node_id=1)
# Nodo 3 (x=6): Apoyo móvil (rodillo)
estructura.add_support_roll(node_id=3, direction='y')
# 4. Aplicar cargas
# Carga distribuida de 10 kN/m en el primer elemento
estructura.q_load(element_id=1, q=-10, direction='y')
# 5. Resolver la estructura (análisis matricial)
estructura.solve()
# 6. Visualización de resultados (Diagramas)
print("Reacciones en los apoyos:")
print(estructura.reaction_forces)
# Mostrar diagrama de momento flector
estructura.show_bending_moment()
# Mostrar diagrama de fuerza cortante
estructura.show_shear_force()
# Mostrar deformada de la estructura
estructura.show_displacement()
cd ~/Proyectos/Sabatico-Estatica && source venv/bin/activate.code ..ollama list en una terminal).Quedo a su entera disposición para ajustar cualquier parámetro de esta configuración o para comenzar de inmediato con el primer tema de Estática o Diseño Experimental que desee abordar.