Repo này đã được rút gọn để tập trung vào một dataset thật sự dùng được ngay:
MultiSpider_VI_Bird
Các nhánh Bird và ViText2SQL đã bị loại khỏi luồng sử dụng chính vì trong workspace hiện tại chúng không còn đầy đủ dữ liệu để chạy end-to-end, dễ gây nhầm lẫn cho người mới.
Dataset chính thức:
MultiSpider_VI_Bird
Trạng thái hiện tại:
- có
data_preprocess/dev.jsonvàtrain.json - có SQLite thật cho
devvàtrain - có few-shot và
correct_fewshot2.json - có embedding cho dev split
- chạy được với pipeline hiện tại
Khuyến nghị:
- dùng
devđể bắt đầu - dùng
MultiSpider_VI_Birdcho cả CLI và UI demo
pip install -r requirements.txtKiểm tra nhanh môi trường:
bash run/check_ready.shChạy một lệnh để tải metadata, tải SQLite và sinh embedding cho dev split:
bash run/setup_multispider_vi.shBiến môi trường hữu ích:
MAX_DATABASES=0: tải toàn bộ database, mặc định là toàn bộFORCE_REFRESH=1: tải lại metadataSKIP_EMB=1: bỏ qua bước sinh embeddingBERT_MODEL=hashing-fallback: dùng encoder fallback nhẹ
Ví dụ:
MAX_DATABASES=0 bash run/setup_multispider_vi.shScript chạy mặc định:
MODEL=minimax/minimax-m2.5:free OPENROUTER_API_KEY=... bash run/run_multispider_vi.shCác biến thường dùng:
DATA_MODE=devSTART=0END=2N_CANDIDATES=3SKIP_ALIGN=falseMODEL=...
Ví dụ chỉ chạy 1 sample:
MODEL=minimax/minimax-m2.5:free OPENROUTER_API_KEY=... START=0 END=1 N_CANDIDATES=1 bash run/run_multispider_vi.shKết quả sẽ nằm dưới:
results/dev/<pipeline_nodes>/MultiSpider_VI_Bird/<timestamp>/
bash run/run_demo_ui.shĐịa chỉ mặc định:
http://127.0.0.1:8765
UI hỗ trợ:
- chọn dataset/sample theo từng bước
- nhập API key và model trực tiếp trên UI
- chạy sample hoặc tự nhập câu hỏi mới
- SQL sandbox để xem bảng và chạy query chỉ-đọc
- xem kết quả cuối hoặc full trace từng node
Phần quan trọng:
src/main.py: entrypoint chạy pipelinesrc/pipeline/: các node của pipelinesrc/runner/: runtime, logging, compare SQL, task managersrc/database_process/prepare_multispider_vi.py: chuẩn bị datasetsrc/database_process/make_emb.py: sinh embeddingrun/setup_multispider_vi.sh: script setup cho người mớirun/check_ready.sh: kiểm tra nhanh môi trường và datasetrun/run_multispider_vi.sh: script chạy pipelinerun/run_demo_ui.sh: mở UI demo
Dataset local:
MultiSpider_VI_Bird/
- Nếu model có dạng
provider/modelthì thường dùngOPENROUTER_API_KEY - Nếu dùng model kiểu OpenAI-compatible như
gpt-4o-minithì cầnOPENAI_API_KEY traincó thể chạy, nhưng luồng được tối ưu và kiểm tra trước hết chodev- Nếu thiếu network, hãy copy sẵn thư mục
MultiSpider_VI_Bird/từ máy khác rồi chạy tiếp
Repo hiện tại ưu tiên:
- ít lựa chọn hơn
- ít script thừa hơn
- ít dataset mồi gây hiểu nhầm hơn
- onboarding rõ ràng cho người mới
Nếu cần mở rộng thêm dataset khác sau này, nên thêm lại theo cách:
- có script setup riêng
- có tài liệu riêng
- không trộn vào luồng mặc định của repo