Weekly Shaarli
Week 16 (April 17, 2023)
Un article qui compare l'arrivée de l'IA avec celle du cloud il y a 17 ans et les premiers services d'AWS.
J'aime notamment le parallèle à propos des croyances limitantes du cloud comme "les gouvernements ne seront jamais dans le cloud" et celles qu'on peut avoir à propos de l'IA "il y aura toujours un humain dans la boucle" (par exemple)
Exploration du contenu d'un des plus gros jeux de données utilisé pour entrainer les IA.
Il contient des données récupérées depuis le web depuis des sites comme Wikipédia ou patent.google.com ou encore des sites de ebooks piratés.
Cela pose beaucoup de question de copyright sur la légitimité de l'utilisation de ce jeux de données pour entrainer des IA commerciales sans compensation pour les créateurs de contenu.
De même pour les différents biais induit dans les IA par leur entrainement sur des contenus reflétant majoritairement la culture occidentale
Des applications permettant de visualiser une conversation avec ChatGPT sous la forme de nœuds dans d'un graph ou de card sur un tableau blanc.
C'est beaucoup plus pratique de traiter l'exploration d'un sujet comme ça plutôt que de devoir remonter sans cesse dans l'historique du chat.
Un article plus détaillé sur les possibilités que commence à offrir les LLM pouvant fonctionner en local dans le navigateur.
On est encore loin de l'adoption pour les utilisateurs standards car il faut:
- lancer chrome avec des flags spéciaux
- télécharger le modèle (plusieurs Go)
- une carte graphique puissante
J'en parlais ici aussi https://links.aschen.tech/shaare/Ov51-w
Un autre article qui parle de rejoindre une startup en early stage mais du point de vu concret d'un développeur et de ce qu'on peut apporter.
C'est aussi un bon résumé de comment arriver à un MVP
Une liste de faille des LLM et des exemples d'exploitation.
C'est principalement des prompt injection
Elon Musk attaque OpenAI en justice car ils auraient entrainé leur IA illégalement sur les données de Twitter
Mullvad VPN se fait perquisitionner en Suède, pour le coup ils avaient dit la vérité et il n'y avait vraiment aucune donnée d'utilisateur à saisir
Un article très complet sur les agents autonomes à base de LLM.
L'auteur est un peu trop optimiste à mon goût mais ça à le mérite de bien expliqué le fonctionnement et donner beaucoup d'exemples d'utilisation.
Un jeux d'aventure en Typescript :D
Un article qui montre l'empreinte en équivalent CO2 des choses du quotidien en comparant à échelles comparables.
Product Owner ou Product Manager, au final ce sont des postes semblables dont le but est de conduire les développements produit à un apport de valeur.
Un style de licensing intéressant chez CockroachDB:
- licence Business Source License (type Server Side Public Licence) avec interdiction de faire un SaaS
- Apache 2 après 3 ans
Cela permet de rentabiliser leur business tout en offrant la totalité du produit en Apache 2 après une certaine période.
Un guide entier pour apprendre les différentes techniques d'attaques possible sur les LLM via notamment l'injection de prompt.
Le guide présente aussi des techniques de défense
Un autre projet pour créer un LLM entièrement open source (code du modèle + jeux de données + poids entrainés).
Pour l'instant ils ont réalisé la première étape qui est de constitué un jeux de données open source en suivant les instructions données dans la publication scientifique de LLaMa.
Ils ont des données, principalement en anglais, qui proviennent de:
- Commoncrawl
- C4
- Github
- ArXiv
- Wikipédia
- StackExchange
- des livres
Plus d'info et les liens de DL chez HuggingFace
D'ici quelques semaines le modèle devrait être entrainé (avec LLaMa) et disponible en open source comme Cerebras et StableLLM
L'entreprise Stability AI qui est déjà derrière le modèle Stable Diffusion pour la génération d'images a sorti un modèle pour la génération de texte.
Assez similaire à GPT de OpenAI avec un contexte de 4096 tokens.
Le modèle de base est véritablement Open Source et autorisé pour des applications commerciales:
- code en Apache 2
- poids en creative commons avec citation de StabilityAI
A noter qu'il existe une version des poids fine tuné pour la conversion mais la licence est non commerciale car ils ont utilisé les données de Alpaca (en autre)
Un article explicatif du besoin et du fonctionnement du load balancing.
Très bien expliqué et avec des schéma intéractifs!
Pour bien comprendre les besoins, il ne faut pas oublié que les requêtes ne sont pas égales, certaines sont plus longues ou plus consommatrices que d'autre à exécuter.
Au dela du "simple" round robin, d'autres stratégies existent:
- least connection: le load balancer envoie la requête au serveur en ayant le moins en cours
- peak exponentially weighted moving average: calcul de la latence moyenne des serveurs et tente d'utiliser uniquement les serveurs ayant la plus faible latence
La société général a déployé un Smart Contract Ethereum pour un stablecoin basé sur l'euro
Sauf que:
- ils peuvent transferer votre argent
- ils peuvent "burn" tout votre argent
- chaque transaction doit être approuvée par une autre transaction
En gros rien de plus centralisé mais avec les inconvénients d'une blockchain (lenteur, prix de transaction, immutabilité)
L'étude est sur 3 pays cette année: France, Allemagne et Pays-Bas
Quelques chiffres:
- seulement 16% de développeuses
- 58 000€ salaire médian en France (50 000€ hors Paris)
- jusqu'à 40% de différence entre le salaire Paris vs hors Paris
- le rôle CDI le mieux payé est développeur backend
- le rôle freelance le mieux payé est data engineer/product manager
Un outil pour créer des démo d'un produit
Le jeux de la vie de Conway codé avec le jeux de la vie de Conway.
On se déplace à la souris et on peut zoomer/dézoomer entre les niveaux d'univers avec la molette
Explication ici https://blog.oimo.io/2023/04/10/life-universe-en/
Typescript est carrément Turing complete!
L'auteur a implémenté un sous langage type brainfuck et Typescript est capable de l'interpréter.
const test1 = interpreter('*>*>*', '000000'); // '111000'Un outil qui permet de calculer la répartition des parts lors de la création d'une startup
Autre outils
https://www.embroker.com/blog/startup-equity-calculator/
https://capbase.com/startup-equity-calculator/
Le comité ISO a terminé de travailler sur la norme SQL 2023.
Au programme quelques améliorations du langage (qui étaient déjà supportées dans de nombreuses DB comme Postgres par exemple) mais surtout l'introduction du support du JSON et des graphes.
Par exemple les chemins seront simplement accessible avec des "."
// {"foo": {"bar": [100, 200, 300]}, ...}
SELECT t.j.foo.bar[2], ... FROM table ...Une liste d'outils OSINT et comment s'en servir
Excellent outil multiplateforme pour prendre des screenshots et les modifier.
Un guide sur les différentes techniques de Prompt Engineering
Un article explicatif de ce qu'est vraiment le Prompt Engineering et surtout des méthodes pour avancer de manière scientifique dans l'élaboration de prompts.
Typiquement l'auteur utilise des scripts Python et LangChain pour évaluer la performance de ses prompts.
C'est important de pouvoir mesurer la précision des réponses fournies par un prompt en utilisant un modèle ainsi que le nombre de tokens utilisés afin de pouvoir faire des comparaisons et prendre une décision justifié par son business modèle.
Un autre article plus technique sur le sujet https://lilianweng.github.io/posts/2023-03-15-prompt-engineering/
Du jamais vu niveau collecte d'informations sur les citoyens par des organismes gouvernementaux !
Un décret force les entreprises opérant en Biélorussie à fournir des API pour qu'entre autre le KGB puisse faire des recherches en live dans les bases de données.
Un projet communautaire et collaboratif pour créer un modèle entraîné comme ChatGPT
Un résumé des innovations de ces derniers jours dans le monde des LLM.
Une vidéo demoscene de 7 min qui a été généré par un programme de seulement 177Ko
Excellent article sur les avantages et inconvénients de rejoindre une startup à ces débuts.
Whisper, le modèle de reconnaissance de texte de OpenAI est en full open source
Un skin d'une arme CSGO qui se vend 400 000$ (en cryptomonnaie)
Comme quoi il n'y a même pas besoin de NFT pour faire ce genre de transaction hallucinante
Un retour d'expérience sur comment organiser son process de recrutement.
Les conseils en plus de Fabien Ducher:
En amont
- l'organisation de la tech est suffisamment claire
- on est à l'aise sur la salary grid (qu'elle soit affichée publiquement ou non)
- on est sur d'avoir les ressources pour accompagner l'onboarding et rampup
- Les personnes qui font passer des entretiens sont formées à le faire (posture, ce qui est ok ou pas ok de dire, comment on le mène, les entretiens eux même, etc.)
- Checklist d'onboarding avec toutes les composantes (RH, IT, manager, newcomer) déjà existante.
L'offre
- inclusive! exemple: pas un empilement de compétences (soft et hard), mais un message clair sur le fait que c'est un repère et qu'il ne faut pas cocher toutes les cases pour candidater
- La description du process : les entretiens, avec qui, la durée et à quoi ils servent
Le process de validation
- s'il y a des tests / questions techniques, ce sont les mêmes pour tout le monde et on assess les résultats
- On liste à l'avance les red flag qu'on ne veut pas voir
- Max 2 semaines entre la prise de contact et la décision
- J'aimerai beaucoup tester aussi l'idée que la personne qui candidate vient avec un cas technique qu'elle discute avec des personnes de l'art. (ca brise le test commun à tous, mais c'est au moins un contexte que le candidat maitrise et qui sera moins stressant)
- Feedback clair et factuel après chaque entretien, surtout en cas de nogo à une étape
- Lors du dernier entretien, on est en situation d'échange libre où on répond à toutes les questions de la personne qui candidate, on ré-explique l'onboarding, le carreer path, la période d'essai, les attentes, etc.
- un comité d'évaluation à la fin avec toutes les personnes ayant réalisé un entretien
La proposition
- Salaire en comparant avec la grille, les stats de salaire à poste équivalent en interne (incluant l'équité homme / femme) et des bench extérieur (à noter ici que Figures est canon comme outil)
l'onboarding
- Welcome 1-1 où on présente la checklist d'onboarding, on cale les 1-1 hebdo,
- On présente les obj de PE la première semaine
- On s'assure que l'équipe l'accueil bien dans le day to day
Période d'essai
- on fait des 360 pour avoir le max d'avis et pas uniquement l'avis du manager
- On refait a minima un point à mi PE, voir tous les mois avec le newcomer
- Ou on coupe ou on valide, le renouvellement ne sert que pour des doutes mineurs qui n'auraient pas pu être levé dans le délai. Avoir une boule noire nuira à terme plus à votre organisation que n'avoir personne.