1. ภาพรวม
ในโค้ดแล็บนี้ คุณจะได้สร้างระบบการวิจัยการลงทุนแบบหลายเอเจนต์ที่ซับซ้อน ซึ่งผสานรวมความสามารถของ Agent Development Kit (ADK) ของ Google, ฐานข้อมูลกราฟ Neo4j และกล่องเครื่องมือ Model Context Protocol (MCP) บทแนะนำภาคปฏิบัตินี้แสดงวิธีสร้างเอเจนต์อัจฉริยะที่เข้าใจบริบทของข้อมูลผ่านความสัมพันธ์ของกราฟ และให้คำตอบของคำค้นหาที่มีความแม่นยำสูง
เหตุผลที่ควรใช้ GraphRAG + ระบบหลายเอเจนต์
GraphRAG (การสร้างที่เพิ่มการดึงข้อมูลตามกราฟ) ช่วยปรับปรุงแนวทาง RAG แบบเดิมด้วยการใช้ประโยชน์จากโครงสร้างความสัมพันธ์ที่หลากหลายของกราฟความรู้ แทนที่จะค้นหาเฉพาะเอกสารที่คล้ายกัน เอเจนต์ GraphRAG สามารถทำสิ่งต่อไปนี้ได้
- สำรวจความสัมพันธ์ที่ซับซ้อนระหว่างเอนทิตี
- ทําความเข้าใจบริบทผ่านโครงสร้างกราฟ
- แสดงผลลัพธ์ที่อธิบายได้โดยอิงตามข้อมูลที่เชื่อมต่อ
- ดำเนินการให้เหตุผลแบบหลายขั้นตอนในกราฟความรู้
ระบบแบบหลายเอเจนต์ช่วยให้คุณทำสิ่งต่อไปนี้ได้
- แยกปัญหาที่ซับซ้อนออกเป็นงานย่อยเฉพาะทาง
- สร้างแอปพลิเคชัน AI แบบแยกส่วนที่ดูแลรักษาได้
- เปิดใช้การประมวลผลแบบคู่ขนานและการใช้ทรัพยากรอย่างมีประสิทธิภาพ
- สร้างรูปแบบการให้เหตุผลแบบลำดับชั้นด้วยการประสานงาน
สิ่งที่คุณจะสร้าง
คุณจะได้สร้างระบบการวิจัยการลงทุนที่สมบูรณ์แบบซึ่งมีฟีเจอร์ต่อไปนี้
- Graph Database Agent: เรียกใช้การค้นหา Cypher และทำความเข้าใจสคีมา Neo4j
- ตัวแทนวิจัยนักลงทุน: ค้นพบความสัมพันธ์ของนักลงทุนและพอร์ตการลงทุน
- เอเจนต์วิจัยการลงทุน: เข้าถึงกราฟความรู้ที่ครอบคลุมผ่านเครื่องมือ MCP
- Root Agent: จัดการ Sub-Agent ทั้งหมดอย่างชาญฉลาด
ระบบจะตอบคำถามที่ซับซ้อน เช่น
- "คู่แข่งหลักของ YouTube คือใคร"
- "บริษัทใดบ้างที่ได้รับการกล่าวถึงในเชิงบวกในเดือนมกราคม 2023"
- "ใครลงทุนใน ByteDance และพวกเขาลงทุนในบริษัทอื่นใดอีก"
ภาพรวมสถาปัตยกรรม

ในโค้ดแล็บนี้ คุณจะได้เรียนรู้ทั้งพื้นฐานเชิงแนวคิดและการใช้งานจริงในการสร้างเอเจนต์ GraphRAG ระดับองค์กร
สิ่งที่คุณจะได้เรียนรู้
- วิธีสร้างระบบแบบหลายเอเจนต์โดยใช้ Agent Development Kit (ADK) ของ Google
- วิธีผสานรวมฐานข้อมูลกราฟ Neo4j กับ ADK สำหรับแอปพลิเคชัน GraphRAG
- วิธีใช้กล่องเครื่องมือ Model Context Protocol (MCP) สำหรับการค้นหาฐานข้อมูลที่ตรวจสอบแล้วล่วงหน้า
- วิธีสร้างเครื่องมือและฟังก์ชันที่กำหนดเองสำหรับเอเจนต์อัจฉริยะ
- วิธีออกแบบลำดับชั้นของตัวแทนและรูปแบบการประสานงาน
- วิธีจัดโครงสร้างคำสั่งของเอเจนต์เพื่อให้ได้ประสิทธิภาพสูงสุด
- วิธีแก้ไขข้อบกพร่องของการโต้ตอบแบบหลายเอเจนต์อย่างมีประสิทธิภาพ
สิ่งที่คุณต้องมี
- เว็บเบราว์เซอร์ Chrome
- บัญชี Gmail
- โปรเจ็กต์ Google Cloud ที่เปิดใช้การเรียกเก็บเงิน
- คุ้นเคยกับคำสั่งเทอร์มินัลและ Python ในระดับพื้นฐาน (มีประโยชน์แต่ไม่จำเป็น)
Codelab นี้ออกแบบมาสำหรับนักพัฒนาซอฟต์แวร์ทุกระดับ (รวมถึงผู้เริ่มต้น) โดยใช้ Python และ Neo4j ในแอปพลิเคชันตัวอย่าง แม้ว่าความคุ้นเคยพื้นฐานกับ Python และฐานข้อมูลกราฟอาจมีประโยชน์ แต่คุณไม่จำเป็นต้องมีประสบการณ์มาก่อนเพื่อทำความเข้าใจแนวคิดหรือทำตาม
2. ทำความเข้าใจ GraphRAG และระบบหลายเอเจนต์
ก่อนที่จะลงมือติดตั้งใช้งาน มาทำความเข้าใจแนวคิดหลักที่ขับเคลื่อนระบบนี้กันก่อน
Neo4j เป็นฐานข้อมูลกราฟดั้งเดิมชั้นนำที่จัดเก็บข้อมูลเป็นเครือข่ายของโหนด (เอนทิตี) และความสัมพันธ์ (การเชื่อมต่อระหว่างเอนทิตี) จึงเหมาะอย่างยิ่งสำหรับกรณีการใช้งานที่การทำความเข้าใจการเชื่อมต่อเป็นสิ่งสำคัญ เช่น คำแนะนำ การตรวจหาการฉ้อโกง กราฟความรู้ และอื่นๆ โมเดลกราฟที่ยืดหยุ่นของ Neo4j ช่วยให้แสดงข้อมูลที่ซับซ้อนและเชื่อมต่อกันได้อย่างมีประสิทธิภาพและเป็นธรรมชาติ ซึ่งแตกต่างจากฐานข้อมูลเชิงสัมพันธ์หรือฐานข้อมูลที่อิงตามเอกสารซึ่งอาศัยตารางที่เข้มงวดหรือโครงสร้างแบบลำดับชั้น
Neo4j ใช้โมเดลกราฟแทนการจัดระเบียบข้อมูลในแถวและตารางเหมือนกับฐานข้อมูลเชิงสัมพันธ์ โดยจะแสดงข้อมูลเป็นโหนด (เอนทิตี) และความสัมพันธ์ (การเชื่อมต่อระหว่างเอนทิตีเหล่านั้น) โมเดลนี้ช่วยให้การทำงานกับข้อมูลที่เชื่อมโยงกันโดยธรรมชาติเป็นไปอย่างง่ายดาย เช่น บุคคล สถานที่ ผลิตภัณฑ์ หรือในกรณีของเราคือภาพยนตร์ นักแสดง และประเภท
เช่น ในชุดข้อมูลภาพยนตร์
- โหนดอาจแสดงถึง
Movie,ActorหรือDirector - ความสัมพันธ์อาจเป็น
ACTED_INหรือDIRECTED

