Skip to Content
🛠️ Công cụ AIPreviewClaudePreviewAgent SkillsTutorial: Số hóa Gia Phả

Tutorial: Số hóa Cây Gia Phả từ Ảnh

Hướng dẫn tạo Agent Skill để số hóa cây gia phả từ ảnh chụp.

Bài toán

Tình huống: Gia đình bạn có bức gia phả lớn ghi chép nhiều đời. Bạn muốn dùng Claude để:

  1. Chụp ảnh và tự động phân tích cấu trúc gia phả
  2. Trích xuất thông tin thành viên và quan hệ
  3. Export ra định dạng dễ sử dụng (JSON, CSV…)

Thiết kế Agent Skill

Cấu trúc thư mục

family-tree-digitizer/ ├── SKILL.md # File chính ├── output-format.md # Mô tả format output └── examples/ ├── input-example.png # Ảnh gia phả mẫu └── output-example.json # Output mẫu

SKILL.md

--- name: family-tree-digitizer description: Số hóa cây gia phả từ ảnh chụp, phân tích cấu trúc đời và quan hệ cha-con, output JSON hoặc CSV --- # Family Tree Digitizer Skill này phân tích ảnh chụp cây gia phả và trích xuất thành dữ liệu có cấu trúc. ## Khi nào sử dụng - Số hóa gia phả từ ảnh chụp hoặc scan - Chuyển đổi gia phả viết tay thành dữ liệu điện tử - Trích xuất thông tin thành viên từ bảng phả hệ ## Quy tắc phân tích ảnh 1. **Cấu trúc đời:** - Mỗi hàng ngang là một đời (generation) - Đời trên cùng = đời 1 (tổ tiên xa nhất) - Số đời tăng dần từ trên xuống dưới 2. **Quan hệ cha-con:** - Con cái nằm ngay dưới cha/mẹ - Thường có đường kẻ nối cha mẹ với con 3. **Anh em ruột:** - Nằm cùng hàng ngang - Có chung cha mẹ ở đời trên 4. **Vợ chồng:** - Thường nằm cạnh nhau trên cùng một hàng - Có thể có ký hiệu đặc biệt (dấu = hoặc đường nối) ## Format output Xem chi tiết trong `output-format.md` ## Xử lý trường hợp đặc biệt - **Tên không rõ:** Ghi `[Không rõ - vị trí X]` - **Năm sinh/mất không có:** Để `null` - **Quan hệ không chắc chắn:** Thêm vào `notes` - **Ảnh mờ/scan kém:** Liệt kê các chỗ cần xác nhận ## Ví dụ prompt User: "Phân tích ảnh gia phả này và xuất ra JSON" Claude sẽ: 1. Xác định số đời và cấu trúc tổng thể 2. Trích xuất từng thành viên theo đời 3. Xác định quan hệ cha-con 4. Output JSON theo format chuẩn 5. Liệt kê các chỗ cần xác nhận (nếu có)

output-format.md

# Output Format ## JSON Structure \`\`\`json { "metadata": { "total_generations": 7, "total_members": 45, "analyzed_at": "2024-01-15T10:30:00Z", "confidence": "high|medium|low", "notes": ["Ghi chú về những chỗ không rõ"] }, "members": [ { "id": "m1", "name": "Nguyễn Văn Tổ", "generation": 1, "birth_year": 1850, "death_year": 1920, "gender": "male", "notes": "Tổ tiên đầu tiên được ghi nhận" } ], "relationships": [ { "parent_id": "m1", "child_id": "m2", "type": "biological" }, { "person1_id": "m1", "person2_id": "m1b", "type": "spouse" } ] } \`\`\` ## CSV Format (Alternative) Nếu user yêu cầu CSV: ### members.csv \`\`\` id,name,generation,birth_year,death_year,gender,parent_ids,notes m1,Nguyễn Văn Tổ,1,1850,1920,male,,Tổ tiên m2,Nguyễn Văn A,2,1880,1950,male,m1, m3,Nguyễn Văn B,2,1885,1960,male,m1, \`\`\` ## Giải thích các trường | Trường | Mô tả | Bắt buộc | |--------|-------|----------| | id | ID tạm để xác định quan hệ | ✅ | | name | Họ tên đầy đủ | ✅ | | generation | Số đời (1 = tổ tiên) | ✅ | | birth_year | Năm sinh | ❌ | | death_year | Năm mất | ❌ | | gender | male/female | ❌ | | notes | Ghi chú | ❌ |

