sơ khai AutoGen: Cung cấp năng lượng cho các ứng dụng mô hình ngôn ngữ lớn thế hệ tiếp theo - Unite.AI
Kết nối với chúng tôi

Trí tuệ nhân tạo

AutoGen: Cung cấp năng lượng cho các ứng dụng mô hình ngôn ngữ lớn thế hệ tiếp theo

mm

Được phát hành

 on

Khung AutoGen

Mô hình ngôn ngữ lớn (LLM) hiện là một trong những chủ đề được thảo luận nhiều nhất trong lĩnh vực AI chính thống. Các nhà phát triển trên toàn thế giới đang khám phá các ứng dụng tiềm năng của LLM. Những mô hình này là thuật toán AI sử dụng các kỹ thuật học sâu và lượng dữ liệu đào tạo khổng lồ để hiểu, tóm tắt, dự đoán và tạo ra nhiều loại nội dung, bao gồm văn bản, âm thanh, hình ảnh, video, v.v.

Các mô hình ngôn ngữ lớn là các thuật toán AI phức tạp. Phát triển một mô hình như vậy là một nhiệm vụ toàn diện và việc xây dựng một ứng dụng khai thác các khả năng của LLM cũng là một thách thức không kém. Nó đòi hỏi chuyên môn, nỗ lực và nguồn lực đáng kể để thiết kế, triển khai và cuối cùng là tối ưu hóa quy trình làm việc có khả năng khai thác toàn bộ tiềm năng của mô hình ngôn ngữ lớn để mang lại kết quả tốt nhất. Với lượng thời gian và nguồn lực cần thiết để thiết lập quy trình công việc cho các ứng dụng sử dụng sức mạnh của LLM, việc tự động hóa các quy trình này có giá trị to lớn. Điều này đặc biệt đúng vì quy trình công việc được dự đoán sẽ còn trở nên phức tạp hơn trong tương lai gần, với việc các nhà phát triển chế tạo ngày càng tinh vi hơn. Các ứng dụng dựa trên LLM. Ngoài ra, không gian thiết kế cần thiết cho các quy trình làm việc này vừa phức tạp vừa mở rộng, càng nâng cao hơn nữa những thách thức trong việc tạo ra một quy trình làm việc tối ưu, mạnh mẽ, đáp ứng mong đợi về hiệu suất.

AutoGen là một khung được phát triển bởi nhóm tại Microsoft nhằm mục đích đơn giản hóa việc điều phối và tối ưu hóa quy trình công việc LLM bằng cách đưa tính năng tự động hóa vào quy trình công việc. Khung AutoGen cung cấp các tác nhân có thể chuyển đổi và tùy chỉnh nhằm tận dụng sức mạnh của LLM nâng cao như GPT-3 và GPT-4, đồng thời giải quyết các hạn chế hiện tại của chúng bằng cách tích hợp LLM với các công cụ và thông tin đầu vào của con người bằng cách sử dụng các cuộc trò chuyện tự động để bắt đầu cuộc hội thoại giữa nhiều đại lý. 

Khi sử dụng khung AutoGen, tất cả chỉ cần hai bước khi phát triển một hệ thống hội thoại đa tác nhân phức tạp. 

Bước 1: Xác định một tập hợp các tác nhân, mỗi tác nhân có vai trò và khả năng riêng. 

Bước 2: Xác định hành vi tương tác giữa các tác nhân, tức là một tác nhân nên biết phải trả lời gì khi nhận được tin nhắn từ một tác nhân khác. 

