สถาปัตยกรรมเกิดใหม่สำหรับเอเจนต์ AI: A2A, MCP, Kafka & Flink

ภูมิทัศน์ดิจิทัลกำลังพัฒนาไปไกลกว่าการท่องเว็บที่เน้นมนุษย์ไปสู่ขอบเขตของเอเจนต์อิสระที่ทำงานร่วมกันอย่างราบรื่นทั่วทั้งระบบที่หลากหลาย การเปลี่ยนแปลงนี้จำเป็นต้องมีโครงสร้างพื้นฐานใหม่ และโซลูชันที่น่าสนใจกำลังก่อตัวขึ้น ซึ่งประกอบด้วยองค์ประกอบโอเพนซอร์สหลักสี่ประการ

  • Agent2Agent (A2A) โดย Google: โปรโตคอลที่ออกแบบมาเพื่ออำนวยความสะดวกในการค้นหาและการโต้ตอบของเอเจนต์
  • Model Context Protocol (MCP) โดย Anthropic: มาตรฐานที่กำหนดวิธีการที่เอเจนต์ใช้เครื่องมือและข้อมูลบริบทภายนอก
  • Apache Kafka: กระดูกสันหลังการสื่อสารที่ขับเคลื่อนด้วยเหตุการณ์ที่แข็งแกร่ง ซึ่งช่วยให้การประสานงานที่เชื่อถือได้และแยกจากกัน
  • Apache Flink: เอ็นจินประมวลผลแบบเรียลไทม์ ซึ่งมีความสำคัญอย่างยิ่งต่อการเพิ่มคุณค่า การตรวจสอบ และการดำเนินการกับสตรีมกิจกรรมของเอเจนต์

บทความนี้สำรวจความสัมพันธ์ที่เป็นประโยชน์ร่วมกันระหว่างเทคโนโลยีเหล่านี้ โดยเน้นถึงข้อจำกัดของการพึ่งพาโปรโตคอลเพียงอย่างเดียว และแสดงให้เห็นว่าสถาปัตยกรรมนี้วางรากฐานสำหรับการเปลี่ยนจากบอทที่แยกจากกันไปสู่ระบบนิเวศเอเจนต์อัจฉริยะแบบไดนามิกได้อย่างไร

การแพร่กระจายที่คาดการณ์ไว้ของเอเจนต์ AI ภายในองค์กรบ่งชี้ว่าบริษัทส่วนใหญ่จะปรับใช้เอเจนต์เฉพาะทางจำนวนมาก แทนที่จะเป็นเอเจนต์ที่ครอบคลุมทั้งหมดเพียงตัวเดียว เอเจนต์เหล่านี้จะทำงานอัตโนมัติ เช่น การสร้างโค้ด การจัดการตั๋วสนับสนุน การวิเคราะห์ข้อมูลลูกค้า การปฐมนิเทศพนักงาน และการตรวจสอบโครงสร้างพื้นฐาน

อย่างไรก็ตาม เครื่องมือปัจจุบันไม่เพียงพอสำหรับการสนับสนุนอนาคตดังกล่าว