โครงสร้างนี้ช่วยให้คุณถามคำถามต่างๆ ได้อย่างง่ายดาย เช่น
- นักแสดงคนนี้เคยแสดงในภาพยนตร์เรื่องใดบ้าง
- ใครเคยร่วมงานกับคริสโตเฟอร์ โนแลนบ้าง
- ภาพยนตร์ที่คล้ายกันซึ่งอิงตามนักแสดงหรือประเภทที่ใช้ร่วมกันคืออะไร
GraphRAG คืออะไร
การสร้างแบบดึงข้อมูลเสริม (RAG) จะช่วยเพิ่มประสิทธิภาพการตอบกลับของ LLM โดยการดึงข้อมูลที่เกี่ยวข้องจากแหล่งข้อมูลภายนอก โดยทั่วไปแล้ว RAG แบบดั้งเดิมจะมีลักษณะดังนี้
- ฝังเอกสารลงในเวกเตอร์
- ค้นหาเวกเตอร์ที่คล้ายกัน
- ส่งเอกสารที่ดึงข้อมูลมาให้ LLM
GraphRAG ขยายการทำงานนี้โดยใช้กราฟความรู้ ดังนี้
- ฝังเอนทิตีและความสัมพันธ์
- สำรวจการเชื่อมต่อกราฟ
- เรียกข้อมูลตามบริบทแบบหลายทอด
- ให้ผลลัพธ์ที่มีโครงสร้างและอธิบายได้
เหตุใดจึงต้องใช้กราฟสำหรับเอเจนต์ AI
ลองพิจารณาคำถามนี้ "คู่แข่งของ YouTube คือใคร และนักลงทุนรายใดที่ให้เงินทุนแก่ทั้ง YouTube และคู่แข่ง"
สิ่งที่เกิดขึ้นในแนวทาง RAG แบบดั้งเดิม
- การค้นหาเอกสารเกี่ยวกับคู่แข่งของ YouTube
- ค้นหาข้อมูลนักลงทุนแยกกัน
- การเชื่อมโยงข้อมูล 2 ส่วนนี้
- อาจพลาดความสัมพันธ์โดยนัย
สิ่งที่เกิดขึ้นในแนวทาง GraphRAG
MATCH (youtube:Company {name: "YouTube"})-[:COMPETES_WITH]->(competitor:Company)
MATCH (investor:Investor)-[:INVESTED_IN]->(youtube)
MATCH (investor)-[:INVESTED_IN]->(competitor)
RETURN youtube, competitor, investor
กราฟแสดงความสัมพันธ์ได้อย่างเป็นธรรมชาติ ทำให้การค้นหาแบบหลายขั้นตอนเป็นเรื่องง่ายและมีประสิทธิภาพ
ระบบหลายเอเจนต์ใน ADK
ชุดพัฒนาเอเจนต์ (ADK) คือเฟรมเวิร์กโอเพนซอร์สของ Google สำหรับสร้างและติดตั้งใช้งานเอเจนต์ AI ระดับโปรดักชัน โดยมีองค์ประกอบพื้นฐานที่ใช้งานง่ายสำหรับการจัดการหลายเอเจนต์ การผสานรวมเครื่องมือ และการจัดการเวิร์กโฟลว์ ซึ่งช่วยให้สร้างเอเจนต์เฉพาะทางเป็นระบบที่ซับซ้อนได้อย่างง่ายดาย ADK ทำงานร่วมกับ Gemini ได้อย่างราบรื่นและรองรับการติดตั้งใช้งานใน Cloud Run, Kubernetes หรือโครงสร้างพื้นฐานใดก็ได้
ชุดพัฒนาเอเจนต์ (ADK) มีองค์ประกอบพื้นฐานสำหรับการสร้างระบบแบบหลายเอเจนต์ ดังนี้
- ลำดับชั้นของตัวแทน
# Root agent coordinates specialized agents
root_agent = LlmAgent(
name="RootAgent",
sub_agents=[
graph_db_agent,
investor_agent,
investment_agent
]
)
- ตัวแทนเฉพาะทาง: ตัวแทนแต่ละรายมี
- เครื่องมือที่เฉพาะเจาะจง: ฟังก์ชันที่เรียกใช้ได้
- คำสั่งที่ชัดเจน: บทบาทและความสามารถ
- ความเชี่ยวชาญเฉพาะด้าน: ความรู้ในสาขาของตน
- รูปแบบการประสานงาน
- ตามลำดับ: เรียกใช้ Agent ตามลำดับ
- ขนานกัน: เรียกใช้เอเจนต์หลายตัวพร้อมกัน
- มีเงื่อนไข: กำหนดเส้นทางตามประเภทการค้นหา
กล่องเครื่องมือ MCP สำหรับฐานข้อมูล
Model Context Protocol (MCP) เป็นมาตรฐานแบบเปิดสำหรับการเชื่อมต่อระบบ AI กับแหล่งข้อมูลและเครื่องมือภายนอก กล่องเครื่องมือ MCP สำหรับฐานข้อมูลคือการติดตั้งใช้งานของ Google ที่ช่วยให้จัดการการค้นหาฐานข้อมูลแบบประกาศได้ ซึ่งช่วยให้คุณกำหนดการค้นหาที่เขียนโดยผู้เชี่ยวชาญและตรวจสอบแล้วล่วงหน้าเป็นเครื่องมือที่นำกลับมาใช้ใหม่ได้ MCP Toolbox จะแสดงคำค้นหาที่ได้รับอนุมัติล่วงหน้าพร้อมการตรวจสอบพารามิเตอร์แทนที่จะปล่อยให้ LLM สร้างคำค้นหาที่อาจไม่ปลอดภัย เพื่อให้มั่นใจถึงความปลอดภัย ประสิทธิภาพ และความน่าเชื่อถือ ในขณะที่ยังคงความยืดหยุ่นสำหรับเอเจนต์ AI
แนวทางแบบเดิม
# LLM generates query (may be incorrect/unsafe)
query = llm.generate("SELECT * FROM users WHERE...")
db.execute(query) # Risk of errors/SQL injection
แนวทาง MCP:
# Pre-validated query definition
- name: get_industries
description: Fetch all industries from database
query: |
MATCH (i:Industry)
RETURN i.name, i.id
ข้อดี
- ผ่านการตรวจสอบเบื้องต้นโดยผู้เชี่ยวชาญ
- ปลอดภัยจากการโจมตีแบบแทรกโค้ด
- เพิ่มประสิทธิภาพแล้ว
- จัดการจากส่วนกลาง
- ใช้ซ้ำได้ใน Agent ต่างๆ
การรวมทั้งหมดเข้าด้วยกัน
การรวมกันของ GraphRAG + Multi-Agent Framework โดย ADK + MCP จะสร้างระบบที่มีประสิทธิภาพ ดังนี้
- Root Agent ได้รับคำค้นหาของผู้ใช้
- กำหนดเส้นทางไปยังตัวแทนผู้เชี่ยวชาญตามประเภทคำค้นหา
- Agent ใช้เครื่องมือ MCP เพื่อดึงข้อมูลอย่างปลอดภัย
- โครงสร้างกราฟให้บริบทที่สมบูรณ์
- LLM สร้างคำตอบที่อิงตามข้อมูลและอธิบายได้
เมื่อเข้าใจสถาปัตยกรรมแล้ว เรามาเริ่มสร้างกันเลย
3. ตั้งค่าโปรเจ็กต์ Google Cloud
สร้างโปรเจ็กต์
- ในคอนโซล Google Cloud ให้เลือกหรือสร้างโปรเจ็กต์ Google Cloud ในหน้าตัวเลือกโปรเจ็กต์
- ตรวจสอบว่าได้เปิดใช้การเรียกเก็บเงินสำหรับโปรเจ็กต์ Cloud แล้ว ดูวิธีตรวจสอบว่าได้เปิดใช้การเรียกเก็บเงินในโปรเจ็กต์แล้วหรือไม่
- คุณจะใช้ Cloud Shell ซึ่งเป็นสภาพแวดล้อมบรรทัดคำสั่งที่ทำงานใน Google Cloud คลิกเปิดใช้งาน Cloud Shell ที่ด้านบนของคอนโซล Google Cloud คุณสลับระหว่างเทอร์มินัล Cloud Shell (สําหรับเรียกใช้คําสั่งคลาวด์) กับ Editor (สําหรับสร้างโปรเจ็กต์) ได้โดยคลิกปุ่มที่เกี่ยวข้องจาก Cloud Shell