Cả hai bước trên đều có tính mô-đun và trực quan giúp các tác nhân này có thể kết hợp và tái sử dụng được. Hình dưới đây thể hiện quy trình làm việc mẫu nhằm giải quyết việc trả lời câu hỏi dựa trên mã trong quá trình tối ưu hóa chuỗi cung ứng. Có thể thấy, trước tiên người viết viết mã và giải thích, Safeguard đảm bảo tính riêng tư và an toàn của mã, sau đó mã sẽ được Người chỉ huy thực thi sau khi nhận được sự cho phép cần thiết. Nếu hệ thống gặp bất kỳ sự cố nào trong thời gian chạy, quy trình sẽ được lặp lại cho đến khi sự cố được giải quyết hoàn toàn. Việc triển khai khung dưới đây giúp giảm lượng tương tác thủ công từ 3x xuống 10x khi triển khai trong các ứng dụng như tối ưu hóa chuỗi cung ứng. Hơn nữa, việc sử dụng AutoGen cũng làm giảm nỗ lực mã hóa tới bốn lần. 

AutoGen có thể là một nhân tố thay đổi cuộc chơi vì nó nhằm mục đích chuyển đổi quá trình phát triển các ứng dụng phức tạp tận dụng sức mạnh của LLM. Việc sử dụng AutoGen không chỉ có thể làm giảm số lượng tương tác thủ công cần thiết để đạt được kết quả mong muốn mà còn có thể giảm số lượng nỗ lực mã hóa cần thiết để tạo ra các ứng dụng phức tạp như vậy. Việc sử dụng AutoGen để tạo Các ứng dụng dựa trên LLM không chỉ có thể tăng tốc quá trình một cách đáng kể mà còn giúp giảm lượng thời gian, công sức và nguồn lực cần thiết để phát triển các ứng dụng phức tạp này. 

Trong bài viết này, chúng ta sẽ tìm hiểu sâu hơn về khung AutoGen và khám phá các thành phần và kiến ​​trúc thiết yếu của khung AutoGen, cùng với các ứng dụng tiềm năng của nó. Vì vậy hãy bắt đầu. 

Giới thiệu về AutoGen: Cung cấp năng lượng cho các ứng dụng mô hình ngôn ngữ lớn thế hệ tiếp theo

AutoGen là một khung mã nguồn mở được phát triển bởi nhóm Microsoft nhằm trang bị cho các nhà phát triển khả năng tạo ra các ứng dụng tận dụng sức mạnh của LLM bằng cách sử dụng nhiều tác nhân có thể trò chuyện với nhau để thực hiện thành công các tác vụ mong muốn. Các tác nhân trong AutoGen có thể trò chuyện, tùy chỉnh và chúng có thể hoạt động ở các chế độ khác nhau sử dụng sự kết hợp giữa các công cụ, thông tin đầu vào của con người và LLM. Các nhà phát triển cũng có thể sử dụng khung AutoGen để xác định hành vi tương tác của các tác nhân và nhà phát triển có thể sử dụng cả mã máy tính và ngôn ngữ tự nhiên để lập trình các mẫu hội thoại linh hoạt được triển khai trong các ứng dụng khác nhau. Là một khung nguồn mở, AutoGen có thể được coi là một khung chung mà các nhà phát triển có thể sử dụng để xây dựng các ứng dụng và khung có độ phức tạp khác nhau nhằm tận dụng sức mạnh của LLM. 

Các mô hình ngôn ngữ lớn đang đóng một vai trò quan trọng trong việc phát triển các tác nhân sử dụng khung LLM để thích ứng với các quan sát mới, cách sử dụng công cụ và lý luận trong nhiều ứng dụng trong thế giới thực. Nhưng việc phát triển các ứng dụng này có thể tận dụng toàn bộ tiềm năng của LLM là một vấn đề phức tạp và do nhu cầu và ứng dụng LLM ngày càng tăng cùng với sự gia tăng độ phức tạp của nhiệm vụ, điều quan trọng là phải tăng quy mô sức mạnh của các tác nhân này bằng cách sử dụng nhiều tác nhân. hoạt động đồng bộ với nhau. Nhưng làm thế nào có thể sử dụng cách tiếp cận đa tác nhân để phát triển các ứng dụng dựa trên LLM, sau đó có thể áp dụng cho nhiều miền với độ phức tạp khác nhau? Khung AutoGen cố gắng trả lời câu hỏi trên bằng cách sử dụng các cuộc hội thoại đa tác nhân. 

