Chuyển đến nội dung chính

Giới thiệu về Tác nhân AI: Bắt đầu với Auto-GPT, AgentGPT và BabyAGI

Khám phá cách các tác nhân AI Auto-GPT, AgentGPT và BabyAGI đang cách mạng hóa hệ thống AI tự trị. Tìm hiểu ứng dụng, hạn chế và hơn thế nữa.
· 12 phút đọc

Khám phá cùng AI

Các tác nhân AI như Auto-GPT, AgentGPT và BabyAGI là bước tiến tiếp theo trong thế giới AI đang phát triển nhanh chóng. Trong khi ChatGPT đã đưa AI sinh sinh vào dòng chính vào cuối năm 2022, nó vẫn cần con người nhập prompt. Ý tưởng đằng sau tác nhân AI là để AI tự hoạt động hướng tới một mục tiêu với ít hoặc không cần đầu vào từ con người.

Nhiều nhà phát triển đã nhận ra tiềm năng của công nghệ mới này. Auto-GPT là dự án nguồn mở phát triển nhanh nhất trong lịch sử nếu đo bằng số lượng sao trên GitHub mà nó nhận được (tương đương với việc "yêu thích" một dự án phần mềm). Trong sáu tuần kể từ khi bắt đầu phát triển, nó đã có 107.000 sao. Để so sánh, pandas, gói Python phổ biến nhất cho khoa học dữ liệu, có 38 nghìn sao.

Hướng dẫn này giải thích tác nhân AI là gì, chúng liên quan thế nào đến các mô hình ngôn ngữ lớn như GPT, và chúng có thể được sử dụng ra sao. Trước khi đọc hướng dẫn này, hữu ích nếu bạn biết mô hình ngôn ngữ lớn là gì. Hướng dẫn cho người mới bắt đầu về GPT-3 là phần mở đầu tốt. Tôi cũng khuyến nghị khóa học Giới thiệu về Tác nhân AI mới của chúng tôi để tìm hiểu mọi thứ về Tác nhân AI và cách dùng thực tế.

Tác nhân AI liên quan thế nào đến ChatGPT?

Giải thích về tác nhân AI cần một chút thuật ngữ. Xem các định nghĩa dưới đây:

  • Mô hình ngôn ngữ lớn (LLM) là một loại mô hình học máy dùng để tạo văn bản.
  • GPT của OpenAI hiện là LLM phổ biến nhất. Phiên bản mới nhất là GPT-4, dù phiên bản trước đó, GPT-3.5-turbo, vẫn đang được sử dụng.
  • Trò chuyện (chatting) là quy trình bạn gửi một prompt văn bản cho AI và nhận về phản hồi dạng văn bản.
  • Embedding là quy trình bạn gửi một prompt văn bản cho AI và nhận về phản hồi là biểu diễn số của văn bản. Biểu diễn văn bản thành số hữu ích cho các tác vụ tìm kiếm, gợi ý và phân loại.
  • ChatGPT của OpenAI là một ứng dụng web cung cấp giao diện người dùng thuận tiện để trò chuyện với GPT.

Cũng như ChatGPT là ứng dụng web được vận hành bởi LLM GPT, ba tác nhân AI được đề cập trong hướng dẫn này cũng là các ứng dụng chạy trên nền GPT.

Vấn đề chính mà các tác nhân AI này cố gắng giải quyết là giảm lượng tương tác của con người cần thiết để AI hoàn thành một nhiệm vụ.

AgentGPT và BabyAGI về bản chất là "GPT chạy vòng lặp", nơi GPT được gọi lặp đi lặp lại để chia yêu cầu của người dùng thành các vấn đề có thể giải quyết, và đầu ra từ mỗi bước được tinh chỉnh cho đến khi mỗi tiểu nhiệm vụ được hoàn thành thành công.

Auto-GPT tiến xa hơn bằng cách cung cấp cho tác nhân AI quyền truy cập internet và khả năng chạy mã, cho phép nó giải quyết nhiều loại vấn đề hơn.

Những đổi mới sau đây đáng để thảo luận.

Bộ nhớ dài hạn

LLM tạo ra từ ngữ dựa trên những từ trước đó trong cuộc hội thoại (cả prompt của người dùng và phản hồi của AI). Tuy nhiên, LLM có trí nhớ khá ngắn: nhiều mô hình chỉ nhớ vài trăm từ, và GPT-4 tiên tiến nhớ khoảng 6.000 từ theo mặc định. Khi độ dài cuộc hội thoại vượt quá bộ nhớ của LLM, các phản hồi có thể trở nên thiếu nhất quán với nhau.

