介绍
Devika是一名高级人工智能软件工程师,可以理解人类的高级指令,将它们分解成步骤,研究相关信息,并编写代码来实现给定的目标。Devika利用大型语言模型、规划和推理算法以及网页浏览能力来智能地开发软件。
Devika的目标是通过提供一个人工智能结对程序员来彻底改变我们构建软件的方式,他可以在最少的人工指导下完成复杂的编码任务。无论您是需要创建新功能,修复错误,还是从头开始开发整个项目,Devika都可以为您提供帮助。
Devika是模仿Devin设计的,旨在成为Devin的开源替代品。
演示
Devika演示
功能特性
Claude 3, GPT-4, GPT-3.5,并通过Ollama本地LLM先进的人工智能规划和推理能力上下文关键字提取的重点研究无缝的网页浏览和信息收集使用多种编程语言编写代码动态代理状态跟踪和可视化通过聊天界面进行自然语言交互基于项目的组织和管理用于添加新特性和集成的可扩展架构系统架构
Devika的系统架构由以下关键组件组成:
用户界面:一个基于web的聊天界面,用于与Devika交互、查看项目文件和监视代理的状态。
代理核心:协调AI计划、推理和执行过程的核心组件。它与各个子代理和模块通信以完成任务。
大型语言模型:Devika利用最先进的语言模型,如Claude、GPT-4和Local llm,通过Ollama进行自然语言理解、生成和推理。
计划和推理引擎:负责将高层目标分解为可操作的步骤,并根据当前环境做出决策。
研究模块:利用关键字提取和网页浏览功能来收集手头任务的相关信息。
代码编写模块:根据计划、研究成果和用户需求生成代码。支持多种编程语言。
浏览器交互模块:使Devika能够导航网站,提取信息,并根据需要与web元素进行交互。
知识库:存储和检索特定于项目的信息、代码片段和已学习的知识,以便进行有效的访问。
数据库:保存项目数据、代理状态和配置设置。
快速启动
1、安装 uv
https://github.com/astral-sh/uv
2、安装 bun
https://bun.sh/docs/installation
3、安装和设置 Ollama(可选)
https://ollama.com/
然后执行如下命令:
ollama servegit clone https://github.com/stitionai/devika.gitcd devika/uv venvsource .venv/bin/activateuv pip install -r requirements.txtplaywright install --with-depscd ui/bun installbun run devcd ..python3 devika.py
通过打开浏览器并导航到 http://127.0.0.1:3000 来访问Devika web界面。
配置
Devika需要特定的配置设置和API密钥才能正常工作。
当第一次运行Devika时,它将在根目录中为您创建一个 config.toml 文件。可以通过UI在设置页面中进行以下设置:
API KEYS API 密钥SQLITE_DB :用于存储Devika数据的SQLite数据库文件的路径。
SCREENSHOTS_DIR :存储Devika捕获的屏幕截图的目录。
PDFS_DIR : Devika处理后的PDF文件存放的目录。
PROJECTS_DIR :存放Devika项目的目录。
LOGS_DIR :存放Devika日志的目录。
REPOS_DIR :由Devika克隆的Git存储库的存放目录。
WEB_SEARCH :决定默认的网页搜索方式。接受的值为:google、bing或ddgs。
BING :您的必应搜索API密钥,用于web搜索功能。
GOOGLE_SEARCH :您的Google搜索API密钥,用于web搜索功能。
GOOGLE_SEARCH_ENGINE_ID :您的谷歌搜索引擎Id,用于使用谷歌进行网络搜索。
OPENAI :访问GPT模型的OpenAI API密钥。
GEMINI :用于访问Gemini模型的Gemini API密钥。
CLAUDE :用于访问Claude模型的Anthropic API密钥。
MISTRAL: Your Mistral API key for accessing Mistral models.
MISTRAL :访问Mistral模型的Mistral API键。
GROQ :访问Groq模型的Groq API密钥。
NETLIFY :用于部署和管理web项目的netflix API密钥。
更多信息请参考:https://github.com/stitionai/devika