Un annuaire d'instructions à ajouter dans les règles custom de Cursor (.cursorrules
).
Il y a des règles spécialisées pour les langages, frameworks, etc
OpenAI et Github ont rendu le modèle o3-mini disponible dans l'extension Copilot.
Le modèle est configuré sur le niveau de raisonnement "moyen" ce qui en fait l'un des meilleurs modèles du marché (3e position sur Livebench)
Cependant, Claude 3.5 Sonnet a toujours les meilleurs résultats dans les benchmarks uniquement en code (67 contre 65 pour o3-mini-medium)
Une liste assez exhaustive de tous les outils disponible pour générer du code
Ça va du niveau de l'outil qui génère une application entière à l'extension comme Copilot en passant par les IDE AI plus ou moins avancés
Le prompt système de Bolt est disponible sur Github et donne pas mal d'info sur la manière dont est organisé leur système:
- création/édition de code avec des GNU diff
- ça tourne dans des WebContainers
- ils contournent la limite de 8K tokens en output avec leur
CONTINUE_PROMPT
Surtout je vois que tout est au format XML (ils utilisent Claude 3.5 Sonnet) plutôt que JSON.
J'aimerais bien savoir pourquoi, sachant que j'avais remarqué que le format XML présentait de meilleures performances de génération que le JSON il y a un an. Je me demande si ils sont arrivés aux mêmes conclusions.
Github apporte les suggestions IA de Copilot directement dans l'interface de revue de Pull Request !
Dans le même genre, il y a Code Rabbit mais honnêtement la qualité des reviews n'était pas à la hauteur, avec beaucoup de faux positifs et de "bruits" qui nous ont fait abandonné l'outil au final.
A voir si Github Copilot sera meilleur
Supermaven souhaitait créer son IDE avec sa levée à 12 millions mais finalement ils ont du se dire que c'était plus simple de rejoindre une équipe avancée sur ce sujet: Cursor.
C'est un excellente nouvelle car ces deux outils sont parmi les meilleurs de l'écosystème GenAI 4 Dev.
Supermaven a développé ses propres modèles et des fonctionnalités comme l'autocomplétion jump donc leur expertise va fournir un coup de boost supplémentaire à Cursor !
J'ai hâte de voir ce que va donner ce partenariat
Après les modèles d'OpenAI et d'Anthropic, c'est au tour des modèles de Google (Gemini) d'être disponible dans Github Copilot.
Personnellement, je reste sur Claude 3.5 Sonnet qui possède encore les meilleurs résultats sur les benchmarks liés à la génération de code.
Github développe un outil no-code de création d'applications (en technical preview pour l'instant)
Ils utilisent des LLMs pour comprendre les demandes des utilisateurs en langage naturel et l'application se met à jour directement sous vos yeux !
C'est clairement à destination de petites applications, un peu comme ce que l'on peut avoir sur les Spaces de HuggingFace, car ce sont des PWA avec un stockage type clé/valeur simplifié.
Le code est totalement caché apparement, ce qui peut être à la fois déroutant et limitant.
En tant que développeur, je suis plus intéressé de voir l'avancement de projets comme Copilot Workspace qui permet de développer des fonctionnalités depuis le langage naturel sur une codebase existante
Le rapport de DORA 2024 est une étude de plus de 39000 personnes dans l'industrie du développement.
La moitié du rapport est consacré à l'utilisation et aux effets des IA génératives dans le monde du développement.
L'adoption des LLM augmente au fur et à mesure que la confiance dans leurs résultats augmente.
Les entreprises ont la perception qu'elles doivent utiliser de l'IA dans leurs processus de production pour rester compétitives mais aussi dans leurs produits avec 81% d'augmentation de l'incorporation de technologies IA dans les produits
Les technologies AI ont plus de chance d'être adoptées rapidement car les entreprises craignent que leurs concurrents gagnent un avantage décisif en les utilisant avant eux.
Le rapport continue avec des statistiques intéressantes sur les développeurs
76% des développeurs utilisent l'IA pour au moins une de leur tâches:
- 75% pour écrire du code
- 71% résumer des information
- 69% pour écrire des tests
- 56% pour déboguer
Au niveau de la perception du gain de productivité:
- 10% gain extrême
- 25% gain modéré
- 40% gain léger
- 20% aucun gain
Au niveau de la confiance dans le code généré:
- 10% ont totalement confiance
- 18% ont beaucoup confiance
- 35% ont à peu près confiance
- 29% ont un peu confiance
- 8% n'ont pas du tout confiance
Au niveau des points négatifs, on retrouve notamment une estimation de perte en stabilité des déploiements (-7%) et un impact plus élevé de l'industrie sur l'environnement.
Supermaven a levé 12 millions de dollars pour créer un éditeur de code.
Ils sont arrivés aux limites de ce qu'il est possible de faire via une extension alors ils veulent développer leur propre éditeur.
À voir si ils vont partir de VScode comme Cursor ou créer un Nouvel éditeur from scratch (j'espère qu'ils partiront de VScode)
En tout cas vu la qualité de leur outil d'autocomplétion, cela fera très certainement un sérieux concurrent à Cursor !
Après OpenAI, c'est Anthropic qui devient partenaire de Github (Microsoft) pour proposer son modèle Claude 3.5 Sonnet dans Github Copilot.
Depuis la dernière mise à jour du modèle, Claude 3.5 Sonnet dépasse de loin GPT-4o dans la plupart des benchmark et s'offre surtout une place de choix dans le benchmark de référence pour les tâches de programmation, SWE Bench, avec 49% (SOTA 53% pour OpenHand, le successeur de OpenDevin)
Après avoir essayé, je dois dire que je préfère toujours Supermaven pour l'auto-complétion.
Leur modèle fournit les complétions beaucoup plus rapidement et beaucoup plus souvent que Copilot tout en étant généralement de meilleure qualité.
Le seul bémol du modèle c'est qu'il est moins "intelligent" que Claude 3.5 Sonnet derrière Copilot mais ce n'est pas grave car pour les tâches de génération de code compliqué j'utilise le chat de Cursor.
Un article sur l'utilisation de Cursor pour le développement.
Plusieurs exemples concret d'utilisation de Cursor en vidéo, je trouve ce format très bien d'ailleurs car cela donne des idées d'utilisation de l'outil.
Je suis 100% d'accord avec certaines de ses conclusions:
- j'utilise moins de lib externes car je peux recoder pleins d'utilitaires facilement avec l'aide du LLM
- cela me dérange moins de dupliquer du code car je sais que je peux refactor très rapidement et sans trop d'efforts plus tard
- je me dirige plus facilement vers des frameworks ou langages que je ne maitrise pas car le LLM génère une bonne partie du code pour moi
Les outils de GenAI pour le développement sont des précurseurs de l'écosystème en terme de profondeur des fonctionnalités, de gains de productivité et d'adoption.
Github Copilot existe depuis 2021 et à longtemps été l'application de GenAI la plus utilisée au monde avant de laisser cette place à ChatGPT.
Aujourd'hui, les outils GenAI pour développeurs sont impressionnants. Il devient de plus en plus difficile de s'en passer tant le gain de productivité est élevé !
Sacré déclaration de la part de Google !
Si c'est vrai c'est énorme car ça a dû demander un gros travail d'évangélisation des équipes.
Personnellement ma stack c'est Cursor + Supermaven.
Impossible de se passer de Cursor et de son chat intégré avec Claude 3.5 Sonnet qui me génère une grande partie de mon code.
Je peux même lui donner un screenshot d'une maquette et il me génère les composants React.
Pour l'auto complétion, Supermaven est vraiment très agréable avec des suggestions ultra rapides et très bien contextualisées.
J'estime que ma productivité est multipliée par 2 en moyenne (ça dépend le type de tâches)
Anthropic a sorti une mise à jour importante de Claude 3.5 Sonnet et il obtient des résultats impressionnant sur les benchmark !
Il dépasse GPT4-o sur la plupart des benchmarks existants et de loin mais c'est surtout sur la partie code qu'il réalise un exploit car il dépasse tous les autres modèles spécialisés sur le benchmark SWE-Bench avec 49% des tâches de réalisées.
La progression des modèles pour les tâches de programmation est vertigineuse, pour rappel en août le SOTA était Aider avec 19%
Personnellement, j'utilise uniquement Claude 3.5 Sonnet dans Cursor et c'est vrai qu'il y a une différence notable avec GPT-4o.
On peut maintenant donner des instructions custom à Github Copilot pour guider la génération.
C'est très pratique pour que le code généré suive systématiquement nos standards de code.
On peut spécifier des instructions une par une ou un fichier qui en contient plusieurs.
Aider est un assistant pour développement dans le terminal.
L'outil est vraiment bien foutu, je suis impressionné par sa capacité à réaliser des tâches en autonomie. Je l'utilise beaucoup pour du refacto par exemple.
C'est actuellement le meilleur assistant, ils obtiennent 18.9% sur le SWE Bench qui évalue les assistants à leur capacité à réaliser des tâches de programmation.
Le dernier SOTA était Devin.
Bref, c'est un super projet et en plus tout est open source! A utiliser d'urgence
Les poursuites judiciaires engagées contre GitHub pour violation de copyright par Copilot ont été abandonnées par les juges.
GitHub modifie légèrement les exemples de code par rapport aux sources originelles et c'est entre autre cette raison qui a convaincu les juges.
Supermaven propose un assistant code comme Copilot.
Supermaven possède so propre modèle (Babble) et se démarque sur plusieurs points:
- Fenêtre de 1 millions de token
- Latence de 250 ms au lieu de 800ms pour Copilot
- Prédiction à chaque frappe du clavier
Ils ont testé le modèle sur des benchmark de type “needle in a haystack” et il est capable de retrouver correctement les informations même dans 1 millions de tokens !
Je l’utilise depuis quelques semaines et c’est un sérieux concurrent à Copilot.
Certaines choses sont néanmoins moins bien, par exemple Supermaven raisonne beaucoup moins bien que Copilot (GPT-3.5 ou GPT-4).
Github permet maintenant de coder des extensions à Github Copilot.
Concrètement, il est possible d'utiliser les modèles utilisés par Copilot et de créer des assistants spécialisés que l'on peut ensuite solliciter dans le chat.
Il y a deux API:
- Chat API: permet de s'intégrer dans le chat de Copilot
- Language API: permet de faire des requêtes aux modèles basés sur GPT-3.5 et GPT-4 (le contexte maximum est de 4000 tokens)
Par exemple, l'assistant @stripe est capable d'aider un développeur à développer et debuguer une intégration Slack.
J'imagine que derrière, il y a un RAG avec la documentation à jour de Stripe.
C'est la porte ouverte à la création d'un écosystème, très bonne initiative de la part de Github à un moment ou la concurrence sur les assistant de code est rude (Supermaven par exemple)
Un travail impressionnant de reverse engineering sur le fonctionnement de l'extension Github Copilot.
Dans la partie sur le prompt engineering, on apprend notamment qu'un "token budget" est alloué à chaque prompt et que des chunks de documents potentiellement pertinents pour la génération sont ajoutés au prompt en fonction de différents scores.
La partie appel au modèle contient toutes les règles pour déclencher le modèle au meilleur moment. (par exemple juste après avoir écrit un caractère espace).
Surtout, il y a un contextual filter score qui est calculé à partir d'un simple modèle de régression local afin de déterminer si cela vaut la peine d'appeler le modèle distant.
Finalement pour la télémétrie, le point principal est un check fait par l'extension à différents intervalles (jusqu'à plusieurs minutes) pour vérifier si le code suggéré est toujours dans le code.
Bref, un très gros travail a été fait et est disponible sur le repo copilot-explorer.
Depuis cela a certainement évolué (par exemple l'utilisation de GPT-4 au lieu de Codex) car ce travail a plus d'un an maintenant.