- เมื่อเชื่อมต่อกับ Cloud Shell แล้ว ให้ตรวจสอบว่าคุณได้รับการตรวจสอบสิทธิ์แล้วและตั้งค่าโปรเจ็กต์เป็นรหัสโปรเจ็กต์โดยใช้คำสั่งต่อไปนี้
gcloud auth list
- เรียกใช้คำสั่งต่อไปนี้ใน Cloud Shell เพื่อยืนยันว่าคำสั่ง gcloud รู้จักโปรเจ็กต์ของคุณ
gcloud config list project
- หากไม่ได้ตั้งค่าโปรเจ็กต์ ให้ใช้คำสั่งต่อไปนี้เพื่อตั้งค่า
gcloud config set project <YOUR_PROJECT_ID>
โปรดดูคำสั่งและการใช้งาน gcloud ในเอกสารประกอบ
เยี่ยม ตอนนี้เราพร้อมที่จะไปยังขั้นตอนถัดไปแล้ว นั่นคือการทำความเข้าใจชุดข้อมูล
4. ทำความเข้าใจชุดข้อมูลบริษัท
สำหรับ Codelab นี้ เราจะใช้ฐานข้อมูล Neo4j แบบอ่านอย่างเดียวที่ป้อนข้อมูลการลงทุนและบริษัทจากกราฟความรู้ของ Diffbot ไว้ล่วงหน้า
ชุดข้อมูลประกอบด้วย
- โหนด 237,358 รายการที่แสดงถึง
- องค์กร (บริษัท)
- ผู้คน (ผู้บริหาร พนักงาน)
- บทความ (ข่าวและการกล่าวถึง)
- อุตสาหกรรม
- เทคโนโลยี
- นักลงทุน
- ความสัมพันธ์ซึ่งรวมถึง
INVESTED_IN- การเชื่อมต่อการลงทุนCOMPETES_WITH- ความสัมพันธ์เชิงแข่งขันMENTIONS- การอ้างอิงบทความWORKS_AT- ความสัมพันธ์ในการจ้างงานIN_INDUSTRY- การจัดประเภทอุตสาหกรรม