ความท้าทายขยายไปไกลกว่าปัญหา ‘เกาะแห่งเอเจนต์’ ที่เอเจนต์ทำงานในไซโลและขาดความสามารถในการสื่อสาร มันครอบคลุมถึงการกระจายตัวของระบบนิเวศที่กว้างขวางยิ่งขึ้น:

  • การขาดการสื่อสารระหว่างเอเจนต์: โดยทั่วไปเอเจนต์จะทำงานภายในสภาพแวดล้อมที่แยกจากกัน เอเจนต์การจัดการความสัมพันธ์ลูกค้า (CRM) ไม่ทราบถึงข้อมูลเชิงลึกที่ได้มาจากเอเจนต์คลังข้อมูล เอเจนต์สนับสนุนไม่สามารถตอบสนองต่อความผิดปกติที่ตรวจพบโดยเอเจนต์ตรวจสอบได้
  • การใช้งานเครื่องมือที่เปราะบางและกำหนดเอง: หากไม่มีวิธีการที่เป็นมาตรฐานสำหรับการเข้าถึงเครื่องมือหรือ Application Programming Interfaces (APIs) ภายนอก เอเจนต์จะพึ่งพาการผสานรวมแบบฮาร์ดโค้ดและตรรกะที่ไม่สามารถนำกลับมาใช้ใหม่ได้
  • กรอบงานที่ไม่สอดคล้องกัน: รันไทม์ของเอเจนต์ที่แตกต่างกันใช้โมเดลที่หลากหลาย โดยถือว่าเอเจนต์เป็นแชทบอท กราฟวัฏจักรโดยตรง (DAG) หรือผู้วางแผนแบบเรียกซ้ำ สิ่งนี้ส่งผลให้ไม่มีเลเยอร์การดำเนินการแบบพกพาหรือสถานะที่ใช้ร่วมกัน
  • การออกแบบที่เน้นสภาพแวดล้อมของ Notebook: เอเจนต์จำนวนมากได้รับการพัฒนาเป็นต้นแบบแบบครั้งเดียว ซึ่งมีลักษณะการทำงานที่เป็นเส้นตรง ซิงโครนัส และชั่วคราว อย่างไรก็ตาม ระบบในโลกแห่งความเป็นจริงจำเป็นต้องมีการจัดการที่แข็งแกร่งสำหรับการลองใหม่ ความล้มเหลว การประสานงาน การบันทึก และการปรับขนาด ซึ่งต้องมีโครงสร้างพื้นฐานสนับสนุน
  • ไม่มีกระดูกสันหลังการทำงานร่วมกัน: ไม่มีบัสเหตุการณ์ หน่วยความจำที่ใช้ร่วมกัน หรือประวัติที่ตรวจสอบได้ของกิจกรรมและเหตุผลของเอเจนต์ ข้อมูลถูกจำกัดไว้ที่การเรียก HTTP โดยตรงหรือฝังอยู่ในบันทึก

ดังที่เน้นโดยโครงการ 12-Factor Agents เอเจนต์ควรปฏิบัติตามหลักการของคลาวด์เนทีฟ โดยแสดงให้เห็นถึงการสังเกตการณ์ การผูกมัดที่หลวม การทำซ้ำ และความตระหนักในโครงสร้างพื้นฐาน น่าเสียดายที่ส่วนใหญ่ถูกสร้างขึ้นเป็นสคริปต์ที่เปราะบาง ซึ่งประกอบขึ้นด้วยตนเองและถือว่าทำงานอย่างอิสระ

สิ่งนี้ส่งผลให้เกิดความไม่มีประสิทธิภาพ การทำซ้ำความพยายาม และความเปราะบาง

Agent2Agent แก้ไขปัญหานี้บางส่วนโดยการจัดเตรียมโปรโตคอลที่เป็นมาตรฐานให้กับเอเจนต์สำหรับการค้นหาและการสื่อสาร อย่างไรก็ตาม การเปลี่ยนจากการสาธิตผิวเผินไปสู่ความสามารถในการปรับขนาดและความน่าเชื่อถือที่ระบบการผลิตต้องการนั้น จำเป็นต้องมีมากกว่าแค่โปรโตคอล มันต้องการโครงสร้างพื้นฐานที่ครอบคลุม

ระบบนิเวศเอเจนต์ปัจจุบันสะท้อนให้เห็นถึงขั้นตอนแรกๆ ของเว็บ ซึ่งมีลักษณะเป็นระบบที่ทรงพลังแต่แยกจากกันและเข้ากันไม่ได้ คล้ายกับความท้าทายในช่วงต้นที่เบราว์เซอร์เผชิญในการสื่อสารกับเซิร์ฟเวอร์โดยไม่มีโปรโตคอลที่เป็นมาตรฐาน ปัจจุบันเอเจนต์ AI ต้องดิ้นรนเพื่อค้นหา สื่อสาร และทำงานร่วมกันอย่างมีประสิทธิภาพ

Agent2Agent (A2A) ของ Google: โปรโตคอลสากลสำหรับการสื่อสารของเอเจนต์

