Devika AI: Un ingeniero de software de IA agéntica de código abierto
Descripción general
Devika AI es un ingeniero de software de IA agéntica de código abierto. Está diseñada para comprender instrucciones humanas complejas, desglosarlas en pasos accionables, realizar investigaciones y escribir código para lograr objetivos específicos. Devika aspira a ser una alternativa de código abierto competitiva a ingenieros de software de IA propietarios como Devin de Cognition AI, con el ambicioso objetivo de igualar y, eventualmente, superar su rendimiento en puntos de referencia como SWE-bench.
Propósito principal y grupo de usuarios objetivo
- Propósito principal: Revolucionar el desarrollo de software al proporcionar un programador de pares de IA capaz de manejar tareas de codificación complejas con una mínima guía humana, incluyendo la creación de nuevas características, la corrección de errores o el desarrollo de proyectos completos.
- Grupo de usuarios objetivo: Desarrolladores, ingenieros de software y equipos que buscan un asistente de IA avanzado para automatizar y optimizar sus flujos de trabajo de codificación, particularmente aquellos interesados en soluciones de código abierto y en el aprovechamiento de grandes modelos de lenguaje para tareas de ingeniería de software.
Detalles y operaciones de la función
- Comprensión de instrucciones: Interpreta instrucciones humanas de alto nivel para tareas de desarrollo de software.
- Descomposición de tareas: Descompone objetivos complejos en pasos manejables y secuenciales.
- Investigación de información: Utiliza capacidades de navegación web y extracción de palabras clave contextuales para recopilar información relevante.
- Generación de código: Escribe código en múltiples lenguajes de programación basándose en la investigación y los requisitos de la tarea.
- Soporte LLM: Admite varios modelos de lenguaje grandes, incluidos {Claude 3}, {GPT-4}, {Gemini}, {Mistral}, {Groq} y LLMs locales a través de Ollama. Se recomiendan los modelos {Claude 3} para un rendimiento óptimo.
- Seguimiento dinámico del estado: Visualiza y rastrea el progreso y el estado actual del agente.
- Interfaz de chat: Permite la interacción en lenguaje natural para proporcionar instrucciones y recibir actualizaciones.
- Gestión de proyectos: Organiza y gestiona tareas de desarrollo de software proyecto por proyecto.
- Arquitectura extensible: Diseñada para una fácil integración de nuevas características y funcionalidades.
- Interfaz web: Accesible a través de un navegador web para la interacción del usuario y la gestión de proyectos.
- Configuración: Permite a los usuarios configurar claves {API} para varios servicios ({Bing}, Google Search, {OpenAI}, {Gemini}, Claude, {Mistral}, {Groq}, {Netlify}) y puntos finales {API} ({Bing}, Google, Ollama, {OpenAI}).
Beneficios para el usuario
- Mayor eficiencia: Automatiza porciones significativas del proceso de desarrollo de software, acelerando la finalización del proyecto.
- Esfuerzo manual reducido: Minimiza la necesidad de intervención humana en las tareas de codificación e investigación.
- Productividad mejorada: Actúa como un programador de pares de IA, permitiendo a los desarrolladores centrarse en el diseño de alto nivel y la resolución de problemas.
- Acceso a IA avanzada: Aprovecha los LLMs de última generación y las capacidades de planificación de IA para una generación de código sofisticada.
- Flexibilidad de código abierto: Proporciona una alternativa transparente y personalizable a las soluciones propietarias.
- Flujo de trabajo optimizado: Integra investigación, planificación y codificación en un proceso único y cohesivo.
Compatibilidad e integración
- Sistema operativo: Requiere {Python} >= 3.10 y < 3.12, {NodeJs} >= 18 y {Bun}.
- Integración del navegador: Utiliza {Playwright} para las capacidades de navegación.
- Integraciones {API}: Configurable con claves {API} para varios motores de búsqueda ({Bing}, Google Search) y proveedores de LLM ({OpenAI}, {Gemini}, Anthropic, {Mistral}, {Groq}).
- Implementación: Admite la clave {API} de {Netlify} para implementar y administrar proyectos web.
- Soporte LLM local: Se integra con Ollama para ejecutar modelos de lenguaje locales.
Comentarios de clientes y casos de estudio
- Actualmente en una etapa temprana de desarrollo/experimental con muchas características no implementadas/rotas.
- Aspira a ser una alternativa de código abierto competitiva a Devin de Cognition AI, con un objetivo "excesivamente ambicioso" de igualar y eventualmente superar su puntuación en los {SWE-bench} Benchmarks.
- Se agradecen las contribuciones de la comunidad para acelerar el desarrollo y la implementación de funciones.
- Hay demostraciones disponibles (p. ej.,
devika-pygame-demo.mp4) que muestran sus capacidades.
Método de acceso y activación
- Código fuente: Disponible en {GitHub}:
{https://github.com/stitionai/devika}. - Instalación:
- Clonar el repositorio de {GitHub}.
- Navegar al directorio del proyecto.
- Crear un entorno virtual e instalar las dependencias usando
{uv venv}y{uv pip install -r requirements.txt}. - Instalar {Playwright} para las capacidades del navegador:
{playwright install --with-deps}. - Iniciar el servidor de Devika:
{python devika.py}. - Para el {frontend}, navegar al directorio
ui/, ejecutar{bun install}, y luego{bun run start}.
- Acceso: Acceder a la interfaz web de Devika navegando a
{http://127.0.0.1:3001}en un navegador web. - Configuración: Las claves {API} y los puntos finales se configuran a través de la página de ajustes en la UI, lo que crea un archivo
config.tomlen el directorio raíz.