20 puntos por xguru 2025-01-24 | 8 comentarios | Compartir por WhatsApp
  • Herramienta de gestión de bases de datos ligera, de menos de 20 MB, pero potente y fácil de usar
    • PostgreSQL, MySQL, SQLite3, MongoDB, Redis, MariaDB, ElasticSearch
  • Permite consultar y gestionar datos en lenguaje natural en lugar de escribir SQL complejo: integración con Ollama, ChatGPT y Anthropic
  • Soporte de virtualización de tablas en el frontend
  • Visualización del esquema de la base de datos como grafo
  • Edición directa de datos en la interfaz (inline) y vista previa de resultados
  • Scratchpad: interfaz de consultas a bases de datos estilo Jupyter Notebook
  • Desarrollada en Go, es rápida y se puede instalar fácilmente con Docker
  • Relación con otras herramientas
    • Desarrollada con el objetivo de ser una herramienta inspirada en Adminer, reforzando la UX y la visualización de datos sobre la base de la ligereza y la facilidad de uso
    • DBeaver ofrece muchas funciones, pero requiere más recursos, mientras que WhoDB es ligera y eficiente, y funciona bien incluso en entornos pequeños

8 comentarios

 
bungker 2025-01-24

El prompt está definido aquí: https://github.com/clidey/whodb/blob/main/core/src/common/chat.go Los comandos mediante lenguaje natural están implementados realmente a un nivel muy básico.
Lo conecté con ollama phi4, armé una configuración sencilla de DB y probé dando órdenes; unas 10 órdenes se ejecutaron correctamente. No sé a quién habría que felicitar por esto.

 
savvykang 2025-01-24

Probé la demo y se notan bastantes aspectos por mejorar. Para autodefinirse como una herramienta potente, todavía parece que le falta bastante camino por recorrer.

  1. En la vista de tabla, al hacer clic en una celda se copia el contenido de la celda. Al pasar el cursor aparece un ícono de lápiz en la parte derecha dentro de la celda, así que esperaba que al hacer clic en la celda se pudiera editar, pero en realidad no funciona así. Solo si haces clic exactamente en el ícono de lápiz cambia al modo de edición de la celda.
  2. El modo de edición de celda se muestra en un modal y el textarea de entrada aparece excesivamente grande, lo que dificulta mantener el flujo de escritura. Creo que sería mejor una función de edición inline en lugar de un modal.
  3. No se pueden modificar los datos por fila.
  4. Es un problema realmente menor, pero la etiqueta del interruptor para cambiar al modo oscuro cambia según el estado del switch. Cuando está apagado muestra Light Mode, y cuando está encendido muestra Dark Mode. Me parece que la etiqueta de un toggle switch no debería cambiar.
 
savvykang 2025-01-24

Al volver a ver la lista de funciones clave, sí aparece especificada la edición en línea. No me queda claro a qué se refiere esa edición en línea que figura en la descripción del proyecto.

 
regentag 2025-01-24

¿Se trata de dar instrucciones en lenguaje natural a través de un LLM?
Entonces no se podría usar con una base de datos real...

 
leelou2 2025-01-24

Por lo general, al generar SQL se usan la estructura de las tablas, las relaciones y la descripción de los campos, así que no parece que mis datos vayan a usarse para entrenamiento. Además, OpenAI API indica que no entrena con los datos de las solicitudes. Aun así, si te preocupa, creo que podrías usar un LLM local 👏

 
leelou2 2025-01-24

Ah, al usarlo veo que no funciona creando consultas 😂 Entonces usarlo en una base de datos real sí que sería muy difícil.

 
regentag 2025-01-24

Las tareas sensibles, especialmente las de modificar/eliminar datos o cambiar la estructura de tablas, todavía parecen muy riesgosas si se hacen en lenguaje natural a través de un LLM.
Al final, creo que habrá que revisar el SQL generado antes de ejecutarlo.

 
vwjdalsgkv 2025-01-24

Creo que ese no es realmente el punto del comentario original.
Incluso en una base de datos en producción, solo con select pueden ocurrir fallas por carga, bloqueos, etc.; creo que se refería a que existe un riesgo al usar directamente consultas generadas mediante un LLM.