โปรโตคอล A2A ของ Google เป็นความพยายามที่สำคัญในการแก้ไขปัญหานี้ มันโดดเด่นด้วยการไม่ใช่กรอบงานเอเจนต์อื่น แต่เป็นโปรโตคอลสากลที่ออกแบบมาเพื่อเชื่อมต่อเอเจนต์ใดๆ โดยไม่คำนึงถึงแหล่งที่มาหรือสภาพแวดล้อมการปรับใช้

เช่นเดียวกับที่ HTTP ทำให้การสื่อสารของเว็บไซต์เป็นมาตรฐาน A2A กำหนดภาษาทั่วไปสำหรับเอเจนต์ ทำให้พวกเขาสามารถ:

  • ประกาศความสามารถ: ผ่าน AgentCard ซึ่งเป็นตัวอธิบาย JSON ที่สรุปความสามารถและวิธีการโต้ตอบของเอเจนต์
  • ส่งและรับงาน: ผ่านการโต้ตอบที่มีโครงสร้างโดยใช้ JSON-RPC โดยที่เอเจนต์หนึ่งขอความช่วยเหลือและอีกเอเจนต์หนึ่งตอบกลับด้วยผลลัพธ์หรือ ‘สิ่งประดิษฐ์’
  • สตรีมอัปเดตด้วย Server-Sent Events (SSEs): อำนวยความสะดวกในการตอบกลับแบบเรียลไทม์ระหว่างงานที่ยาวนานหรือร่วมมือกัน
  • แลกเปลี่ยนเนื้อหาที่หลากหลาย: สนับสนุนการแลกเปลี่ยนไฟล์ ข้อมูลที่มีโครงสร้าง และแบบฟอร์ม นอกเหนือจากข้อความธรรมดา
  • รักษาความปลอดภัยโดยค่าเริ่มต้น: รวมการสนับสนุนในตัวสำหรับ HTTPS การรับรองความถูกต้อง และสิทธิ์

จุดแข็งของ A2A อยู่ที่การหลีกเลี่ยงการคิดค้นโซลูชันที่จัดตั้งขึ้นใหม่ มันใช้ประโยชน์จากมาตรฐานเว็บที่เป็นที่ยอมรับกันดี คล้ายกับ HTTP และ SMTP อำนวยความสะดวกในการนำไปใช้ได้ง่ายขึ้นและการรวมเข้าด้วยกันได้เร็วขึ้น

อย่างไรก็ตาม A2A เป็นเพียงด้านหนึ่งของโซลูชันโดยรวม

Model Context Protocol (MCP) ของ Anthropic: การทำให้การใช้เครื่องมือและการเข้าถึงบริบทเป็นมาตรฐาน

MCP ของ Anthropic กล่าวถึงประเด็นสำคัญของวิธีการที่เอเจนต์ใช้เครื่องมือและเข้าถึงข้อมูลตามบริบท MCP ทำให้กระบวนการที่เอเจนต์เรียกใช้ API เรียกฟังก์ชัน และผสานรวมกับระบบภายนอกเป็นมาตรฐาน โดยพื้นฐานแล้วจะกำหนดวิธีการที่พวกเขาดำเนินการภายในสภาพแวดล้อมของพวกเขา ในขณะที่ A2A ควบคุมการสื่อสารระหว่างเอเจนต์ MCP มุ่งเน้นไปที่การโต้ตอบของเอเจนต์กับโลกภายนอก

โดยสรุป:

  • MCP เพิ่มขีดความสามารถให้กับสติปัญญาส่วนบุคคลของเอเจนต์
  • A2A เปิดใช้งานสติปัญญาส่วนรวม

เช่นเดียวกับที่ HTTP และ SMTP ต้องการการนำไปใช้ โครงสร้างพื้นฐาน และเครื่องมือสำหรับนักพัฒนาอย่างกว้างขวางเพื่อให้ประสบความสำเร็จอย่างแพร่หลาย A2A และ MCP จะต้องมีระบบนิเวศที่แข็งแกร่งเพื่อตระหนักถึงศักยภาพของพวกเขาอย่างเต็มที่

