Devika AI: Kỹ Sư Phần Mềm AI Tác Nhân Mã Nguồn Mở
Tổng quan
Devika AI là một kỹ sư phần mềm AI tác nhân mã nguồn mở. Nó được thiết kế để hiểu các chỉ dẫn phức tạp của con người, chia nhỏ thành các bước hành động, tiến hành nghiên cứu và viết mã để đạt được các mục tiêu xác định. Devika đặt mục tiêu trở thành một lựa chọn thay thế mã nguồn mở cạnh tranh so với các kỹ sư phần mềm AI độc quyền như Devin của Cognition AI, với mục tiêu tham vọng là sánh kịp và cuối cùng vượt qua hiệu suất của nó trong các điểm chuẩn như SWE-bench.
Mục đích chính và Nhóm người dùng mục tiêu
- Mục đích chính: Cách mạng hóa quá trình phát triển phần mềm bằng cách cung cấp một lập trình viên AI đồng hành có khả năng xử lý các tác vụ mã hóa phức tạp với sự hướng dẫn tối thiểu của con người, bao gồm tạo các tính năng mới, sửa lỗi hoặc phát triển toàn bộ dự án.
- Nhóm người dùng mục tiêu: Các nhà phát triển, kỹ sư phần mềm và các nhóm đang tìm kiếm một trợ lý AI tiên tiến để tự động hóa và tinh giản quy trình làm việc viết mã của họ, đặc biệt là những người quan tâm đến các giải pháp mã nguồn mở và tận dụng các mô hình ngôn ngữ lớn cho các tác vụ kỹ thuật phần mềm.
Chi tiết và Hoạt động của Chức năng
- Hiểu chỉ dẫn: Diễn giải các chỉ dẫn cấp cao của con người cho các tác vụ phát triển phần mềm.
- Phân rã tác vụ: Chia nhỏ các mục tiêu phức tạp thành các bước quản lý được, theo trình tự.
- Nghiên cứu thông tin: Sử dụng khả năng duyệt web và trích xuất từ khóa theo ngữ cảnh để thu thập thông tin liên quan.
- Tạo mã: Viết mã bằng nhiều ngôn ngữ lập trình dựa trên nghiên cứu và yêu cầu tác vụ.
- Hỗ trợ LLM: Hỗ trợ nhiều mô hình ngôn ngữ lớn bao gồm Claude 3, GPT-4, Gemini, Mistral, Groq và các LLM cục bộ thông qua Ollama. Các mô hình Claude 3 được khuyến nghị để đạt hiệu suất tối ưu.
- Theo dõi trạng thái động: Trực quan hóa và theo dõi tiến độ và trạng thái hiện tại của tác nhân.
- Giao diện trò chuyện: Cho phép tương tác ngôn ngữ tự nhiên để cung cấp chỉ dẫn và nhận cập nhật.
- Quản lý dự án: Tổ chức và quản lý các tác vụ phát triển phần mềm trên cơ sở từng dự án.
- Kiến trúc có thể mở rộng: Được thiết kế để dễ dàng tích hợp các tính năng và chức năng mới.
- Giao diện Web: Có thể truy cập thông qua trình duyệt web để tương tác với người dùng và quản lý dự án.
- Cấu hình: Cho phép người dùng cấu hình khóa API cho nhiều dịch vụ (Bing, Google Search, OpenAI, Gemini, Claude, Mistral, Groq, Netlify) và các điểm cuối API (Bing, Google, Ollama, OpenAI).
Lợi ích cho người dùng
- Tăng hiệu quả: Tự động hóa các phần đáng kể của quy trình phát triển phần mềm, đẩy nhanh quá trình hoàn thành dự án.
- Giảm công sức thủ công: Giảm thiểu nhu cầu can thiệp của con người trong các tác vụ mã hóa và nghiên cứu.
- Nâng cao năng suất: Đóng vai trò như một lập trình viên AI đồng hành, cho phép các nhà phát triển tập trung vào thiết kế cấp cao hơn và giải quyết vấn đề.
- Tiếp cận AI tiên tiến: Tận dụng các LLM hiện đại và khả năng lập kế hoạch AI để tạo mã phức tạp.
- Tính linh hoạt của mã nguồn mở: Cung cấp một giải pháp thay thế minh bạch và có thể tùy chỉnh so với các giải pháp độc quyền.
- Quy trình làm việc được tinh giản: Tích hợp nghiên cứu, lập kế hoạch và mã hóa vào một quy trình duy nhất, gắn kết.
Khả năng tương thích và Tích hợp
- Hệ điều hành: Yêu cầu Python >= 3.10 và < 3.12, NodeJs >= 18 và Bun.
- Tích hợp trình duyệt: Sử dụng Playwright cho khả năng duyệt web.
- Tích hợp API: Có thể cấu hình với khóa API cho nhiều công cụ tìm kiếm (Bing, Google Search) và nhà cung cấp LLM (OpenAI, Gemini, Anthropic, Mistral, Groq).
- Triển khai: Hỗ trợ khóa API Netlify để triển khai và quản lý các dự án web.
- Hỗ trợ LLM cục bộ: Tích hợp với Ollama để chạy các mô hình ngôn ngữ cục bộ.
Phản hồi của khách hàng và Nghiên cứu điển hình
- Hiện đang trong giai đoạn phát triển ban đầu/thử nghiệm với nhiều tính năng chưa được triển khai/bị lỗi.
- Đặt mục tiêu trở thành một lựa chọn thay thế mã nguồn mở cạnh tranh so với Devin của Cognition AI, với mục tiêu "quá tham vọng" là đạt được và cuối cùng đánh bại điểm chuẩn SWE-bench của nó.
- Các đóng góp của cộng đồng được hoan nghênh để đẩy nhanh quá trình phát triển và triển khai tính năng.
- Các bản demo có sẵn (ví dụ:
devika-pygame-demo.mp4) thể hiện khả năng của nó.
Phương pháp truy cập và kích hoạt
- Mã nguồn: Có sẵn trên GitHub:
https://github.com/stitionai/devika. - Cài đặt:
- Clone kho lưu trữ GitHub.
- Đi đến thư mục dự án.
- Tạo môi trường ảo và cài đặt các phụ thuộc bằng cách sử dụng
uv venvvàuv pip install -r requirements.txt. - Cài đặt Playwright cho khả năng trình duyệt:
playwright install --with-deps. - Khởi động máy chủ Devika:
python devika.py. - Đối với giao diện người dùng, điều hướng đến thư mục
ui/, chạybun install, sau đóbun run start.
- Truy cập: Truy cập giao diện web của Devika bằng cách điều hướng đến
http://127.0.0.1:3001trong một trình duyệt web. - Cấu hình: Khóa API và điểm cuối được cấu hình thông qua trang cài đặt trong giao diện người dùng, tạo một tệp
config.tomltrong thư mục gốc.