Monthly Shaarli

All links of one month in a single page.

May, 2024

Cybercriminals pose as "helpful" Stack Overflow users to push malware
thumbnail

Des cybercriminels distribuent des packages vérolés en répondant à des questions Stackoverflow.

Ils prétendent que le package en question va régler le problème mais enfaite il contient un virus

How DeviantArt died: A.I. and greed turned a once-thriving community into a ghost town.
thumbnail

De plus en plus de créateurs quittent DeviantArt car de très nombreux contenus sont générés par IA et mis en avant par la plateforme ce qui donne beaucoup moins de visibilité aux créateurs humains.

Les œuvres humaines sont littéralement noyées sous la masses des œuvres IA.

GPT-4o’s Memory Breakthrough!

A priori GPT-4o est de loin le meilleur modèle pour le problème de "needle in a haystack" qui consiste à évaluer la performance d'un modèle pour retrouver le texte pertinent dans un prompt très long.

Alors que GPT-4 Turbo, Claude ou Mistral performent à ~50% en moyenne, GPT-4o atteint presque la perfection avec plus de 80% de succès !

Cela veut dire que même avec des très longs prompt, le modèle reste performant. Pratique pour traiter un grand nombre d'informations à la fois.

Hello GPT-4o

La grosse annonce d'Open AI c'est leur nouveau modèle multi-modal avec support de l'audio en plus de la vidéo et du texte.