แม้จะมีความพยายามในการทำให้เป็นมาตรฐาน เช่น A2A และ MCP คำถามสำคัญยังคงอยู่: จะปรับขนาดการสื่อสารของเอเจนต์ให้มีประสิทธิภาพได้อย่างไรในสภาพแวดล้อมขององค์กรที่ซับซ้อนและไดนามิก การพึ่งพาการเชื่อมต่อโดยตรงแบบจุดต่อจุดที่กำหนดโดยโปรโตคอลเหล่านี้เพียงอย่างเดียวนำมาซึ่งความท้าทายที่เกี่ยวข้องกับความสามารถในการปรับขนาด ความยืดหยุ่น และความสามารถในการสังเกตการณ์ สิ่งนี้เน้นย้ำถึงความต้องการโครงสร้างพื้นฐานการสื่อสารที่แข็งแกร่ง

พิจารณาบริษัทที่พนักงานสามารถสื่อสารได้โดยตรงผ่านข้อความแบบตัวต่อตัวเท่านั้น การแบ่งปันการอัปเดตจะต้องส่งข้อความถึงแต่ละคนแยกกัน การประสานงานโครงการข้ามหลายทีมจะต้องมีการถ่ายทอดข้อมูลระหว่างแต่ละกลุ่มด้วยตนเอง

การปรับขนาดระบบดังกล่าวให้กับพนักงานหลายร้อยคนจะส่งผลให้เกิดความโกลาหล

สถานการณ์นี้สะท้อนให้เห็นถึงความท้าทายที่เผชิญในระบบนิเวศเอเจนต์ที่สร้างขึ้นจากการเชื่อมต่อโดยตรง เอเจนต์แต่ละรายต้องรู้ว่าเอเจนต์ใดที่จะติดต่อ วิธีติดต่อพวกเขา และความพร้อมใช้งานของพวกเขา เมื่อจำนวนเอเจนต์เพิ่มขึ้น จำนวนการเชื่อมต่อที่จำเป็นจะเพิ่มขึ้นแบบทวีคูณ ส่งผลให้เกิดระบบที่เปราะบาง จัดการยาก และไม่สามารถปรับขนาดได้

A2A และ MCP จัดเตรียมภาษาและโครงสร้างสำหรับการสื่อสารและการดำเนินการให้กับเอเจนต์ อย่างไรก็ตาม ภาษาเพียงอย่างเดียวไม่เพียงพอ ในการประสานงานเอเจนต์จำนวนมากทั่วทั้งองค์กร จำเป็นต้องมีโครงสร้างพื้นฐานเพื่อจัดการการไหลของข้อความและการตอบสนองของเอเจนต์

Apache Kafka และ Apache Flink จัดเตรียมโครงสร้างพื้นฐานที่สำคัญนี้

Apache Kafka ซึ่งเดิมพัฒนาที่ LinkedIn และปัจจุบันเป็นโครงการ Apache Software Foundation เป็นแพลตฟอร์มสตรีมมิงเหตุการณ์แบบกระจาย มันทำหน้าที่เป็นบัสข้อความที่ทนทานและมีปริมาณงานสูง ช่วยให้ระบบสามารถเผยแพร่และสมัครรับข้อมูลสตรีมเหตุการณ์แบบเรียลไทม์ Kafka ถูกนำมาใช้กันอย่างแพร่หลายในแอปพลิเคชันต่างๆ รวมถึงระบบการเงิน การตรวจจับการฉ้อโกง และไปป์ไลน์การวัดและส่งข้อมูลทางไกล เนื่องจากความสามารถในการแยกผู้ผลิตออกจากผู้บริโภค และรับประกันความทนทานของข้อมูล ความสามารถในการเล่นซ้ำ และความสามารถในการปรับขนาด

Flink ซึ่งเป็นอีกโครงการหนึ่งของ Apache เป็นเอ็นจินประมวลผลสตรีมแบบเรียลไทม์ที่ออกแบบมาสำหรับการประมวลผลเหตุการณ์แบบมีสถานะ ปริมาณงานสูง และเวลาแฝงต่ำ ในขณะที่ Kafka จัดการการเคลื่อนย้ายข้อมูล Flink จัดการการแปลง การเพิ่มคุณค่า การตรวจสอบ และการจัดระเบียบข้อมูลขณะที่ไหลผ่านระบบ

