- La función de autocompletado con tab de primer nivel de Cursor fue posible gracias a la adquisición del modelo Babble de Supermaven, que presume una ventana de contexto de hasta 1 millón de tokens y una baja latencia de 250 ms
- El autocompletado anterior basado en LLM tenía la limitación de predecir solo el código después de la posición del cursor, pero Babble permitía sugerencias de código más flexibles mediante aprendizaje de secuencias de edición basado en
git diff
- Jacob Jackson, fundador de Supermaven, fue quien creó TabNine en 2018, una de las primeras herramientas de autocompletado de código, antes del auge de los LLM
- Después de que Tabnine fue adquirida, trabajó como investigador en OpenAI y luego se independizó para desarrollar en 2022 Supermaven, un producto competidor de Cursor
- Supermaven no alcanzó la misma popularidad que Cursor, pero su modelo de autocompletado con tab, Babble, estaba entre los mejores del mercado
- Para 2024, Babble registraba 300k de contexto y 250 ms de latencia, muy por delante de Cursor
- Antes de ser adquirido por Cursor, Babble incluso soportaba una ventana de contexto de 1 millón de tokens, un tamaño enorme en comparación con los modelos de chat populares de ese momento
- El elemento diferenciador de Babble era su forma de entrenamiento
- El autocompletado LLM convencional solo completa el código después del cursor (método FIM)
- Babble, mediante aprendizaje basado en secuencias de edición, puede predecir cambios en distintas partes del código e incluso entre archivos
- Con una estructura similar a
git diff, es un método de entrenamiento que refleja el comportamiento real de edición de los desarrolladores
- La fusión y adquisición con Cursor
- Cursor controla el propio IDE, por lo que pasó a ser posible entrenar modelos con base en los datos del historial de edición de los desarrolladores, lo que marcó una diferencia frente a TabNine y otras herramientas comunes basadas en plugins
- Esto proporciona un entorno muy favorable para entrenar modelos de autocompletado
- Después de toparse con los límites de los plugins, Jacob planeaba crear su propio IDE, y Cursor estaba esforzándose por alcanzar la calidad del autocompletado con tab, así que era una combinación perfecta
- Cursor y Jackson ya se conocían desde antes, por lo que la adquisición fue una opción natural
- Gracias a esto, Cursor construyó el mejor modelo de autocompletado con tab del mercado
2 comentarios
Había estado buscando con muchas ganas si no habría un plugin que ayudara con el autocompletado al nivel de Cursor en neovim, pero resulta que era algo posible gracias a un modelo propio..
Estoy usando el plugin supermaven para neovim. Es la versión gratuita y me parece mejor que Copilot.