AutoGen: Thành phần và Khung

Trong nỗ lực giảm bớt nỗ lực mà các nhà phát triển cần bỏ ra để tạo ra các ứng dụng phức tạp sử dụng khả năng LLM trên nhiều miền, nguyên tắc cơ bản của AutoGen là hợp nhất và hợp lý hóa quy trình làm việc của nhiều tác nhân bằng cách sử dụng các cuộc hội thoại giữa nhiều tác nhân , do đó cũng tối đa hóa khả năng sử dụng lại của các tác nhân được triển khai này. AutoGen sử dụng nhiều tác nhân có thể trò chuyện với nhau để thực hiện thành công các nhiệm vụ mong muốn và khung được xây dựng dựa trên hai khái niệm cơ bản: Đại lý có thể trò chuyện Lập trình có thể đàm thoại 

Đại lý có thể trò chuyện

Tác nhân có thể trò chuyện trong AutoGen là một thực thể có vai trò được xác định trước, có thể chuyển tin nhắn để gửi và nhận thông tin đến & từ các tác nhân có thể trò chuyện khác. Một tác nhân có thể trò chuyện duy trì bối cảnh nội bộ của nó dựa trên tin nhắn đã nhận hoặc gửi và nhà phát triển có thể định cấu hình các tác nhân này để có một bộ khả năng duy nhất như được kích hoạt bởi các công cụ LLM hoặc lấy đầu vào của con người. 

Khả năng của đại lý được hỗ trợ bởi con người, công cụ và LLM 

Các khả năng của tác nhân liên quan trực tiếp đến cách nó xử lý và phản hồi các tin nhắn, đó là lý do chính tại sao các tác nhân trong khung AutoGen cho phép các nhà phát triển linh hoạt cung cấp các khả năng khác nhau cho các tác nhân của họ. AutoGen hỗ trợ nhiều khả năng tổng hợp phổ biến cho các tác nhân bao gồm

  1. LLM: Các tác nhân được hỗ trợ bởi LLM khai thác các khả năng của khung LLM nâng cao như can thiệp trạng thái ngầm, nhập vai, cung cấp phản hồi và thậm chí cả mã hóa. Các nhà phát triển có thể sử dụng các kỹ thuật nhắc nhở mới để kết hợp các khả năng này nhằm tăng tính tự chủ hoặc kỹ năng của tổng đài viên. 
  2. Con người: Một số ứng dụng mong muốn hoặc yêu cầu một số mức độ tham gia của con người và khung AutoGen cho phép các ứng dụng dựa trên LLM tạo điều kiện thuận lợi cho sự tham gia của con người vào cuộc trò chuyện của tổng đài viên bằng cách sử dụng các đại lý được con người hỗ trợ có thể thu hút đầu vào của con người trong các vòng hội thoại nhất định trên cơ sở cấu hình của đại lý. 
  3. Công cụ: Các tác nhân được hỗ trợ bởi công cụ thường có khả năng sử dụng thực thi mã hoặc thực thi chức năng để thực thi các công cụ.

Hợp tác và tùy chỉnh đại lý

