Une méta-étude sur les RAG.
Au programme les techniques pour chaque étape:
- pre-retrieval: query extension, data modification
- retrieval
- post-retrieval: re-ranking, filtering
- generation
- evaluation
RAGAS est un framework pour évaluer les RAG.
Il propose d'évaluer les deux aspects importants du RAG, à savoir:
- le retrieval: le RAG est-il capable de retrouver les documents pertinents?
- la génération: le RAG est-il capable de générer une réponse à la question?
Il y a plusieurs évaluateurs de disponible pour évaluer ces deux critères.
Pour tout ce qui est évaluation de la réponse à la question, RAGAS propose d'utiliser GPT4.
A noter aussi, le framework ARES
OpenAI a ajouté l'inpainting dans ChatGPT Plus.
On peut maintenant sélectionner une zone et indiquer à ChatGPT de quelle manière on souhaiterait la modifier
OpenAI a sorti une mise à jour de son API pour créer des Assistants.
On peut notamment utiliser jusqu'à 10000 fichiers dans leur RAG intégré et streamer les réponses.
Les Assistants permettent de développer très rapidement des POC d'Agents spécialisés en entreprise mais le côté boîte noir finit par se payer comme pour tout produit complètement fermé.
FineWeb est un dataset crawlé depuis internet et épuré au maximum des contenus générés par d'autres IA.
Il contient 15 000 milliards de tokens et peut être utilisé pour entraîner des LLM depuis zéro.
Note: à priori vous ne voulez pas faire ça vous même mais plutôt fine tuner un modèle existant
Je ne partage pas souvent des podcast mais dans celui-ci on en apprend un peu plus sur l'IA Act (à partir de 23 min)
Notamment, le texte originel n'était pas pensé pour la GenAI et il sera surement amendé dans les prochains mois.
Un retour d'expérience sur l'utilisation de GPT4 pour un usage modéré (500M tokens sur 6 mois).
Les retours d'expérience que je partage:
- Langchain et LlamaIndex ça apporte une couche d'abstraction supplémentaire difficile à maitriser alors que le SDK simple suffit
- le streaming pour faire attendre les utilisateurs est indispensable
- GPT4 a du mal à ne pas halluciner plutôt que de se taire lorsqu'il n'a pas d'info suffisantes
- la fenêtre de contexte de 128K c'est que en input, pour l'output ça n'a pas bougé et c'est toujours 4K tokens seulement
- les bases de données vectorielle sont inutiles dans la majorité des cas
LlaMA 3 sur Groq est d'une vitesse incroyable: 800 token/sec.
Les modèles sont disponible sur l'API de Groq Cloud
Ils n'ont pas encore d'offre entreprise payante mais on peut déjà essayer avec le free tiers
Un framework de fine tuning de LLMs.
Afin de pouvoir fine tuner des modèles même avec très peu de données (5-10 question/answer), ils ont une méthode pour générer de la donnée supplémentaire.
D'ailleurs, on voit qu'ils ont prévu les cas de RAG car on peut aussi renseigner un contexte
C'est une contribution en provenance des labo de recherche d'IBM.
On attendait l'annonce de Meta sur la sortie de LlaMa 3 (8B et 70B) et c'est maintenant chose faite :-)
Pas trop de surprise avec un modèle aux performances similaires que tous les autres gros modèles de 4e génération comme GPT4 Turbo, Claude 3 Opus, Mistral 8x22B et Gemini 1.5.
Par contre pour l'instant la fenêtre de contexte n'est que de 8K tokens ce qui est très peu comparer à ce qu'il se fait maintenant. On peut s'attendre à une mise à jour du modèle dans les prochaines semaines pour améliorer ça.
Un autre très bon modèle open source qui aura sa carte à jouer dans les prochains mois avec l'entrainement et le fine tuning de modèles.
Sinon dans les annonces, il y aurait aussi un modèle à 400B paramètres de prévu ce qui est énorme
On a souvent besoin d'extraire le contenu d'une page web et de le convertir en markdown quand on travaille avec des LLMs.
Ce script de 75 lignes de JS utilise Playwright pour convertir n'importe quel site en document markdown
Un modèle d'IA capable de réaliser des clips vidéos de têtes de personnes en incluant des mouvements avancés du visage comme des émotions.
En entrée, il lui suffit d'une image et d'un clip audio.
Impressionnant et en même temps ça fait peur pour les deepfakes
IA Act est en application depuis le 13 mars 2024.
Concrètement, il y a 4 types de Systèmes d'IA (SIA):
1) SIA à risque inacceptable (e.g. scoring social)
2) SIA très risqués (e.g. recrutement)
3) SIA avec obligation de transparence (e.g chatbot, génération)
4) SIA à risque minime ou nul (e.g. maintenance prédictive)
Pour ceux qui rentrent dans la 3e catégorie, il faut respecter les points suivants:
- informer les gens qu'ils interagissent avec un système d'IA
- informer en cas d'usage de système de reconnaissance émotionnelle ou de catégorisation par biométrie
- apposer un label identifiant les contenus modifiés ou créés grâce à une IA
(Le type d'entité du formulaire est "Fabricant de produits")
Mistral release leur nouveau modèle.
C'est le modèle qui présente le meilleur ratio performances / coût. Bien meilleur que le modèle Command R+ de Cohere par exemple.
Les performances sont bien en dessous de GPT 4 et Claude 3 Opus
Ça reste néanmoins le meilleur modèle Open Source et donc une très bonne base pour du fine tuning par exemple
La version 3 de Stable Diffusion est disponible en API chez Stability AI.
La génération d'image est meilleure et ils ont fait de gros efforts sur l'insertion de texte dans les images.
Les paramètres "temperature" et "top_p" contrôlent les choix fait par le LLM pour choisir les tokens les plus probable lors de la génération.
Plus la température est haute, plus le LLM sera à même de choisir des tokens ayant une faible probabilité d'apparaitre.
Top_p définit le nombre de tokens considérés pour la génération, ainsi une valeur élevé permettra au LLM de choisir parmi plus de mots.
OpenAI sort sa dernière version du modèle GPT4 Turbo avec des performances sensiblement meilleures
Il faut maintenant utiliser le modèle gpt-4-turbo
pour être sur de pointer sur la dernière version en date (9 avril 2024).
Les modèles GPT 4 turbo preview ne devraient plus être utilisés.
Une compétition de RAG. Je trouve ça intéressant de garder sous la main les 8 types de questions:
-
Question simple : questions demandant des faits simples, comme la date de naissance d'une personne et les auteurs d'un livre.
-
Question simple avec certaines conditions : questions demandant des faits simples avec certaines conditions données, telles que le cours de l'action à une certaine date et les films récents d'un réalisateur dans un certain genre.
-
Set Question: Questions qui attendent un ensemble d'entités ou d'objets comme réponse. Un exemple : quels sont les continents de l’hémisphère sud ?
-
Question de comparaison : des questions qui peuvent comparer deux entités, comme par exemple qui a commencé à se produire plus tôt, Adele ou Ed Sheeran ?
-
Question d'agrégation : questions qui peuvent nécessiter une agrégation des résultats de récupération pour répondre, par exemple, combien d'Oscars Meryl Streep a-t-elle remportés ?
-
Questions multi-sauts : questions qui peuvent nécessiter d'enchaîner plusieurs éléments d'information pour composer la réponse, comme par exemple qui a joué dans le dernier film d'Ang Lee ?
-
Question de post-traitement : questions qui nécessitent un raisonnement ou un traitement des informations récupérées pour obtenir la réponse, par exemple : combien de jours Thurgood Marshall a-t-il été juge à la Cour suprême ?
-
Question à faux prémisse : questions comportant une fausse préposition ou hypothèse ; par exemple, quel est le nom de l'album rap de Taylor Swift avant sa transition vers la pop ? (Taylor Swift n'a sorti aucun album de rap.)
Une méta étude sur les RAG avec notamment:
- Sentence-window retrieval
- Document summary index
- HyDE
- Multi-query
- Maximal Marginal Relevance
- Cohere Re-ranker
- LLM-based Re-ranker
L'étude montre que la combinaisons des méthodes Sentence Window Retrieval, LLM Rerank, Cohere Rerank et HyDE donnent les meilleurs résultats.
Dommage que l'étude ne parle pas des techniques qui limitent le chunking et d'autre chose méthode que les seules Vector Database pour récupérer les documents comme Elasticsearch par exemple.
La BPI lance un appel à projet autour de la GenAI avec à la clé entre 1 et 5 millions d'euro de financement.