Recherche effectué dans :

Cliquez sur un tag pour affiner votre recherche :

[ << Page précédente (850) ] [ Page suivante (2617) >> ]

Journal du mercredi 05 juin 2024 à 14:42 #JaimeraisUnJour, #CUDA, #GPU

#JaimeraisUnJour suivre le tutoriel https://github.com/srush/GPU-Puzzles - Solve puzzles. Learn #CUDA.

#GPU architectures are critical to machine learning, and seem to be becoming even more important every day. However, you can be an expert in machine learning without ever touching GPU code. It is hard to gain intuition working through abstractions.

Journal du mercredi 05 juin 2024 à 11:29 #postgresql, #documentation, #JeMeDemande

#JeMeDemande s'il existe un meilleur moteur de recherche que https://www.postgresql.org/search/?u=%2Fdocs%2F16%2F&q=on+conflict 🤔.

J'ai fait quelques recherches, pour le moment, je n'ai rien trouvé 😟.

Journal du lundi 03 juin 2024 à 15:28 #OnMaPartagé

#OnMaPartagé que le projet https://github.com/dylanaraps/pure-bash-bible est archivé 😥.

Je constate que l'auteur — dylanaraps — de "pure bash bible" a aussi archivé https://github.com/dylanaraps/neofetch.

Je me souviens d'avoir lu le thread Neofetch development discontinued, repository archived il y a quelques jours.

Journal du vendredi 31 mai 2024 à 20:02 #coding, #haskell

J'ai commencé à écouter « Votre mission ? Découvrir Haskell et le mettre en prod - Céline Louvet » parce que je ne comprends rien à Haskell. Je ne vois pas ce que ce langage peut m'apporter. Je ne vois pas sa puissance, mais comme beaucoup de bons codeurs adorent Haskellet les langages fonctionnels, je suis presque certain que je passe à côté de quelque chose de très puissant.

Dans cette vidéo, Céline Louvet dit qu'elle est la première dev, la seule dev de sa startup et se lance avec un langage qu'elle ne maîtrise pas et que très peu de développeurs maîtrisent.
Je trouve qu'elle est très audacieuse !

Cette vidéo date de 2019, j'ai regardé son LinkedIn et je constate que l'expérience a tourné court. Peut-être pour plein de raisons non liées à Haskell. Et depuis je constate qu'elle n'a plus fait de Haskell 🤔.

Lecture active de l'article « LLM auto-hébergés ou non : mon expérience » de LinuxFr #llm, #JaiLu, #JeMeDemande, #JaiDécouvert

#JaiLu l'article "LLM auto-hébergés ou non : mon expérience - LinuxFr.org" https://linuxfr.org/users/jobpilot/journaux/llm-auto-heberges-ou-non-mon-experience.

Cependant, une question cruciale se pose rapidement : faut-il les auto-héberger ou les utiliser via des services en ligne ? Dans cet article, je partage mon expérience sur ce sujet.

Je me suis plus ou moins posé cette question il y a 15 jours dans la note suivante : 2024-05-17_1257.

Ces modèles peuvent également tourner localement si vous avez un bon GPU avec suffisamment de mémoire (32 Go, voire 16 Go pour certains modèles quantifiés sur 2 bits). Ils sont plus intelligents que les petits modèles, mais moins que les grands. Dans mon expérience, ils suffisent dans 95% des cas pour l'aide au codage et 100% pour la traduction ou la correction de texte.

Intéressant comme retour d'expérience.

L'auto-hébergement peut se faire de manière complète (frontend et backend) ou hybride (frontend auto-hébergé et inférence sur un endpoint distant). Pour le frontend, j'utilise deux containers Docker chez moi : Chat UI de Hugging Face et Open Webui.

Je pense qu'il parle de :

Je suis impressionné par la taille de la liste des features de Open WebUI

J'ai acheté d'occasion un ordinateur Dell Precision 5820 avec 32 Go de RAM, un CPU Xeon W-2125, une alimentation de 900W et deux cartes NVIDIA Quadro P5000 de 16 Go de RAM chacune, pour un total de 646 CHF.

#JeMeDemande comment se situe la carte graphique NVIDIA Quadro P5000 sur le marché 🤔.

