Email / SUMMARY_FULL.md
lenzcom's picture
Upload folder using huggingface_hub
e706de2 verified

Tổng hợp kiến thức: AI Agents from Scratch

Tài liệu này tổng hợp toàn bộ các khái niệm cốt lõi và mẫu thiết kế đã học được từ repository "AI Agents from Scratch".

PHẦN 1: FOUNDATION (NỀN TẢNG)

1. Runnable (Đơn vị thực thi)

Runnable là "viên gạch LEGO" của framework, chuẩn hóa giao diện cho mọi thành phần.

  • Hợp đồng (Contract): Triển khai phương thức _call(input, config).
  • 3 Chế độ: invoke (đơn), stream (dòng), batch (song song).
  • Composition: Dễ dàng nối chuỗi bằng .pipe().

2. Messages (Cấu trúc hội thoại)

Sử dụng các lớp đối tượng thay vì chuỗi trần.

  • SystemMessage: Chỉ thị, nhân cách.
  • HumanMessage: Input người dùng.
  • AIMessage: Output mô hình.
  • ToolMessage: Kết quả gọi hàm.

3. LLM Wrapper

Đóng gói model thô (node-llama-cpp) thành một Runnable để đồng bộ hóa giao diện và dễ dàng thay thế.

4. Context & Configuration

Truyền RunnableConfig xuyên suốt pipeline.

  • callbacks: Logging, metrics, side-effects.
  • metadata: Context người dùng/phiên.
  • configurable: Runtime overrides (ví dụ: thay đổi temperature động).

PHẦN 2: COMPOSITION (KẾT HỢP)

1. Prompts

Quản lý đầu vào LLM bằng Templates.

  • PromptTemplate: Tách logic khỏi văn bản, hỗ trợ biến số.
  • ChatPromptTemplate: Cấu trúc hóa hội thoại đa lượt (Multi-turn conversation).

2. Output Parsers

Chuyển đổi văn bản thô từ LLM thành dữ liệu có cấu trúc.

  • StructuredOutputParser: Định nghĩa Schema (JSON), tự động sinh hướng dẫn định dạng (format_instructions) và validate kết quả. Giải quyết vấn đề output không nhất quán của LLM.

PHẦN 3: PROJECT PATTERNS (MẪU THIẾT KẾ THỰC TẾ)

Từ dự án Smart Email Classifier, rút ra mẫu kiến trúc tham khảo cho các tác vụ phân loại/xử lý văn bản:

  1. Separation of Concerns (Phân tách mối quan tâm):
    • ParserRunnable: Chỉ lo việc làm sạch và chuẩn hóa dữ liệu đầu vào.
    • ClassifierRunnable: Chỉ lo việc gọi LLM và xử lý logic phân loại.
  2. Pipeline: Kết nối Parser -> Classifier.
  3. Side Effects via Callbacks: Sử dụng Callback để ghi log lịch sử và tính toán thống kê (Statistics), giữ cho code chính sạch sẽ.
  4. Strict System Prompts: Sử dụng System Prompt chi tiết để định nghĩa danh mục và ép kiểu JSON output.

Tài liệu được tạo tự động bởi Antigravity IDE.