Thinking Diagram #3: Kiến trúc Thinking Diagrams

0 0 0

Người đăng: Axolotl

Theo Viblo Asia

** Đây là chuỗi các bản nháp về paper "Thinking diagram" trước khi được dịch sang tiếng anh và đăng tải trên arxiv.

IV, Kiến trúc Thinking Diagram (The Thinking Diagram Architecture)

1, Triết lý cốt lõi

Triết lý tương tác nền tảng hiện nay, dù không được tuyên bố một cách tường minh, vẫn ngầm định xem LLM như một công cụ thực thi (execution tool). Trong mô hình này, LLM được đặt ở vị thế của một thực tập sinh biết tuốt hoặc một trợ lý cấp thấp: một thực thể có khả năng làm theo mệnh lệnh nhưng thiếu khả năng tư duy độc lập. Mối quan hệ giữa người và máy là mối quan hệ chủ-tớ, trong đó con người ra lệnh và AI thực thi. Toàn bộ sự phức tạp trong tư duy, ý định và ngữ cảnh của con người bị buộc phải nén xuống thành một chuỗi mệnh lệnh văn bản tuyến tính—chính là prompt.

Cách nhìn này đã vô tình tạo ra một vòng lặp tự củng cố của việc hạ thấp kỳ vọng. Khi một prompt không thể truyền tải hết sự phức tạp, LLM sẽ cho ra một kết quả thiếu sót. Thay vì nhận ra vấn đề nằm ở phương tiện giao tiếp (văn bản), chúng ta lại có xu hướng đổ lỗi cho khả năng "hiểu" của LLM. Điều này dẫn đến sự ra đời của các giải pháp tình thế phức tạp (như Prompt Engineering hay RAG) được thiết kế xung quanh giả định rằng LLM là một thực thể vốn đã thiếu sót và cần được "dỗ dành" một cách khéo léo. Chính các giải pháp này lại càng củng cố thêm vai trò của LLM như một công cụ khó tính, thay vì một đối tác tư duy thực thụ.

Thinking Diagram được xây dựng trên một triết lý hoàn toàn khác: tái định nghĩa LLM từ một công cụ thực thi thành một nhà thông thái cộng tác (collaborative sage).

Trong tầm nhìn này, LLM là một thực thể sở hữu kho kiến thức liên ngành khổng lồ, nhưng lại thiếu đi ý định, mục tiêu và cấu trúc tư duy của một chuyên gia cụ thể. Vai trò của con người không phải là người ra lệnh, mà là người dẫn dắt—cung cấp một khung xương logic, một bản thiết kế cho tư duy, để nhà thông thái AI dùng kiến thức của mình lấp đầy và hoàn thiện. Tiềm năng cao nhất của LLM được khai phá khi nó trở thành một phiên dịch viên cho sự hỗn loạn của tư duy con người, có khả năng kết nối các ý tưởng rời rạc và các lĩnh vực chuyên môn khác nhau để tạo ra một sản phẩm tổng thể.

Việc thay đổi triết lý này dẫn đến một sự thay đổi sâu sắc trong cách tiếp cận vấn đề. Bài toán không còn là làm sao để tinh chỉnh mệnh lệnh cho AI hiểu?, mà trở thành làm sao để biểu đạt tư duy của chúng ta một cách tường minh nhất?. Nó chuyển trách nhiệm về việc "tạo ra cấu trúc" từ phía AI (cố gắng suy diễn từ một prompt hỗn loạn) sang phía con người (chủ động cung cấp cấu trúc). Triết lý này đòi hỏi một "ngôn ngữ" mới, một phương tiện mới để biểu đạt tư duy có cấu trúc. Đó chính là ngôn ngữ của Thinking Diagram, mà các thành phần của nó sẽ được mô tả trong phần tiếp theo.

2, Cấu trúc Đồ thị

Bản thân tên gọi Thinking Diagram (Sơ đồ Tư duy) đã gợi ý về hai thành phần cốt lõi cấu thành nên kiến trúc của nó: Tư duy (Thinking)Sơ đồ (Diagram).

  • Phần Tư duy đại diện cho lớp trừu tượng, nơi trí tuệ chủ quan và ý định của người dùng được kết hợp với khả năng suy luận của LLM để tạo ra một quá trình nhận thức chung.
  • Phần Sơ đồ chính là nền tảng vật lý, là giao diện nơi quá trình Tư duy đó diễn ra và được cấu trúc hóa.

