Rivet est de loin le meilleur outil que j'ai pu voir pour faire du Prompt Engineering
Franchement j'en ai testé pleins et la rien à redire, on peut tout faire simplement:
- assembler des prompts
- parse les sorties textes
- envoyer ce qu'on a parse dans d'autres prompts
- écrire du code Javascript dans un node (c'est typé et en plus l'éditeur c'est vscode)
Le moteur d'exécution des nodes est super bien fait, par exemple il peut mettre en cache les appels à Open AI si une node fait une erreur plus loin alors on peut corriger et rejouer sans attendre.
L'éditeur de nodes est aussi super intuitif, j'ai pu créer un système complexe de prompts en 15 min sans la documentation
Une étude compare l'impact environnemental des modèles Open Source de GenAI.
Générer une image avec Stable Diffusion consomme autant que charger un smartphone (0.012 kWh)
A priori les modèles spécialisés seraient tout autant efficace sur certaines tâches précises tout en consommant moins d'énergie.
De la recherche vectorielle sur des fichiers audio avec Elasticsearch et librosa
Une autre méthode pour améliorer un RAG.
Ici après une première récupération et injection de documents, on va utiliser chaque phrase du LLM pour récupérer de nouveaux documents potentiels à ingérer lors de la génération.
Cela permet d'aller récupérer et injecter d'autres concepts qui ressortent lors des phases de restitution du LLM.
HyDE est une méthode pour améliorer la recherche d'un RAG.
Concrètement on prend la demande d'origine et on va générer plusieurs documents à partir de cette demande.
Ces documents vont avoir des champs sémantiques différents pour espérer retrouver un nombre plus importants de documents.
Par exemple, avec la demande suivante "Est-il possible d'ajouter un module de formation obligatoire à un utilisateur?"
Si on a 3 sources de données avec des profils rédacteurs différents alors on va demander à GPT de générer des réponses imaginaires:
- Github: "écrit une réponse hypothétique à cette demande du point de vue d'un développeur"
- Notion: "écrit une réponse hypothétique à cette demande du point de vue d'un Product Owner"
Une méthode pour évaluer les performances des Agents LLM.
Pour chaque tâche, l'Agent doit utiliser un ou plusieurs outils comme un navigateur web, de l'exécution de code, une API custom, etc.
Les tâches sont réparties en 3 niveaux:
- Niveau 1: entre 0 et 1 outil nécessaire, maximum 5 étapes
- Niveau 2: entre 5 et 10 outils, plus de 5 étapes
- Niveau 3: grand nombre d'outils et beaucoup d'étapes
Ils ont évalué GPT-4, AutoGPT et GPT-4 avec plugins et aucun n'arrive à réaliser des tâches de niveau 3
Un modèle d'embeddings de chez Google qui est plus petit que celui de OpenAI donc beaucoup moins cher et utilisable même côté client uniquement (web, mobile)
ça permet de faire de la recherche par similarité mais aussi un classifier.
Zappier propose quasiment toutes ses intégrations sous la forme d'outils LLM en langage naturel.
Ça permet à un Agent d'interagir avec des milliers de services directement via Zappier.
Une méthode de prompt engineering pour améliorer la qualité des réponses.
C'est une utilisation un peu plus avancée d'une chaine de prompt avec une critique et une réponse à la critique générés par le LLM
Les Agents qui jouent à Minecraft sont parmi les projets les plus avancés en terme de LLMs.
Typiquement ici l'Agent est capable d'écrire du code pour réaliser différentes actions mais aussi de faire évoluer le code écrit en fonction du feedback du monde ("il manque 2 bois pour faire une hache") ou des erreurs de programmation.
La vidéo se développe de plus en plus avec tout ce qu'on retrouve dans la génération d'image mais en vidéo:
- upscaling (19:9 => 4:3)
- inpainting
- generation
Un autre outil en NoCode pour faire des applications à base de LLM.
C'est testable en live chez HuggingFace: https://huggingface.co/spaces/Logspace/Langflow
Un outil d'observabilité pour LLM qui s'intègre quasiment automatiquement aux SDK OpenAI et Langchain.
Volet évaluation des performances
- Evaluation manuelle d'une chaine de prompt dans Langfuse
- Feedback utilisateur (explicite et implicite)
- On peut même évaluer auto avec GPT-4 et intégrer ce résultat
Volet R&D
- Création de datasets d'évaluation (évaluation manuelle dans Langfuse ou avec un Agent GPT-4)
- Versioning des traces collectées pour évaluation et A/B testing
Volet observabilité
- Analytics générales (coût, latence)
- Possibilité de suivre toutes les intéractions liées à une action métier
Bref, ça fait le café et en plus ils sont dispo en SaaS et en Open Source.
Des leaks de prompt, il y a ceux d'OpenAI mais aussi ceux des assistants GPT.
La plupart des prompts peuvent être leak via la technique de la grand mère https://news.ycombinator.com/item?id=35630801
Un modèle de langue spécialisé dans le code dans le même genre que Codex (celui de OpenAI utilisé par Github Copilot)
Il offre de meilleures performances que CodeLlaMa.
Par contre aucune comparaison avec Codex et GPT4, les performances sont très certainement inférieures
Une analyse de plusieurs centaines de conversations pour lister 6 catégories d'interactions avec un LLM via un chat:
- Search queries: comme sur Google
- Funneling conversations: recherche en plusieurs étapes pour préciser la réponse
- Exploring conversations: explorer un sujet pour le comprendre
- Chiseling conversations: explorer plusieurs aspect d'un même sujet
- Expanding conversations: étendre le sujet de base sur des aspect non connus
- Pinpointing conversations: prompts pour avoir une réponse selon un format désiré
Le nouveau modèle Text-to-Speech de OpenAI, Whisper Large v3, est capable de transcrire 2.5h d'audio en moins de 2 minutes
Mistral 7B est disponible dans les workers de Cloudflare.
C'est une bonne nouvelle car ces worker sont distribués géographiquement et donc on peut espérer une latence d'inférence optimale n'importe ou dans le monde.
Un article qui parle de l'entrainement des LLMs.
Les LLMs sont d'abord entrainé un contenu de "basse qualité" équivalent à ~15 millions de livre.
Ensuite ils sont fine tuné une première fois avec des prompts/réponses de qualité, par exemple pour le dialogue.
La dernière étape est le RLHF, avec des réponses notés par des utilisateurs afin d'améliorer la dernière couche du modèle.
Whoa dans cet article les chercheurs ont réussi à manipuler l'interface d'Android avec un LLM.
C'est dans l'émulateur mais c'est quand même impressionnant, ils sont capable de faire des tâches assez complexes comme vider l'historique de navigation de Chrome ou faire des recherches Google