Devika AI Introduction
Devika AI is an open-source AI software engineer designed to understand high-level human instructions, break them down into actionable steps, research relevant information, and generate code for specific tasks. Utilizing language models such as Claude 3, GPT-4, GPT-3.5, and Local LLMs via Ollama, Devika AI operates as a comprehensive tool for software development.
Devika AI Features
AI Planning and Reasoning
Devika AI possesses powerful planning and reasoning capabilities, allowing it to break down complex tasks into manageable steps for effective execution.
Multi-Language Model Support
Devika AI supports various language models, with Claude 3 being recommended for optimal performance, ensuring flexibility across different projects.
Contextual Keyword Extraction
The software can extract relevant keywords from the context, focusing its research efforts for accurate and efficient information gathering.
Web Browsing and Information Gathering
Devika AI can browse the web to gather up-to-date and relevant information, enhancing its ability to provide precise responses and support.
Code Generation in Multiple Languages
Whether it's Python, Java, or another language, Devika AI can generate code snippets tailored to your specific requirements.
Dynamic Agent State Tracking and Visualization
Devika AI tracks its state during interactions, ensuring coherent and context-aware conversations and task management.
Natural Language Interaction via Chat Interface
Communicate with Devika AI using natural language, making interactions intuitive and efficient.
Project-Based Organization and Management
Devika AI organizes work based on projects, simplifying the management and collaboration process in software development tasks.
Extensible Architecture
Designed for flexibility, Devika AI allows for easy integration of new features and enhancements, ensuring the tool evolves with your needs.
Devika AI Working
Devika AI operates as a smart assistant for various tasks, designed to simplify complex processes. It consists of several components:
- User Interface: The web-based chat interface where users interact with Devika AI.
- Agent Core: The central decision-making unit handling planning, decision-making, and execution.
- Large Language Models: Equipped with models like Claude, GPT-4, and Local LLMs via Ollama for advanced language processing.
- Planning and Reasoning Engine: Breaks down goals into smaller steps and determines the best approach for task completion.
- Research Module: Searches the web for additional information when necessary.
- Code Writing Module: Generates code based on the developed plan and gathered information.
- Browser Interaction Module: Surfs the web, interacts with web pages, and gathers information for research purposes.
- Knowledge Base: Enhances efficiency and assistance based on past experiences.
- Database: Stores project-related data, Devika AI's state, and settings for seamless task continuation.
How to Install Devika AI
To install Devika AI, follow these steps:
- Prerequisites: Install Ollama, Bun, Git, and Python.
- Clone the Devika Repository: Use the command
git clone https://github.com/stitionai/devika.git
. - Install Required Dependencies: Run
pip install -r requirements.txt
. - Set up Configuration: Rename
sample.config.toml
toconfig.toml
and update the necessary configurations. - Start Devika Server: Use the command
python devika.py
. - Compile and Run the UI Server: Navigate to the
ui/
directory, runbun install
, and thenbun run dev
. - Access Devika Web Interface: Open a web browser and navigate to
http://127.0.0.1:3000
.
How to Use Devika AI to Create a New Project
- Open Devika Web Interface: Access the interface via a web browser.
- Create a New Project: Click the "New Project" button and provide a project name.
- Select Language and Model: Choose the appropriate programming language and model configuration.
- Describe Objective: Provide a clear and concise description of the task or objective.
- Initiate Task Processing: Devika AI will analyze the objective and begin working on the task.
- Monitor Progress: Track actions, view generated code, and provide feedback as needed.
- Review Generated Code: Once the task is complete, review the generated code and project files.
- Refine and Iterate: Offer further instructions or modifications if necessary.
Devika AI FAQs
What is Devika AI?
Devika AI is an advanced software engineering assistant that can understand high-level human instructions, conduct research, and generate code for various software development tasks.
How does Devika AI work?
Devika AI uses state-of-the-art language models and reasoning algorithms to analyze user input, break down tasks, conduct research, and generate code in multiple programming languages.
Is Devika AI suitable for all levels of programmers?
Yes, Devika AI is designed to assist programmers of all skill levels, from beginners to experienced developers.
How can I create a new project from scratch using Devika AI?
Follow the installation guide to install Devika AI, set up API keys, and use the web interface to start a new project.
Can I contribute to Devika AI's development?
Absolutely, Devika AI is an open-source project, and contributions are welcome.