- Công cụ quản lý cơ sở dữ liệu thân thiện với người dùng, nhẹ dưới 20MB nhưng mạnh mẽ
- PostgreSQL, MySQL, SQLite3, MongoDB, Redis, MariaDB, ElasticSearch
- Có thể truy vấn và quản lý dữ liệu bằng ngôn ngữ tự nhiên thay vì viết SQL phức tạp: tích hợp với Ollama, ChatGPT, Anthropic
- Hỗ trợ ảo hóa bảng ở frontend
- Trực quan hóa schema cơ sở dữ liệu dưới dạng đồ thị
- Chỉnh sửa dữ liệu trực tiếp (inline) trong giao diện và xem trước kết quả
- Scratchpad: giao diện truy vấn cơ sở dữ liệu theo phong cách Jupyter Notebook
- Được phát triển bằng Go nên nhanh, và có thể cài đặt dễ dàng bằng Docker
- Mối quan hệ với các công cụ khác
- Được phát triển với mục tiêu trở thành một công cụ lấy cảm hứng từ Adminer, tăng cường UX và trực quan hóa dữ liệu dựa trên tính gọn nhẹ và dễ sử dụng
- DBeaver cung cấp nhiều tính năng phong phú nhưng đòi hỏi nhiều tài nguyên, trong khi WhoDB nhẹ, hiệu quả và hoạt động tốt ngay cả trong môi trường nhỏ
8 bình luận
Prompt được định nghĩa tại đây: https://github.com/clidey/whodb/blob/main/core/src/common/chat.go
Các lệnh bằng ngôn ngữ tự nhiên được triển khai ở mức thực sự rất đơn giản.
Tôi đã kết nối với ollama phi4, cấu hình DB đơn giản rồi thử ra lệnh thì khoảng 10 lệnh đã được thực thi đúng. Đây là lúc tôi cũng không biết nên khen ai nữa.
Tôi đã thử bản demo, và thấy còn khá nhiều điểm cần cải thiện. Để tự nhận là mạnh mẽ thì có vẻ họ vẫn còn một chặng đường khá dài phải đi.
textareanhập liệu lại hiện quá lớn, khiến khó duy trì luồng nhập liệu. Tôi nghĩ tính năng chỉnh sửa inline sẽ tốt hơn modal.Nhìn lại danh sách tính năng cốt lõi thì thấy có ghi rõ là chỉnh sửa nội tuyến. Tôi vẫn hơi mơ hồ không rõ "chỉnh sửa nội tuyến" được viết trong phần mô tả dự án là gì.
Là ra lệnh bằng ngôn ngữ tự nhiên thông qua LLM à?
Chắc không thể dùng trên DB thật rồi...
Thông thường khi tạo SQL, người ta dùng cấu trúc bảng, quan hệ và mô tả các trường, nên có lẽ dữ liệu của tôi sẽ không bị dùng để huấn luyện. Ngoài ra, OpenAI API cũng có nội dung nói rằng họ không huấn luyện từ dữ liệu yêu cầu. Dù vậy, nếu vẫn thấy không yên tâm thì có lẽ bạn có thể dùng LLM chạy cục bộ 👏
À, dùng thử mới thấy đây không phải kiểu tạo truy vấn nhỉ 😂 Chắc sẽ thật sự rất khó để dùng trên DB thực tế.
Những tác vụ nhạy cảm, đặc biệt là các việc như chỉnh sửa/xóa dữ liệu hoặc thay đổi cấu trúc bảng, nếu thực hiện bằng ngôn ngữ tự nhiên thông qua LLM thì hiện tại vẫn có vẻ rất nguy hiểm.
Cuối cùng thì có lẽ vẫn phải kiểm tra lại câu lệnh SQL được tạo ra trước khi thực thi.
Ý chính của bình luận gốc có lẽ không phải như vậy.
Với DB đang vận hành, ngay cả chỉ
selectcũng có thể gây sự cố do tải và lock; có lẽ ý họ là sẽ có rủi ro khi sử dụng ngay các truy vấn được suy ra thông qua LLM.