+1

AI Agents: Làn sóng Tự động hóa Tiếp theo (P1)

Giới thiệu

Trong bài chia sẻ này, chúng ta sẽ cùng nhau tìm hiểu về AI Agents. Đây không chỉ là phiên bản tiếp theo của chatbots hay các AI assistants đơn giản như Siri hay Alexa. AI agents là các chương trình phần mềm được thiết kế để nhận thức môi trường của chúng, đưa ra quyết định dựa trên suy luận và kiến thức, và thực hiện hành động để đạt được các mục tiêu cụ thể, thường xuyên học hỏi và cải thiện trong quá trình.

Những tiến bộ nhanh chóng trong Large Language Models (LLMs), cùng với các tools tinh vi hơn, cơ sở hạ tầng cloud dễ tiếp cận và các kiến trúc agent đang phát triển, đã đưa AI agents từ các khái niệm lý thuyết thành các tools thực tế đang bắt đầu định hình lại các ngành công nghiệp khác nhau, bao gồm cả web developmentsoftware engineering.

Mục tiêu của bài viết giải mã AI agents cho bạn một cách tổng quan nhất, với góc nhìn là web developers. Chúng ta sẽ bao gồm:

I. Các khái niệm cơ bản: Điều gì định nghĩa một AI agent, chúng đã phát triển như thế nào, và chúng khác biệt như thế nào so với các hệ thống AI khác. (P1)
II. Lịch sử phát triển: Các agent ban đầu đã "tiến hóa" như nào để đến agent hiện đại.(P1)
III. Phân loại: Một cái nhìn ngắn gọn về các loại agents khác nhau.(P1)
IV. Kiến trúc Kỹ thuật: Cách agents hoạt động bên trong, bao gồm các công nghệ chính, memory, planning, và tool use...(P2)
V. Thách thức: Những trở ngại và cân nhắc đạo đức trong việc phát triển và deployment agents.(P2)
VI. Triển vọng Tương lai: Công nghệ này đang hướng tới đâu và tác động tiềm năng của nó. (P2)


Để tránh bài quá dài, mình sẽ tách bài viết làm 2 phần. Bài này sẽ tìm hiểu về 3 mục đầu tiên trước nhé.

I. Các khái niệm cơ bản về AI Agents:

Điều gì thực sự định nghĩa một AI agent và điều gì phân biệt chúng với AI đơn giản hơn như chatbots hoặc voice assistants mà chúng ta tương tác hàng ngày?

Định nghĩa và Các Đặc điểm Cốt lõi

Về cốt lõi, một AI agent là một hệ thống được thiết kế để hành động tự chủ trong một môi trường để đạt được các mục tiêu cụ thể. Hãy nghĩ về nó như một thực thể phần mềm nhận thức môi trường xung quanh, suy luận về những gì nó nhận thức được, quyết định một hướng hành động, và sau đó thực thi hành động đó. Không giống như một script đơn giản tuân theo một đường dẫn cố định, một agent sở hữu một số đặc điểm chính:

  • Autonomy (Tự chủ): Agents có thể hoạt động độc lập mà không cần sự kiểm soát trực tiếp của con người cho mỗi bước. Chúng có thể đưa ra quyết định và khởi xướng hành động dựa trên mục tiêu và nhận thức của chúng.
  • Reactivity (Phản ứng): Chúng có thể nhận thức môi trường của chúng (có thể là một trang web, database, user input, hoặc thậm chí là thế giới vật lý đối với các robotic agents) và phản ứng với những thay đổi một cách kịp thời.
  • Proactiveness (Chủ động): Agents không chỉ phản ứng, chúng có thể chủ động và thể hiện hành vi hướng tới mục tiêu. Chúng tích cực làm việc để đạt được mục tiêu của mình.
  • Goal-Orientation (Định hướng Mục tiêu): Agents được thiết kế với các mục tiêu cụ thể trong đầu, và hành động của chúng được hướng tới việc đạt được những mục tiêu này.
  • Learning/Adaptation (Học hỏi/Thích ứng): Nhiều agents hiện đại tích hợp các cơ chế học hỏi. Chúng có thể cải thiện hiệu suất theo thời gian dựa trên kinh nghiệm, phản hồi, hoặc thông tin mới, thích ứng với các điều kiện thay đổi mà không cần reprogramming liên tục.

Phân biệt: Assistants vs. Agents vs. Multi-Agent Systems

