Une extension VS Code qui génère de la documentation à l’aide d’IA

/me regarde ça d'un oeil sceptique.

/me teste.

mâchoire de /me tombe par terre

Donc, c'est une extension pour VSCode qui est censée générer la doc d'une fonction ou d'une méthode automatiquement, toute seule et en un seul clic.

Taquin, j'ai testé avec des méthodes tirées d'applis à moi et ben franchement, elle s'en sort vraiment pas mal !

Elle s'avère capable d'interpréter plutôt bien le code sélectionné:

elle a par exemple «compris» la méthode insertValue() de mon framework et a déduit qu'elle servait à insérer des valeurs dans un template

Capture du 2022-03-16 13-21-19.png

ou la méthode getVar() dont elle a saisi le but et la logique

Capture du 2022-03-16 13-22-58 copie.jpg

voire la méthode ifLoggedRender() dont elle a même compris le paramètre $echo !

Capture du 2022-03-16 13-23-39.png

Plus fort ?!

Le test a été poussé avec des méthodes moins évidentes pour une machine mais plus pour un humain, comme une méthode destinée à renvoyer le pluriel d'un nom en espagnol, pour laquelle AIDoc déduit la règle grammaticale pratiquement au mot près !

Capture du 2022-03-16 13-17-03 copie.jpg

ou la méthode consonne():

Capture du 2022-03-16 13-16-30 copie.jpg

et même la méthode estarGerondif() pour retourner la forme progressive d'un verbe en espagnol qu'AIDoc a comprise (identifiant la forme grammaticale «present tense» !!!)

Capture du 2022-03-16 13-16-15 copie.jpg

autres exemples

Capture du 2022-03-16 13-15-21 copie.jpg

Capture du 2022-03-16 13-15-50 copie.jpg Capture du 2022-03-16 15-19-38 copie.jpg Capture du 2022-03-16 15-18-49 copie.jpg

C'est un truc de fifou

Conclusion

Ça marche tellement bien que je vois une autre utilisation au truc: t'expliquer à quoi servait ton code quand tu y reviens trois semaines plus tard et que t'y comprends plus rien ...

❝ 6 commentaires ❞

1  galex-713 le

«t'expliquer à quoi servait ton code quand tu y reviens trois semaines plus tard et que t'y comprends plus rien ...», plutot que d'utiliser le truc pour son utilisation prétendue : produire de la doc… son utilisation naturelle est donc d’en faire un SaaSS pour se comprendre soi-même, après avoir pas eu la capacité de produire soi-même une doc décente ou tout simplement un code lisible ou des variables/valeurs bien nommées… engrangeant un effet rebond qui pourrait à terme amoindrir encore davantage la lisibilité des programmes, pour nous rendre plus dépendants de microsoft…


perso j’ai réfléchi très fort à « comment il fait pour deviner ? » et j’ai pas tout compris… l’implé étant privatrice, c’est un holdup de sur les progrès de la connaissance, eux-même plus tirés du potentiel l’énorme base de donnée github (pourtant dans l’essentiel « tous droits réservés », et en grande partie sous gauche d’auteur) plutôt que du travail de programmeurs microsoft qui sauraient ce qu’ils font…


Parce qu’autrement, s’ils le savaient, une telle fonctionnalité semble évidemment traduire des sources d’un langage type javascript en langage naturel… si ça marche dans un sens, ça marche dans l’autre : écrire des programmes en langage naturel et compiler ça en natif (comme le fait tout JIT javascript), se passant d’un « langage informatique » intermédiaire est donc possible…


…avec quelques erreurs statistiques et limitations, bien sûr, j’imagine. Limitations et erreurs dont on sera le moins à même de se rendre compte si on utilise les réseaux de neurones de Microsoft pour faire de la doc plutôt que pour écrire des programmes, comme c’était censé être le cas à la base pour copilot.


https://www.fsf.org/news/publication-of-the-fsf-funded-white-papers-on-questions-around-copilot


sauf qu’ignorer ce genre de limitation, ça revient à abandonner la formalité et certitude introduite par un langage de prog correct, et revenir à quelque chose d’aussi flou, inexact et changeant que « la loi »…


En effet, tout algo travaillant sur du langage naturel via « apprentissage automatique » le fait essentiellement sur la base d’un corpus et de statistiques, et donc si le corpus change, si les temps ou les implémentations ou le cloud change… les résultats aussi. Donc la doc produite pour une fonction donnée changera avec le temps et le langage naturel que ces réseaux neuraux apprendront… pareillement, le comportement informatique qui serait produit pour une même doc changerait avec le temps… est-ce que c’est forcément négatif ? et si non, quelles en seraient les conséquences ? dans un monde opaque et privateur, qui préfère la rapidité à la pédagogie, aucun moyen de le savoir…


:c

 
2  Bronco le

Vous pouvez ranger vos affaires, interro la semaine prochaine


Plus sérieusement, c'est rare d'avoir un commentaire largement plus long et rigoureux que le post d'origine : merci pour le temps que tu y as passé !


Toutefois, même si je ne l'ai pas précisé dans le post, je me contentais surtout de saluer la performance inattendue du bouzin et pas tellement son utilité réelle qui, comme tu l'as très bien dit, est pour le moins contestable

 
3  galex-713 le

rare ? oh… en proportions relatives oui sans-doute… j'ai pris l’habitude de rédiger de gros pavés chez Timo désolééééé c’est pas toujours super lisible (et je constate qu’ici les espaces insécables passent mal… et que les commentaires sont justifiés à gauche ce qui fait trèèès mal passer les pavés '


en tout cas oui oui le jugement de la performance est impressionnant, et perso me rend plus jaloux et aigri qu’autre chose :'D (c’est un peu ridicule je sais je suis désolé j’ai honte >< (et un peu peur d’avoir trop perdu sur ma capacité à m’émerveiller alors que c’est si essentiel…)), je me dis qu’avec une telle puissance de feu la recherche (transparente, publique, etc.) pourrait tellement progresser !


merde c’est vrai que chuis bavaaard

 
4  Bronco le

C'est bien aussi d'être bavard: on socialise plus vite ;-)


Pour ce qui est de la publication de ton com' : de rien ! ç'aurait été dommage de ne pas le faire vu le temps passé et la pertinence du propos ;-)

 
5  galex-713 le

oh et encore merci, je m’attendais limite pas à le voir publié '

 
6  galex-713 le

non mais j’écris vite, et si je suis aussi verbeux c’est parce que j’écris tout d’une traite sans rédiger ni passer beaucoup de temps à réordonner ou synthétiser… donc bon…


par contre socialiser non, on dirait comme ça, mais non :') ça saoule les gens plus vite par contre ça oui, donc je fais attention x)


par contre je réalise que je reçois pas du tout de notifs des nouveaux comm’ par mail… encore chez timo c’est intermittant (parce que ça bounce), mais ça finit par arriver, mais chez toi ya pas de queue du tout ? mon serveur est pas en ligne 100% du temps (et a un ping et un débit désastreux), mais la plupart du temps quand meme… je serais curieux d’en apprendre davantage sur les cas où ça marche pas…

 

Fil RSS des commentaires de cet article

✍ Écrire un commentaire

les commentaires relevant du SPAM seront filtrés et dégagés direct...

Quelle est le troisième caractère du mot bxcv20 ?