Dev Assistant เป็นโปรเจ็กต์ Python ที่สาธิตตัวแทนอัจฉริยะที่สามารถปฏิบัติงาน เรียนรู้จากสภาพแวดล้อม และประเมินความก้าวหน้าไปสู่วัตถุประสงค์ที่กำหนด เอเจนต์ประกอบด้วยหลายโมดูล โดยแต่ละโมดูลจะรับผิดชอบลักษณะเฉพาะของพฤติกรรมของเอเจนต์
ตัวแทนดำเนินการบนพื้นฐานของวัตถุประสงค์อินพุตที่ผู้ใช้ให้ไว้ และใช้เครื่องมือมากมายเพื่อให้บรรลุผลลัพธ์ที่ต้องการ
เครื่องมือนี้มีประโยชน์อย่างยิ่งสำหรับงานที่ส่งผลให้เกิดการสร้างไฟล์หลายไฟล์เมื่อเสร็จสิ้น และได้รับการออกแบบมาเพื่อปรับปรุงขั้นตอนการทำงานของนักพัฒนา
ส่วนประกอบสำคัญ
- ReasoningModule: สร้างและจัดลำดับความสำคัญของงานตามวัตถุประสงค์ของตัวแทนและสถานะปัจจุบัน
- PerceptionModule: ประมวลผลงานและผลลัพธ์เพื่อปรับให้เหมาะสมเพื่อความเข้าใจและการดำเนินการของตัวแทน
- ExecutionModule: ดำเนินงานโดยใช้เครื่องมือต่างๆ และส่งกลับผลลัพธ์
- LearningModule: เรียนรู้จากการสังเกตและปรับพฤติกรรมของตัวแทนเพื่อปรับปรุงประสิทธิภาพ
- MemoryModule: จัดเก็บและดึงข้อมูลที่เกี่ยวข้องตามงานและวัตถุประสงค์ของตัวแทน
- โมดูลการประเมินผล: ประเมินความคืบหน้าของตัวแทนไปสู่วัตถุประสงค์และพิจารณาว่าบรรลุวัตถุประสงค์หรือไม่
วิธีใช้
หากต้องการตั้งค่าโครงการ ให้ทำตามขั้นตอนเหล่านี้:
- โคลนพื้นที่เก็บข้อมูลไปยังเครื่องภายในของคุณ
- ติดตั้งการขึ้นต่อกันที่จำเป็นโดยการรัน
make install
- ตั้งค่าตัวแปรสภาพแวดล้อมที่จำเป็นในไฟล์ .
.envrc
คุณจะต้องระบุคีย์ OpenAI API ของคุณ - รันโปรเจ็กต์โดยใช้คำสั่ง
make docker
หรือ make
.
ดำเนินโครงการ
คุณสามารถดำเนินโครงการในโหมดต่างๆ:
- หากต้องการรันโปรเจ็กต์โดยมีวัตถุประสงค์เฉพาะ ให้ใช้คำสั่ง
python -u -m main --obj "Your objective here"
- หากต้องการรันโปรเจ็กต์ในโหมด verbose ให้เพิ่มแฟล็ก
--verbose
ให้กับคำสั่ง - หากต้องการรันโปรเจ็กต์ด้วยวิชวลไลเซอร์ ให้เพิ่มแฟล็ก
--visualizer
ให้กับคำสั่ง
คำเตือน:
ตัวแทนมีเครื่องมือที่ช่วยให้สามารถปรับเปลี่ยนเครื่องที่กำลังทำงานอยู่ได้ ขอแนะนำให้รันเอเจนต์ภายในคอนเทนเนอร์นักเทียบท่า วิ่ง
ทำนักเทียบท่า
คำสั่งให้เริ่มคอนเทนเนอร์
เครื่องมือ
ผู้ช่วยใช้เครื่องมือหลายอย่างเพื่อทำงานให้เสร็จสิ้น เครื่องมือเหล่านี้บางส่วนได้แก่:
- หลาม REPL
- คำสั่งทุบตี
- การจัดการไฟล์ (อ่าน เขียน ลบ ฯลฯ)
- บูรณาการ GitHub
- การขูดเว็บ
โครงสร้าง
โปรเจ็กต์ประกอบด้วยไฟล์ Python หลายไฟล์ แต่ละไฟล์มีโมดูลหรือคลาสเฉพาะ:
- AgentOrchestrator.py: ประกอบด้วยคลาส AgentOrchestrator หลัก ซึ่งประสานโมดูลต่างๆ เพื่อให้บรรลุวัตถุประสงค์ของเอเจนต์
- main.py: สคริปต์หลักที่รันเอเจนต์และจัดการอาร์กิวเมนต์บรรทัดคำสั่ง
การปรับปรุงในอนาคต
- ปรับปรุงความสามารถของตัวแทนในการจัดการวัตถุประสงค์และงานที่ซับซ้อนมากขึ้น
- เพิ่มเครื่องมือและความสามารถเพิ่มเติมให้กับ ExecutionModule
- ปรับปรุงความสามารถในการเรียนรู้และการปรับตัวของตัวแทน
- ใช้วิชวลไลเซอร์เพื่อแสดงความคืบหน้าและกระบวนการตัดสินใจของตัวแทน
มีส่วนร่วม
หากคุณต้องการมีส่วนร่วมในโปรเจ็กต์ โปรดส่งคำขอดึงข้อมูลหรือเปิดปัญหาในพื้นที่เก็บข้อมูลได้เลย
ลิงค์
- อัตโนมัติ-GPT
- ที่รักAGI
- ดัชนีลามะ
- แลงเชน
ใบอนุญาต
โครงการนี้ได้รับอนุญาตภายใต้ใบอนุญาต MIT