J'ai installé Ubuntu Server 22.4 avec Docker et les pilotes NVIDIA. Ma machine dispose donc de 32 Go de RAM GPU utilisables pour l'inférence. J'utilise Ollama, réparti sur les deux cartes, et Mistral 8x7b quantifié sur 4 bits (2 bits sur une seule carte, mais l'inférence est deux fois plus lente). En inférence, je fais environ 24 tokens/seconde. Le chargement initial du modèle (24 Go) prend un peu de temps. J'ai également essayé LLaMA 3 70b quantifié sur 2 bits, mais c'est très lent (3 tokens/seconde).

Benchmark intéressant.

En inférence, la consommation monte à environ 420W, soit une puissance supplémentaire de 200W. Sur 24h, cela représente une consommation de 6,19 kWh, soit un coût de 1,61 CHF/jour.

Soit environ 1,63 € par jour.

Together AI est une société américaine qui offre un crédit de 25$ à l'ouverture d'un compte. Les prix sont les suivants :

  • Mistral 8x7b : 0,60$/million de tokens
  • LLaMA 3 70b : 0,90$/million de tokens
  • Mistral 8x22b : 1,20$/million de tokens

#JaiDécouvert https://www.together.ai/pricing

Comparaison avec les prix de OpenIA API :

#JeMeDemande si l'unité tokens est comparable entre les modèles 🤔.

Journal du vendredi 31 mai 2024 à 15:24 #JaiDécouvert

À la fin de l'épisode Et si Shape Up avait raison de faire des pauses ? de Scrum Life #JaiDécouvert le néologisme one piece flow où une équipe travaille sur un problème à la fois, tout ensemble.

Journal du jeudi 30 mai 2024 à 15:42

Je viens de finir l'écoute de le l'épisode "Le détournement de fonds qui traumatise la tech française - Nicolas Colin - The Family". J'ai trouvé cela intéressant.

Lien : https://youtu.be/Y67A1Hihcas?si=wqgubHKGyHQ44whb.

Journal du mardi 28 mai 2024 à 11:37 #JeMePoseLaQuestion

Au sujet de règle de platine, un ami vient de me dire :

Est-ce que tu dois appliquer la règle de platine ou / et la règle d'or avec les personnes qui ne veulent pas l'appliquer ?

Je trouve que c'est une très bonne question dont je n'ai pas la réponse.

Première idée qui me vient à l'esprit : est-ce qu'une réponse à ce problème serait d'organiser une discussion en tête-à-tête au début de la collaboration avec une personne afin de se mettre d'accord sur protocole de travail, dans le même esprit que The Core Protocols.
Lors de cette discussion, l'objectif serait que les deux personnes se mettent d'accord pour utiliser soit la la règle d'or soit la règle de platine soit aucune des deux — dans ce cas de figure, je pense que la relation est mal partie 😉.

#JeMePoseLaQuestion de comment organiser cela sans passer pour un ovni 🤔.

Journal du mardi 28 mai 2024 à 11:27 #JaiDécouvert, #blog, #Jadore, #JeSouhaite

Ce matin #JaiDécouvert le site site perso gwern.net ( #blog ) et je déclare que « #Jadore ce site » !
J'aime le fond, la forme, l'attention aux détails, la rationalisation des décisions… 👌.

Voici quelques exemples de choses que j'apprécie.

Par exemple, sur la page https://gwern.net/about :

  • a. Je pense que cela signifie que l'article a été commencé en 2010 et a évolué jusqu'en 2022.
  • b. Je trouve cela très simple pour indiquer que la page n'est plus en work in progress.

Je me suis souvent demandé comment je pouvais gérer mes notes mutables. Je considère qu'un article daté se doit être autant que possible immutable.
J'aime ces choix UX a et b pour indiquer ces informations au lecteur.

#JeSouhaite m'inspirer des éléments UX a, b et c pour mon site sklein.xyz.


mention any use of Fermi estimates in Fermi calculations (from)

J'adore 🙂.


J'adore cette UX d'affichage de breadcrumb pour la raison suivante : les breadcrumb sont généralement affichés sur une ligne, ce qui pose souvent un problème pour les longs titres.
Ici l'affichage sur plusieurs lignes règle ce problème et transmet bien l'idée de hiérarchie 👌.


Il y a tant de bonnes choses à dire sur ce site, mais je m'arrête là pour cette note.