เข้าถึงฐานข้อมูลสาธิต
สำหรับ Codelab นี้ เราจะใช้อินสแตนซ์สาธิตที่โฮสต์ เพิ่มข้อมูลรับรองต่อไปนี้ลงในโน้ต
URI: neo4j+s://demo.neo4jlabs.com
Username: companies
Password: companies
Database: companies
การเข้าถึงเบราว์เซอร์:
คุณสามารถสำรวจข้อมูลแบบภาพได้ที่ https://demo.neo4jlabs.com:7473
เข้าสู่ระบบด้วยข้อมูลเข้าสู่ระบบเดียวกัน แล้วลองเรียกใช้คำสั่งต่อไปนี้
// Sample query to explore the graph
MATCH (o:Organization)-[:HAS_COMPETITOR]->(competitor:Organization)
RETURN o.name, competitor.name
LIMIT 10
การแสดงโครงสร้างกราฟเป็นภาพ
ลองใช้การค้นหานี้ใน Neo4j Browser เพื่อดูรูปแบบความสัมพันธ์
// Find investors and their portfolio companies
MATCH (investor:Organization)-[:HAS_INVESTOR]->(company:Organization)
WITH investor, collect(company.name) as portfolio
RETURN investor.name, size(portfolio) as num_investments, portfolio
ORDER BY num_investments DESC
LIMIT 5
คําค้นหานี้จะแสดงนักลงทุนที่ใช้งานมากที่สุด 5 อันดับแรกและพอร์ตโฟลิโอของนักลงทุนเหล่านั้น
เหตุใดจึงควรใช้ฐานข้อมูลนี้สำหรับ GraphRAG
ชุดข้อมูลนี้เหมาะอย่างยิ่งสำหรับการสาธิต GraphRAG เนื่องจาก
- ความสัมพันธ์ที่ซับซ้อน: การเชื่อมต่อที่ซับซ้อนระหว่างเอนทิตี
- ข้อมูลในโลกแห่งความเป็นจริง: บริษัท บุคคล และบทความข่าวจริง
- การค้นหาแบบหลายขั้นตอน: ต้องมีการข้ามประเภทความสัมพันธ์หลายประเภท
- ข้อมูลตามเวลา: บทความที่มีการประทับเวลาสำหรับการวิเคราะห์ตามเวลา
- การวิเคราะห์ความเห็น: คะแนนความเห็นที่คำนวณไว้ล่วงหน้าสำหรับบทความ
เมื่อคุณเข้าใจโครงสร้างข้อมูลแล้ว ตอนนี้มาตั้งค่าสภาพแวดล้อมในการพัฒนาซอฟต์แวร์กัน
5. โคลนที่เก็บและกำหนดค่าสภาพแวดล้อม
โคลนที่เก็บ
ในเทอร์มินัล Cloud Shell ให้เรียกใช้คำสั่งต่อไปนี้
# Clone the repository
git clone https://github.com/sidagarwal04/neo4j-adk-multiagents.git
# Navigate into the directory
cd neo4j-adk-multiagents
สำรวจโครงสร้างที่เก็บ
โปรดสละเวลาสักครู่เพื่อทำความเข้าใจเลย์เอาต์ของโปรเจ็กต์
neo4j-adk-multiagents/
├── investment_agent/ # Main agent code
│ ├── agent.py # Agent definitions
│ ├── tools.py # Custom tool functions
│ └── .adk/ # ADK configuration
│ └── tools.yaml # MCP tool definitions
├── main.py # Application entry point
├── setup_tools_yaml.py # Configuration generator
├── requirements.txt # Python dependencies
├── example.env # Environment template
└── README.md # Project documentation
ตั้งค่าสภาพแวดล้อมเสมือน
ก่อนสร้างและเปิดใช้งานสภาพแวดล้อมเสมือนของ Python โปรดตรวจสอบว่าคุณได้ติดตั้งแพ็กเกจ uv ในระบบแล้ว
# Install uv if not already installed
pip install uv
สร้างและเปิดใช้งานสภาพแวดล้อมเสมือนของ Python โดยใช้ uv
# Create virtual environment
uv venv
# Activate the environment
source .venv/bin/activate # On macOS/Linux
# or
.venv\Scripts\activate # On Windows
คุณควรเห็น (.venv) นำหน้าพรอมต์ของเทอร์มินัล
ติดตั้งการอ้างอิง
ติดตั้งแพ็กเกจที่จำเป็นทั้งหมด
uv pip install -r requirements.txt
การขึ้นต่อกันที่สำคัญมีดังนี้
google-adk>=1.21.0 # Agent Development Kit
neo4j>=6.0.3 # Neo4j Python driver
python-dotenv>=1.0.0 # Environment variables
กำหนดค่าตัวแปรสภาพแวดล้อม
- สร้างไฟล์
.envโดยทำดังนี้
cp example.env .env
- แก้ไขไฟล์
.env
หากใช้ Cloud Shell ให้คลิก "เปิดตัวแก้ไข" ในแถบเครื่องมือ แล้วไปที่ .env และอัปเดตดังนี้
# Neo4j Configuration (Demo Database)
NEO4J_URI=neo4j+ssc://demo.neo4jlabs.com
NEO4J_USERNAME=companies
NEO4J_PASSWORD=companies
NEO4J_DATABASE=companies
# Google AI Configuration
# Choose ONE of the following options:
# Option 1: Google AI API (Recommended)
GOOGLE_GENAI_USE_VERTEXAI=0
GOOGLE_API_KEY=your_api_key_here # Get from https://aistudio.google.com/app/apikey
# Option 2: Vertex AI (If using GCP)
# GOOGLE_GENAI_USE_VERTEXAI=1
# GOOGLE_CLOUD_PROJECT=your-project-id
# GOOGLE_CLOUD_LOCATION=us-central1
# ADK Configuration
GOOGLE_ADK_MODEL=gemini-3-pro-preview # or gemini-3-flash-preview
# MCP Toolbox Configuration
MCP_TOOLBOX_URL=https://toolbox-990868019953.us-central1.run.app/mcp/sse
- การกำหนดค่ากล่องเครื่องมือ MCP (กำหนดค่าไว้ล่วงหน้าแล้ว จึงไม่จำเป็นต้องเรียกใช้)
ใน Lab นี้ ระบบได้โฮสต์และกำหนดค่า MCP Toolbox ไว้ล่วงหน้าแล้ว คุณจึงไม่จำเป็นต้องสร้างหรือจัดการไฟล์ tools.yaml ในเครื่อง
โดยปกติแล้ว คุณจะเรียกใช้คำสั่งต่อไปนี้เพื่อสร้าง tools.yaml จากตัวแปรสภาพแวดล้อมหลังจากอัปเดต investment_agent/.adk/tools.yaml.template ตามต้องการ
python setup_tools_yaml.py
ซึ่งจะสร้าง investment_agent/.adk/tools.yaml โดยกำหนดค่าข้อมูลเข้าสู่ระบบ Neo4j อย่างถูกต้องสำหรับ MCP Toolbox
คุณจะเรียกใช้สคริปต์ด้านบนได้ก็ต่อเมื่อ
- คุณโฮสต์กล่องเครื่องมือ MCP ด้วยตนเอง
- คุณกำลังเชื่อมต่อกับฐานข้อมูลหรือชุดข้อมูล Neo4j อื่น
- คุณต้องการกำหนดเครื่องมือหรือข้อมูลเข้าสู่ระบบที่กำหนดเอง
ในกรณีดังกล่าว คุณจะต้องอัปเดต URL ของ MCP Toolbox และการกำหนดค่า tools.yaml ตามนั้น
ยืนยันการกำหนดค่า
ตรวจสอบว่าได้ตั้งค่าทุกอย่างอย่างถูกต้องแล้ว
# Verify .env file exists
ls -la .env
# Verify tools.yaml was generated
ls -la investment_agent/.adk/tools.yaml
# Test Python environment
python -c "import google.adk; print('ADK installed successfully')"
# Test Neo4j connection
python -c "from neo4j import GraphDatabase; print('Neo4j driver installed')"
ตอนนี้สภาพแวดล้อมในการพัฒนาซอฟต์แวร์ได้รับการกำหนดค่าอย่างสมบูรณ์แล้ว จากนั้นเราจะเจาะลึกสถาปัตยกรรมแบบหลายเอเจนต์
6. ทำความเข้าใจสถาปัตยกรรมแบบหลายเอเจนต์
ระบบตัวแทน 4 คน
ระบบการวิจัยการลงทุนของเราใช้สถาปัตยกรรมแบบหลายเอเจนต์แบบลำดับชั้น โดยมีเอเจนต์เฉพาะทาง 4 รายทำงานร่วมกันเพื่อตอบคำค้นหาที่ซับซ้อนเกี่ยวกับบริษัท นักลงทุน และข้อมูลเชิงลึกของตลาด
┌──────────────┐
│ Root Agent │ ◄── User Query
└──────┬───────┘
│
┌────────────────┼────────────────┐
│ │ │
┌─────▼─────┐ ┌────▼─────┐ ┌────▼──────────┐
│ Graph DB │ │ Investor │ │ Investment │
│ Agent │ │ Research │ │ Research │
└───────────┘ │ Agent │ │ Agent │
└──────────┘ └───────────────┘
- Root Agent (Orchestrator):
Root Agent ทำหน้าที่เป็นผู้ประสานงานอัจฉริยะของทั้งระบบ โดยจะรับคำค้นหาของผู้ใช้ วิเคราะห์ความตั้งใจ และกำหนดเส้นทางคำขอไปยังเอเจนต์ผู้เชี่ยวชาญที่เหมาะสมที่สุด โดยคุณสามารถคิดว่าเครื่องมือนี้เป็นเหมือนผู้จัดการโปรเจ็กต์ที่เข้าใจว่าสมาชิกในทีมคนใดเหมาะกับงานแต่ละอย่างมากที่สุด นอกจากนี้ยังจัดการการรวบรวมคำตอบ จัดรูปแบบผลลัพธ์เป็นตารางหรือแผนภูมิเมื่อมีการขอ และรักษาบริบทการสนทนาในการค้นหาหลายครั้ง Root Agent จะเลือกใช้เอเจนต์เฉพาะทางมากกว่าเอเจนต์ฐานข้อมูลทั่วไปเสมอ เพื่อให้มั่นใจว่าคอมโพเนนต์ที่มีความเชี่ยวชาญมากที่สุดจะจัดการคำค้นหา
- Graph Database Agent:
Graph Database Agent คือการเชื่อมต่อโดยตรงกับความสามารถของกราฟที่มีประสิทธิภาพของ Neo4j โดยจะเข้าใจสคีมาของฐานข้อมูล สร้างการค้นหา Cypher จากภาษาธรรมชาติ และดำเนินการกราฟที่ซับซ้อน เอเจนต์นี้เชี่ยวชาญด้านคำถามเชิงโครงสร้าง การรวบรวม และการให้เหตุผลแบบหลายขั้นตอนในกราฟความรู้ ซึ่งเป็นผู้เชี่ยวชาญสำรองเมื่อการค้นหาต้องใช้ตรรกะที่กำหนดเองซึ่งเครื่องมือที่กำหนดไว้ล่วงหน้าจัดการไม่ได้ จึงจำเป็นอย่างยิ่งสำหรับการวิเคราะห์เชิงสำรวจและการค้นหาเชิงวิเคราะห์ที่ซับซ้อนซึ่งไม่ได้คาดการณ์ไว้ในการออกแบบระบบ
- ตัวแทนวิจัยนักลงทุน:
ตัวแทนวิจัยนักลงทุนมุ่งเน้นเฉพาะความสัมพันธ์ด้านการลงทุนและการวิเคราะห์พอร์ตโฟลิโอ โดยสามารถค้นหาผู้ที่ลงทุนในบริษัทที่เฉพาะเจาะจงได้โดยใช้การจับคู่ชื่อที่ตรงกัน เรียกดูพอร์ตโฟลิโอการลงทุนที่สมบูรณ์ซึ่งแสดงการลงทุนทั้งหมด และวิเคราะห์รูปแบบการลงทุนในอุตสาหกรรมต่างๆ ความเชี่ยวชาญนี้ทำให้โมเดลมีประสิทธิภาพอย่างยิ่งในการตอบคำถาม เช่น "ใครลงทุนใน ByteDance" หรือ "Sequoia Capital ลงทุนในอะไรอีก" เอเจนต์ใช้ฟังก์ชัน Python ที่กำหนดเองซึ่งจะค้นหาฐานข้อมูล Neo4j โดยตรงเพื่อหาความสัมพันธ์ที่เกี่ยวข้องกับนักลงทุน
- ตัวแทนวิจัยการลงทุน:
Investment Research Agent ใช้ประโยชน์จากกล่องเครื่องมือ Model Context Protocol (MCP) เพื่อเข้าถึงคำค้นหาที่ผ่านการตรวจสอบล่วงหน้าและเขียนโดยผู้เชี่ยวชาญ โดยสามารถดึงข้อมูลอุตสาหกรรมทั้งหมดที่มี เรียกข้อมูลบริษัทภายในอุตสาหกรรมที่เฉพาะเจาะจง ค้นหาบทความที่มีการวิเคราะห์ความรู้สึก ค้นพบการกล่าวถึงองค์กรในข่าว และรับข้อมูลเกี่ยวกับผู้ที่ทำงานในบริษัท ต่างจาก Graph Database Agent ที่สร้างการค้นหาแบบไดนามิก เอเจนต์นี้ใช้การค้นหาที่ปลอดภัย มีการเพิ่มประสิทธิภาพ กำหนดไว้ล่วงหน้า ซึ่งได้รับการจัดการและตรวจสอบจากส่วนกลาง ซึ่งทำให้ทั้งปลอดภัยและมีประสิทธิภาพสำหรับเวิร์กโฟลว์การวิจัยทั่วไป
7. การเรียกใช้และการทดสอบระบบหลายเอเจนต์
เปิดแอปพลิเคชัน
เมื่อคุณเข้าใจสถาปัตยกรรมแล้ว เรามาเรียกใช้ระบบทั้งหมดและโต้ตอบกับระบบกัน
เริ่มใช้อินเทอร์เฟซเว็บของ ADK
# Make sure you're in the project directory with activated virtual environment
cd ~/neo4j-adk-multiagents
source .venv/bin/activate # If not already activated
# Launch the application
uv run adk web
คุณควรเห็นเอาต์พุตที่คล้ายกับตัวอย่างต่อไปนี้
INFO: Started server process [2542]
INFO: Waiting for application startup.
+----------------------------------------------------------------+
| ADK Web Server started |
| |
| For local testing, access at http://127.0.0.1:8000. |
+----------------------------------------------------------------+
INFO: Application startup complete.
INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
เมื่อเห็นว่าเซิร์ฟเวอร์เริ่มทำงานเรียบร้อยแล้ว ให้เปิดเบราว์เซอร์แล้วไปที่ http://127.0.0.1:8000 เพื่อเข้าถึงแอปพลิเคชัน
การค้นหาทดสอบและลักษณะการทำงานที่คาดไว้
มาดูความสามารถของระบบด้วยคำถามที่ซับซ้อนขึ้นเรื่อยๆ กัน
การค้นหาพื้นฐาน (ตัวแทนรายเดียว)
คำค้นหา 1: ค้นพบอุตสาหกรรม
What industries are available in the database?
ลักษณะการทำงานที่คาดไว้
- Root Agent จะกำหนดเส้นทางไปยัง Investment Research Agent
- ใช้เครื่องมือ MCP:
get_industries() - แสดงผลรายการอุตสาหกรรมทั้งหมดในรูปแบบ
สิ่งที่ควรสังเกต
ใน UI ของ ADK ให้ขยายรายละเอียดการดำเนินการเพื่อดูข้อมูลต่อไปนี้
- การตัดสินใจเลือกตัวแทน
- การเรียกใช้เครื่องมือ:
get_industries() - ผลลัพธ์ดิบจาก Neo4j
- คำตอบที่จัดรูปแบบ
คำค้นหา 2: ค้นหานักลงทุน
Who invested in ByteDance?
ลักษณะการทำงานที่คาดไว้
- ตัวแทนรูทระบุว่านี่คือคำถามที่เกี่ยวข้องกับนักลงทุน
- เส้นทางไปยังตัวแทนวิจัยด้านการลงทุน
- ใช้เครื่องมือ:
find_investor_by_name("ByteDance") - แสดงผู้ลงทุนพร้อมประเภท (บุคคล/องค์กร)
สิ่งที่จะเกิดขึ้น
- รายชื่อนักลงทุนที่เกี่ยวข้องกับ ByteDance
- นักลงทุนแต่ละรายจะแสดงพร้อมชื่อและประเภทนิติบุคคล (บุคคลหรือองค์กร)
- สรุปผลลัพธ์ที่กระชับและมนุษย์อ่านได้
- พรอมต์ติดตามผลที่เสนอให้สำรวจการลงทุนหรือพอร์ตโฟลิโอของนักลงทุนที่เกี่ยวข้อง (อาจเป็น)
คำค้นหาที่ 3: บริษัทตามอุตสาหกรรม
Show me companies in the Artificial Intelligence industry
ลักษณะการทำงานที่คาดไว้
- Root Agent จะกำหนดเส้นทางไปยัง Investment Research Agent
- ใช้เครื่องมือ MCP:
get_companies_in_industry("Artificial Intelligence") - แสดงรายการบริษัท AI พร้อมรหัสและวันที่ก่อตั้ง
สิ่งที่ควรสังเกต
- สังเกตวิธีที่ตัวแทนใช้การจับคู่ชื่ออุตสาหกรรมที่ตรงกันทุกประการ
- ระบบจะจำกัดผลลัพธ์เพื่อป้องกันไม่ให้มีเอาต์พุตมากเกินไป
- จัดรูปแบบข้อมูลอย่างชัดเจนเพื่อให้ง่ายต่อการอ่าน
คำถามระดับกลาง (หลายขั้นตอนภายในเอเจนต์เดียว)
คำค้นหาที่ 4: การวิเคราะห์ความรู้สึก
Find articles with positive sentiment from January 2023
ลักษณะการทำงานที่คาดไว้
- เส้นทางไปยัง Investment Research Agent
- ใช้เครื่องมือ MCP:
get_articles_with_sentiment(0.7, 2023, 1) - แสดงบทความที่มีชื่อ คะแนนความรู้สึก และวันที่ตีพิมพ์
เคล็ดลับการแก้ไขข้อบกพร่อง:
ดูพารามิเตอร์การเรียกใช้เครื่องมือ
min_sentiment: 0.7 (เอเจนต์ตีความ "เป็นบวก" เป็น >= 0.7)year: 2023month: 1
คำค้นหา 5: การค้นหาฐานข้อมูลที่ซับซ้อน
How many companies are in the database?
ลักษณะการทำงานที่คาดไว้
- Root Agent จะกำหนดเส้นทางไปยัง Graph Database Agent
- ตัวแทนโทรหา
get_neo4j_schema()ก่อนเพื่อทำความเข้าใจโครงสร้าง - สร้าง Cypher:
MATCH (c:Company) RETURN count(c) - เรียกใช้การค้นหาและแสดงผลจำนวน
คำตอบที่คาดไว้:
There are 46,088 companies in the database.
การสืบค้นขั้นสูง (การประสานงานแบบหลายเอเจนต์)
คำค้นหาที่ 6: การวิเคราะห์พอร์ตโฟลิโอ
Who invested in ByteDance and what else have they invested in?
ลักษณะการทำงานที่คาดไว้
นี่คือคำค้นหา 2 ส่วนที่ต้องมีการประสานงานกับตัวแทน
- ขั้นตอนที่ 1: ตัวแทนรูท → ตัวแทนค้นคว้านักลงทุน
- การโทร
find_investor_by_name("ByteDance") - Gets investor list: [Rong Yue, Wendi Murdoch]
- ขั้นตอนที่ 2: สำหรับนักลงทุนแต่ละราย → ตัวแทนวิจัยนักลงทุน
- การโทร
find_investor_by_id(investor_id) - ดึงข้อมูลพอร์ตโฟลิโอทั้งหมด
- ขั้นตอนที่ 3: Root Agent รวบรวมและจัดรูปแบบ
สิ่งที่จะเกิดขึ้น
- รายชื่อนักลงทุนที่ลงทุนใน ByteDance
- สำหรับนักลงทุนแต่ละราย
- ชื่อและประเภทนิติบุคคล (บุคคลหรือองค์กร)
- รายชื่อบริษัทอื่นๆ ที่บุคคลนั้นลงทุนด้วย โดยอิงตามข้อมูลที่มี
- สรุปที่มีโครงสร้างและอ่านง่ายซึ่งจัดกลุ่มตามนักลงทุน
สิ่งที่ควรสังเกต
- การเรียกใช้เครื่องมือหลายรายการตามลำดับ
- คงบริบทไว้ระหว่างขั้นตอน
- ผลลัพธ์ที่รวบรวมอย่างชาญฉลาด
คำค้นหา 7: การวิจัยแบบหลายโดเมน
What are 5 AI companies mentioned in positive articles, and who are their CEOs?
ลักษณะการทำงานที่คาดไว้
คำค้นหาที่ซับซ้อนนี้ต้องใช้ตัวแทนและเครื่องมือหลายอย่าง ดังนี้
- ขั้นตอนที่ 1: ตัวแทนค้นคว้าข้อมูลการลงทุน
get_companies_in_industry("Artificial Intelligence")- แสดงรายการบริษัท AI
- ขั้นตอนที่ 2: ตัวแทนวิจัยการลงทุน
get_articles_with_sentiment(0.8)- แสดงบทความเชิงบวก
- ขั้นตอนที่ 3: ตัวกรองของเอเจนต์รูท
- ระบุบริษัท AI ที่ปรากฏในบทความเชิงบวก
- เลือก 5 อันดับแรก
- ขั้นตอนที่ 4: ตัวแทนด้านการวิจัยการลงทุน
get_people_in_organizations([company_names], "CEO")- ข้อมูล CEO ของการคืนสินค้า
- ขั้นตอนที่ 5: ตัวแทนรูทจัดรูปแบบคำตอบ
สิ่งที่จะเกิดขึ้น
- รายชื่อบริษัท 5 แห่งในอุตสาหกรรมปัญญาประดิษฐ์
- เฉพาะบริษัทที่ปรากฏในบทความที่ได้คะแนนเชิงบวก
- สำหรับแต่ละบริษัท
- ชื่อบริษัท
- อุตสาหกรรม
- ชื่อ CEO
- คะแนนความรู้สึกรวมหรือคะแนนความรู้สึกที่เป็นตัวแทน
สิ่งที่ควรสังเกต
- การเรียกใช้เครื่องมือหลายรายการในเอเจนต์ต่างๆ
- ตรรกะการกรองและการรวมข้อมูล
คำถามที่ 8: การวิเคราะห์คู่แข่ง
Who are YouTube's main competitors?
ลักษณะการทำงานที่คาดไว้
- Root Agent จะกำหนดเส้นทางไปยัง Graph Database Agent (การค้นหาความสัมพันธ์)
- Agent สร้าง Cypher ที่ได้รับการปรับปรุงด้วย GraphRAG ดังนี้
MATCH (c:Company {name: "YouTube"})-[:COMPETES_WITH]->(competitor)
RETURN competitor.name as competitor_name
- แสดงรายการบริษัทคู่แข่ง
คำตอบที่คาดไว้:
YouTube's main competitors are:
- TikTok (ByteDance)
- Dailymotion
- Twitter
- BuzzFeed
- Mixer
- OpenAI (for video content)
คำค้นหาติดตามผลแบบ Context-Aware
คำค้นหา 9: คำถามติดตามผล (หลังจากคำค้นหา 8)
Which investors funded both YouTube and its competitors?
ลักษณะการทำงานที่คาดไว้
- Root Agent จะจดจำบริบทก่อนหน้า (YouTube และคู่แข่ง)
- เส้นทางไปยังตัวแทนวิจัยด้านการลงทุน
- สำหรับ YouTube และคู่แข่งแต่ละราย ให้หาผู้ลงทุน
- ระบุนักลงทุนที่ปรากฏในหลายบริษัท
สิ่งที่จะเกิดขึ้น
- ระบบใช้บริบทการสนทนาที่มีอยู่ (YouTube และคู่แข่ง)
- รายชื่อนักลงทุนที่ลงทุนในบริษัทมากกว่า 1 แห่งในกลุ่มการแข่งขันนี้
- สำหรับนักลงทุนแต่ละราย
- ชื่อนักลงทุน
- รายการบริษัทที่เกี่ยวข้องซึ่งพวกเขาลงทุน
- สรุปสั้นๆ ที่ตีความโดยเน้นการทับซ้อนหรือรูปแบบเชิงกลยุทธ์ (อาจ)
คำค้นหา 10: สรุปการวิจัย
Summarize our research findings so far
ลักษณะการทำงานที่คาดไว้
- Root Agent ตรวจสอบประวัติการสนทนา
- สังเคราะห์ผลลัพธ์สำคัญจากคำค้นหาก่อนหน้า
- ให้ข้อมูลสรุปที่สอดคล้องกัน
สิ่งที่จะเกิดขึ้น
- สรุปข้อมูลเชิงลึกที่รวบรวมจากการค้นหาก่อนหน้าอย่างกระชับและมีโครงสร้างที่ดี
- ผลลัพธ์สำคัญที่จัดกลุ่มตามธีม (ภาพรวมอุตสาหกรรม การวิเคราะห์บริษัท ความรู้สึก การแข่งขัน ความเป็นผู้นำ)
- หัวข้อย่อยที่ชัดเจนซึ่งไฮไลต์สิ่งต่อไปนี้
- อุตสาหกรรมที่สำรวจ
- บริษัทและนักลงทุนที่โดดเด่น
- รูปแบบการลงทุนข้ามบริษัท
- แนวโน้มความรู้สึกของตลาด
- การเล่าเรื่องที่สอดคล้องกันซึ่งแสดงถึงการสังเคราะห์ที่รับรู้บริบทตลอดทั้งเซสชัน
ทำความเข้าใจการโต้ตอบของเอเจนต์ในมุมมองการแก้ไขข้อบกพร่อง
อินเทอร์เฟซเว็บของ ADK จะให้การมองเห็นการดำเนินการโดยละเอียด สิ่งที่คุณควรตรวจสอบมีดังนี้
- ลำดับเวลาของเหตุการณ์
แสดงลำดับเวลา
[USER] Query received
[ROOT_AGENT] Analyzing query intent
[ROOT_AGENT] Routing to investment_research_agent
[INVESTMENT_RESEARCH_AGENT] Tool call: get_companies_in_industry
[TOOL] Executing with params: {"industry_name": "Artificial Intelligence"}
[TOOL] Returned 47 results
[INVESTMENT_RESEARCH_AGENT] Formatting response
[ROOT_AGENT] Presenting to user
- รายละเอียดการเรียกใช้เครื่องมือ
คลิกการเรียกใช้เครื่องมือเพื่อดูข้อมูลต่อไปนี้
- ชื่อฟังก์ชัน
- พารามิเตอร์อินพุต
- ค่าที่แสดงผล
- เวลาดำเนินการ
- ข้อผิดพลาด
- การตัดสินใจของเอเจนต์
สังเกตการให้เหตุผลของ LLM
- เหตุผลที่เลือกเอเจนต์รายใดรายหนึ่ง
- วิธีที่ระบบตีความคำค้นหา
- เครื่องมือที่พิจารณา
- เหตุผลที่จัดรูปแบบผลลัพธ์ในลักษณะหนึ่งๆ
การสังเกตการณ์และข้อมูลเชิงลึกที่พบบ่อย
รูปแบบการกำหนดเส้นทางการค้นหา:
- คีย์เวิร์ด เช่น "นักลงทุน" "ลงทุน" → ตัวแทนการวิจัยนักลงทุน
- คีย์เวิร์ด เช่น "อุตสาหกรรม" "บริษัท" "บทความ" → ตัวแทนการวิจัยการลงทุน
- การรวบรวม การนับ ตรรกะที่ซับซ้อน → Graph Database Agent
หมายเหตุเกี่ยวกับประสิทธิภาพ:
- โดยปกติแล้วเครื่องมือ MCP จะเร็วกว่า (การค้นหาที่เพิ่มประสิทธิภาพไว้ล่วงหน้า)
- การสร้าง Cypher ที่ซับซ้อนจะใช้เวลานานกว่า (เวลาที่ LLM ใช้คิด)
- การเรียกใช้เครื่องมือหลายรายการจะเพิ่มเวลาในการตอบสนอง แต่ให้ผลลัพธ์ที่สมบูรณ์ยิ่งขึ้น
การจัดการข้อผิดพลาด:
หากการค้นหาล้มเหลว ให้ทำดังนี้
- ตัวแทนอธิบายข้อผิดพลาดที่เกิดขึ้น
- แนะนำการแก้ไข (เช่น "ไม่พบชื่อบริษัท โปรดตรวจสอบการสะกด")
- อาจลองใช้วิธีอื่น
เคล็ดลับในการทดสอบที่มีประสิทธิภาพ
- เริ่มจากง่ายๆ: ทดสอบฟังก์ชันหลักของเอเจนต์แต่ละรายก่อนที่จะใช้คำค้นหาที่ซับซ้อน
- ใช้คำถามติดตามผล: ทดสอบการจดจำบริบทด้วยคำถามติดตามผล
- สังเกตการกำหนดเส้นทาง: ดูว่าตัวแทนคนใดจัดการคำถามแต่ละรายการเพื่อทำความเข้าใจตรรกะ
- ตรวจสอบการเรียกใช้เครื่องมือ: ตรวจสอบว่าระบบดึงพารามิเตอร์จากภาษาธรรมชาติได้อย่างถูกต้อง
- ทดสอบกรณีสุดโต่ง: ลองใช้คำค้นหาที่คลุมเครือ คำที่สะกดผิด หรือคำขอที่ผิดปกติ
ตอนนี้คุณมีระบบ GraphRAG แบบหลายเอเจนต์ที่ทำงานได้อย่างเต็มรูปแบบแล้ว ทดลองใช้คำถามของคุณเองเพื่อสำรวจความสามารถของโมเดล
8. ล้างข้อมูล
โปรดทำตามขั้นตอนต่อไปนี้เพื่อเลี่ยงไม่ให้เกิดการเรียกเก็บเงินกับบัญชี Google Cloud สำหรับทรัพยากรที่ใช้ในโพสต์นี้
- ใน Google Cloud Console ให้ไปที่หน้าจัดการทรัพยากร
- ในรายการโปรเจ็กต์ ให้เลือกโปรเจ็กต์ที่ต้องการลบ แล้วคลิกลบ
- ในกล่องโต้ตอบ ให้พิมพ์รหัสโปรเจ็กต์ แล้วคลิกปิดเพื่อลบโปรเจ็กต์
9. ขอแสดงความยินดี
🎉 ยินดีด้วย คุณสร้างระบบ GraphRAG แบบหลายเอเจนต์คุณภาพระดับโปรดักชันโดยใช้ Agent Development Kit ของ Google, Neo4j และ MCP Toolbox ได้สำเร็จแล้ว
การผสานรวมความสามารถในการจัดระเบียบอัจฉริยะของ ADK เข้ากับโมเดลข้อมูลที่อิงตามความสัมพันธ์ของ Neo4j และความปลอดภัยของคำค้นหา MCP ที่ตรวจสอบล่วงหน้าแล้ว ทำให้คุณสร้างระบบที่ซับซ้อนซึ่งทำงานได้มากกว่าการค้นหาฐานข้อมูลแบบง่ายๆ โดยระบบจะทำความเข้าใจบริบท เหตุผลในความสัมพันธ์ที่ซับซ้อน และประสานงานกับเอเจนต์เฉพาะทางเพื่อมอบข้อมูลเชิงลึกที่ครอบคลุมและแม่นยำ
ในโค้ดแล็บนี้ คุณได้ทำสิ่งต่อไปนี้
✅ สร้างระบบหลายเอเจนต์โดยใช้ Agent Development Kit (ADK) ของ Google พร้อมการจัดระเบียบแบบลำดับชั้น
✅ ฐานข้อมูลกราฟ Neo4j ที่ผสานรวมเพื่อใช้ประโยชน์จากคำค้นหาที่รับรู้ความสัมพันธ์และการให้เหตุผลแบบหลายขั้นตอน
✅ ติดตั้งใช้งานกล่องเครื่องมือ MCP สำหรับการค้นหาฐานข้อมูลที่ปลอดภัยและตรวจสอบล่วงหน้าเป็นเครื่องมือที่นำกลับมาใช้ใหม่ได้
✅ สร้างเอเจนต์เฉพาะทางสำหรับการวิจัยนักลงทุน การวิเคราะห์การลงทุน และการดำเนินการฐานข้อมูลกราฟ
✅ ออกแบบการกำหนดเส้นทางอัจฉริยะที่มอบหมายคำถามไปยังตัวแทนผู้เชี่ยวชาญที่เหมาะสมที่สุดโดยอัตโนมัติ
✅ จัดการประเภทข้อมูลที่ซับซ้อนด้วยการซีเรียลไลซ์ประเภท Neo4j ที่เหมาะสมเพื่อการผสานรวม Python ที่ราบรื่น
✅ ใช้แนวทางปฏิบัติแนะนำในการผลิตสำหรับการออกแบบเอเจนต์ การจัดการข้อผิดพลาด และการแก้ไขข้อบกพร่องของระบบ
ขั้นตอนต่อไปคือ
สถาปัตยกรรม GraphRAG แบบหลายเอเจนต์นี้ไม่ได้จำกัดอยู่แค่การวิจัยด้านการลงทุน แต่ยังขยายไปถึงสิ่งต่อไปนี้ได้ด้วย
- บริการทางการเงิน: การเพิ่มประสิทธิภาพพอร์ตโฟลิโอ การประเมินความเสี่ยง การตรวจหาการประพฤติมิชอบ
- การดูแลสุขอนามัย: การประสานงานการดูแลผู้ป่วย การวิเคราะห์ปฏิกิริยาระหว่างยา การวิจัยทางคลินิก
- อีคอมเมิร์ซ: คำแนะนำที่ปรับเปลี่ยนในแบบของคุณ การเพิ่มประสิทธิภาพซัพพลายเชน ข้อมูลเชิงลึกเกี่ยวกับลูกค้า
- กฎหมายและการปฏิบัติตามข้อกำหนด: การวิเคราะห์สัญญา การตรวจสอบกฎระเบียบ การวิจัยกฎหมาย
- การวิจัยทางวิชาการ: การทบทวนวรรณกรรม การค้นพบการทำงานร่วมกัน การวิเคราะห์การอ้างอิง
- ข้อมูลอัจฉริยะขององค์กร: การวิเคราะห์คู่แข่ง การวิจัยตลาด กราฟความรู้ขององค์กร
ไม่ว่าคุณจะมีข้อมูลที่ซับซ้อนและเชื่อมต่อกัน + ความเชี่ยวชาญเฉพาะด้าน + อินเทอร์เฟซภาษาธรรมชาติ ที่ใดก็ตาม การผสมผสานระบบหลายเอเจนต์ ADK + กราฟความรู้ Neo4j + การค้นหาที่ผ่านการตรวจสอบ MCP จะช่วยขับเคลื่อนแอปพลิเคชันอัจฉริยะสำหรับองค์กรในยุคถัดไป
เมื่อ Agent Development Kit และโมเดล Gemini ของ Google พัฒนาต่อไป คุณจะสามารถรวมรูปแบบการให้เหตุผลที่ซับซ้อนยิ่งขึ้น การผสานรวมข้อมูลแบบเรียลไทม์ และความสามารถแบบมัลติโมดัลเพื่อสร้างระบบที่ชาญฉลาดอย่างแท้จริงและรับรู้บริบทได้
สำรวจและสร้างสรรค์ต่อไป แล้วยกระดับแอปพลิเคชันเอเจนต์อัจฉริยะของคุณไปอีกขั้น
สํารวจบทแนะนำเกี่ยวกับกราฟความรู้ภาคปฏิบัติเพิ่มเติมได้ที่ Neo4j GraphAcademy และค้นพบรูปแบบเอเจนต์เพิ่มเติมในที่เก็บตัวอย่าง ADK
🚀 พร้อมสร้างระบบเอเจนต์อัจฉริยะตัวถัดไปแล้วหรือยัง