Dựa trên nhu cầu và yêu cầu cụ thể của ứng dụng, nhà phát triển có thể định cấu hình các tác nhân riêng lẻ để có sự kết hợp của các loại phụ trợ thiết yếu nhằm hiển thị hành vi phức tạp liên quan đến các cuộc hội thoại giữa nhiều tác nhân. Khung AutoGen cho phép các nhà phát triển dễ dàng tạo các tác nhân có vai trò và khả năng chuyên biệt bằng cách mở rộng hoặc sử dụng lại các tác nhân tích hợp sẵn. Hình đính kèm bên dưới minh họa cấu trúc cơ bản của các tác nhân tích hợp trong khung AutoGen. Lớp ConversableAgent có thể sử dụng con người, công cụ và LLM theo mặc định vì đây là lớp trừu tượng hóa tác nhân cấp cao nhất. UserProxyAgent và AssistantAgent là các lớp ConversableAgent được cấu hình sẵn và mỗi lớp đại diện cho một chế độ sử dụng chung, tức là mỗi tác nhân trong số hai tác nhân này hoạt động như một trợ lý AI (khi được hỗ trợ bởi LLM) và thu hút đầu vào của con người hoặc thực hiện các lệnh gọi chức năng hoặc mã (khi được hỗ trợ bởi các công cụ và/hoặc con người) bằng cách hoạt động như một người được ủy quyền. 

Hình bên dưới minh họa cách các nhà phát triển có thể sử dụng khung AutoGen để phát triển hệ thống hai tác nhân có chức năng trả lời tùy chỉnh, cùng với hình minh họa về cuộc trò chuyện tự động của tổng đài viên sử dụng hệ thống hai tác nhân trong quá trình thực thi chương trình. 

Bằng cách cho phép sử dụng các tác nhân tùy chỉnh có thể trò chuyện với nhau, các tác nhân có thể trò chuyện này đóng vai trò là khối xây dựng cơ bản trong khung AutoGen. Tuy nhiên, các nhà phát triển cần chỉ định và tạo khuôn mẫu cho các cuộc hội thoại giữa nhiều tác nhân này để phát triển các ứng dụng trong đó các tác nhân này có thể đạt được tiến bộ đáng kể trong các nhiệm vụ được chỉ định. 

Lập trình hội thoại

Để giải quyết vấn đề nêu trên, khung AutoGen sử dụng lập trình hội thoại, một mô hình điện toán được xây dựng dựa trên hai khái niệm cơ bản: tính toán, các hành động được thực hiện bởi các tổng đài viên trong cuộc trò chuyện giữa nhiều tổng đài viên để tính toán phản hồi của họ và kiểm soát dòng chảy, các điều kiện hoặc trình tự mà các tính toán này diễn ra. Khả năng lập trình những điều này cho phép các nhà phát triển triển khai nhiều mẫu hội thoại đa tác nhân linh hoạt. Hơn nữa, trong khung AutoGen, các tính toán lấy hội thoại làm trung tâm. Các hành động được thực hiện bởi một tổng đài viên có liên quan đến các cuộc hội thoại mà tổng đài viên tham gia và các hành động được thực hiện bởi tổng đài viên sau đó sẽ dẫn đến việc chuyển các tin nhắn cho các cuộc hội thoại tiếp theo cho đến khi điều kiện kết thúc được thỏa mãn. Hơn nữa, luồng điều khiển trong khung AutoGen được điều khiển bởi các cuộc hội thoại vì đó là quyết định của các tác nhân tham gia về việc tác nhân nào sẽ gửi tin nhắn đến và đi từ quy trình tính toán. 

Hình trên trình bày một minh họa đơn giản về cách các tác nhân riêng lẻ thực hiện các hoạt động theo vai trò cụ thể của họ và tính toán tập trung vào cuộc hội thoại để tạo ra các phản hồi mong muốn như thực thi mã và các cuộc gọi can thiệp LLM. Nhiệm vụ sẽ được tiến hành với sự trợ giúp của các cuộc hội thoại được hiển thị trong hộp thoại. 

Để tạo điều kiện thuận lợi cho việc lập trình hội thoại, khung AutoGen có các mẫu thiết kế sau. 

  • Cơ chế trả lời tự động và giao diện hợp nhất cho các cuộc trò chuyện tự động của tổng đài viên

