← Prompt Engineering

Deep Dive: Tree-of-Thought / Graph-of-Thought

Phân tích sâu từ báo cáo Prompt Engineering — ToT và GoT biến reasoning thành search problem, nơi branching, scoring và backtracking quan trọng không kém lời nhắc ban đầu.
Báo cáo cha: ← Prompt EngineeringTopic: Tree-of-Thought / Graph-of-ThoughtNgày: 2026-04-22Cấp độ: Layer 2 / deep dive

Tổng quan Search

ToT/GoT là bước chuyển từ linear reasoning sang search-based reasoning. Khi không có một đường suy luận duy nhất đủ tốt, việc thử nhiều nhánh rồi prune/backtrack thường mạnh hơn CoT thuần.

Tree-of-Thought cho model đề xuất nhiều thought branches, đánh giá chúng, rồi mở rộng nhánh tiềm năng. Graph-of-Thought đi xa hơn: các thoughts trở thành vertex trong một graph, cho phép hợp nhất, chia tách và feedback loop phức tạp hơn.

Điểm cốt lõi của cả hai là ta không còn coi reasoning là một dòng text đơn tuyến. Ta bắt đầu coi nó như một không gian tìm kiếm có scoring function.

AspectÝ nghĩaTrade-off
BranchingSinh nhiều đường suy luậnTốn token hơn
EvaluationChấm thought trước khi đi tiếpCần scorer tốt
BacktrackingQuay lại khi nhánh xấuController phức tạp hơn

Cơ chế Mechanics

Controller thường làm 3 việc: generate thoughts, evaluate thoughts, expand/prune thoughts. Với GoT, controller còn phải xử lý merge và cross-edge dependencies.

Nếu scorer yếu, ToT biến thành random branching. Nếu scorer tốt, nó có thể tìm được phương án toàn cục mà CoT tuyến tính bỏ sót.

Search loop sketch

TEXT
generate_k_thoughts()
score_each_thought()
prune_low_scores()
expand_high_scores()
repeat_until_goal()
Root ├─ Thought A │ ├─ Evaluate │ └─ Expand └─ Thought B ├─ Evaluate └─ Prune / merge

Khi dùng Fit

ToT/GoT hợp với planning, puzzle solving, creative search, combinatorial tasks và bất kỳ bài toán nào mà “đi theo câu đầu tiên” dễ bị kẹt.

Nếu bạn đã có một evaluator mạnh, branching search có thể đáng giá rất nhanh. Nếu không, các nhánh chỉ làm tăng chi phí mà không tạo signal chất lượng.

Ưu điểm
  • Tăng xác suất tìm được đường tốt hơn
  • Hợp với search/planning khó
  • Cho phép pruning và backtracking rõ ràng
Nhược điểm
  • Controller và scorer phức tạp
  • Token cost cao
  • Overkill với task chỉ cần một câu trả lời ngắn

Failure modes Risk

ToT/GoT chỉ xứng đáng khi search space thực sự lớn và có evaluator đủ tốt. Nếu không, CoT + self-consistency thường rẻ hơn và dễ vận hành hơn.
Rủi ro thực tế
  • Scoring function phản ánh sai objective thật.
  • Branch explosion làm chi phí tăng phi lý.
  • Graph merge logic làm mất tín hiệu quan trọng.
  • Controller overfit vào benchmark cụ thể.

So sánh Compare

TechniqueKhác biệt chínhChọn khi
CoTMột đường reasoningTask nhỏ, cần rẻ và nhanh
Self-consistencyNhiều đường nhưng vote cuốiAnswer ổn định hơn path
Prompt chainingNhiều call tuần tự, ít searchMuốn inspect từng bước rõ

Tham khảo chính Sources