- Floki อยู่ในช่วงเริ่มต้นของการพัฒนา กรอบการทำงานมีการพัฒนาอย่างแข็งขันโดยเป็นส่วนหนึ่งของการวิจัยที่กำลังดำเนินอยู่ และฉันยังคงสำรวจและเรียนรู้วิธีบูรณาการ Dapr อย่างมีประสิทธิภาพ คาดว่าจะมีการเปลี่ยนแปลงครั้งใหญ่ใน API และโครงสร้างหลักเมื่อเฟรมเวิร์กเติบโตเต็มที่และข้อมูลเชิงลึกได้รับการปรับปรุง
Floki เป็นเฟรมเวิร์กโอเพ่นซอร์สสำหรับนักวิจัยและนักพัฒนาเพื่อทดลองกับตัวแทนอัตโนมัติที่ใช้ LLM โดยมีเครื่องมือสำหรับสร้าง ประสานงาน และจัดการตัวแทนในขณะที่เชื่อมต่อกับ API การอนุมาน LLM ได้อย่างราบรื่น Floki สร้างขึ้นบน Dapr โดยใช้ประโยชน์จากโมเดลการเขียนโปรแกรมแบบรวมที่ทำให้ไมโครเซอร์วิสง่ายขึ้น และรองรับทั้งเวิร์กโฟลว์ที่กำหนดและการโต้ตอบที่ขับเคลื่อนด้วยเหตุการณ์ ด้วยการใช้รูปแบบ Virtual Actor ของ Dapr ทำให้ Floki ช่วยให้เจ้าหน้าที่ทำหน้าที่เป็นหน่วยอิสระและพึ่งพาตนเองได้ ซึ่งประมวลผลข้อความตามลำดับ ขจัดข้อกังวลเรื่องการทำงานพร้อมกัน ขณะเดียวกันก็บูรณาการเข้ากับขั้นตอนการทำงานขนาดใหญ่ได้อย่างราบรื่น นอกจากนี้ยังอำนวยความสะดวกในการทำงานร่วมกันของตัวแทนผ่านการบูรณาการ Pub/Sub ของ Dapr โดยที่ตัวแทนสื่อสารผ่านบัสข้อความที่ใช้ร่วมกัน ทำให้การออกแบบเวิร์กโฟลว์ง่ายขึ้นซึ่งมีการกระจายงานอย่างมีประสิทธิภาพ และตัวแทนทำงานร่วมกันเพื่อบรรลุเป้าหมายร่วมกัน ด้วยการนำคุณสมบัติเหล่านี้มารวมกัน Floki มอบวิธีที่มีประสิทธิภาพในการสำรวจเวิร์กโฟลว์เอเจนต์และส่วนประกอบที่ช่วยให้ระบบหลายเอเจนต์สามารถทำงานร่วมกันและปรับขนาดได้ ทั้งหมดนี้ขับเคลื่อนโดย Dapr
Dapr มอบโมเดลการเขียนโปรแกรมแบบครบวงจรให้กับ Floki ซึ่งช่วยให้การพัฒนาระบบที่ยืดหยุ่นและปรับขนาดได้ง่ายขึ้นโดยนำเสนอ API ในตัวสำหรับฟีเจอร์ต่างๆ เช่น การเรียกใช้บริการ การส่งข้อความ Pub/Sub เวิร์กโฟลว์ และแม้กระทั่งการจัดการสถานะ ส่วนประกอบเหล่านี้จำเป็นสำหรับการกำหนดเวิร์กโฟลว์เอเจนต์ ช่วยให้นักพัฒนามุ่งเน้นไปที่การออกแบบเอเจนต์และเวิร์กโฟลว์แทนที่จะสร้างคุณสมบัติพื้นฐานขึ้นมาใหม่ ด้วยการใช้ประโยชน์จากสถาปัตยกรรมรถเทียมข้างรถจักรยานยนต์ของ Dapr และรันไทม์ที่ขับเคลื่อนด้วยเหตุการณ์แบบพกพา Floki ยังช่วยให้ตัวแทนสามารถทำงานร่วมกันได้อย่างมีประสิทธิภาพ แบ่งปันงาน และปรับตัวแบบไดนามิกผ่านสภาพแวดล้อมคลาวด์และ Edge การผสานรวมที่ราบรื่นนี้รวบรวมเวิร์กโฟลว์ที่กำหนดและการตัดสินใจแบบ LLM มารวมกันไว้ในระบบที่เป็นหนึ่งเดียว ทำให้ง่ายต่อการทดลองกับระบบหลายเอเจนต์และเวิร์กโฟลว์เอเจนต์ที่ปรับขนาดได้
Service-to-Service Invocation : อำนวยความสะดวกในการสื่อสารโดยตรงระหว่างเอเจนต์ด้วยการค้นพบบริการในตัว การจัดการข้อผิดพลาด และการติดตามแบบกระจาย เจ้าหน้าที่สามารถใช้ประโยชน์จากสิ่งนี้สำหรับการส่งข้อความแบบซิงโครนัสในเวิร์กโฟลว์หลายตัวแทน
⚡️ เผยแพร่และสมัครสมาชิก : รองรับการทำงานร่วมกันแบบหลวมๆ ระหว่างตัวแทนผ่านบัสข้อความที่ใช้ร่วมกัน ช่วยให้สามารถโต้ตอบตามเหตุการณ์แบบเรียลไทม์ซึ่งมีความสำคัญต่อการกระจายงานและการประสานงาน
API เวิร์กโฟลว์ : กำหนดเวิร์กโฟลว์ที่ต่อเนื่องยาวนานซึ่งรวมกระบวนการที่กำหนดขึ้นเข้ากับการตัดสินใจแบบ LLM Floki ใช้สิ่งนี้เพื่อประสานเวิร์กโฟลว์ตัวแทนหลายขั้นตอนที่ซับซ้อนได้อย่างราบรื่น
- การจัดการสถานะ : ให้การจัดเก็บคีย์-ค่าที่ยืดหยุ่นสำหรับตัวแทนเพื่อรักษาบริบทระหว่างการโต้ตอบ รับรองความต่อเนื่องและความสามารถในการปรับตัวในระหว่างเวิร์กโฟลว์
- นักแสดง : นำรูปแบบ Virtual Actor ไปใช้ ช่วยให้ตัวแทนดำเนินการเป็นหน่วยที่มีสถานะสมบูรณ์ในตัวเองและจัดการข้อความตามลำดับ ซึ่งช่วยขจัดข้อกังวลเรื่องการทำงานพร้อมกันและเพิ่มความสามารถในการปรับขนาดในระบบตัวแทนของ Floki
ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้ง Python ไว้แล้ว Python >=3.9
pip ติดตั้ง floki-ai
pip ติดตั้ง git+https://github.com/Cyb3rWard0g/floki.git
poetry
:โคลนคอมไพล์ https://github.com/Cyb3rWard0g/flokicd floki ติดตั้งบทกวี
ติดตั้ง Dapr CLI เพื่อจัดการงานที่เกี่ยวข้องกับ Dapr เช่น การรันแอปพลิเคชันด้วย Sidecar การดูบันทึก และการเปิดใช้งานแดชบอร์ด Dapr ทำงานได้อย่างราบรื่นกับทั้งสภาพแวดล้อมที่โฮสต์เองและ Kubernetes สำหรับคำแนะนำทีละขั้นตอนโดยละเอียด โปรดไปที่หน้าการติดตั้ง Dapr CLI อย่างเป็นทางการ
ตรวจสอบว่าติดตั้ง CLI แล้วโดยการรีสตาร์ทเทอร์มินัล/พรอมต์คำสั่งของคุณ และเรียกใช้สิ่งต่อไปนี้:
ดาพร -ฮ
ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้ง Docker ไว้แล้ว ฉันใช้นักเทียบท่าเดสก์ท็อป
เริ่มต้น Dapr ภายในเครื่องเพื่อตั้งค่าสภาพแวดล้อมที่โฮสต์ด้วยตนเองสำหรับการพัฒนา กระบวนการนี้จะติดตั้งไบนารี Sidecar ของ Dapr รันบริการที่จำเป็น เช่น Redis (ที่เก็บของรัฐและนายหน้าข้อความ) และ Zipkin (ความสามารถในการสังเกต) และเตรียมโฟลเดอร์คอมโพเนนต์เริ่มต้น สำหรับขั้นตอนโดยละเอียด โปรดดูคำแนะนำอย่างเป็นทางการเกี่ยวกับการเริ่มต้น Dapr ภายในเครื่อง
ในการเริ่มต้นคอนเทนเนอร์เครื่องบินควบคุม Dapr และสร้างไฟล์การกำหนดค่าเริ่มต้น ให้รัน:
dapr เริ่มต้น
ตรวจสอบว่าคุณมีอินสแตนซ์คอนเทนเนอร์ที่มี daprio/dapr
, openzipkin/zipkin
และ redis
ที่ทำงานอยู่:
นักเทียบท่าปล
Floki เกิดจากความปรารถนาที่จะสำรวจและเรียนรู้เพิ่มเติมเกี่ยวกับ Dapr และศักยภาพในการสร้างระบบเอเจนต์ ฉันต้องการทำความเข้าใจวิธีการปรับใช้ตัวแทนเป็นบริการ จัดการการสื่อสารด้วยข้อความ และเชื่อมต่อส่วนประกอบต่างๆ ได้อย่างมีประสิทธิภาพ ระหว่างทาง ฉันมองหากรอบการทำงานที่กำหนดไว้หลายประการสำหรับแนวคิดและคำแนะนำ ซึ่งช่วยให้คิดและแนวทางของฉัน:
https://github.com/microsoft/autogen
https://github.com/langchain-ai/langchain
https://github.com/run-llama/llama_deploy
แม้ว่ากรอบงานเหล่านี้จะให้ข้อมูลเชิงลึกอันมีค่า แต่ Floki ก็เป็นแนวทางเฉพาะของฉันในการใช้ประโยชน์จาก Dapr สำหรับเวิร์กโฟลว์และระบบที่ใช้ตัวแทน มันสะท้อนถึงเส้นทางการเรียนรู้ของฉันและการวิจัยอย่างต่อเนื่องในพื้นที่ที่น่าตื่นเต้นนี้