Khung công tác AutoGen có một giao diện thống nhất để thực hiện phép tính tương ứng có tính chất lấy hội thoại làm trung tâm, bao gồm một “chức năng nhận hoặc gửi” để nhận hoặc gửi tin nhắn cùng với “tạo_reply” tạo ra phản hồi dựa trên tin nhắn đã nhận và thực hiện hành động cần thiết. Khung AutoGen cũng giới thiệu và triển khai các đại lý tự động trả lời cơ chế theo mặc định để thực hiện điều khiển theo hướng hội thoại. 

  • Kiểm soát bằng cách kết hợp ngôn ngữ tự nhiên và lập trình

Khung AutoGen tạo điều kiện thuận lợi cho việc sử dụng ngôn ngữ và lập trình tự nhiên trong các mẫu quản lý luồng điều khiển khác nhau bao gồm: Kiểm soát ngôn ngữ tự nhiên bằng LLMKiểm soát ngôn ngữ lập trìnhKiểm soát quá trình chuyển đổi giữa lập trình và ngôn ngữ tự nhiên

Ngoài ra, ngoài các cuộc hội thoại tĩnh thường đi kèm với một luồng được xác định trước, khung AutoGen còn hỗ trợ các luồng hội thoại động bằng cách sử dụng nhiều tác nhân và khung này cung cấp cho các nhà phát triển hai tùy chọn để đạt được điều này

  1. Bằng cách sử dụng các lệnh gọi hàm. 
  2. Bằng cách sử dụng chức năng tạo-trả lời tùy chỉnh. 

Ứng dụng của AutoGen

Để minh họa tiềm năng của khung AutoGen trong việc phát triển các ứng dụng đa tác nhân phức tạp, dưới đây là sáu ứng dụng tiềm năng của AutoGen được lựa chọn trên cơ sở mức độ phù hợp của chúng trong thế giới thực, khả năng giải quyết vấn đề được nâng cao bởi khung AutoGen, và tiềm năng đổi mới của họ. 

Sáu ứng dụng này của khung AutoGen là

  1. Giải quyết vấn đề toán học. 
  2. Truy xuất các cuộc trò chuyện tăng cường. 
  3. Trò chuyện ALF. 
  4. Mã hóa đa tác nhân 
  5. Trò chuyện nhóm năng động. 
  6. Cờ vua đàm thoại. 

Các ứng dụng của AutoGen Framework

Ứng dụng 1: Giải toán

Toán học là một trong những môn học nền tảng tận dụng các mô hình LLM để hỗ trợ giải quyết các vấn đề toán học phức tạp, mở ra một thế giới ứng dụng tiềm năng hoàn toàn mới, bao gồm hỗ trợ nghiên cứu AI và dạy kèm AI được cá nhân hóa. 

Hình đính kèm ở trên minh họa việc áp dụng khung AutoGen để đạt được hiệu suất cạnh tranh trong việc giải các bài toán. 

Ứng dụng 2: Trả lời câu hỏi và tạo mã tăng cường truy xuất

Trong vài tháng gần đây, Tạo mã tăng cường truy xuất đã nổi lên như một cách tiếp cận hiệu quả và thiết thực để khắc phục những hạn chế của LLM trong việc kết hợp các tài liệu bên ngoài. Hình dưới đây minh họa việc áp dụng khung công tác AutoGen để tăng cường truy xuất hiệu quả và nâng cao hiệu suất của các tác vụ Hỏi & Đáp. 

Ứng dụng 3: Ra quyết định trong môi trường thế giới văn bản

Khung AutoGen có thể được sử dụng để tạo các ứng dụng hoạt động với việc ra quyết định trực tuyến hoặc tương tác. Hình dưới đây minh họa cách các nhà phát triển có thể sử dụng khung AutoGen để thiết kế hệ thống đàm thoại ba tác nhân với một tác nhân nối đất nhằm tăng hiệu suất một cách đáng kể. 

Ứng dụng 4: Mã hóa đa tác nhân