Nền tảng Sơ đồ này được cấu thành từ hai yếu tố chính: Node (Nút)Edge (Cạnh).

  • Node: Mỗi Node đại diện cho một đơn vị logic, một khái niệm, hoặc một thành phần trong sản phẩm cuối cùng.
  • Edge: Mỗi Edge đại diện cho một mối quan hệ logic giữa các Node. Mối quan hệ này được định nghĩa bởi loại (type)hướng (direction) của nó, cho phép biểu diễn các tương tác phức tạp thay vì một dòng chảy một chiều cố định.

Sự đổi mới cốt lõi của Thinking Diagram nằm ở cấu trúc nội tại của mỗi Node, bao gồm hai loại thành phần riêng biệt: DetailerPivot, cho phép sự tương tác hai chiều giữa người dùng và LLM tại từng đơn vị logic nhỏ nhất.


Thành phần Đặc tả (The Detailer)

Detailer là nơi chứa toàn bộ đặc tả, ý định, và ngữ cảnh do con người cung cấp. Một Node có thể có nhiều Detailer, mỗi Detailer đại diện cho một khía cạnh thông tin khác nhau.

Sự linh hoạt của Detailer nằm ở chỗ nó có thể được thể hiện bằng các giao diện chuyên môn hóa (specialized interfaces). Ví dụ, một Detailer cho Node Color có thể là một bảng chọn màu, hay một Detailer cho Node DatabaseSchema có thể là một công cụ vẽ sơ đồ trực quan. Bất kể giao diện đó phức tạp đến đâu, miễn là đầu ra cuối cùng của nó có thể được diễn giải thành một chuỗi văn bản (string) để cung cấp cho LLM, mọi hình thức tương tác đều được chấp nhận. Về bản chất, Detailer là một tập hợp các tham số đầu vào được người dùng kiểm soát hoàn toàn.


Điểm neo Tương tác (The Pivot)

Nếu Detailer là nơi để "nói" với AI, thì Pivot là nơi để "đối thoại" và "cộng tác" với AI. Thay vì chỉ là một điểm neo nội dung sinh ra, Pivot nên được hiểu như một cột mốc tương tác hai chiều (two-way interactive milestone).

Nó hoạt động như một cánh cổng không gian (spatial portal), kết nối trực tiếp không gian làm việc của người dùng với "vùng suy nghĩ" của LLM. Người dùng không chỉ thụ động nhận kết quả từ LLM tại Pivot, mà còn có thể trực tiếp thao tác trên kết quả đó và gửi phản hồi ngược lại, tạo ra một vòng lặp cộng tác liên tục.

Một ví dụ điển hình là quy trình sinh mã:

  1. Người dùng "mớm" vào Pivot của một Node Class một đoạn mã giả (pseudocode).
  2. LLM đọc ý định từ Detailer và mã giả từ Pivot, sau đó sinh ra mã thật và cập nhật lại chính Pivot đó.
  3. Người dùng xem mã thật, trực tiếp chỉnh sửa nó ngay trên Pivot, và sau đó có thể dùng một Detailer dạng prompt để ra lệnh: "Hãy tối ưu lại đoạn mã này." LLM sẽ tiếp tục vòng lặp cải tiến ngay trên nội dung của Pivot.

Trong phép so sánh này, canvas tương tác của các AI hiện đại (như của Gemini) có thể được xem như một Pivot lớn duy nhất, và hộp thoại prompt chính là một Detailer sơ khai. Thinking Diagram hệ thống hóa và nhân bản mô hình này ra từng đơn vị logic nhỏ nhất.


Ví dụ Thực tiễn: Quy trình Sinh mã (Code Generation Workflow)

Để minh họa, hãy xét một ví dụ về việc tạo ra một lớp (Class) trong lập trình.

  • Chúng ta tạo một Node Class chính. Các Detailer của nó sẽ chứa các thông tin như: tên lớp, mô tả tổng quan, và các thuộc tính.
  • Chúng ta tạo các Node Method riêng biệt. Detailer của mỗi Node Method sẽ mô tả chức năng của phương thức đó.
  • Chúng ta dùng Edge để kết nối các Node Method này với Node Class, thể hiện rằng chúng thuộc về lớp đó.

Khi LLM xử lý đồ thị này, Pivot của mỗi Node Method sẽ chứa đoạn code cho riêng phương thức đó, và Pivot của Node Class sẽ chứa toàn bộ đoạn code của cả lớp, đã được tổng hợp lại.

