File size: 2,846 Bytes
22ca508
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
# 🤖 GPT Local - Sistema de Chat con Hugging Face

[![Docker](https://img.shields.io/badge/docker-%230db7ed.svg?style=for-the-badge&logo=docker&logoColor=white)](https://docker.com/)
[![Python](https://img.shields.io/badge/python-3.9+-blue.svg?style=for-the-badge&logo=python&logoColor=white)](https://python.org/)
[![Hugging Face](https://img.shields.io/badge/%F0%9F%A4%97%20Hugging%20Face-Transformers-yellow?style=for-the-badge)](https://huggingface.co/)
[![PyTorch](https://img.shields.io/badge/PyTorch-%23EE4C2C.svg?style=for-the-badge&logo=PyTorch&logoColor=white)](https://pytorch.org/)

Un sistema completo de chat GPT local usando modelos de Hugging Face con soporte para Docker, interfaz web y terminal.

## 🚀 Características

- 💬 **Chat Terminal**: Interfaz de línea de comandos rápida y eficiente
- 🌐 **Interfaz Web**: Gradio UI moderna y responsiva
- 🐳 **Docker Ready**: Despliegue containerizado completo
- 🤗 **Hugging Face**: Soporte para múltiples modelos preentrenados
- 🍎 **Apple Silicon**: Optimización MPS para M1/M2/M3 Macs
-**GPU Acceleration**: CUDA y MPS automático
- 📦 **Easy Setup**: Configuración automática de dependencias

- 🤖 Interfaz de chat interactiva
- 🔒 Completamente local y privado
- 🚀 Modelos preentrenados de Hugging Face
- 💬 Generación de texto conversacional
- ⚙️ Configuración personalizable

## Requisitos

- Python 3.8 o superior
- torch
- transformers
- gradio (para la interfaz web)

## Instalación

1. Instalar dependencias:

```bash
pip install -r requirements.txt
```

1. Ejecutar la aplicación:

**Chat en Terminal:**

```bash
python3 chat_terminal.py
```

**Interfaz Web (si Gradio funciona):**

```bash
python3 main.py
```

**Prueba rápida:**

```bash
python3 test_gpt.py
```

## Uso

La aplicación abrirá una interfaz web en `http://localhost:7860` donde podrás:

- Chatear con el modelo GPT local
- Ajustar parámetros de generación
- Cambiar entre diferentes modelos

## Modelos Disponibles

- GPT-2 (por defecto)
- DialoGPT
- Otros modelos compatibles de Hugging Face

## Estructura del Proyecto

```text
gpt-local/
├── main.py              # Aplicación principal
├── models/              # Gestión de modelos
│   ├── __init__.py
│   ├── model_loader.py  # Carga de modelos
│   └── text_generator.py # Generación de texto
├── ui/                  # Interfaz de usuario
│   ├── __init__.py
│   └── gradio_interface.py
├── config/              # Configuración
│   ├── __init__.py
│   └── settings.py
├── requirements.txt     # Dependencias
└── README.md           # Esta documentación
```

## Configuración

Edita `config/settings.py` para personalizar:

- Modelo por defecto
- Parámetros de generación
- Puerto de la interfaz web