Je constate que j'utilise de plus en plus ChatGPT à la place de DuckDuckGo #llm, #open-source, #réflexion, #open

Je vous partage une réflexion que je viens d'avoir.

  • Je constate que j'utilise de plus en plus ChatGPT à la place de DuckDuckGo (mon moteur de recherche actuel).
  • Je commence souvent par dégrossir une question avec ChatGPT, puis j'utilise mon moteur de recherche pour vérifier l'information avec une source que je juge "fiable".
  • À d'autres moments, je préfère un article Wikipédia ou une documentation de référence plus exhaustive ou structurée — question d'habitude, sans doute — que la réponse de ChatGPT.

Suite à cela, je me suis dit que Google doit très rapidement revoir ses produits. Sinon, il est fort probable que Google perde énormément de revenus.

Je me suis ensuite demandé à quoi pourrait ressembler un produit Google basé sur un LLM qui remplacerait totalement ou en partie Google Search. Là, j'ai pensé directement à l'intégration de publicité à l'intérieur des réponses du LLM de Google 😱.

  • Les publicités pourraient être intégrées de manière subtile sous forme de conseil dans les réponses.
  • Je ne pourrais plus utiliser de bloqueurs de publicité comme uBlock Origin 😟.
  • La situation pourrait être encore pire : Google pourrait se faire financer par des États, des grandes entreprises ou des milliardaires pour nous influencer légèrement via les réponses du LLM.

Je pense plus que jamais qu'il est important pour l'avenir de construire des modèles #open-source, auditables et reproductibles.

Journal du dimanche 26 mai 2024 à 23:06 #neovim, #plugin

Le 1er octobre 2023, on m'a demandé pourquoi j'utilisais neo-tree.nvim plutôt que nvim-tree.lua.

En été 2022, je pense avoir choisi neo-tree.nvim après avoir lu ce commentaire :

After adding soo many "nvim-tree does it" enhancements, I think it has all the features that nvim-tree has at this point, plus some more that nvim-tree doesn't have. (from)


Sur le GitHub officiel le neo-tree.nvim, je lis :

Why?

There are many tree plugins for (neo)vim, so why make another one? Well, I wanted something that was:

  1. Easy to maintain and enhance.
  2. Stable.
  3. Easy to customize.

Easy to maintain and enhance

This plugin is designed to grow and be flexible. This is accomplished by making the code as decoupled and functional as possible. Hopefully new contributors will find it easy to work with.

One big difference between this plugin and the ones that came before it, which is also what finally pushed me over the edge into making a new plugin, is that we now have libraries to build upon that did not exist when other tree plugins were created. Most notably, nui.nvim and plenary.nvm. Building upon shared libraries will go a long way in making neo-tree easy to maintain.

En lisant ces paragraphes, je pense comprendre que neo-tree.nvim a été créé après et en s'inspirant de nvim-tree.lua. Je suppose qu'il est plus moderne 🤔.


En 2022 une discussion a eu lieu pour merger les plugins neo-tree.nvim et nvim-tree.lua, les échanges entre les auteurs étaient chaleureux et constructif. Après beaucoup d'hésitation, la fusion ne s'est pas faite.


Le créateur de neo-tree.nvim explique dans une issue nvim-tree.lua pourquoi il a créé neo-tree.nvim.


L'auteur de nvim-tree.lua dit :

neo-tree as you said is more modular, leaning towards power users. (from)


Je lis ici :

NvimTree is faster (if performance matters to you...)

et ici

I've used nvim-tree for years and switched to neo-tree a while ago to try it out. At first I thought the buffers and git feature are cool, but then I barely used them, because I already have lazygit and telescope for that. Also neo-tree is considerably slower and was quite buggy for me. So I switched back to nvim-tree, honestly think it's just better.


Après avoir comparé la documentation de neo-tree.nvim avec celle de nvim-tree.lua, je constate :

  • Les deux plugins supportent un mode "netrw or vinegar".
  • Les deux plugins supportent un mode "floating window".
  • neo-tree.nvim propose une fonctionnalité de fuzzy_finder que je n'ai pas trouvée dans nvim-tree.lua.
  • J'ai une petite préférence pour les choix de key mapping de neo-tree.nvim mais c'est un avis subjectif, sans doute basé sur mon habitude.