Với hầu hết trường hợp sử dụng, điều này không phải vấn đề. Tuy nhiên, trong một số tình huống, việc ghi nhớ toàn bộ cuộc hội thoại—và thậm chí các cuộc hội thoại trước đó—lại rất quan trọng. Chatbot, và người anh em tiên tiến hơn là tác nhân AI, là ví dụ cho điều này.

Trao cho tác nhân AI một bộ nhớ được thực hiện bằng cách dùng quy trình embedding để lưu văn bản cuộc hội thoại dưới dạng số. Mỗi prompt của người dùng hoặc phản hồi của AI được lưu dưới dạng một mảng biểu diễn ý nghĩa của văn bản.

Các mảng số này được lưu trong cơ sở dữ liệu vector. Hiện tại, Auto-GPT và BabyAGI dùng Pinecone (đơn vị dẫn đầu trong lĩnh vực này), và nhóm AgentGPT đang phát triển hỗ trợ cho tính năng này.

Khả năng duyệt web

Nếu bạn hỏi ChatGPT một câu về các sự kiện gần đây, nó sẽ nói rằng không thể trả lời vì chỉ được huấn luyện trên dữ liệu đến tháng 9/2021. Một lần nữa, hạn chế này không phải vấn đề với nhiều ứng dụng, nhưng sẽ gây rắc rối nếu nhiệm vụ của bạn liên quan đến thông tin hoặc sự kiện hiện tại.

Một giải pháp là cung cấp cho AI khả năng duyệt web để truy cập internet và tự tìm câu trả lời.

Auto-GPT có thể tự nghiên cứu thông qua Google Search API.

Tính năng này hơi gây tranh cãi: các nhà phát triển AgentGPT và BabyAGI hiện chưa thêm tính năng này, họ thích giới hạn kiến thức của AI trong phạm vi những gì GPT biết.

Chạy mã

Mặc dù các LLM như GPT có thể tạo mã từ đầu, và gỡ lỗi hoặc cải thiện mã hiện có, chúng không thể thực sự chạy mã.

Auto-GPT có thể thực thi mã shell và Python. Nghĩa là nó vừa có thể viết mã vừa có thể chạy mã.

Một khả năng đặc biệt mạnh mẽ là nó có thể viết mã để tương tác với phần mềm khác, rồi chạy mã đó. Điều này có nghĩa là nó có thể hoàn thành nhiệm vụ bằng cách tận dụng phần mềm khác.

Các trường hợp sử dụng của tác nhân AI là gì?

Vẫn còn rất sớm để xác định cách chúng ta có thể sử dụng các tác nhân AI. Nhiều ví dụ là biến thể của trợ lý cá nhân tự động, giống như thế hệ kế tiếp của IBM Watson Assistant.

Udit Goenka, CEO của FirstSales.io, đã đăng trên Twitter rằng anh đã dùng Auto-GPT để xây dựng một công cụ tìm kiếm khách hàng tiềm năng. Ảnh chụp màn hình trong tweet cho thấy tác nhân AI tạo kế hoạch tìm kiếm các công ty đã gọi vốn seed trong năm qua (tức những đối tượng có thể đang có sẵn tiền) và mô tả chi tiết để tạo danh sách (trích xuất tên công ty và URL).

Udit Goenka trên Twitter

Yew Jin Lim, kỹ sư phần mềm tại Google, đăng tải rằng anh đã dùng Auto-GPT để tạo một trợ lý email (kho GitHub). Video trong tweet cho thấy Yew Jin gửi email cho tác nhân AI với chi tiết nhiệm vụ cần hoàn thành và tác nhân thực hiện các việc như thêm sự kiện vào lịch của anh ấy.

Yew Jin Lim trên Twitter

Những nguy cơ và hạn chế của tác nhân AI là gì?

Lời khuyên chung khi làm việc với AI là hầu hết các nhiệm vụ đều tốt hơn khi có con người trong vòng lặp để kiểm tra tính hợp lý những gì AI đang làm. Hãy nhớ rằng AI được xem là trợ lý, không phải chuyên gia (và là trợ lý đôi khi gặp ảo giác). Có một số điểm cần thận trọng.

Chạy AI liên tục có thể tốn kém

Dù một lần gọi GPT qua OpenAI API khá rẻ (thường chưa đến 1 xu Mỹ với GPT-3.5, tùy lượng đầu ra; GPT-4 đắt hơn), sử dụng bất kỳ tác nhân AI nào trong ba tác nhân được bàn ở đây để thực hiện một nhiệm vụ phức tạp có thể liên quan đến hàng trăm hoặc hàng nghìn lần gọi API.

