Devika AI: Open Source Software Engineer - Download, Github

Devika AI is an open source AI software engineer that can understand high-level human instructions, break them down into steps, research relevant information, and generate the code for particular task. It uses Claude 3, GPT-4, GPT-3.5, and Local LLMs via Ollama.

Price: Free

Operating System: Windows, Linux

Application Category: AI Software Engineer

Editor's Rating:
4

What is Devika AI?

Devika AI is an open source AI software engineer that can understand high-level human instructions, break them down into steps, research relevant information, and generate the code for particular task. It uses Claude 3GPT-4GPT-3.5, and Local LLMs via Ollama.

AI EngineerDevika AI
FounderStitionai
CategoryAgentic AI Software Engineer
FeatureProgramming, Planning and Reasoning
Download/Installhttps://github.com/stitionai/devika
Launch Date21 March 2024
Project Versionv1
CostOpen Source (Free)
AlternativeDevin by Cognition AI
Devika DiscordServer Link

Devika AI Features:

1. AI Planning and Reasoning:

Devika possesses powerful planning and reasoning capabilities. It can break down high-level human instructions into actionable steps, making it adept at tackling complex tasks.

2. Multi-Language Model Support:

Devika AI works with various language models, including Claude 3, GPT-4, GPT-3.5, and Local LLMs via Ollama. For optimal performance, the Claude 3 family of models is recommended.

3. Contextual Keyword Extraction:

It extracts relevant keywords from context, allowing it to focus its research efforts effectively.

4. Web Browsing and Information Gathering:

Devika can browse the web to gather up-to-date and relevant information. This feature enhances its ability to provide accurate responses.

5. Code Generation in Multiple Languages:

Whether it’s Python, Java, or any other language, Devika can generate code snippets tailored to your requirements.

6. Dynamic Agent State Tracking and Visualization:

Devika keeps track of its own state during interactions, ensuring a coherent and context-aware conversation.

7. Natural Language Interaction via Chat Interface:

Communicate with Devika using natural language. It understands your instructions and responds accordingly.

8. Project-Based Organization and Management:

Devika organizes work based on projects, making it easy to manage and collaborate on software development tasks.

9. Extensible Architecture:

Designed for flexibility, Devika allows easy integration of new features and enhancements.

  • Open Source
  • AI planning and reasoning capabilities
  • Keyword extraction
  • Code writing
  • Natural language interaction
  • Supports multiple programming languages
  • Web Browsing

Devika AI Working

Devika AI works like a smart assistant for various tasks, designed to make complex processes simpler.

Here’s a breakdown of how it operates:

User Interface: Think of this as the face of Devika, where you interact with it. It’s a web-based chat interface where you can talk to Devika, check project files, and see what it’s up to.

Agent Core: This is the brain of Devika. It handles all the planning, decision-making, and execution processes. It talks to different parts of Devika to get things done efficiently.

Large Language Models: Devika is equipped with some really smart language models like Claude, GPT-4, and Local LLMs via Ollama.

Planning and Reasoning Engine: It takes big goals you give to Devika and breaks them down into smaller, manageable steps. It then decides the best way to tackle these steps based on what’s happening.

Research Module: When Devika needs more information to complete a task, it can search the web for relevant data.

Code Writing Module: This is where Devika’s coding skills come into play. If your task involves coding, Devika can generate code based on the plan it made and the information it found. It’s like having a coding buddy who writes code for you.

Browser Interaction Module: Devika can also surf the web! It can navigate websites, grab information, and interact with different parts of web pages. This comes in handy for tasks that require online research or data extraction.

Knowledge Base: This helps it work more efficiently and provide better assistance based on past experiences.

Database: All the project-related data, Devika’s state, and settings are stored in a database. This ensures that Devika remembers where it left off and can pick up tasks seamlessly.

How to Install Devika AI?

Sure, here’s a step-by-step guide on how to install Devika:

Prerequisites

Before installing Devika, ensure you have the following prerequisites installed on your system:

  1. Ollama: Follow the instructions here to install Ollama.
  2. Bun: Follow the instructions here to install Bun.
  3. Ensure you have Git, Python installed on your system.

Installation Steps

  1. Clone the Devika Repository: Open a terminal and clone the Devika repository from GitHub:
  1. Navigate to the Project Directory: Change your current directory to the Devika project directory:
  1. Install Required Dependencies: Install the required Python dependencies using pip:
  1. Install Playwright Dependencies (if required): Install browsers in Playwright along with their dependencies:
  1. Set up Configuration:
  • Rename the sample.config.toml file to config.toml.
  • Open config.toml in a text editor and update the following configuration options:
    • SQLITE_DB: Path to the SQLite database file for storing Devika’s data.
    • SCREENSHOTS_DIR: Directory where screenshots captured by Devika will be stored.
    • PDFS_DIR: Directory where PDF files processed by Devika will be stored.
    • PROJECTS_DIR: Directory where Devika’s projects will be stored.
    • LOGS_DIR: Directory where Devika’s logs will be stored.
    • REPOS_DIR: Directory where Git repositories cloned by Devika will be stored.
    • WEB_SEARCH: Default web search method (options: google, bing, or ddgs).
    • BING: Your Bing Search API key.
    • GOOGLE_SEARCH: Your Google Search API key.
    • GOOGLE_SEARCH_ENGINE_ID: Your Google Search Engine Id.
    • CLAUDE: Your Anthropic API key.
    • NETLIFY: Your Netlify API key.
    • OPENAI: Your OpenAI API key.
  • Save and close the config.toml file.
  1. Start Devika Server: Run the Devika server using Python:
  1. Compile and Run the UI Server:

Navigate to the ui/ directory:

Install UI dependencies using Bun:

bun install

Run the UI server:

  1. Access Devika Web Interface: Open a web browser and navigate to http://127.0.0.1:3000 to access the Devika web interface.

You’ve successfully installed Devika on your system. You can now start using Devika to interact with its AI capabilities for software development tasks.

How to use Devika AI to Create New Project?

Step 1: Open Devika Web Interface: Launch your preferred web browser and navigate to the Devika web interface.

Step 2: Create a New Project: Click on the “New Project” button within the interface. Provide a name for your project when prompted.

Step 3: Select Language and Model: Choose the programming language and model configuration suitable for your project from the options provided.

Step 4: Describe Objective: In the chat interface, provide a clear and concise high-level description of the task or objective you want Devika to work on.

Step 5: Initiate Task Processing: Once you’ve provided the objective, Devika will analyze it, break it down into actionable steps, and begin working on the task.

Step 6: Monitor Progress: You can track its actions, view generated code, and offer feedback or guidance as needed.

Step 7: Review Generated Code: Once Devika completes the task, review the code and project files it has generated.

Step 8: Refine and Iterate: If necessary, provide further instructions or modifications to refine the project.

Devika AI Discord Community

Join the Devika AI Discord Community to connect with fellow users, share experiences, ask questions, and collaborate on the project. As Devika is currently in its early development stage, there may be unimplemented or broken features. Contributions are encouraged to help advance the project. Click here to join the Devika community Discord server.

FAQs:

What is Devika AI?

How does Devika AI work?

Is Devika AI suitable for all levels of programmers?

How can I create a new project from scratch using Devika AI?

How to Install Devika AI in Local PC/Laptop?

Can I contribute to Devika AI’s development?