Skip to content

MrCabss69/rag-openai-chats

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RAG‑OpenAI‑Chats 

Un buscador inteligente, 100 % local (hasta donde tú quieras), para consultar tu historial completo de ChatGPT sin regalar tus datos.

Hero

Exporta tus chats desde OpenAI, transfórmalos a Parquet, genera embeddings con Sentence‑Transformers, indexa en Milvus y pregúntale cualquier cosa a tu “yo del pasado” con RAG via Haystack .

Tabla de Contenidos

  1. ¿Por qué?
  2. Estructura del Repo
  3. Requisitos
  4. Instalación Rápida
  5. Pipeline — Visión Global
  6. Uso Paso a Paso
  7. Privacidad y Buenas Prácticas
  8. Roadmap
  9. Contribuir

¿Por qué la molestia?

Las big‑tech monetizan nuestras conversaciones. Ahí dentro está tu memoria de trabajo, ideas de negocio, snippets de código y decisiones de proyecto. RAG‑OpenAI‑Chats te devuelve el control:

  • Memoria aumentada – encuentra esa recomendación que diste hace 3 meses.
  • Reaprovecha código – copia/pega tu propio snippet en segundos.
  • Audita tus ideas – sigue la evolución de un razonamiento a lo largo del tiempo.
  • Privado por diseño – todo vive en tu portátil o NAS.

Estructura del Repo

.
├── data/                 # ⚠️ NO versiones nada aquí (git‑ignored por defecto)
│   ├── raw/              # exportaciones originales (OpenAI, Claude, Gemini…)
│   ├── interim/          # messages.jsonl aplanado
│   └── processed/        # chunks.parquet + embeddings\_batches/
├── notebooks/            # 01‑parse‑openai.ipynb … 04‑simple‑rag.ipynb
├── scripts/              # extract\_chats.py (CLI equivalente a los notebooks)
├── src/
│   └── utils.py          # helpers comunes (chunking, limpieza, etc.)
├── docs/                 # documentación pública
└── README.md             # este fichero

Instalación Rápida

git clone https://github.com/MrCabss69/rag-openai-chats.git
cd rag-openai-chats
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt

Pipeline de Alto Nivel

Pipeline

  • Persistencia – Parquet para datos tabulares (sql-like), Milvus para vectores.
  • Reentrante – todos los scripts/notebooks marcan lotes .ok para reanudar.
  • Modular – sustituye el modelo de embeddings o añade un PromptNode sin tocar el resto.

Uso Paso a Paso

  1. Exporta tus chats desde ChatGPT (Settings → Data Controls → Export) y coloca el zip en data/raw/OPENAI/.

  2. Ingesta & ETL

    # ▶ abre 02‑preprocessing.ipynb y ejecuta
  3. Embeddings + Milvus

    jupyter lab notebooks/03-indexing.ipynb
    #→ crea/actualiza  rag-openai-chats/sql/milvus_v0.db
  4. Consultar

    jupyter lab notebooks/04-simple-rag.ipynb

Privacidad y Buenas Prácticas

  • 100 % local: por defecto todo vive en tu disco.
  • .gitignore agresivo: data/, archivos .db, embeddings y assets quedan fuera del repo.
  • Variables de entorno: si decides llamar a la API de OpenAI, usa export OPENAI_API_KEY=… y NO la subas jamás.

Roadmap

  • streamlit app con chat UI + citaciones.
  • Soporte multi‑vendor (Claude, Gemini) vía directorios data/raw/<vendor>/.
  • Modo Hybrid Retrieval (BM25 + Embeddings).
  • Pruebas unitarias + CI GitHub Actions.

Contribuir

PRs y issues son bienvenidos. Revisa CONTRIBUTING.md (pendiente) o abre discusión en GitHub Discussions.


¿Te fue útil? ¡Dale ⭐ al repo y comparte tus mejoras en X @IntrinsicalAI!