Sức mạnh thực sự của kiến trúc này bộc lộ trong các tác vụ lặp lại và mở rộng. Nếu cần thêm một phương thức mới, người dùng chỉ cần tạo một Node Method mới và kết nối nó vào Node Class. Khi chạy lại quy trình, LLM sẽ chỉ cần tạo ra code mới cho Pivot của Node Method mới và cập nhật lại Pivot của Node Class một cách tối thiểu. Toàn bộ các Node Method cũ và Pivot của chúng được bảo toàn nguyên vẹn. Mô hình này mang lại sự linh hoạt và hiệu quả vượt trội, mở ra một giải pháp khả thi để phát triển và bảo trì các dự án phức tạp với sự tham gia của LLM.


Đồ thị như một cơ chế Active RAG

Toàn bộ cấu trúc Đồ thị này, với các Node và Edge, về bản chất chính là một cơ chế mà tôi gọi là Active Reasoning and Generation (ARAG). Tôi chủ đích thay thế chữ Retrieval (Truy xuất) trong RAG truyền thống bằng Reasoning (Lập luận). Lý do là vì trong mô hình này, việc cung cấp ngữ cảnh không còn là một hành động truy xuất bị động, mà là một quá trình lập luận có cấu trúc, chủ động do người dùng dẫn dắt. Cơ chế này trực tiếp giải quyết vấn đề “hai lớp hộp đen” và sự thiếu kiểm soát đã được phân tích ở RAG truyền thống, biến người dùng từ một người quan sát bị động thành một kiến trúc sư chủ động của dòng chảy thông tin.

Trong kiến trúc ARAG, toàn bộ Thinking Diagram đóng vai trò như một kho tri thức sống, thay thế cho cơ sở dữ liệu vector tĩnh. Nó không chỉ chứa dữ liệu, mà quan trọng hơn, nó biểu diễn được các mối quan hệ logic phi tuyến (non-linear) như sự phụ thuộc vòng, giải quyết sự bất tương xứng về cấu trúc mà văn bản thuần túy không thể làm được.

Tuy nhiên, điều này không có nghĩa là toàn bộ đồ thị khổng lồ được truyền thẳng vào LLM chính. Thay vào đó, quy trình ARAG hoạt động thông qua một thành phần trung gian mà tôi gọi là Bộ dịch Đồ thị (Graph Compiler), có thể là một LLM nhỏ hơn hoặc một thuật toán chuyên biệt hoặc một giải pháp hybrid kết hợp cả các thuật toán cổ điển lẫn sự ứng dụng của LLM như cách MCP đang vận hành.

Quy trình này diễn ra theo các bước sau:

  1. Kích hoạt (Activation): Khi người dùng yêu cầu thực thi một Node cụ thể, Bộ dịch Đồ thị được kích hoạt.
  2. Duyệt đồ thị Thông minh (Intelligent Traversal): Thay vì duyệt một cách máy móc, Bộ dịch sẽ lập luận dựa trên ngữ nghĩa của các loại Edge. Ví dụ, nó sẽ theo các Edge chứa_đựng để tổng hợp các thành phần con, hoặc theo các Edge tham_chiếu để lấy ngữ cảnh từ các Node liên quan. Chính khả năng diễn giải này cho phép hệ thống xử lý các cấu trúc phức tạp và có chu trình, vốn là điều văn bản thuần túy không thể làm được.
  3. Chắt lọc Ngữ cảnh (Context Distillation): Dựa trên quá trình duyệt thông minh, Bộ dịch sẽ thu thập và tổng hợp thông tin cần thiết từ các DetailerPivot của tất cả các Node liên quan.
  4. Biên dịch và Thực thi (Compilation and Execution): Toàn bộ thông tin được chắt lọc sẽ được biên dịch thành một bản tóm tắt ngữ cảnh (contextual summary) cô đọng và có cấu trúc. Chỉ bản tóm tắt này mới được đưa vào LLM chính để tạo ra kết quả cuối cùng tại Pivot của Node được yêu cầu.

Quy trình biên dịch có chủ đích này mang lại những lợi ích kép, vừa giải quyết vấn đề thực tiễn cho người dùng, vừa tái định hình triết lý tự động hóa. Về mặt thực tiễn, nó giải quyết triệt để nghịch lý tối ưu prompt bằng cách chuyển gánh nặng tối ưu hóa từ người dùng sang cho Bộ dịch Đồ thị. Người dùng giờ đây được khuyến khích cung cấp một đồ thị chi tiết tối đa, vì chính quy trình biên dịch sẽ đảm bảo chắt lọc thành một ngữ cảnh đầu vào hiệu quả.