En conclusion, je pense qu'il n'y pas d'argument frappant en faveur de l'un de ces deux plugins.

Journal du dimanche 26 mai 2024 à 10:52 #neovim, #dotfiles, #direnv, #coding

Quand je travaille sur le refactoring de ma configuration Neovim, par exemple un passage de packer.nvim à lazy.nvim, je souhaite absolument éviter de perturber mon instance Neovim courante — que je qualifie de stable.
Pour cela, j'ai cherché des solutions pour lancer plusieurs instances de Neovim.

Mon point de départ dans cette quête était trop ambitieux : je souhaitais mettre en place un environemment de travail pour tester la globalité de mes dotfiles basé sur chezmoi.

J'ai explorer les pistes suivantes :

Finalement, si je me limite à un travail sur ma configuration Neovim, j'ai trouvé la solution suivante minimaliste pour lancer une instance de Neovim cloisonée :

$ export XDG_CONFIG_HOME=$PWD/config/
$ export XDG_DATA_HOME=$PWD/share/
$ nvim

Pour rendre mon quotidien plus agréable, j'exécute ce script ./start_sandboxed_neovim.sh — qui intègre ces instructions.


Je n'utilise pas direnv dans cet environnement de travail parce que je souhaite continuer à pouvoir éditer les fichiers de configuration avec mon instance de Neovim "stable".

En pratique, j'ouvre deux panels tmux verticaux, à gauche j'édite la configuration avec mon instance Neovim stable et à droite je lance l'instance Neovim cloisonée.

Journal du vendredi 24 mai 2024 à 13:32 #JaiPublié, #Doctrine

Cela fait depuis décembre 2023 que je souhaite traduire l'article The Platinum Rule de Shawn Wang (dit swyx), c'est chose faite :

Voici la Traduction de "The Platinum Rule" 🙂.

Pourquoi avoir traduit cet article ?
Parce que quand je l'ai lu, il m'a fait beaucoup réfléchir parce que j'ai réalisé que j'ai été depuis tout petit très conditionné par la règle d'or. J'essayais au maximum de la respecter et j'imaginais que si tout le monde la respectait, tout irait pour le mieux… mais avant de lire cet article, c'est bête à dire, mais je n'avais pas réalisé qu'en pratique, cela ne fonctionnait pas.

En lisant cet article, je pense qu'il est bon de garder à l'esprit que Shawn Wang (dit swyx) est un développeur et je pense qu'il a écrit cet article en rapport à des difficultés de travailler en équipe sur des projets de développement.

Pensez, par exemple, aux conventions de coding style et à bien d'autre sujets !

N'hésitez pas à venir échanger avec moi pour me partager votre avis sur le sujet, cela m'intéresse 🙂.

Journal du vendredi 24 mai 2024 à 11:56 #JaiDécouvert, #décentralisation, #JeSuisPrescripteur, #Internet

Je viens de découvrir l'existence de l'article Wikipedia Redécentralisation d'Internet : https://fr.wikipedia.org/wiki/Redécentralisation_d'Internet

À noter que ce n'est pas une nouvelle idée pour moi, car je suis sensibilisé à ce sujet depuis le milieu des années 2000.

#JeSuisPrescripteur : En tant que prescripteur et soutien — non extrémiste — de ce principe, je suis favorable à une augmentation de la décentralisation d' #Internet.

Journal du vendredi 24 mai 2024 à 11:01 #JaiDécouvert, #JaimeraisUnJour

#JaiDécouvert La loi du Ripolin :

En 1925, l’architecte Le Corbusier publie L’Art décoratif d’aujourd’hui, ouvrage dans lequel il développe une Loi du Ripolin qui établit un parallèle entre le nettoyage des murs et celle de l’esprit. Passer une couche de blanc sur ses murs serait, pour lui, une opération de renouveau à la fois concret et moral. Cette loi lui permet également de donner sa définition de l’art. (from)

#JaimeraisUnJour lire Le Corbusier, L’Art décoratif d’aujourd’hui et « la loi du ripolin »


Un ami me fait découvrir "ripoliner" dans le sens suivant :

(Sens figuré) Farder, masquer, rafraîchir une image politique.

Journal du vendredi 24 mai 2024 à 10:56 #économie, #industrialisation, #france, #dette

