C'est ce qui se dessine après 1 an de GPT4, même si les LLMs sont impressionnant, le développement est une tâche tellement complexe que les développeurs ne sont pas près d'être remplacés.
En même temps vu la "fenêtre de contexte" qu'il faut gérer lorsqu'on maintient une application, ça ne m'étonne pas que les LLMs avec leur petite fenêtre de contexte assez imprécise ne soient pas capable de remplacer les développeurs.
Les LLMs continueront d'être des copilotes mais ils ne sont pas près d'être des pilotes.
Une solution alternative à Redis avec une compatibilité API.
Ils promettent de meilleurs performances et moins de consommation de ressources.
Un CPU réalisé en macro Excel
Voyage AI propose des modèles d'embeddings plus performants que ceux de OpenAI.
Ils sont premier du leaderboard MTEB avec leur modèle voyage-lite-02-instruct (67.13 vs 64.59 pour OpenAI), un benchmark qui mesure la performance de la recherche par embeddings.
Leur nouveau modèle d'embeddings, voyage-code-2, est meilleur que les précédents mais en plus à une fenêtre de contexte de 16K token!
Ce modèle est spécialisé pour le code mais offre aussi de très bonnes performances pour le texte normal
OpenAI dévoile plusieurs nouveautés et particulièrement un nouveau modèle d'embeddings (ada2 datait de fin 2022).
Le modèle est décliné en deux versions:
- text-embedding-3-small: 1536 dimensions, 62.3 MTEB
- text-embedding-3-large: 3072 dimensions, 64.6 MTEB
Le modèle large est en 4è position du classement MTEB. (Ada2 était à 61 MTEB)
Le prix du small est 5x moins cher que Ada2 (0.00002$ 1K token) et le large est ~ le même prix (0.00013$ pour 1K token)
La fenêtre de contexte est toujours de 8196 token, ce qui est toujours peu par rapport à celle des embeddings VoyageAI (16K) ou même de GPT4
Dee recherches menées sur l'exploitation des LLMs en tant que vecteur d'attaque.
Des techniques similaire à de l'obfuscation permettent d'apprendre au modèle à cacher ses intention malicieuse.
Par exemple durant les phases de validation, le code généré sera normal puis à partir d'une certaine date le code généré sera malicieux.
Cela peut aussi être déclenché par une instruction spéciale dans le prompt
Le navigateur Opera qui avait la côte au début des années 2010, notamment sur mobile, ne serait plus que l'ombre de lui même.
Pire que ça, il est à fuir avec des dérives inquiétantes depuis son rachat par des entreprises chinoises avec notamment application de prêt à des taux >500% dans les pays en voie de développement.
Les biais des LLMs peuvent être très marqués et avoir des conséquences en fonction de l'utilisation faite du LLM.
Un outil Open Source pour créer des pages de suivi du status des services.
Un modèle de type Transformers développé par Google pour résoudre des problèmes de géométrie.
Le modèle à résolu 25 problèmes sur 30, une personne ayant une médaille d'or en résout en moyenne 25.9.
Il est possible d'inclure du Javascript dans une image SVG. Si elle est ouverte directement alors le Javascript sera exécuté
Une solution de génération de code qui s'inspire grandement de AlphaCode de Google.
Les problèmes sont des exercices de code (code contest), ce sont des problèmes d'algorithmie ayant peu de rapport avec le quotidien d'un développeur.
Fonctionnement:
- génération de tests supplémentaires
- génération de solutions possibles
- exécution de chaque solution
- correction éventuelle
C'est plus ou moins du bruteforce
Un article très intéressant sur l'écosystème des LLMs.
Il parle notamment des 5 types de frameworks:
- Open Ended (AutoGPT, AutoGen): résoudre des problèmes généraux et complexes de manière quasi autonome
- Compilation Driven (DSPy): génération de chaines de prompts à partir de schéma contraints sur les entrées et sorties
- Prompt Engineering Utils (Langchain, LlamaIndex): template de prompt, parsing, embeddings retrieval
- Schema Driven Generation (Langchain, LlamaIndex, Marvin): forcer la génération à respecter un schéma précis pour le parsing
- Controlled Generation (Outline, LMQL): contraindre le LLM à satisfaire un format et d'autres contraintes
Un excellent cas d'usage d'un LLM pour de la relation client.
Les 5 comportements qu'ils ont prévu:
- rédiger une synthèse des échanges avec le client
- résumer les feedbacks positifs émis par le client
- faire émerger des problèmes récurrents
- analyser le niveau d’implication des stakeholders
- détecter des opportunités d’upsell
Pinecone propose un RAG sur étagère avec ingestion de données puis conversation en quelques commandes depuis un terminal.
Sous le capot ça va ingérer les données d'un répertoire dans Pinecone (embeddings OpenAI ou autre) et permettre de les utiliser dans un RAG conversationnel.
L'outil expose aussi un serveur d'API pour une intégration dans une application.
Le mainteneur de CURL n'en peut plus des personnes qui postent des rapports de sécurité généré par IA ou le programme a complètement halluciné.
En plus ces personnes répondent aux commentaires avec une IA également ce qui donne des conversations lunaires.
Un modèle pour enlever le flou des vidéos.
Une application d'observabilité des performances et du fonctionnement des applications utilisant des LLMs.
La solution de Langfuse est beaucoup plus complète pour l'instant.
Une lib qui permet d'enregistrer et de rejouer les sessions navigateur.
Voir aussi https://github.com/openreplay/openreplay
L'histoire d'un développeur frustré du temps de chargement de GTA Online qui l'a examiné en détails pour se rendre compte que le parsing JSON était fait d'une très mauvaise manière.
Décompilation, inspection de la mémoire, hook DLL, du très beau hacking :D