Daily Shaarli

All links of one day in a single page.

October 20, 2024

Agent S

Agent S est un framework d'Agent conçu spécialement pour interagir avec un ordinateur comme un humain.

Il est capable de comprendre et manipuler des interfaces pour réaliser des tâches.

Il s'appuie sur un outil permettant de manipuler les interfaces au clique mais aussi de la recherche en ligne et une mémoire des actions réalisées précédemment.

Vector DB Comparison
thumbnail

Un comparatif des capacités des bases de données vectorielles.

Mon conseil sur ce sujet c'est de ne pas se prendre trop la tête et d'utiliser les capacités de recherche vectorielle de la DB que vous utilisez déjà:

Si vous avez besoin de recherche avancée avec filtrage, scoring, BM25 (keyword search) et scalabilité alors Elasticsearch reste la meilleure option.

Si vous avez besoin de quelque chose de léger qui tourne dans le même process que votre application, il y a Qdrant (Python) ou LanceDB (Javascript) selon votre techno.

MLE-bench: Evaluating Machine Learning Agents on Machine Learning Engineering

Un nouveau benchmark qui vise à évaluer les capacités des LLMs à résoudre des tâche de ML engineering.

Concrètement, on leur pose des problèmes de MLE comme entrainer des modèles, préparer des dataset ou exécuter des expérimentations.

Certaines tâches ont été résolues par les modèles avec plus de 200 étapes et plusieurs heures de calcul.

Sans surprise, c'est le modèle o1 de OpenAI qui obtient la meilleure place avec 16.9% des problèmes résolus. On trouve ensuite GPT4-o avec 8.7%, Claude 3.5 Sonnet avec 7.6% et LlaMa 3.1 avec 3%

microsoft/BitNet: Official inference framework for 1-bit LLMs
thumbnail

Microsoft propose un framework pour l'inférence de modèles à 1bit.

Cela signifie que la précision du modèle est à 1 seul bit au lieu des 32 bits habituels pour un float. Réduire le nombre de bits de précision est le processus de "quantization" et cela permet de réduire les exigences en terme de hardware pour un modèle.

D'ailleurs, la précision n'est pas de 1 bit mais plutôt une moyenne de 1.58 bit car la représentation interne des poids du modèle se fait avec des ternaires (1, 0 ou -1) et il faut donc 1 ou 2 bits pour les représenter.

Ainsi, un modèle "quantizé" à 16, 8, 4 voir 1 bit aura un meilleur débit de token et pourra fonctionner sur du matériel moins puissant au prix d'une diminution des capacités de "raisonnement" du modèle.

Alors oui ça peut être utile pour faire tourner des modèles sur du matériel de consommateur (ordinateur, téléphone) mais il y quand même un inconvénient majeur il faudrait ré-entrainer le modèle de 0 par rapport aux techniques habituelles de quantization qui peuvent simplement s'appliquer un modèle déjà entrainé.

Il est possible d'essayer des modèles 1 bit sur Huggingface et se faire une idée des capacités:

NotebookLM - Google Drive RAG

NotebookLM est une manière très simple de faire un RAG à partir de document présents sur Google Drive (mais pas que)

Il suffit de créer un Notebook, de sélectionner des sources et de poser des questions comme dans ChatGPT.

Les sources possibles pour le moment:

  • Google Slides
  • Google Doc
  • Site web
  • Vidéo Youtube
  • Texte brut

C'est très facile à mettre en place et ça fonctionne plutôt bien.

La feature avec effet Whaou mais valeur à prouver c'est la possibilité de créer un "podcast" d'une conversation fictive à propos des documents que vous avez envoyé pour résumer les thèmes clés.

FRAMES: Factuality, Retrieval, And reasoning MEasurement Set
thumbnail

Frames est un benchmark (plutôt un dataset) de Google pour mesurer les capacités des RAGs.

Il contient +800 questions/réponses/articles qui nécessite de récupérer des informations depuis 2 à 15 articles de Wikipédia pour y répondre.

Concrètement cela veut dire que pour tester les performances de son RAG, il suffit de mettre les articles de Wikipédia anglophone en base de connaissances et de poser les questions du dataset une à une.

Pour arriver à répondre à ces questions, il faut que le RAG soit capable d'extraire des informations de plusieurs documents, de traiter des données numérique, des tableaux et de gérer des contraintes ou des données temporelles.