Kafka และ Flink รวมกันเป็นส่วนผสมที่ทรงพลัง Kafka ทำหน้าที่เป็นกระแสเลือด ในขณะที่ Flink ทำหน้าที่เป็นระบบตอบสนอง

เช่นเดียวกับบทบาทของ A2A ในฐานะ HTTP ของโลกเอเจนต์ Kafka และ Flink จัดเตรียมรากฐานที่ขับเคลื่อนด้วยเหตุการณ์สำหรับการสื่อสารและการคำนวณของเอเจนต์ที่ปรับขนาดได้ แก้ไขความท้าทายที่การสื่อสารโดยตรงแบบจุดต่อจุดไม่สามารถทำได้:

  • การแยกส่วน: ด้วย Kafka เอเจนต์ไม่จำเป็นต้องรู้ว่าใครเป็นผู้บริโภคผลลัพธ์ของพวกเขา พวกเขาเผยแพร่เหตุการณ์ (เช่น "TaskCompleted", "InsightGenerated") ไปยังหัวข้อ ทำให้เอเจนต์หรือระบบที่สนใจสามารถสมัครรับข้อมูลได้
  • ความสามารถในการสังเกตและการเล่นซ้ำ: Kafka รักษาบันทึกเหตุการณ์ทั้งหมดที่ทนทานและเรียงตามเวลา ทำให้มั่นใจได้ว่าพฤติกรรมของเอเจนต์สามารถตรวจสอบ ย้อนกลับ และเล่นซ้ำได้อย่างเต็มที่
  • การตัดสินใจแบบเรียลไทม์: Flink ช่วยให้เอเจนต์สามารถ ตอบสนองแบบเรียลไทม์ต่อสตรีมเหตุการณ์ การกรอง การเพิ่มคุณค่า การรวม หรือการกระตุ้นการดำเนินการตามเงื่อนไขไดนามิก
  • ความยืดหยุ่นและการปรับขนาด: งาน Flink สามารถปรับขนาดได้อย่างอิสระ กู้คืนจากความล้มเหลว และรักษาสถานะไว้ในเวิร์กโฟลว์ที่ทำงานเป็นเวลานาน ซึ่งจำเป็นสำหรับเอเจนต์ที่ทำงานที่ซับซ้อนและมีหลายขั้นตอน
  • การประสานงานแบบ Stream-Native: แทนที่จะรอการตอบสนองแบบซิงโครนัส เอเจนต์สามารถประสานงานผ่านสตรีมเหตุการณ์ เผยแพร่การอัปเดต สมัครรับข้อมูลเวิร์กโฟลว์ และค่อยๆ ดำเนินการสถานะร่วมกัน

โดยสรุป:

  • A2A กำหนดวิธีการที่เอเจนต์สื่อสาร
  • MCP กำหนดวิธีการที่พวกเขาโต้ตอบกับเครื่องมือภายนอก
  • Kafka กำหนดวิธีการที่ข้อความของพวกเขาไหล
  • Flink กำหนดวิธีการประมวลผล แปลง และใช้การไหลเหล่านั้นเพื่อทำการตัดสินใจ

โปรโตคอล เช่น A2A และ MCP มีความสำคัญอย่างยิ่งต่อการทำให้พฤติกรรมและการสื่อสารของเอเจนต์เป็นมาตรฐาน อย่างไรก็ตาม หากไม่มีพื้นผิวที่ขับเคลื่อนด้วยเหตุการณ์ เช่น Kafka และรันไทม์แบบสตรีมเนทีฟ เช่น Flink เอเจนต์จะยังคงแยกจากกัน ไม่สามารถประสานงานได้อย่างมีประสิทธิภาพ ปรับขนาดได้อย่างมีประสิทธิภาพ หรือใช้เหตุผลเมื่อเวลาผ่านไป

สถาปัตยกรรมสี่ชั้นสำหรับเอเจนต์ AI ระดับองค์กร