Các nhà phát triển làm việc trên khung AutoGen có thể sử dụng khung OptiGuide để xây dựng hệ thống mã hóa đa tác nhân có khả năng viết mã để triển khai các giải pháp tối ưu hóa và trả lời các câu hỏi của người dùng. Hình bên dưới chứng minh rằng việc sử dụng khung AutoGen để tạo ra thiết kế đa tác nhân giúp tăng hiệu suất tổng thể một cách đáng kể, đặc biệt là trong việc thực hiện các tác vụ mã hóa cần có biện pháp bảo vệ. 

Ứng dụng 5: Trò chuyện nhóm động

Khung AutoGen cung cấp hỗ trợ cho mẫu giao tiếp xoay quanh các cuộc trò chuyện nhóm động trong đó nhiều tác nhân tham gia chia sẻ bối cảnh và thay vì tuân theo một tập hợp các mệnh lệnh được xác định trước, họ trò chuyện với nhau một cách năng động. Các cuộc trò chuyện nhóm năng động này dựa vào các cuộc trò chuyện đang diễn ra để hướng dẫn luồng tương tác trong các tổng đài viên. 

Hình trên minh họa cách khung AutoGen hỗ trợ các cuộc trò chuyện nhóm động giữa các tổng đài viên bằng cách sử dụng “Trình quản lý trò chuyện nhóm”, một đặc vụ. 

Ứng dụng 6: Cờ đàm thoại

Các nhà phát triển khung AutoGen đã sử dụng nó để phát triển ứng dụng Cờ hội thoại, một trò chơi can thiệp tự nhiên có các tác nhân tích hợp dành cho người chơi có thể là LLM hoặc con người và cũng có một tác nhân bên thứ ba cung cấp các tác nhân liên quan. thông tin và xác nhận các nước đi trên bàn cờ trên cơ sở một bộ quy tắc tiêu chuẩn được xác định trước. Hình đính kèm bên dưới minh họa Cờ hội thoại, một trò chơi giao thoa tự nhiên được xây dựng bằng khung AutoGen cho phép người chơi sử dụng các câu chuyện cười, cách chơi nhân vật hoặc thậm chí các tài liệu tham khảo meme để thể hiện các bước di chuyển của họ một cách sáng tạo, khiến trò chơi cờ vua trở nên thú vị hơn không chỉ đối với người chơi , mà còn dành cho khán giả và người quan sát. 

Kết luận

Trong bài viết này, chúng ta đã nói về AutoGen, một khung nguồn mở sử dụng các khái niệm về lập trình hội thoại và các tác nhân có thể chuyển đổi nhằm đơn giản hóa việc điều phối và tối ưu hóa quy trình công việc LLM bằng cách đưa tính năng tự động hóa vào quy trình công việc. Khung AutoGen cung cấp các tác nhân có thể chuyển đổi và tùy chỉnh nhằm tận dụng sức mạnh của LLM nâng cao như GPT-3 và GPT-4, đồng thời giải quyết các hạn chế hiện tại của chúng bằng cách tích hợp LLM với các công cụ và thông tin đầu vào của con người bằng cách sử dụng các cuộc trò chuyện tự động để bắt đầu cuộc hội thoại giữa nhiều đại lý. 

Mặc dù khung công tác AutoGen vẫn đang trong giai đoạn thử nghiệm ban đầu nhưng nó đã mở đường cho các cơ hội nghiên cứu và khám phá trong tương lai trong lĩnh vực này và AutoGen có thể là công cụ giúp cải thiện tốc độ, chức năng và sự dễ dàng phát triển các ứng dụng tận dụng công nghệ này. khả năng của LLM. 

"Kỹ sư chuyên nghiệp, nhà văn có tâm". Kunal là một nhà văn kỹ thuật có niềm yêu thích và hiểu biết sâu sắc về AI và ML, chuyên đơn giản hóa các khái niệm phức tạp trong các lĩnh vực này thông qua tài liệu hấp dẫn và nhiều thông tin của mình.