Plugin de asistente de código con IA para Vim y Neovim que genera y edita contenido, y permite chatear con modelos compatibles con OpenAI desde el editor.
Mattie/cataclysm
Una biblioteca de Python que genera implementaciones de funciones en tiempo de ejecución con un LLM, a partir de sus nombres, argumentos y contexto, usando OpenAI.
- Estrellas
- 409
- Forks
- 43
- Issues abiertos
- 11
- Último commit
- hace 14 días
¿Qué es?
Cataclysm permite que el código Python llame a funciones que todavía no tienen implementación. Cuando se llama a una función no reconocida, envía el nombre de la función, los argumentos, los nombres de los argumentos con nombre, las docstrings, los comentarios y el contexto de la pila de llamadas a un modelo de OpenAI, ejecuta el código generado y devuelve el resultado. El código generado se almacena en archivos locales, según la firma de cada función, para reutilizarlo en llamadas posteriores.
La biblioteca ofrece varios modos. `consume(globals())` permite generar implementaciones para cualquier función no reconocida del espacio de nombres actual, lo que resulta útil para notebooks y experimentos. El módulo `doom` es el punto de entrada recomendado para bibliotecas y aplicaciones. `doom.impending` muestra el código generado sin ejecutarlo, y `doom.chosen` ejecuta solo código almacenado en caché y lanza un error NameError si no hay nada en caché, para que el código publicado nunca llame al modelo.
Para configurarla, se requiere Python 3.11 o posterior, una clave de API de OpenAI en un archivo `.env` y ejecutar `cataclysm init` para copiar los archivos predeterminados de prompts y datos. La generación funciona mediante la biblioteca chatsnack, y el archivo de prompt se puede editar para cambiar el comportamiento o usar un modelo más económico.
Funciones clave
- 01Genera implementaciones de funciones que faltan a partir de sus nombres, argumentos y contexto.
- 02Almacena localmente el código generado según la firma de cada función para reutilizarlo.
- 03Ofrece el módulo `doom`, recomendado para bibliotecas y aplicaciones.
- 04Incluye un modo de vista previa (`doom.impending`) para revisar el código antes de ejecutarlo.
- 05Incluye un modo congelado (`doom.chosen`) que ejecuta solo código almacenado en caché.
Casos de uso
- Crear rápidamente prototipos de funciones en notebooks de Jupyter o sesiones interactivas.
- Explorar cómo implementaría un LLM una función de utilidad a partir de su firma.
- Distribuir una aplicación con código generado previamente que nunca llama al modelo en tiempo de ejecución.
Inicio rápido
- 1
Instala el paquete desde PyPI
pip install cataclysm - 2
En el directorio de tu proyecto, copia los archivos de datos predeterminados
cataclysm init - 3
Añade tu clave de API de OpenAI al archivo .env
Antes de usarlo
- Requiere una clave de API de OpenAI y realiza llamadas a la API de pago de OpenAI.
- Requiere Python 3.11 o una versión posterior.
- El código generado no está verificado y el README advierte que puede ser inseguro; es experimental.
Temas
Preguntas frecuentes
- ¿Qué es cataclysm?
- Una biblioteca de Python que genera implementaciones de funciones en tiempo de ejecución con un LLM, a partir de sus nombres, argumentos y contexto, usando OpenAI. Cataclysm permite que el código Python llame a funciones que todavía no tienen implementación. Cuando se llama a una función no reconocida, envía el nombre de la función, los argumentos, los nombres de los argumentos con nombre, las docstrings, los comentarios y el contexto de la pila de llamadas a un modelo de OpenAI, ejecuta el código generado y devuelve el resultado. El código generado se almacena en archivos locales, según la firma de cada función, para reutilizarlo en llamadas posteriores.
- ¿cataclysm es gratuito? ¿Qué licencia tiene?
- cataclysm es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿cataclysm sigue mantenido?
- Mantenimiento activo. El último commit de cataclysm fue el 24 oct 2026.
- ¿Para qué puedo usar cataclysm?
- Crear rápidamente prototipos de funciones en notebooks de Jupyter o sesiones interactivas. Explorar cómo implementaría un LLM una función de utilidad a partir de su firma. Distribuir una aplicación con código generado previamente que nunca llama al modelo en tiempo de ejecución.
- ¿Cómo se instala cataclysm?
- Instala el paquete desde PyPI: pip install cataclysm En el directorio de tu proyecto, copia los archivos de datos predeterminados: cataclysm init Añade tu clave de API de OpenAI al archivo .env
- ¿Dónde consigo cataclysm?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/Mattie/cataclysm
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Generative Manim convierte prompts de texto en código de animación de Manim con LLM como GPT-4o o Claude y luego lo renderiza como video.
Pipeline de datos en Python que usa LLMs para extraer grafos de conocimiento estructurados de texto no estructurado y responder preguntas con generación aumentada por recuperación.
CLI de terminal para conversar con los modelos GPT-3.5 y GPT-4 de OpenAI, con modo interactivo y compatibilidad con pipelines.
Colección de ejemplos y guías en notebooks de Jupyter para realizar tareas habituales con la API de OpenAI.
Herramienta de línea de comandos en Go para consultar LLM compatibles con OpenAI desde la terminal y generar comandos de shell, código e imágenes.