เพื่อให้ตระหนักถึงวิสัยทัศน์ของเอเจนต์ AI ที่ทำงานร่วมกันได้และระดับองค์กรอย่างเต็มที่ จำเป็นต้องมีสถาปัตยกรรมสี่ชั้น:

  • โปรโตคอล: A2A, MCP – กำหนด อะไร
  • กรอบงาน: LangGraph, CrewAI, ADK – กำหนด อย่างไร
  • โครงสร้างพื้นฐานการส่งข้อความ: Apache Kafka – สนับสนุน การไหล
  • การคำนวณแบบเรียลไทม์: Apache Flink – สนับสนุน การคิด

เลเยอร์เหล่านี้รวมกันเป็นสแต็กอินเทอร์เน็ตใหม่สำหรับเอเจนต์ AI โดยจัดเตรียมรากฐานสำหรับการสร้างระบบที่ไม่เพียงแต่ชาญฉลาด แต่ยังทำงานร่วมกัน สังเกตได้ และพร้อมใช้งานจริง

ปัจจุบันเราอยู่ในจุดสำคัญในการวิวัฒนาการของซอฟต์แวร์

เช่นเดียวกับสแต็กอินเทอร์เน็ตดั้งเดิม ซึ่งประกอบด้วยโปรโตคอล เช่น HTTP และ SMTP และโครงสร้างพื้นฐาน เช่น TCP/IP นำไปสู่ยุคแห่งการเชื่อมต่อทั่วโลก สแต็กใหม่กำลังเกิดขึ้นสำหรับเอเจนต์ AI อย่างไรก็ตาม แทนที่จะเป็นมนุษย์ที่นำทางหน้าเว็บหรือส่งอีเมล สแต็กนี้ได้รับการออกแบบมาสำหรับระบบอิสระที่ทำงานร่วมกันเพื่อใช้เหตุผล ตัดสินใจ และดำเนินการ

A2A และ MCP จัดเตรียมโปรโตคอลสำหรับการสื่อสารของเอเจนต์และการใช้เครื่องมือ ในขณะที่ Kafka และ Flink จัดเตรียมโครงสร้างพื้นฐานสำหรับการประสานงานแบบเรียลไทม์ ความสามารถในการสังเกต และความยืดหยุ่น พวกเขาร่วมกันช่วยให้การเปลี่ยนผ่านจากการสาธิตเอเจนต์ที่ไม่ได้เชื่อมต่อไปสู่ระบบนิเวศที่ปรับขนาดได้ ฉลาด และพร้อมใช้งานจริง

วิวัฒนาการนี้ไม่ได้เกี่ยวกับการแก้ไขปัญหาทางวิศวกรรมเท่านั้น มันเกี่ยวกับการเปิดใช้งานกระบวนทัศน์ใหม่ของซอฟต์แวร์ที่เอเจนต์ทำงานร่วมกันข้ามขอบเขต ให้ข้อมูลเชิงลึกและขับเคลื่อนการดำเนินการในแบบเรียลไทม์ ซึ่งช่วยให้สติปัญญากลายเป็นระบบแบบกระจาย

อย่างไรก็ตาม วิสัยทัศน์นี้ต้องมีการพัฒนาอย่างแข็งขัน โดยเน้นที่ความเปิดกว้าง การทำงานร่วมกัน และการใช้ประโยชน์จากบทเรียนที่ได้รับจากการปฏิวัติอินเทอร์เน็ตครั้งก่อน

ดังนั้น เมื่อพัฒนาเอเจนต์ สิ่งสำคัญคือต้องพิจารณาการรวมเข้ากับระบบที่กว้างขึ้น มันสามารถสื่อสารได้อย่างมีประสิทธิภาพหรือไม่ มันสามารถประสานงานกับเอเจนต์อื่นได้หรือไม่ มันสามารถพัฒนาและปรับตัวเข้ากับสภาวะที่เปลี่ยนแปลงได้หรือไม่

อนาคตไม่ได้ขับเคลื่อนด้วยเอเจนต์เท่านั้น แต่เป็นการเชื่อมต่อเอเจนต์