Sử dụng Skill

Upload và enable skill

  1. Tạo folder family-tree-digitizer/ với các file trên
  2. Zip thành family-tree-digitizer.zip
  3. Upload lên Claude.ai → Settings → Skills
  4. Enable skill

Sử dụng với Claude

Ví dụ 1: Phân tích cơ bản

User: [Upload ảnh gia phả] "Phân tích gia phả này và xuất ra JSON" Claude: [Sử dụng family-tree-digitizer skill] Đã phân tích ảnh gia phả. Kết quả: 📊 **Tổng quan:** - Số đời: 6 - Số thành viên: 32 - Độ tin cậy: Cao 📋 **JSON Output:** { "metadata": { "total_generations": 6, "total_members": 32, ... }, ... } ⚠️ **Cần xác nhận:** 1. Đời 4, vị trí 3: Tên bị mờ, đọc được "Nguyễn Văn ..." 2. Đời 5: Không rõ quan hệ giữa m15 và m16 (anh em hay vợ chồng?)

Ví dụ 2: Xuất CSV

User: "Phân tích gia phả và xuất CSV để import vào Excel" Claude: [Phân tích và tạo CSV] ✅ Đã tạo file: members.csv, relationships.csv

Ví dụ 3: Ảnh chất lượng kém

User: [Upload ảnh scan mờ] "Gia phả này cũ và mờ, cố gắng phân tích" Claude: Ảnh có chất lượng thấp. Tôi sẽ cố gắng phân tích nhưng cần bạn xác nhận một số thông tin. 📊 **Kết quả sơ bộ:** - Xác định được: 20/~30 thành viên - Đời 1-3: Rõ ràng - Đời 4-5: Nhiều tên bị mờ ⚠️ **Cần xác nhận 8 vị trí** [Chi tiết...] Bạn có muốn tôi xuất những gì đọc được không?

Mở rộng Skill

Thêm tính năng

Bạn có thể mở rộng skill để:

  1. Hỗ trợ nhiều ảnh:

    "Gia phả quá dài, tôi chia thành 3 ảnh. Gộp lại thành một cây hoàn chỉnh."
  2. So sánh và merge:

    "So sánh gia phả từ 2 nguồn và gộp thông tin"
  3. Validate dữ liệu:

    "Kiểm tra xem có mâu thuẫn nào không (ví dụ: con sinh trước cha)"

Kết hợp với workflow khác

Sau khi có JSON từ skill này, bạn có thể:

  • Yêu cầu Claude tạo database schema phù hợp
  • Tạo web app hiển thị (riêng biệt)
  • Export ra các format khác (PDF, HTML…)

Best Practices

  1. Ảnh chất lượng tốt: Chụp rõ, đủ sáng, không bị cong
  2. Ảnh lớn chia nhỏ: Nếu gia phả quá dài, chia thành nhiều phần
  3. Review output: Luôn kiểm tra các chỗ cần xác nhận
  4. Lưu bản gốc: Giữ lại JSON/CSV để có thể sửa sau

Kết luận

Agent Skill family-tree-digitizer giúp tự động hóa việc số hóa gia phả:

  • Claude Vision phân tích cấu trúc ảnh
  • Trích xuất thành viên và quan hệ
  • Output JSON/CSV có cấu trúc rõ ràng
  • Liệt kê các chỗ cần xác nhận thủ công

Từ dữ liệu này, bạn có thể tiếp tục xây dựng database, web app, hoặc sử dụng cho các mục đích khác!

Last updated on