Ý tưởng hay là thêm các điểm tạm dừng để con người can thiệp và cấp phép cho AI tiếp tục chạy.

Trao quyền truy cập phần mềm cho Auto-GPT có thể nguy hiểm

Dù có thể cung cấp cho Auto-GPT quyền truy cập bất kỳ API nào, nếu bạn cho phép nó tự động mua cổ phiếu thay bạn, hãy sẵn sàng mất hết tiền trong tài khoản. Tương tự, việc cấp quyền ghi cho cơ sở dữ liệu doanh nghiệp là ý tưởng tệ.

Vượt ra ngoài tổn thất cá nhân hay doanh nghiệp, một số nhà nghiên cứu AI lập luận rằng AI tiên tiến mang lại những rủi ro lớn hơn, thậm chí hiện sinh. Dù những nỗ lực ban đầu nhằm dùng Auto-GPT để hủy diệt loài người đã thất bại, vẫn đáng lưu ý đến cảnh báo từ Eliezer Yudkowsky, Nghiên cứu viên cao cấp tại Machine Intelligence Research Institute.

Để hình dung một AI siêu phàm thù địch, đừng tưởng tượng một thực thể thông thái vô cảm sống trong internet và gửi email ác ý. Hãy hình dung cả một nền văn minh ngoài hành tinh, tư duy nhanh gấp hàng triệu lần con người, ban đầu bị giam trong máy tính—trong một thế giới những sinh vật, từ góc nhìn của nó, rất ngu ngốc và chậm chạp. Một AI đủ thông minh sẽ không ở trong máy tính quá lâu. Trong thế giới ngày nay, bạn có thể email chuỗi DNA tới các phòng thí nghiệm để họ tạo protein theo yêu cầu, cho phép một AI ban đầu bị giới hạn trong internet có thể tạo ra các dạng sống nhân tạo hoặc tiến thẳng tới sản xuất phân tử hậu sinh học.

Nếu ai đó xây dựng một AI quá mạnh, trong điều kiện hiện tại, tôi kỳ vọng rằng mọi thành viên của loài người và toàn bộ sự sống sinh học trên Trái Đất sẽ chết ngay sau đó.

Dù rõ ràng đây là kịch bản xấu nhất, vẫn đáng cân nhắc những nguy hiểm mà một AI không bị ràng buộc có thể gây ra.

Làm thế nào để truy cập một tác nhân AI?

Để tự thử các tác nhân AI này, có một số trang web cho phép bạn dùng thử công nghệ. Nếu muốn sử dụng nghiêm túc hơn, bạn sẽ cần cài đặt chúng trên nền tảng phát triển mà bạn chọn.

Bất kể bạn dùng tác nhân nào và quyết định dùng ra sao, bạn sẽ cần khóa API của OpenAI. Hướng dẫn cho việc này có trong bài Sử dụng GPT-3.5 và GPT-4 qua OpenAI API trong Python.

Nếu muốn cài đặt bất kỳ tác nhân AI nào trong số này, lưu ý rằng chúng là các ứng dụng dòng lệnh, và ở trạng thái hiện tại, tất cả đều cần chút công sức để thiết lập.

Giao diện web

Nền tảng AI Hugging Face cung cấp phiên bản Auto-GPT được lưu trữ. Bạn chỉ cần cung cấp khóa API OpenAI, sau đó gán vai trò và một số mục tiêu cho AI.

God Mode (đặt tên theo chế độ cheat trong trò chơi điện tử) tương tự cho phép bạn nhập khóa API OpenAI và đơn giản là giao cho Auto-GPT một nhiệm vụ để hoàn thành.

Với người dùng Replit, bạn cũng có thể fork repl này và cung cấp khóa API OpenAI của bạn.

Nhóm AgentGPT cung cấp phiên bản demo của tác nhân AI của họ, tuy nhiên là bản miễn phí nên nó chỉ chạy khoảng hai phút trước khi dừng.

Hiện chưa có phiên bản BabyAGI được lưu trữ mà tôi có thể tìm thấy.

Cài đặt Auto-GPT

Auto-GPT là ứng dụng dòng lệnh và ở trạng thái hiện tại, cần một chút công sức để thiết lập. Bạn có thể tìm thấy tài liệu thiết lập chi tiết để bắt đầu.

Hướng dẫn này giả định bạn có thể truy cập một shell (như bash hoặc zsh), và đã cài đặt git cùng Python.

Nhân bản kho Auto-GPT

Trong terminal, nhân bản kho Auto-GPT.

git clone https://github.com/Significant-Gravitas/Auto-GPT.git