Điều quan trọng là phải phân biệt AI agents với các khái niệm AI quen thuộc khác:

  • AI Assistants (ví dụ: Siri, Alexa): Chúng chủ yếu là (phản ứng). Chúng hiểu các lệnh ngôn ngữ tự nhiên và thực hiện các tác vụ dựa trên yêu cầu cụ thể của người dùng. Chúng xuất sắc trong việc đơn giản hóa việc truy cập thông tin và tự động hóa các tác vụ lặp đi lặp lại, được xác định rõ ràng. Tuy nhiên, chúng thường yêu cầu user input liên tục cho mỗi bước, thiếu memory sâu sắc qua các sessions (mặc dù điều này đang phát triển), và thường không tự thiết kế các workflows phức tạp hoặc sử dụng các external tools một cách tự chủ.
  • Autonomous AI Agents: Chúng (chủ động) và (tự chủ). Sau khi nhận được mục tiêu ban đầu, chúng có thể độc lập đánh giá tình hình, chia nhỏ mục tiêu thành các subtasks, lập kế hoạch một workflow, chọn và sử dụng các tools thích hợp (như web search, APIs, code execution, browser control), suy luận về kết quả, và tự sửa lỗi kế hoạch của mình để đạt được mục tiêu với sự can thiệp tối thiểu của con người. Chúng thường sở hữu memory và khả năng học hỏi.
  • Multi-Agent Systems (MAS): Điều này liên quan đến nhiều agents tương tác trong cùng một môi trường. Các agents này có thể hợp tác để giải quyết một vấn đề quá lớn đối với một agent duy nhất, hoặc chúng có thể cạnh tranh, đàm phán hoặc lập chiến lược chống lại nhau.

Sự khác biệt cốt lõi nằm ở sự tự chủ và chủ động. Assistants hỗ trợ dựa trên lệnh; agents hành động tự chủ hướng tới mục tiêu.

II. Con đường "Tiến hóa" đến Agents Hiện đại

Khái niệm về AI agents không hoàn toàn mới, nguồn gốc của nó bắt nguồn từ những ngày đầu của trí tuệ nhân tạo. Hành trình bắt đầu với những câu hỏi nền tảng như "Máy móc có thể suy nghĩ không?" của Alan Turing vào những năm 1950. Các hệ thống AI ban đầu như Logic Theorist (1956) và General Problem Solver (GPS) (1959) đã chứng minh khả năng giải quyết vấn đề sơ khai bằng cách mô phỏng các bước logic.

Qua nhiều thập kỷ, AI đã phát triển. Những năm 1980 chứng kiến sự trỗi dậy của Expert Systems, những hệ thống nắm bắt kiến thức của con người trong các chương trình dựa trên luật (rule-based), xuất sắc trong các nhiệm vụ cụ thể, có cấu trúc nhưng thiếu khả năng thích ứng. Những năm 1990 mang đến Machine Learning Revolution, chuyển trọng tâm từ việc lập trình các quy tắc một cách tường minh sang việc cho phép máy tính học từ các mẫu dữ liệu.

Bước đột phá thực sự đến vào những năm 2010 với Deep Learning Breakthrough. Những tiến bộ trong neural networks, kết hợp với các bộ dữ liệu khổng lồ Big Data, sức mạnh tính toán mạnh mẽ GPUs, cloud, và các thuật toán tinh vi như những thuật toán đằng sau Large Language Models (LLMs), đã dẫn đến những bước nhảy vọt đáng kể trong việc hiểu ngữ cảnh context, xử lý ngôn ngữ tự nhiên, và tạo ra nội dung phức tạp. Hầu hết AI hiện tại hoạt động với Limited Memory, học hỏi từ dữ liệu lịch sử.

AI agents hiện đại đứng trên vai những tiến bộ này. Chúng tận dụng khả năng nhận dạng mẫu của machine learning, khả năng ngôn ngữ của LLMs, và khả năng thích ứng được cung cấp bởi các kỹ thuật như reinforcement learning để tạo ra các hệ thống tự chủ và có năng lực hơn nhiều so với các phiên bản tiền nhiệm. Chúng đại diện cho một sự chuyển dịch từ các máy phản ứng (reactive machines) hoặc các hệ thống có bộ nhớ hạn chế sang các thực thể chủ động, hướng tới mục tiêu hơn.

III. Các Loại AI Agents