Về mặt triết lý, sự chuyển giao gánh nặng này đã định nghĩa lại bản chất của sự tự động hóa. Nó thay thế một quy trình truy xuất đầy phỏng đoán (speculative retrieval) và thiếu minh bạch của RAG truyền thống bằng một quy trình biên dịch tường minh (transparent compilation) từ một nguồn tri thức do con người kiểm soát. Đây là sự chuyển dịch nền tảng từ việc "hy vọng" AI hiểu đúng sang việc "đảm bảo" AI nhận được đúng thông tin cần thiết. Quan trọng hơn cả kiến trúc kỹ thuật, Thinking Diagram cần được hiểu trước hết là một triết lý, hay một quy ước mềm (soft convention), được hiện thực hóa thông qua một nền tảng kỹ thuật trưởng thành. Triết lý này định nghĩa một quy ước tương tác mở, thể hiện rõ nhất ở khái niệm Node vốn không có quy tắc cứng nhắc, cho phép nó được chuyên môn hóa cho các lĩnh vực riêng biệt. Chính kiến trúc với các thành phần như Pivot tương tác hai chiều và Bộ dịch Đồ thị thông minh đã cung cấp một bộ khung vững chắc để sự linh hoạt này có thể tồn tại và mở rộng. Toàn bộ hệ tư tưởng này được xây dựng trên một giả định nền tảng: rằng LLM, với vai trò là một nhà thông thái cộng tác, về bản chất có đủ năng lực để diễn giải những suy nghĩ phức tạp và hỗn loạn của con người. Khi chấp nhận giả định này, bài toán tương tác với AI thay đổi triệt để; vấn đề không còn là "làm thế nào để tìm ra câu lệnh đúng cho một cỗ máy khó tính", mà trở thành "làm thế nào để trình bày dòng tư duy của chúng ta một cách có cấu trúc nhất cho một đối tác toàn năng".

3, Lộ trình kỹ thuật

Để hiện thực hóa tầm nhìn của Thinking Diagram, tôi đề xuất một lộ trình phát triển gồm hai giai đoạn chính, được thiết kế để vừa tạo ra giá trị ngay lập tức, vừa đặt nền móng cho một sự thay đổi mô hình trong tương lai.

Giai đoạn 1: Cầu nối Tương thích - Bộ dịch ARAG (The Compatibility Bridge: ARAG Translator)

Đây là giai đoạn thực tế, tập trung vào việc xây dựng một hệ thống vỏ (wrapper) thông minh, cho phép triết lý Thinking Diagram có thể hoạt động trên tất cả các LLM hiện có. Giai đoạn này bao gồm việc phát triển song song các thành phần sau:

  • Trình chỉnh sửa Đồ thị (Graph Editor): Đây là giao diện người dùng, nơi người dùng xây dựng và tương tác với Thinking Diagram. Nền tảng này sẽ hỗ trợ cả các Node phổ quát (universal nodes) (ví dụ: node văn bản, node mã nguồn) và các Node chuyên biệt (specialized nodes) được tối ưu cho các lĩnh vực cụ thể.
  • Bộ bao bọc ARAG (ARAG Wrapper): Đây là bộ não của hệ thống Giai đoạn 1, hoạt động như một Bộ dịch Đồ thị (Graph Compiler) tinh vi với ba chức năng chính:
    1. Tính toán Lộ trình Thực thi (Execution Path Calculation): Dựa trên yêu cầu của người dùng (ví dụ: chỉ chạy một Node, một cụm Node, hay toàn bộ đồ thị), thành phần này sẽ xác định lộ trình duyệt đồ thị tối ưu, biến cấu trúc phi tuyến tính của đồ thị thành một chuỗi các bước thực thi tuyến tính.
    2. Biên dịch Ngữ cảnh Thông minh (Intelligent Context Compilation): Khi đã xác định được các Node cần xử lý, thành phần này sẽ duyệt qua các DetailerPivot liên quan để chắt lọc và tổng hợp thành một bản tóm tắt ngữ cảnh cô đọng.
    3. Định dạng và Tích hợp Dữ liệu (Data Formatting and Integration): Thành phần này đóng vai trò cầu nối hai chiều. Nó định dạng bản tóm tắt ngữ cảnh thành một meta-prompt có cấu trúc cho LLM, và sau đó phân tích kết quả trả về từ LLM để cập nhật lại vào các Pivot tương ứng trên đồ thị.

