Download scripts/dataset_builder/cluster_docs.py from linhhuonglinux/linhhuonglinux-office: direct link, hf CLI and curl.
- Browser
- Download file 2.51 kB
-
https://huggingface.co/linhhuonglinux/linhhuonglinux-office/resolve/main/scripts/dataset_builder/cluster_docs.py
- Command line
-
hf download hf://linhhuonglinux/linhhuonglinux-office/scripts/dataset_builder/cluster_docs.py
-
curl -L -o cluster_docs.py https://huggingface.co/linhhuonglinux/linhhuonglinux-office/resolve/main/scripts/dataset_builder/cluster_docs.py
2.51 kB
| import json | |
| import random | |
| from utils import push_alpaca_dataset_to_hf | |
| def generate_docs_dataset(num_samples=500): | |
| """ | |
| Sinh dữ liệu cho việc tạo và kiểm tra văn bản hành chính. | |
| Output là một file JSON có cấu trúc. | |
| """ | |
| loai_van_bans = ["Quyết định", "Thông báo", "Tờ trình", "Công văn"] | |
| chu_des = [ | |
| "thành lập ban chỉ đạo phòng chống lụt bão", "bổ nhiệm trưởng phòng nhân sự", | |
| "phân công trực tết Nguyên đán", "kiểm tra công tác phòng cháy chữa cháy", | |
| "tổ chức đại hội cổ đông thường niên" | |
| ] | |
| co_quan = ["UBND Quận", "Tổng Giám đốc", "Hội đồng Quản trị", "Sở Nội vụ"] | |
| prompt_templates = [ | |
| "Soạn {loai} về việc {trich_yeu}.", | |
| "Hãy viết bản nháp {loai} cho {co_quan} với nội dung chính: {trich_yeu}. Trả về định dạng JSON." | |
| ] | |
| formatted_dataset = [] | |
| print(f"Đang tạo {num_samples} mẫu cho cụm Document (Văn thư)...") | |
| for _ in range(num_samples): | |
| loai = random.choice(loai_van_bans) | |
| chu_de = random.choice(chu_des) | |
| cq = random.choice(co_quan) | |
| # Cấu trúc output | |
| structured_output = { | |
| "loai_van_ban": loai, | |
| "co_quan_ban_hanh": cq, | |
| "trich_yeu": chu_de.capitalize(), | |
| "can_cu_phap_ly": [ | |
| "Căn cứ Luật Tổ chức chính quyền địa phương;", | |
| "Căn cứ tình hình thực tế." | |
| ], | |
| "dieu_khoan": [ | |
| f"Điều 1. Ban hành {loai.lower()} về việc {chu_de}.", | |
| "Điều 2. Các cá nhân, đơn vị liên quan chịu trách nhiệm thi hành." | |
| ], | |
| "toan_van": f"CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM\nĐộc lập - Tự do - Hạnh phúc\n\n{cq.upper()}\n\n{loai.upper()}\nVề việc {chu_de}\n\n[Nội dung chi tiết]" | |
| } | |
| instruction = random.choice(prompt_templates).format(loai=loai, trich_yeu=chu_de, co_quan=cq) | |
| alpaca_item = { | |
| "instruction": instruction, | |
| "input": "", | |
| "output": json.dumps(structured_output, ensure_ascii=False, indent=2) | |
| } | |
| formatted_dataset.append(alpaca_item) | |
| # Đẩy lên repo chuyên biệt cho Document | |
| repo_name = "linhhuong-office-docs-instruct" | |
| push_alpaca_dataset_to_hf(formatted_dataset, repo_name) | |