Đi tới thư mục Auto-GPT vừa được tạo và checkout nhánh ổn định

cd Auto-GPT
git checkout stable

Lấy khóa API

Auto-GPT yêu cầu bạn có khóa API OpenAI (để liên hệ với GPT). Tài khoản miễn phí chỉ cho phép thực hiện 3 lệnh gọi API mỗi phút, không đủ để dùng với Auto-GPT, vì vậy bạn sẽ cần tài khoản trả phí. Hướng dẫn cho việc này có trong bài Sử dụng GPT-3.5 và GPT-4 qua OpenAI API trong Python của chúng tôi.

Bạn có thể tùy chọn sử dụng Pinecone API (để lưu trữ), ElevenLabs API (cho giao diện giọng nói), Google API (để tìm kiếm) và Twitter API (để quảng bá những gì bạn vừa xây dựng).

Cấu hình Auto-GPT

Auto-GPT lưu tất cả khóa API trong tệp cấu hình tên là .env.

Lưu ý rằng lưu khóa API như vậy trong tệp văn bản thuần là thực hành bảo mật kém, nên bạn chỉ nên chạy Auto-GPT trong môi trường an toàn, như trên máy cục bộ, hoặc bạn nên vô hiệu hóa khóa API sau khi sử dụng.

Sao chép tệp .env.template và đặt tên là .env.

Trong trình soạn thảo văn bản, tìm dòng bắt đầu bằng OPENAI_API_KEY= và thêm khóa API OpenAI của bạn vào đó, không có khoảng trắng hay dấu ngoặc kép.

Thêm các khóa API bổ sung theo cùng định dạng key=value.

Chạy Auto-GPT

Auto-GPT được chạy thông qua script shell run.sh (run.bat trên Windows).

Để nhận trợ giúp về cách dùng script này, hãy dùng đối số --help.

sh run.sh --help

Lưu ý rằng script thực hiện khá nhiều kiểm tra phiên bản các gói Python trước khi hiển thị chi tiết cách sử dụng.

Để khởi động một trợ lý Auto-GPT, chỉ cần chạy lại lệnh đó mà không kèm đối số trợ giúp.

sh run.sh

Sau khi chạy qua các bước kiểm tra gói, Auto-GPT sẽ hỏi bạn ba điều

  1. Đặt tên cho trợ lý AI của bạn.
  2. Mô tả vai trò của AI.
  3. Cung cấp tối đa năm mục tiêu để trợ lý AI thực hiện.

Cài đặt AgentGPT

AgentGPT cung cấp mô tả ngắn gọn cách bắt đầu trong README của kho GitHub.

Nhân bản kho AgentGPT

Trong terminal, nhân bản kho AgentGPT.

git clone https://github.com/reworkd/AgentGPT.git

Đi tới thư mục AgentGPT vừa được tạo.

cd AgentGPT

Chạy Script Thiết lập

Có một script bash để chạy nhằm thiết lập tác nhân AI.

bash setup.sh --local

Điều đầu tiên bạn sẽ được yêu cầu là nhập khóa API OpenAI của bạn rồi nhấn ENTER.

Bạn có thể được yêu cầu cấp quyền truy cập tệp Desktop và chấp nhận kết nối mạng đến. Hãy chấp nhận.

Sau vài giây, bạn sẽ nhận được thông báo như sau:

ready - started server on 0.0.0.0:3000, url: http://localhost:3000

Sao chép URL và dán vào thanh địa chỉ của trình duyệt web. AgentGPT sẽ mở với một thông điệp chào mừng.

Màn hình chào mừng AgentGPT

Triển khai tác nhân của bạn

Đặt tên và mục tiêu cho tác nhân của bạn, sau đó nhấp "Deploy Agent". 

Ảnh chụp triển khai AgentGPT

Cài đặt BabyAGI

BabyAGI có một chút (rất tối thiểu) tài liệu trong README của kho GitHub.

Nhân bản kho BabyAGI

Trong terminal, nhân bản kho BabyAGI.

git clone https://github.com/yoheinakajima/babyagi.git

Đi tới thư mục BabyAGI vừa được tạo.

cd BabyAGI

Cài đặt các gói Python bắt buộc

Dùng pip để cài các gói cần thiết để chạy BabyAGI.

pip install -r requirements.txt

Cấu hình BabyAGI

Tạo tệp cấu hình tên là .env.

cp .env.example .env

Chỉnh sửa tệp cấu hình. Bạn có thể dùng bất kỳ trình soạn thảo văn bản trong terminal nào; ở đây, chúng tôi dùng vim.

vim .env