Mô hình này cho phép chúng ta ngay lập tức khai thác sức mạnh của Thinking Diagram, đồng thời vẫn cho phép các quy trình phát triển dựa trên prompt truyền thống tồn tại song song.

Giai đoạn 2: Hướng tới AI "Bản địa" với Thinking Diagram (Native TD)

Tầm nhìn dài hạn của kiến trúc này là vượt qua hạn chế cố hữu của Giai đoạn 1: sự mất mát thông tin và hiệu quả khi phải biên dịch một cấu trúc đồ thị giàu ngữ nghĩa về một chuỗi văn bản tuyến tính. Giai đoạn 2, do đó, đề xuất một thế hệ mô hình nền tảng mới được huấn luyện để có thể suy luận trực tiếp trên cấu trúc Thinking Diagram.

Để hiện thực hóa tầm nhìn này, cơ chế Active Reasoning and Generation (ARAG) phải trải qua một sự biến đổi về bản chất, từ một bộ dịch (compiler) bên ngoài trở thành một bộ máy lập luận (reasoning engine) nội tại của chính mô hình. Thay vì nhận một bản tóm tắt ngữ cảnh đã được xử lý trước, mô hình mới này phải có khả năng tự duyệt qua đồ thị. Điều này đòi hỏi một sự tiến hóa trong kiến trúc cốt lõi, trong đó cơ chế chú ý (attention mechanism) không còn hoạt động trên một chuỗi token tuần tự, mà phải có khả năng diễn giải các Edge có ngữ nghĩa và chú ý đến các Node có liên quan trong một không gian phi tuyến.

Về mặt kiến trúc, sự thay đổi này đòi hỏi hai yếu tố. Thứ nhất, một cơ chế mã hóa tương tự VAE sẽ được phát triển để chuyển hóa mỗi Node thành một vector embedding giàu ngữ nghĩa. Thứ hai, và quan trọng hơn, các vector embedding này sẽ trở thành đầu vào tự nhiên cho một kiến trúc LLM được cải tiến, có thể kết hợp các thành phần của Mạng Nơ-ron Đồ thị (GNN). Cuộc cách mạng thực sự nằm ở đây: đơn vị cơ bản của ngôn ngữ AI sẽ chuyển từ token thành Node Embedding—một khái niệm có cấu trúc. Trở ngại chính về mặt dữ liệu cho việc huấn luyện một mô hình như vậy sẽ được giải quyết một cách có hệ thống: chính sự phổ biến và dữ liệu được tạo ra từ các ứng dụng của Giai đoạn 1 sẽ trở thành kho dữ liệu vô giá để đào tạo cho các mô hình của Giai đoạn 2.

Bình luận

Bài viết tương tự

- vừa được xem lúc

Thuật toán Minimax (AI trong Game)

Vừa qua mình có làm game dạng như caro và đã làm AI cho nó có dùng thuật toán minimax thấy hay hay nên post lên chia sẻ cho mọi người cùng tham khảo. Bài viết này mình chỉ viết về những cái cơ bản của

0 0 70

- vừa được xem lúc

[Computer Vision] Object Detection (nhận diện vật thể) chỉ với 10 dòng code sử dụng ImageAI

Object Detection. Một trong những lĩnh vực quan trọng của Trí tuệ nhân tạo (Artificial Intelligence) là thị giác máy (Computer Vision).

0 0 114

- vừa được xem lúc

Tổng quan Trí tuệ nhân tạo. Phân biệt AI - Machine Learning - Deep Learning

1. Sự khác nhau giữa AI - Machine Learning - Deep Learning.

0 0 54

- vừa được xem lúc

BERT- bước đột phá mới trong công nghệ xử lý ngôn ngữ tự nhiên của Google

Có thể một số bạn quan tâm đã biết, ngày 2/11 vừa qua, trên Blog của Google AI đã công bố một bài viết mới giới thiệu về BERT, một nghiên cứu mới mang tính đột phá của Google trong lĩnh vực xử lý ngôn

0 0 63

- vừa được xem lúc

Conda virtual environment: thực hành, làm việc với AI nói riêng một cách hiệu quả

Chắc hẳn với những ai đã và đang làm việc trong lĩnh vực AI không còn quá xa lạ với conda - một package manager và environment manager vô cùng hữu ích trong công việc. Đứng trên góc nhìn một người mới

0 0 46

- vừa được xem lúc

How Does Programming Language Help in AI Development?

So, did you hear that Facebook is now Meta? Well, of course, you did. Whom am I kidding? But you had a little bit of idea of that, but you actually don’t know what all this metaverse and Artificial in

0 0 59