Daily Shaarli
November 5, 2023
Excellent article qui expliquer le fonctionnement des LLMs
Une explication de fonctionnement des opérations sur les vecteurs (embedding LLM)
- distance euclidienne
- produit intérieur négatif
- similarité cosinus
C'est avec des indexes Postgres dans cet exemple. L'index HNSW est celui recommandé https://supabase.com/docs/guides/ai/vector-indexes/hnsw-indexes
Un article qui compare différentes bases de données vectorielles pour stocker les embeddings des LLMs et faire de la recherche sémantique.
A noter que si vous avez déjà Postgres ou Elasticsearch, les deux proposent un mode vectoriel.
Les bases de données dédiées aux vecteurs comme Qdrant ou Pinecone ne sont vraiment intéressantes que pour des gros volumes (> 100 000 vecteurs)
Une méthode de résolution de tâche qui s'apparente à un Graph Of Though (GOT) et qui permet d'améliorer la qualité d'une réponse à une question.
Ce qu'ils appellent module pourrait se traduire par Agent LLM.
La question est d'abord analysée par un Agent "Branch" qui va générer des angles d'évaluation de la pertinence d'une future réponse.
Ensuite dans l'Agent "Solve", on fait répondre à la question par le LLM (on génère plusieurs réponses: A, B, C, etc) et on va ensuite faire générer un feedback sur les réponses en fonction des critères de chaque branche.
Finalement c'est l'Agent "Merge" qui va s'occuper de récupérer les feedback sur les réponses puis il va décider quelle réponse était la mieux entre A, B et C.
Un résumé de l'état de l'art sur les application à la génération de code des LLMs.
Sous le coude
Une lib Javascript qui propose de multiple actions avec des modèles de GenAI:
- LLM: OpenAI, Anthropic, Cohere, Llama.cpp, Hugging Face
- text to image: OpenAI (Dall·E), Stability AI, Automatic1111
- text to speech: Eleven Labs, LMNT
- speech to text: OpenAI (Whisper)
- embeddings: OpenAI, Cohere, Llama.cpp, Hugging Face
Un fil d'actualité sur les derniers papiers à propos des LLM
Une API de Text-to-Speech avec une latence très basse (300ms).
Ça veut dire que l'on peut envoyer du texte en streaming et recevoir de l'audio en streaming en pluguant GPT4 directement sur Turbo par exemple.
C'est la porte ouvertes aux conversations quasi temps réel (reste encore le Speech-to-Text et surtout l'envoi du prompt à GPT4 qu'il ne sera pas possible de streamer par contre)
Tout ce qu'il faut pour entraîner un LoRA depuis un set d'images.
Un LoRA est un sous modèle d'image qui permet de créer des images dans le même genre que ses images d'entraînement.
Une démo impressionnante avec un dessin à main levé qui se transforme en scène 3D dans le style d'un prompt
La fameuse expérience ou des LLMs communiquent entre eux dans un jeux vidéo type animal crossing.
Ils ont poussé le concept de mémoire assez loin ce qui a permis aux Agents d'organiser des évènements entre eux car ils avaient la possibilité de se rappeler et de propager l'information.
Ils introduisent une fonction pour trier les informations en mémoire selon la date de l'évènement, son importance et sa pertinence face à la situation actuelle.
La mémoire est également retravaillé avec le concept de reflection qui synthétise la mémoire en des informations de plus haut niveau.
Présentation d'un sujet de recherche autour des RAG afin d'améliorer leurs performances dans des cas ou certains documents insérés dans le prompt contiennent des informations sémantiquement proches mais non pertinentes.
Dans le cadre d'un LLM, la reflection consiste à le faire réfléchir sur la pertinence des informations qu'il a extraites.
Une étude qui démontre des amélioration des performances des LLMs lorsque l'on inclut un enjeu émotionnel dans les questions.
Par exemple: "Rédige un compte rendu sur la RGPD, c'est très important pour ma carrière"
La fin de la phrase va améliorer la qualité de la réponse fournie par le LLM.
Des exemples de prompt pour faire du Tree of Thought
Un framework RAG qui est déjà connecté à pleins d'outils et les synchronise dans des bases de données vectorielles.
Excellente introduction sur RAG.
Les connaissances des LLMs sont "bloquées" dans le temps alors il est nécessaire des leur fournir des documents en provenance de source externes pour répondre à des questions.
Souvent on va stocker ces documents sous la forme d'embeddings dans des bases de données vectorielles. Cela permet de faire des recherches sémantiques et d'incorporer les documents à propos du sujet de la question posée au LLM.
De belles animations sensées représenter le fonctionnement de modèles d'IA.
C'est beau mais je n'y comprends pas grand chose :-)
Une reproduction d'un fonctionnement d'un OS avec récupération et stockage d'informations en mémoire.
Uniquement pour du tchat par contre, pas de notion d'Agent LLM