Sur cette page : L’industrie française du meuble face à la concurrence européenne et chinoise je lis :

En 2018, la production française de meubles représente 6 % de la production de l’Union européenne à 28 pays (UE). La France occupe le cinquième rang, après l’Allemagne (21 %), l’Italie (20 %), la Pologne (15 %) et le Royaume-Uni (9 %). Avec la France et l’Espagne (6 % chacun), ces pays se partagent 80 % de la production européenne.

Une balance commerciale largement déficitaire

Journal du vendredi 24 mai 2024 à 10:36

Quand j'observe des phénomènes sociaux, par exemple, les chiffres de ventes de meubles de détail en France présentés ci-dessous, je suis toujours émerveillé par la régularité des cycles.

(Source)

Cela me fait penser à la Loi de Poisson ou à la Loi de Bernoulli qui sont dans mon esprit contre-intuitives. J'ai des difficultés à réaliser que l'univers dans lequel je vis est autant déterminé 🤔.

Journal du jeudi 23 mai 2024 à 21:39 #hosting, #OVH, #scaleway, #OnMaPartagé

#OnMaPartagé https://www.ubicloud.com

Ubicloud offers infrastructure-as-a-service (IaaS) features on providers that lease bare metal instances, such as Hetzner, OVH, and AWS Bare Metal. It’s also available as a managed service.

Journal du jeudi 23 mai 2024 à 10:08 #idée, #JeMeDemande

#idée de Projets : #JeMeDemande quelles méthodes utiliser pour implémenter un éditeur web de type texte à trous basé sur les librairies CodeMirror et ProseMirror.

Voici les premiers résultats de recherche que j'ai trouvés.

Pour ProseMirror, j'ai trouvé ceci :

Pour CodeMirror, j'ai trouvé ceci :


#JeMeDemande quelles sont les forces et faiblesses des deux idées d'implémentations suivantes :

  • a. Texte à trous implémenté par une seule instance d'éditeur CodeMirror/ProseMirror.
  • b. Plusieurs instances d'éditeur CodeMirror/ProseMirror dans une page HTML. Dans cette implémentation les éléments en readonly ne seraient pas présents dans l'éditeur, mais seraientt de simples composants HTML de la page.

Journal du mercredi 22 mai 2024 à 12:45 #meta, #obsidian, #feedback, #JaimeraisUnJour

On me demande où j'en suis dans mon expérience notes.sklein.xyz ?

Le 30 avril je disais :

Comment il est déployé ? Pour le moment, d'une manière très minimaliste et assez manuelle comme décrit ici : https://github.com/stephane-klein/obsidian-quartz-playground/tree/main/deployment

Aujourd'hui c'est toujours le cas. Quand je veux déployer je lance le script deployment/scripts/build-and-push.sh.


Je disais aussi :

Est-ce que j'en suis satisfait ? Pour le moment, la réponse est non, parce que je ne le maitrise pas assez.

Je ne suis toujours pas satisfait du rendu de notes.sklein.xyz mais je suis satisfait de l'expérience car j'arrive à produire et partager du contenu facilement.
Pour le moment, je pense que produire du contenu est plus important que de soigner le rendu. Le jour où j'aurai beaucoup de contenu, une amélioration de la forme, de la navigation et des fonctionnalités aura alors plus de valeur pour moi.


Je disais aussi :

J'ai une grande envie d'implémenter une version personnelle basée sur SvelteKit et Apache Age, mais j'essaie de ne pas tomber dans ce Yak!.

Suite à cela, j'ai créé Projet 5 - "Importation d'un vault Obsidian vers Apache Age" et j'ai seulement travailé un tout petit peu sur cette expérience.


#JaimeraisUnJour un jour setup un RAG sur notes.sklein.xyz.


Est-ce que je suis satisfait du client Obsidian ? Je réponds que parfois oui, parfois non. Il m'agace par moments, et j'aimerais prendre le temps de "parfaitement configurer" Obsidian.nvim.

Journal du mercredi 22 mai 2024 à 11:57 #coding, #bash, #conseil

Alexandre vient de me donner le conseil Bash suivant.

De remplacer mon usage de :