Nhấn i để chèn văn bản.

  • Ở dòng bắt đầu bằng OPENAI_API_KEY= hãy thêm khóa API OpenAI của bạn.
  • Ở dòng bắt đầu bằng INSTANCE_NAME= tùy chọn đặt tên cho tác nhân AI của bạn.
  • Ở dòng bắt đầu bằng OBJECTIVE= đặt một mục tiêu cho tác nhân AI của bạn.

Chạy BabyAGI

Chạy script BabyAGI.

python3 babyagi.py

Ví dụ Auto-GPT

Như một thử nghiệm, tôi đặt tên trợ lý AI của mình là "Jeff", mô tả là "Chuyên gia khoa học dữ liệu viết hướng dẫn về AI", và đặt mục tiêu "Viết một hướng dẫn về Auto-GPT."

Ví dụ lệnh và phản hồi AutoGPT

Auto-GPT sẽ thường xuyên yêu cầu bạn cho phép thực hiện tác vụ tiếp theo, dù là tìm kiếm trên internet để có thêm thông tin hay ghi một tệp. Nhấn 'y' để cho phép tiếp tục, hoặc cung cấp phản hồi bằng văn bản.

Sau vài phút Auto-GPT cố gắng viết một hướng dẫn, nó đã tạo ra tệp hướng dẫn này.

Tệp hướng dẫn đầu ra của Auto-GPT

Nó không phải là một hướng dẫn hay, thậm chí không chính xác về mặt thực tế, nên như thường lệ, khi dùng AI, bạn cần nêu yêu cầu thật chính xác trong prompt và chú ý chặt chẽ đến những gì AI đang làm.

Nâng tầm

Các tác nhân AI như Auto-GPT, AgentGPT và BabyAGI đại diện cho bước nhảy vọt đáng kể trong lĩnh vực AI, đưa chúng ta tiến gần hơn tới tầm nhìn về các hệ thống AI thực sự tự chủ. Khi các tác nhân này làm việc hướng tới mục tiêu với can thiệp tối thiểu từ con người, chúng mở ra một thế giới ứng dụng tiềm năng, từ trợ lý cá nhân đến công cụ giải quyết vấn đề.

Để luôn dẫn đầu trong bối cảnh thay đổi nhanh chóng này, chúng tôi khuyến khích bạn mở rộng kiến thức và kỹ năng về khoa học dữ liệu, học máy và AI. Xem các tài nguyên sau để tìm hiểu thêm:

Richie Cotton

Tác giả

Richie Cotton

Richie giúp các cá nhân và tổ chức nâng cao khả năng sử dụng dữ liệu và AI. Anh đã làm khoa học dữ liệu từ trước khi lĩnh vực này được gọi là khoa học dữ liệu, và đã viết hai cuốn sách cùng nhiều khóa học trên DataCamp về chủ đề này. Anh là người dẫn chương trình podcast DataFramed và phụ trách chương trình webinar của DataCamp.

Trò chuyện với AI Richie về mọi tập của DataFramed - chào đón tất cả những nhà vô địch dữ liệu!

Câu hỏi thường gặp

Sự khác biệt giữa ChatGPT và các tác nhân AI như Auto-GPT là gì?

ChatGPT được thiết kế cho tương tác có con người trong vòng lặp, nơi một người nhập prompt và nhận phản hồi. Ngược lại, các tác nhân AI như Auto-GPT được thiết kế để làm việc tự động hướng tới một mục tiêu xác định, thường dùng vòng lặp, bộ nhớ và công cụ bên ngoài như trình duyệt web hoặc thực thi mã để hoàn thành nhiệm vụ với rất ít hoặc không cần thêm đầu vào của con người.

Tôi có cần biết lập trình để sử dụng tác nhân AI không?

Thường cần hiểu biết cơ bản về công cụ dòng lệnh, Python và khóa API để cài đặt và chạy các tác nhân AI như Auto-GPT hoặc BabyAGI. Một số nền tảng (như Hugging Face hoặc God Mode) cung cấp giao diện thân thiện hơn, nhưng để tận dụng đầy đủ sức mạnh của các công cụ này, thường cần cấu hình và thiết lập thủ công.

Các tác nhân AI có thể duyệt web và truy cập dữ liệu thời gian thực không?

Có, một số tác nhân AI như Auto-GPT có thể truy cập internet thông qua các API như Google Search, cho phép chúng lấy dữ liệu theo thời gian thực. Tuy nhiên, đôi khi tính năng này bị lược bỏ (ví dụ trong AgentGPT và BabyAGI) do lo ngại về an toàn, chi phí hoặc độ tin cậy.

Chủ đề

Liên quan