Vue normale

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.
À partir d’avant-hierFlux principal

LangExtract - La nouvelle pépite de Google pour extraire des données structurées avec l'IA

Par : Korben
16 janvier 2026 à 16:05

Il y a des combats comme cela auxquels pas grand monde ne pense et qui pourtant sont très importants. Je parle évidemment de la lutte contre le chaos du texte non structuré. Si vous avez déjà essayé d'extraire des données propres d'un tas de PDF (après OCR), de rapports ou de notes griffonnées, vous voyez de quoi je parle : c'est l'enfer ! (oui j'aime me faire du mal en tentant des regex impossibles).

Heureusement, Google a lâché début janvier 2026 une petite pépite en open source (même si c'est pas un produit "officiel") qui s'appelle LangExtract . C'est une bibliothèque Python qui utilise la puissance des LLM pour transformer vos documents textuels en données JSON bien rangées.

Exemple d'extraction sur le texte de Roméo et Juliette ( Source )

Ce qui fait que LangExtract sort du lot par rapport à d'autres outils comme Sparrow , c'est surtout son système de Source Grounding. En gros, chaque info extraite est directement liée à sa position exacte dans le texte source. Ça facilite énormément la vérification et la traçabilité puisque vous pouvez voir visuellement d'où vient la donnée grâce à un système de surlignage automatique.

Sous le capot, l'outil est optimisé pour les documents à rallonge (le fameux problème de l'aiguille dans une botte de foin). Il utilise des stratégies de découpage de texte et de passes multiples pour améliorer le rappel et s'assurer que le maximum d'infos soit capturé.

La visualisation interactive permet de valider les données en un clin d'œil ( Source )

Et cerise sur le gâteau, il permet de générer un fichier HTML interactif pour visualiser les milliers d'entités extraites dans leur contexte original. À la cool !

Côté installation, c'est hyper fastoche :

pip install langextract

Pour faire le job, vous avez le choix des armes : les modèles cloud de Google (Gemini 2.5 Flash/Pro), ceux d'OpenAI (via pip install langextract[openai]), ou carrément du local avec Ollama . Pas besoin de passer des heures à fine-tuner un modèle, il suffit de fournir quelques exemples structurés via le paramètre examples et hop, c'est parti mon kiki.

Voici à quoi ça ressemble sous le capot pour lancer une machine à extraire :

import langextract as lx

# 1. On définit les règles du jeu
prompt = "Extraire les noms de personnages et leurs émotions."

# 2. On donne un exemple (few-shot) pour guider le modèle
examples = [
 lx.data.ExampleData(
 text="ROMEO. But soft! What light...",
 extractions=[lx.data.Extraction(extraction_class="character", extraction_text="ROMEO", attributes={"emotion": "wonder"})]
 )
]

# 3. On lance l'extraction (nécessite une clé API ou Ollama)
results = lx.extract(
 text_or_documents="votre_texte_brut_ici",
 prompt_description=prompt,
 examples=examples,
 model_id="gemini-2.5-flash"
)

# 4. On sauvegarde et on génère la visualisation HTML
lx.io.save_annotated_documents(results, output_name="results.jsonl")
html_content = lx.visualize("results.jsonl")
with open("view.html", "w") as f:
 f.write(html_content)

Honnêtement, je ne sais pas si ça va remplacer les solutions industrielles de RPA , mais pour un dev qui veut structurer du texte sans se prendre la tête, c'est vraiment impressionnant. Que vous fassiez du Grist ou de l'analyse de données pure, cet outil mérite clairement que vous y jetiez un œil !

Source

Bose libère l'API de ses enceintes SoundTouch avant leur fin de vie

Par : Korben
8 janvier 2026 à 13:58

Si comme moi vous avez une enceinte Bose SoundTouch qui traîne chez vous, vous avez peut-être appris que la bestiole allait bientôt perdre son cerveau "cloud". Bose a en effet annoncé la fin du support pour le 6 mai 2026, et de ce que j'ai compris, ça veut dire que votre enceinte va se transformer en brique connectée qui ne se connecte plus à grand chose.

Sauf que non !

Bose a fait un truc plutôt cool puisqu'ils ont publié la documentation complète de l'API locale de leurs enceintes . Du coup, même quand les serveurs Bose fermeront boutique, vous pourrez continuer à bidouiller votre enceinte en local.

Perso, j'ai une petite SoundTouch 10 qui fait bien le boulot depuis des années, donc cette nouvelle me fait plutôt plaisir ! L'API tourne sur deux ports : le 8090 pour les commandes REST classiques (volume, presets, now_playing...) et le 8080 en WebSocket pour les notifications en temps réel. Le protocole s'appelle "gabbo", et avec ça, y'a de quoi faire le ménage dans vos automatisations.

Un petit curl http://votre-enceinte:8090/volume et vous récupérez le niveau sonore. Un autre sur /presets et vous avez vos stations favorites. Et comme la découverte se fait en SSDP ou MDNS, ça s'intègrera nickel avec n'importe quel système domotique.

Et visiblement la communauté n'a pas attendu pour s'y mettre puisqu'il y a déjà plus d'une centaine de projets sur GitHub qui exploitent cette API. Le plus abouti c'est probablement SoundTouchPlus pour Home Assistant, qui permet de contrôler toute la famille d'enceintes depuis votre dashboard.

Après ce qui va disparaître avec le cloud, c'est surtout les presets synchronisés et le streaming direct depuis l'app Bose. Mais le Bluetooth, l'AirPlay, Spotify Connect et le multiroom resteront fonctionnels et avec l'API locale, vous pouvez recréer vos presets en dur. Ouf !

C'est un peu le même délire que ce qui s'est passé avec les thermostats Nest ... quand le fabricant lâche l'affaire, c'est la communauté qui prend le relais sauf qu'ici, Bose joue le jeu en documentant proprement leur API avant de couper les serveurs. Et ça, c'est suffisamment rare pour être souligné !

Voilà... Si vous avez des SoundTouch, allez jeter un œil à l'API avant mai, histoire de préparer votre migration vers du 100% local.

Source

WOLS, le standard open source qui fait pousser les QR codes comme des champignons

Par : Korben
6 janvier 2026 à 08:37

Après les standards pour les APIs, après les standards pour le web, après les standards pour à peu près tout ce qui touche à l'informatique, voici... un standard pour les champignons !

Et non, je ne parle pas des champignons de Mario qui vous font grandir de partout (hi hi). Je parle de vrais champignons. Ceux qu'on cultive pour les manger. Bref, ceux qui représentent une industrie de 50 milliards de dollars qui gère encore ses données sur des feuilles Excel et des bouts de papier collés sur des bocaux.

Shiitake happens, comme on dit ^^.

Heureusement des champignonistes plus malin que les autres ont créé WOLS, pour WeMush Open Labeling Standard . L'idée c'est d'encoder toutes les infos de traçabilité de vos cultures fongiques directement dans un QR code. Origine du mycélium, substrat utilisé, dates d'inoculation, conditions de croissance... Hop, tout ça compressé dans un petit carré noir et blanc que vous pouvez scanner.

Le truc couvre 5 types de spécimens (de la culture mère jusqu'à la récolte), 4 stades de croissance, et propose 3 formats de QR différents selon vos besoins. Vous voulez juste un truc compact ? 500 octets. Vous voulez du JSON-LD pour faire le malin avec vos métadonnées ? 400 octets en mode embedded. Vous êtes parano et vous voulez chiffrer vos précieuses données de pleurotes ? AES-256-GCM, mon ami.

D'ailleurs, le projet est agnostique côté espèces : Que vous cultiviez du Lion's Mane (le champignon du hipster), du Shiitake (le classique), des pleurotes ou même du Reishi pour vos smoothies santé, le standard s'en fiche et encode tout pareil. De quoi faire pleurer de joie tous les myciculteurs de la planète. Ou les faire pleurote de joie, si vous préférez.

(Oui, je vous ai eu "champignoniste", c'est pas un vrai mot ^^)

Côté technique, c'est du sérieux malgré le sujet rigolo. Y'a des implémentations en JavaScript (@wemush/wols), en Python (wols), et même un conteneur Docker pour les feignasses qui veulent pas installer de dépendances. Le tout sous licence open source , donc vous pouvez forker ça et l'adapter à vos besoins sans vous prendre le cèpe. D'ailleurs si vous cherchez un nom pour votre propre projet open source , évitez les jeux de mots sur les champignons, c'est déjà pris.

Bref, si vous cultivez des champignons (légaux, hein les toxicos) et que vous en avez marre de noter vos infos sur des post-it qui finissent par moisir comme vos substrats ratés, ce standard pourrait bien être la truffe numérique que vous attendiez.

Flowglad - Gérez vos paiements sans vous prendre la tête avec les webhooks

Par : Korben
3 janvier 2026 à 09:00

Vous développez une app et vous devez intégrer des paiements ? Alors vous connaissez sûrement l'enfer des webhooks... Ces petits événements asynchrones qu'il faut capter, parser, dont il faut vérifier la signature, stocker dans votre base, sans oublier de prier pour qu'il n'y ait pas eu de doublon ou de perte entre temps. Bref, le genre de truc qui transforme un samedi après-midi en séance de débogage intensive.

Flowglad c'est une plateforme de paiement open source qui promet d'en finir avec cette galère. Son idée c'est qu'au lieu de synchroniser votre base avec Stripe via des webhooks fragiles, vous interrogez directement Flowglad qui devient votre source de vérité unique pour tout ce qui touche à la facturation.

Du coup, plus besoin de maintenir une table subscriptions en local ni de gérer les cas où un webhook arrive deux fois ou pas du tout. Vous appelez getBilling() côté serveur ou useBilling() côté React, et vous avez l'état de l'abonnement en temps réel. C'est stateless, y'a moins de code à maintenir, et surtout moins de bugs bizarroïdes à traquer à 3h du mat.

Côté fonctionnalités, ça couvre les abonnements classiques, le billing à l'usage avec des tiers de volume, les crédits, la gestion des relances automatiques quand un paiement échoue, la génération de factures... Le SDK gère tout ça avec des hooks React et des fonctions backend en TypeScript. Et comme c'est conçu pour s'intégrer dans votre système d'auth existant, vous utilisez vos propres identifiants utilisateurs, pas ceux de Flowglad.

Dans Flowglad, y'a également le support MCP (Model Context Protocol) qui permet aux agents de code comme Claude Code d'accéder à la documentation et de configurer toute l'intégration. On vit vraiment une époque formidable les amis ^^

Niveau tarifs, c'est du freemium. Le billing/usage, c'est 0,65 % après 1000 $ / mois de volume et pour les transactions Stripe classiques, c'est les frais habituels (2.9% + 0.30$). Sinon, pas de frais mensuels fixes, vous payez à l'usage.

Le projet est soutenu par Y Combinator et tout le code est dispo sur GitHub. Sous le capot c'est du Next.js, tRPC, Drizzle ORM et TypeScript. Pour installer, c'est soit bun add @flowglad/nextjs pour les projets Next.js, soit @flowglad/react + @flowglad/express pour les autres stacks.

Bref, si vous en avez marre de vous battre avec les webhooks de Stripe et que vous cherchez une solution plus propre pour gérer vos abonnements, ça vaut le coup d'y jeter un œil...

Source

Le chat préféré des gens qui ont la même adresse IP

Par : Korben
1 janvier 2026 à 22:10

Vous bossez dans un open space et vous avez envie de papoter avec vos collègues sans que tout le monde entende votre conversation ? Ou alors vous êtes étudiant sur un campus et vous voulez lancer un petit chat éphémère avec les gens autour de vous ?

Ça tombe bien, ipchat.org a une approche assez sympa pour ça.

En fait, ce site regroupe automatiquement tous les utilisateurs qui partagent la même adresse IP publique (celle vue par le serveur). En gros, si vous êtes au bureau derrière le même routeur, vous devriez vous retrouver dans le même salon. Pas besoin de créer de compte ni de lien d'invitation, vous débarquez sur le site, vous choisissez un pseudo (ou vous laissez le générateur aléatoire s'en charger) et hop, vous pouvez commencer à causer.

Côté technique, ça utilise du Server-Sent Events pour le temps réel et une API REST derrière. Les messages sont conservés 24 heures avant de disparaître côté applicatif même si évidemment, ça n'empêche pas le serveur de loguer des trucs de son côté, hein. On n'en sait rien.

Après si je vous en parle, c'est parce que je trouve le concept plutôt sympa. C'est un peu le retour aux sources des chats IRC d'antan, version ultra-simplifiée ou de ce bon vieux Net Send... Y'a un côté nostalgique et en même temps pratique. Si vous voulez organiser un apéro improvisé avec les collègues sans spammer le Slack officiel y'a qu'à balancer l'URL et tout le monde se retrouve dans le même chat sans rien installer.

Après c'est pas hyper sécurisé comme concept parce que vous l'aurez compris, toute personne qui rejoint le même salon (même IP publique) peut lire les messages. Donc évitez d'y balancer des trucs confidentiels ou des ragots sur votre chef (enfin... sauf si vous êtes sûr qu'il n'est pas connecté de gros con ^^). Et petit détail, si vous utilisez un VPN ou si votre FAI fait du CGNAT , vous pourriez vous retrouver avec des inconnus dans votre salon. Encore des rencontres charnelles en perspective !

Bref, encore un petit outil marrant pour animer vos pauses café.

Extraire les meilleures photos d'une vidéo avec Video to JPG

Par : Korben
1 janvier 2026 à 16:44

Vous avez une vidéo de vacances, un concert filmé à l'arrache, une séquence où votre chat fait un truc improbable, voire une sextape de vous avec la mère de Jean-Pierre de la compta, et vous voulez en extraire LA photo parfaite ! Sauf qu'avec les captures manuelles, on tombe souvent sur des frames avec du flou de mouvement ou un mauvais cadrage.

Heureusement, Video to JPG propose une approche plutôt cool pour sélectionner les meilleures.

L'outil tourne direct dans le navigateur, sans rien installer et le traitement se fait entièrement côté client via FFmpeg en WebAssembly, donc en théorie vos fichiers restent sur votre machine. Je dis en théorie parce qu'on n'a pas les sources de ce site. La liste des formats supportés est large : MP4, MOV, AVI, MKV, WebM, FLV, et même le H.265/HEVC selon les développeurs.

Le truc intéressant, c'est leur fonction "Smart Clarity Detection" qui analyse les frames pour repérer celles qui sont nettes. Parce que bon, extraire une image toutes les 2 secondes c'est facile, mais choper pile les frames sans flou de mouvement, c'est une autre paire de manches.

Côté sortie, l'outil propose du JPG, PNG ou WebP avec un réglage de compression. Vous pouvez prévisualiser chaque image avant de la télécharger, et si vous en voulez plusieurs, tout part dans un ZIP. Y'a même un système de préfixes pour nommer vos fichiers.

Pour l'utiliser, suffit de glisser votre vidéo dans la zone prévue à cet effet, vous choisissez la fréquence d'extraction ou vous laissez l'outil détecter les meilleures frames, vous prévisualisez, et vous téléchargez. Le site annonce une limite autour de 2 Go, mais attention, avec du 4K ça peut ramer sévère voire planter si votre navigateur manque de RAM.

Et bien sûr, c'est gratuit et sans inscription.

A mettre dans vos bookmarks pour la prochaine fois !

Remote Desktop credential delegation (SSO) not working after enabling Credential Guard

Par : Leos Marek
9 octobre 2025 à 19:31
Remote Desktop credential delegation, or RDP single sign-on, allows you to connect to another computer's RDP session without re-entering your credentials. However, after enabling Credential Guard on your Windows Servers, SSO no longer works, and you'll receive an error message: Your credentials did not work. The logon attempt failed. This article explains why this occurs and provides instructions on reconfiguring SSO correctly.

Source

❌
❌