Không phải tất cả AI agents cũng giống nhau. Chúng thường được phân loại theo mức độ thông minh, cách chúng đưa ra quyết định và cách chúng tương tác với môi trường. Hiểu các loại này giúp đánh giá phạm vi nhiệm vụ mà agents có thể xử lý, từ các phản ứng đơn giản đến học hỏi và tối ưu hóa phức tạp.

  1. Simple Reflex Agents: Đây là loại cơ bản nhất. Chúng hoạt động hoàn toàn dựa trên cơ sở "điều kiện-hành động" (condition-action) – nếu một điều kiện cụ thể được đáp ứng trong môi trường hiện tại, chúng sẽ thực thi một hành động được xác định trước. Chúng không xem xét các sự kiện trong quá khứ hoặc hậu quả trong tương lai. Mặc dù hiệu quả cho các tác vụ đơn giản nhưng chúng gặp khó khăn trong các tình huống động vì thiếu memory.
    VD: một bộ điều nhiệt đơn giản: nếu nhiệt độ giảm xuống dưới 20, thì bật máy sưởi.

  2. Model-Based Reflex Agents: Các agents này cải tiến simple reflex agents bằng cách duy trì một model nội bộ. Cho phép chúng theo dõi các khía cạnh của môi trường không thể nhận thức ngay lập tức.
    VD: một testing agent thông minh có thể nhớ những phần nào của form đã được validate thành công (trong model nội bộ của nó) trước khi quyết định hành động tiếp theo.

  3. Goal-Based Agents: Các agents này hành động với một mục tiêu cụ thể trong đầu. Chúng xem xét mục tiêu của mình khi chọn hành động, thường liên quan đến một mức độ lập kế hoạch hoặc tìm kiếm để xác định chuỗi hành động có khả năng dẫn đến kết quả mong muốn nhất.
    VD: Một deployment agent nhằm mục đích đẩy code lên production (mục tiêu) sẽ lập kế hoạch các bước cần thiết (build, test, deploy) thay vì chỉ phản ứng với kết quả lệnh riêng lẻ.

  4. Utility-Based Agents: Đôi khi, chỉ đạt được mục tiêu là không đủ; cách bạn đạt được nó mới quan trọng. Utility-based agents xử lý điều này bằng cách kết hợp một "hàm hữu dụng" (utility function) đo lường mức độ mong muốn hoặc ưu tiên cho các trạng thái khác nhau. Khi đối mặt với các lựa chọn (ví dụ: nhiều cách để đạt được mục tiêu, hoặc các mục tiêu xung đột), chúng chọn hành động tối đa hóa utility dự kiến của chúng.
    VD: Một agent tối ưu hóa hiệu suất trang web: nó có thể cần cân bằng thời gian tải (load time - utility 1) với chi phí server (utility 2), chọn các hành động cung cấp sự đánh đổi tốt nhất theo utility function của nó.

  5. Learning Agents: Đây là nơi agents trở nên thực sự "tự phát triển". Learning agents có thể cải thiện hiệu suất theo thời gian thông qua kinh nghiệm, phản hồi của user. Chúng thường có các thành phần riêng biệt: một performance element đưa ra quyết định dựa trên kiến thức hiện tại, một learning element cập nhật kiến thức này dựa trên phản hồi, một critic đánh giá hành động, và đôi khi là một problem generator đề xuất các hành động khám phá. Điều này cho phép chúng hoạt động hiệu quả trong các môi trường phức tạp, thay đổi liên tục mà không cần được lập trình tường minh cho mọi khả năng.
    VD thực tế: AlphaGo của Google đã học cách chiến thắng cờ vây thông qua việc tự chơi rất nhiều lần với một phiên bản khác của chính nó.

Thông thường, các hệ thống phức tạp, được gọi là Multi-Agent Systems, tích hợp một số loại agents. Một goal-based agent cấp cao có thể điều phối các reflex hoặc model-based agents cấp thấp hơn để xử lý các subtasks cụ thể, tạo ra một cấu trúc phân cấp có khả năng giải quyết các vấn đề rất phức tạp.

Tổng kết

Trong Phần 1 của bài viết, chúng ta đã cùng nhau tìm hiểu những khái niệm cơ bản nhất về AI Agents. Từ việc định nghĩa rõ ràng AI Agent là gì, phân biệt chúng với các AI assistants quen thuộc, đến việc nhìn lại hành trình phát triển ấn tượng của chúng qua các thập kỷ. Cuối cùng, chúng ta đã khám phá các loại AI Agent phổ biến hiểu rõ hơn về cách chúng nhận thức, ra quyết định và hành động.

Chúng ta đã thấy AI Agents không chỉ là một khái niệm mới mẻ mà là kết quả của một quá trình tiến hóa lâu dài, ngày càng trở nên tự chủ, chủ động và có khả năng học hỏi, thích ứng cao hơn. Những kiến thức này là tiền đề quan trọng để chúng ta bước vào Phần 2, nơi chúng ta sẽ đi sâu hơn vào khía cạnh kỹ thuật, những thách thức và tiềm năng to lớn của AI Agents trong tương lai, đặc biệt là với vai trò của các web developers.

Hy vọng Phần 1 đã cung cấp cho bạn cái nhìn tổng quan và dễ hiểu. Hẹn gặp lại các bạn ở Phần 2! Cảm ơn bạn đã đọc.

Tài liệu tham khảo

(Nguồn: IBM - https://www.ibm.com/think/topics/ai-agents)
(Nguồn: Mindset AI - https://www.mindset.ai/blogs/how-have-ai-agents-evolved-over-time)
(Nguồn: IBM - https://www.ibm.com/think/topics/ai-agent-types)


All Rights Reserved

Viblo
Let's register a Viblo Account to get more interesting posts.