set -e`

par :

set -euo pipefail
  • e => Arrête l'exécution à la première erreur
  • u => Génère une erreur si une variable n'est pas définie (il faut mettre des valeurs par défaut aux variables d'env)
  • o pipefail => Renvoie une erreur si une commande dans un pipe échoue

Je lui dit merci 🙂.

Journal du mercredi 22 mai 2024 à 11:33 #JaiLu, #JePense, #JeMeDemande

J'ai rapidement parcouru l'article "What UI density means and how to design for it" ainsi que les discussions sur HackerNews et Lobsters.

#JePense : En tant que utilisateur hacker, je suis attristé de constater — ce n'est qu'une impression — que les UI des applications mainstream semblent de plus en plus appauvries en termes de densité d'information. Mon propos concerne spécifiquement les applications desktop ; les applications smartphone ont d'autres contraintes, notamment la sélection avec le doigt.

#JeMeDemande si les contraintes des interfaces utilisateur en mode texte (TUI) permettent généralement une densité d'information plus élevée 🤔.
J'ai partagé cette réflexion dans ces deux commentaires : HackerNews et Lobsters

Journal du mercredi 22 mai 2024 à 10:33 #coding, #iteration, #project-completed, #SvelteKit, #svelte, #screencast, #SvelteFlow

Je viens de finir Projet 6 - "SvelteFlow playground", voici un screencast de démonstration du résultat :

J'ai passé 5h27 sur ce projet.

Code source de ce projet https://github.com/stephane-klein/svelteflow-playground

Ma plus grosse difficulté a été de trouver comment implémenter les containtes liaison.

Pour le moment, je doute que mon implémentation respecte les bonnes pratiques d'utilisation de la librairie. Je pense que je vais découvrir le "bon" usage — tel que imaginé par Moritz Klack — de la librarie au fur et à mesure de mon utilisation.

Journal du mardi 21 mai 2024 à 23:09 #coding, #librairie, #javascript, #JaiDécouvert

Dans la page suivante Elkjs Tree – Svelte Flow #JaiDécouvert la librarie Javascript elkjs :

ELK's layout algorithms for JavaScript

Journal du mardi 21 mai 2024 à 16:22 #coding, #iteration, #SvelteFlow, #SvelteKit, #svelte

Nouvelle #iteration sur Projet 6 - "SvelteFlow playground".

17:00 : J'ai réussi à ajouter un CustomNode (commit).


23:00 : Dans ce commit, j'ai réussi à définir des contraintes de liaisons. Il n'est plus possible de lier deux nodes du même type.

Journal du mardi 21 mai 2024 à 11:58 #JaiLu, #linux, #fedora, #reddit, #JaimeraisUnJour

Dans ce thread je lis :

Linus Torvalds himself uses Fedora

et aussi un peu plus bas, je lis :

the second guy in linux (greg k.-h.) uses arch though 😊

Greg Kroah-Hartman


Linus vient s'ajouter aux nombreux developeurs mainstreams qui utilisent Fedora.

#JaimeraisUnJour commencer à dresser cette liste (chose que j'ai commencé à faire avec cette note).

Journal du mardi 21 mai 2024 à 11:51 #open-source, #JaiLu

Sur Reddit, je suis tombé sur le thread concernant l'article de David Heinemeier Hansson (DHH de Basecamp) intitulé « Open source is neither a community nor a democracy ». Après lecture, je pense être en accord avec son contenu.

Journal du lundi 20 mai 2024 à 18:38 #typographie, #anglais, #JaiDécouvert

Pour la première fois, j'ai pris le temps de faire quelque recherche pour comprendre l'origine de la différence de pratique de l'utilisation des majusques des titres en anglais et en français.

#JaiDécouvert :

#JaiDécouvert qu'il existe plusieurs règle de Title case :

  • AP Stylebook
  • Chicago Manual of Style
  • APA Style
  • ...

Journal du lundi 20 mai 2024 à 18:30 #JaiDécouvert

Une amie m'a fait découvrir ( #JaiDécouvert ) l'expression "NOLD" qui veut dire "Never Old".

L'expression "nold", contraction de "never" et de "old", autrement dit les "jamais vieux", désigne les 45-65 ans. Une génération qui ne se sent pas du tout vieille, bien décidée à ne pas être étiquetée "senior" passé la cinquantaine. Qu'est-ce qu'être nold, et d'où vient le concept ? Explications. - (from)"

Je pense que cette expression est pour le moment très confidentiel, je ne trouve rien sur :

En faisant une recherche sur Google Trend, je pense que cette expression est vraiment confidentiel :

Journal du lundi 20 mai 2024 à 15:13 #coding, #jupyter, #python, #javascript

Les deux fois où j'ai essayé d'utiliser Jupyter pour réaliser, par exemple, une calculatrice financière, j'ai fini par constater que je ne trouve pas cet outil pratique. Après quelques heures, je retourne soit à un script Python classique, soit à la création d'une page web basée sur HTML et JavaScript, qui me donne bien plus de flexibilité que Jupyter.

Il est possible que ce soit parce que je connais mal Jupyter, mais j'y ai tout de même consacré plus de deux heures hier soir, explorant notamment les Jupyter Widgets (ipywidgets).

Journal du lundi 20 mai 2024 à 11:17 #cli

Commande #cli pour convertir un fichier .mp4 en un .gif de 640px de largeur :

$ ffmpeg -i input.mp4  -vf "fps=10,scale=640:-1:flags=lanczos" -c:v pam -f image2pipe - | \
convert -delay 5 -layers Optimize - output.gif

Journal du lundi 20 mai 2024 à 11:01 #coding, #iteration, #svelte, #SvelteKit, #JeMeDemande, #JeLis

Nouvelle #iteration sur Projet 6 - "SvelteFlow playground".

Je me suis inspiré de l'exemple Drag and Drop pour implémenter ce commit, ce qui donne ceci :


11:19 : Prochaine étape, lire et comprendre Theming – Svelte Flow.


11:32 :


12:29 :

Upgrade de ma workstation de Fedora 39 vers 40 #linux, #fedora, #upgrade, #desktop

Fedora 40 version stable est sortie le 23 avril 2024 et presque un mois plus tard, j'ai upgrade mon Thinkpad T14s de la version 39 vers la version 40.

Que ce soit par le passé avec MacOS et maintenant avec Fedora, pour éviter d'être impacté par des bugs, ou des régressions, j'ai pris l'habitude d'attendre quelques semaines avant d'effectuer un upgrade d'OS majeur de ma workstation.

J'ai suivi la méthode officielle de mise à jour :

# dnf install dnf-plugin-system-upgrade
# dnf upgrade --refresh
# dnf clean all
# dnf system-upgrade download --releasever=40
# dnf system-upgrade reboot

et cela c'est déroulé avec succès.

Après 1h d'utilisation, je n'ai observé aucune régression.

Je me demande combien me coûterait l'hébergement de Lllama.cpp sur une GPU instance de Scaleway #llm, #POC, #MachineLearning, #scaleway, #JeMeDemande, #PremièreActionConcrète

#JeMeDemande combien me coûterait la réalisation du #POC suivant :

🤔.

Tarifs :

Dans un premier temps, j'aimerais me limiter aaux instances les moins chères :

  • GPU-3070 à environ 1 € / heure
  • L4-1-24G à 0.75 € / heure
  • et peut-être RENDER-S à 1,24 € / heure

Tous ces prix sont hors taxe.

Au moment où j'écris ces lignes, Scaleway a du stock de ces trois types d'instances :

  • #JeMeDemande comment je pourrais me préparer en amont pour installer rapidement sur le serveur un environnement pour faire mes tests.
  • #JeMeDemande s'il existe des tutoriaux tout prêts pour faire ce type de tâches.
  • #JeMeDemande combien de temps prendrait le déploiement.

Si je prends 2h pour l'installation + 3h pour faire des tests, cela ferait 5h au total.
J'ai cherché un peu partout, je n'ai pas trouvé de coût "caché" de setup de l'instance.
Le prix de cette expérience serait entre 4,5 € et 7,44 € TTC.


  • #JeMeDemande combien me coûterait l'achat de ce type de machine.
  • #JeMeDemande à partir de combien d'heures d'utilisation l'achat serait plus rentable que la location.
  • Si par exemple, j'utilise cette machine 3h par jour, je me demande à partir de quelle date cette machine serait rentabilisée et aussi, #JeMeDemande si cette machine ne serait totalement obsolète ou non à cette date 🤔.

Journal du vendredi 17 mai 2024 à 12:07

Dans le Projet 6 - "SvelteFlow playground" je dis :

Glisser / déposer 2 types d'objets vers un flow container.

Je pense me servir de l'exemple Drag and Drop comme source d'inspiration.

Je dis aussi :

Interdire les liaisons entre des objets de même type.

Je pense me servir de l'exemple Validation comme source d'inspiration.

Je dis aussi :

Idéalement j'aimerais que les objets soient placés "harmonieusement" entre eux dans le flow container.

Peut-être que le système de layout de SvelteFlow pourra m'être utile :

🤔

Journal du vendredi 17 mai 2024 à 11:05 #RAG, #llm, #MachineLearning, #JaimeraisUnJour, #JePense

Dans l'article "Qu'est-ce que la génération augmentée de récupération (RAG, retrieval-augmented generation) ?" je découvre l'acronyme Génération Augmentée de Récupération.

Je constate qu'il existe un paragraphe à ce sujet sur Wikipedia.

The initial phase utilizes dense embeddings to retrieve documents.

source

Je tombe encore une fois sur "embeddings", #JaimeraisUnJour prendre le temps de comprendre correctement cette notion.

Prenez l'exemple d'une ligue sportive qui souhaite que les fans et les médias puisse utiliser un chat pour accéder à ses données et obtenir des réponses à leurs questions sur les joueurs, les équipes, l'histoire et les règles du sport, ainsi que les statistiques et les classements actuels. Un LLM généralisé pourrait répondre à des questions sur l'histoire et les règles ou peut-être décrire le stade d'une équipe donnée. Il ne serait pas en mesure de discuter du jeu de la nuit dernière ou de fournir des informations actuelles sur la blessure d'un athlète, parce que le LLM n'aurait pas ces informations. Étant donné qu'un LLM a besoin d'une puissance de calcul importante pour se réentraîner, il n'est pas possible de maintenir le modèle à jour.

source

Le contenu de ce paragraphe m'intéresse beaucoup, parce que c'était un de mes objectifs lorsque j'ai écrit cette note en juin 2023.

Sans avoir fait de recherche, je pensais que la seule solution pour faire apprendre de nouvelles choses — injecter de nouvelle données — dans un modèle était de faire du fine-tuning.

En lisant ce paragraphe, je pense comprendre que le fine-tuning n'est pas la seule solution, ni même, j'ai l'impression, la "bonne" solution pour le use-case que j'aimerais mettre en pratique.

En plus du LLM assez statique, la ligue sportive possède ou peut accéder à de nombreuses autres sources d'information, y compris les bases de données, les entrepôts de données, les documents contenant les biographies des joueurs et les flux d'actualités détaillées concernant chaque jeu.

source

#JaimeraisUnJour implémenter un POC pour mettre cela en pratique.

Dans la RAG, cette grande quantité de données dynamiques est convertie dans un format commun et stockée dans une bibliothèque de connaissances accessible au système d'IA générative.

Les données de cette bibliothèque de connaissances sont ensuite traitées en représentations numériques à l'aide d'un type spécial d'algorithme appelé modèle de langage intégré et stockées dans une base de données vectorielle, qui peut être rapidement recherchée et utilisée pour récupérer les informations contextuelles correctes.

source

Intéressant.

Il est intéressant de noter que si le processus de formation du LLM généralisé est long et coûteux, c'est tout à fait l'inverse pour les mises à jour du modèle RAG. De nouvelles données peuvent être chargées dans le modèle de langage intégré et traduites en vecteurs de manière continue et incrémentielle. Les réponses de l'ensemble du système d'IA générative peuvent être renvoyées dans le modèle RAG, améliorant ses performances et sa précision, car il sait comment il a déjà répondu à une question similaire.

source

Ok, si je comprends bien, c'est la "kill feature" du RAG versus du fine-tuning.

bien que la mise en oeuvre de l'IA générative avec la RAG est plus coûteux que l'utilisation d'un LLM seul, il s'agit d'un meilleur investissement à long terme en raison du réentrainement fréquent du LLM

source

Ok.

Bilan de cette lecture, je dis merci à Alexandre de me l'avoir partagé, j'ai appris RAG et #JePense que c'est une technologie qui me sera très utile à l'avenir 👌.

[ << Page précédente (850) ] | [ Page suivante (2617) >> ]