Son temps de réponse en audio est de 320 ms en moyenne, ce qui correspond au temps de latence dans une véritable conversation. (Avant c'était 3 et 6 sec de latence avec GPT3.5 et GPT4)

La grosse nouveauté c'est surtout qu'avant on avait une combinaison de modèle alors que maintenant on a un modèle unique et donc capable de reproduire des émotions, des rires etc dans sa sortie audio.

Pareil pour la génération d'image avec du texte, c'est quasiment parfait à présent avec le modèle unique.

Ils ont aussi fait un gros effort sur le tokenizer pour réduire le nombre de tokens dans beaucoup de langages de pays du sous continent Indien, du Moyen-Orient et d'Asie.

Finalement la dernière nouveauté et celle qui va le plus nous impacter, c'est que la vitesse d'inférence est 2x plus rapide et le prix est 2 fois moins cher ! (et disponible dès maintenant)

Anthropic's Haiku Beats GPT-4 Turbo in Tool Use Sometimes
thumbnail

Claude 3 Haiku est meilleur que GPT-4 Turbo sur certains benchmark (BFCL) sur le cas d'usage d'appel de fonctions.

Pour comparer les résultats, ils comparent les AST (Abtract Syntax Tree) avec celui du résultat attendu.

Hixie's Natural Log: Reflecting on 18 years at Google

Le créateur de Flutter quitte Google et il explique ce qui a changé progressivement chez Google.

Stack Overflow and OpenAI Partner to Strengthen the World’s Most Popular Large Language Models

StackOverflow fait un partenariat avec OpenAI.

StackOverflow qui doit être très mal en point depuis la release de ChatGPT (perso je ne vais presque plus sur SO)

D'un côté, les modèles d'OpenAI seront entrainés avec les données en provenance de StackOverflow.

De l'autre, StackOverflow développe des outils pour les équipes de développeurs avec les modèles d'OpenAI: OverflowAI qui semble être un RAG d'entreprise.

En tout cas la déchéance de StackOverflow pose de vraies questions pour l'entrainement des futurs modèles car il risque d'y avoir bien moins de contenu disponible.

How an empty S3 bucket can make your AWS bill explode

Si le nom de votre bucket S3 est publique alors vous pouvez vous faire DDoS "financièrement" car les requêtes à S3 sont facturées même quand elles ne sont pas correctement authentifiées.

En gros, n'importe qui peut faire des millions de requête PUT sur un bucket et le propriétaire sera facturé 0.05$ / 1000 requêtes

The AI hype bubble is deflating. Now comes the hard part.

La bulle autour de l'intelligence artificielle commence à réduire sa croissance.

L'exemple de Inflection AI est flagrant, montée par des ex de chez Google Deepmind et ayant levé plus d'un milliard, l'entreprise n'a pas créé grand chose en 11 mois et les deux fondateurs sont allés travailler chez Microsoft.

Semantic Cache: Accelerating AI with Lightning-Fast Data Retrieval
thumbnail

Une utilisation très intéressante de la recherche sémantique: un cache sémantique

Si l'on souhaite utiliser un cache dans une application qui traite du langage naturel (à travers des prompt par exemple), il est très difficile de faire cela avec les techniques traditionnelles comme le hashing.

Plutôt qu'un hash, on peut stocker un vecteur sémantique avec le résultat mis en cache. Ainsi, si une demande ultérieur approche le sens de la première demande, on peut renvoyer directement le résultat.

Par exemple, ces deux questions ne sont écrites pareil mais ont le même sens:

  • "En quelle année est sortie Half-Life 2?"
  • "Quelle est l'année de sortie de Half-Life2"

Il suffit de stocker le vecteur correspondant à la première question avec la réponse (2004 bien sur!) puis lorsque l'on reçoit la deuxième question on calcule le vecteur et comme il est très proche du premier alors on renvoi la même réponse.

libyear

Une manière intéressante de calculer à quel point une lib est en retard par rapport à sa dernière version.

Rails 5.0.0 (June 2016) is 1 libyear behind 5.1.2 (June 2017).

Squeezing the Juice: Microsoft’s LLMLingua2 demonstrates a Token-Saving Technique using Task-agnostic Prompt Compression

Microsoft ont continué leurs recherches autour de la compression de prompt avec maintenant une v2 de LLMLingua.

C'est très pratique parce que ça permet de compresser les prompts pour utiliser moins de tokens lors de l'appel au LLM.

Cela fonctionne avec un plus petit modèle comme LlaMa 7B pour identifier et supprimer les tokens non-essentiels dans le prompt.

Pour l'instant, cela n'existe qu'en Python.

Berkeley Function Calling Leaderboard (BFCL)

Ce benchmark est constitué de questions avec des descriptions de fonctions à utiliser récupérer des informations extérieures comme la météo par exemple.

Plusieurs capacités sont évaluées:

  • appels de fonctions Python, Java et Javascript pour résoudre des problèmes
  • utilisation d'API REST depuis une documentation
  • création de requêtes SQL
  • capacité à répondre "je ne sais pas" si aucune des fonctions ne convient

GPT-4 Turbo et Claude 3 sont au coude à coude dans le benchmark mais GPT-4 est 2x moins cher

What is a Stun Server: The Complete Guide to NAT Traversal - DEV Community
thumbnail

Une explication en détails de STUN, TURN et ICE qui sont les suites d'outils et de protocol pour initier des connexion directe entre des clients connectés à Internet derrière un NAT.

C'est notamment ce qu'on utilise pour les outils de visioconférence en WebRTC

The AWS S3 Denial of Wallet amplification attack

Encore une attaque sur AWS S3 sur un bucket publique cette fois.

A brief history of web development. And why your framework doesn't matter.

Any application that can be written in JavaScript, will eventually be written in JavaScript.

Un historique de l'utilisation de Javascript dans le web. Les SPA n'ont pas les mêmes besoin qu'un site web (blog, e-commerce) et pourtant on se retrouve partout avec la même complexité.

A.I. Start-Ups Face a Rough Financial Reality Check

De plus en plus de startup dans la GenAI qui souhaitaient développer leurs propres modèles se rendent compte que ça va coûter des milliards de dollars d'être en concurrence avec les GAFAM.

330 milliards dans 26 000 startups sur les 3 dernières années, c'est 60% de plus que ce qu'elles ont investi entre 2018 et 2020.

A part OpenAI qui aurait fait 1.6 milliards de bénéfices l'année dernière (vs 200 millions pour Anthropic avec Claude), il y a beaucoup d'entreprises qui ne parviennent pas à faire payer leurs produits GenAI.

Bref, c'est le début du retour sur terre avec surement une réduction des investissements dans les prochains mois.

Chunking Techniques with Langchain and LlamaIndex
thumbnail

Toutes les méthodes de chunking de documents disponibles dans Langchain et LlaMa Index.

Les plus intéressants sont ceux qui se basent sur la structure du document comme le markdown ou le HTML.

Cela n'est néanmoins pas suffisant car on peut perdre le contexte d'un chunk à l'autre. Par exemple, si le deuxième chunk fait référence au sujet du premier mais sans le reformuler.

Dans les techniques plus avancées, on peut noter le Semantic Splitting qui tente de découper les chunk entre les phrases en fonction du moment ou on change de sujet.

Unleashing the Power of Knowledge Graphs in Retrieval Augmented Generation (RAG): Step by Step Instruction

Une introduction à l'utilisation d'un graphe en addition à la recherche sémantique classique pour améliorer la récupération d'informations d'un RAG.

Ce genre de technique est de plus en plus populaire pour palier à la limite de la perte de contexte en plusieurs chunks.

Le plus difficile reste bien sûr de créer le graphe et de le faire évoluer. (Je pense qu'il y a moyen d'utiliser un LLM pour ça)

zero-gpu-explorers (ZeroGPU Explorers)
thumbnail

HuggingFace sort une offre ou le coût des GPU est nul.

En gros, au lieu d'avoir un GPU dédié avec un Space (une application HugginFace), votre application se verra alloué un GPU quand elle en aura besoin.

Cela leur permet d'optimiser l'utilisation des GPU un peu comme dans une architecture Serverless CPU classique.

A noter que ce n'est pas entièrement gratuit, il faut un compte PRO à 9$/mois pour bénéficier de cette offre.

AI Inference now available in Supabase Edge Functions
thumbnail

Supabase sort une gamme de fonctionnalité pour faire tourner des modèles d'embedding et des LLMs dans leurs Edge Functions.

Les modèles tournent sur le runtime ONNX qui avec Transformer.js est la référence pour faire de l'inférence en Javascript et dans le navigateur (CPU et GPU)

Ils ont choisi Ollama avec un cluster de GPU pour faire tourner les LLMs (Mistral, LlaMa, etc)

En tout cas ça permet de faire très rapidement et de bout en bout des projets avec de la GenAI comme un RAG:

  • Vector database (PgVector)
  • Embedding model
  • Inférence LLM
Halley360 | Virtual tour of Halley Research Station, Antarctica

Une visite virtuelle de la station Halley en Antartic

Towards a modern Web stack (PUBLICLY SHARED)
thumbnail

Le document de travail de l'équipe de Flutter pour proposer une alternative à la stack HTML + CSS + JS.

En se basant sur des API low level: WASM, WebGPU et ARIA (accessibilité) pour render directement les pages web.

Web pages today are built on 25-year-old technology: a markup language for scientific documents from 1991, a scripting language from 1995 whose first version was implemented "in ten days", a styling and layout model from 1996, and an API from 1997 whose initial design was based on combining the independent inventions of two teams with little regard to the developer experience

Latency numbers every frontend developer should know
thumbnail

Une version frontend des chiffres de latence à connaitre comme la latence d'une connexion 4G (15-50 ms) ou le temps nécessaire pour parser 1Mo de Javascript (150 ms)

Recommandations de sécurité pour un système d’IA générative

Les recommandations de l'ANSSI en matière de sécurité autour de la GenAI.

Ils s'attardent sur 3 catégories d'attaques:

  • Attaques par manipulation: c'est l'injection de prompt
  • Attaques par infection: injecter de fausses données d'entrainement pour fausser le système plus tard
  • Attaques par exfiltration: récupérer des données d'entrainements ou les paramètres du modèle

Sinon c'est de la sécurité assez classique au final, DevSecOps, confidentialité, hébergement de confiance, etc.

Concernant les LLMs, ils conseillent de

  • filtrer les entrées / sorties du système d'IA
  • limiter les actions automatiques des Agents