Vue normale

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

Jan – Le « ChatGPT » local et open source à installer sur votre machine

Par : Korben
23 mars 2024 à 09:00

Afin de rendre l’IA accessible à tous, y compris gratuitement puisque la plupart des modèles fonctionnent sur un système open source, une équipe de développeurs talentueux a créé Jan un outil pour les développeurs et les utilisateurs souhaitant profite d’une alternative à ChatGPT, totalement indépendante, fonctionnant hors ligne, open source et libre.

Il faut donc voir Jan comme un client de chat qui permet de télécharger des modèles comme Trinity, Mistral, Llama, OpenChat…etc. et de les faire tourner 100% hors ligne. Comme ça, pas de fuite de conversations privées ni de réutilisation de vos données pour entrainer de nouvelles IA. Et si comme moi, vous êtes accro à l’IA d’OpenAI, vous pourrez toujours y ajouter votre clé API et discuter avec ChatGPT (au tarif fixé par OpenAI évidemment).

Jan fonctionne sous Linux (Appimage et .deb dispo), sous Windows et macOS (Intel / Silicon) et propose une prise en charge des modèles open source tels que GGUF via llama.cpp, TensorRT via TensorRT-LLM ou des API externes. Jan utilise également le moteur d’inférence Nitro, des mêmes développeurs, qui se veut être rapide et léger.

Je teste ici le modèle Trinity 1.2 7B Q4 :

Et ici un modèle spécialisé en code Python nommé Wizard Coder Python 13B Q5.

Un truc cool avec Jan c’est que toutes les conversations sont conservées sur votre disque au format JSON, donc si le coeur vous en dit, vous pourrez ensuite les exploiter comme bon vous semble dans vos outils.

Jan propose également un serveur REST qui permet d’interroger via une API compatible OpenAI n’importe quel modèle que vous y feriez tourner. Ça permet de brancher vos outils ou vos scripts directement sur le LLM ouvert de votre choix.

Dans la lignée de Ollama ou LM Studio, Jan rempli ses promesses et vous permettra de vous éclater avec l’IA (abus de langage, je sais…) sans mettre en péril vos données personnelles.

Pour en savoir plus, rendez-vous sur le site de Jan ou sur leur page Github pour les sources et la doc.

Merci à Lorenper

Proton Pass enterre les mots de passe grâce à cette nouvelle fonctionnalité

21 mars 2024 à 12:30

proton pass

Après plusieurs de ses rivaux, Proton s'ouvre enfin aux passkeys (clés d'accès), qui ont pour ambition de remplacer les mots de passe. À l'image de ses autres initiatives, Proton précise que sa prise en charge des passkeys couvre toutes ses formules, y compris l'offre gratuite, et respecte les principes de l'open source.

Proton Pass enterre les mots de passe grâce à cette nouvelle fonctionnalité

21 mars 2024 à 12:30

proton pass

Après plusieurs de ses rivaux, Proton s'ouvre enfin aux passkeys (clés d'accès), qui ont pour ambition de remplacer les mots de passe. À l'image de ses autres initiatives, Proton précise que sa prise en charge des passkeys couvre toutes ses formules, y compris l'offre gratuite, et respecte les principes de l'open source.

LocalAI – L’alternative open source puissante à OpenAI

Par : Korben
19 mars 2024 à 09:00

Aujourd’hui, j’aimerais vous présenter LocalAI, une alternative open source à OpenAI. En tout cas, c’est comme ça que le créateur du projet le présente. Il s’agit d’une solution idéale pour tous ceux qui cherchent une API REST compatible avec les spécifications de l’API OpenAI pour l’inférence locale.

Grâce à LocalAI, vous pouvez exécuter des modèles linguistiques, générer des images, de l’audio et bien d’autres choses encore, localement ou sur site avec du matériel grand public, et ce, sans avoir besoin d’un GPU ! Le projet a pour principal objectif de rendre l’IA accessible à tous.

Pour résumer, voici les principales caractéristiques de LocalAI :

  • Une API REST locale, alternative à OpenAI. Comme ça, vous gardez bien au chaud vos propres données.
  • Pas besoin de GPU. Pas besoin d’accès internet non plus. Toutefois, l’accélération GPU est possible en option.
  • Prise en charge de plusieurs modèles.
  • Dès qu’ils sont chargés une première fois, les modèles restent en mémoire pour une inférence plus rapide.
  • N’utilise pas de shell, mais des liaisons directes pour une inférence plus rapide et de meilleures performances.

En termes de fonctionnalités, LocalAI offre une large gamme d’options, parmi lesquelles :

  • La génération de texte avec les modèles GPT (comme llama.cpp ou gpt4all.cpp).
  • La conversion de texte en audio.
  • La transcription audio en texte avec whisper.cpp.
  • La génération d’images avec Stable Diffusion.
  • Les dernières fonctionnalités d’OpenAI récemment ajoutées comme l’API Vision par exemple.
  • La génération d’embeddings pour les bases de données vectorielles.
  • Les grammaires contraintes.
  • Le téléchargement de modèles directement à partir de Huggingface.

LocalAI est bien sûr un projet communautaire donc n’hésitez pas si vous souhaitez vous impliquer !

Pour commencer rapidement avec LocalAI, vous pouvez consulter leur guide Getting Started qui décrit les différentes méthodes d’installation et les exigences matérielles ou aller consulter les guides de la communauté. Je vous ferais aussi probablement un tutoriel prochainement si mon emploi du temps me le permet.

LocalAI est disponible sous forme d’image conteneur et de binaire, compatible avec divers moteurs de conteneurs tels que Docker, Podman et Kubernetes. Les images de conteneurs sont publiées sur quay.io et Docker Hub, et les binaires peuvent être téléchargés à partir de GitHub.

Concernant les exigences matérielles, ça varie en fonction de la taille du modèle et de la méthode de quantification utilisée mais pour choper quelques repères de performance avec différents backends, comme llama.cpp, vous pouvez consulter ce lien.

Maintenant pour en savoir plus, vous pouvez explorer le site localai.io. Vous y trouverez de nombreuses informations et des exemples d’utilisation pour vous aider à tirer le meilleur parti de LocalAI.

Merci à Lorenper

ytDownloader – Télécharger des vidéos à partir d’une simple URL

Par : Korben
13 mars 2024 à 09:00

Hé les amis, aujourd’hui laissez-moi vous présenter un outil génial qui vous facilitera la vie en vous permettant de télécharger des vidéos et d’extraire des pistes audios de différents formats à partir de centaines de sites, dont, YouTube, Facebook, Tiktok, Twitch, Twitter, Instagram et bien d’autres…

Cet outil s’appelle ytDownloader et vous l’aurez compris, c’est YoutubeDL derrière sauf que là, y’a une interface minimaliste facile à prendre en main. L’outil est bien sûr entièrement gratuit et Open Source.

Disponible sous Linux, Windows et macOS, cet utilitaire dispose de nombreuses fonctionnalités comme un mode clair/sombre, la possibilité de choisir un thème pour pas flinguer vos petits yeux, ainsi que la possibilité de télécharger une plage spécifique d’une vidéo si vous le souhaitez, ce qui est pratique pour extraire un morceau précis. Vous pouvez évidemment, après avoir entré l’URL de votre vidéo, choisir le format et la qualité de la vidéo et de l’audio que vous voulez récupérer, ce qui est super pratique pour faire par exemple des MP3 à partir de clips vidéos.

Cet outil prend également en charge le téléchargement des sous-titres et est disponible en plusieurs langues. Vous pouvez bien sûr configurer l’emplacement où enregistrer vos fichiers récupérés et il n’y a ni pubs ni traqueur dans l’application.

Pour résumer, ytDownloader est un outil super utile pour tous ceux qui ont besoin de récupérer des vidéos et/ou extraire des audios de différents formats à partir de différents sites. Je vous le conseille !

Rendez-vous sur leur site pour télécharger ytDownloader.

Merci à Lorenper pour le partage.

Suyu – le nouvel émulateur Switch open source qui ose défier Nintendo après la mort de Yuzu

Par : Korben
12 mars 2024 à 10:58

Vous avez entendu parler de Suyu ? C’est le nouvel émulateur Nintendo Switch open source qui fait pas mal parler de lui en ce moment. Faut dire qu’après la descente en flammes de son prédécesseur Yuzu, qui s’est pris un méchant procès de Nintendo et a dû mettre la clé sous la porte, les fans d’émulation se demandaient bien qui allait prendre le relais.

Bah c’est Suyu qui s’y colle, avec une équipe de développeurs passionnés qui ont repris le code source de Yuzu pour continuer à faire évoluer l’émulation Switch. Mais attention, les gars ont retenu la leçon et font super gaffe à pas se mettre Nintendo à dos comme Yuzu ! Déjà, fini la monétisation du projet, Suyu c’est 100% bénévole. Ils l’annoncent clairement sur leur page GitLab, zéro profit, que dalle, nada. Normal, vu que c’était un des points qui avaient bien énervé Nintendo dans le procès contre Yuzu.

Pareil pour les guides pas à pas pour expliquer comment jouer à des jeux piratés, c’est terminé. Les mecs veulent pas entendre parler de warez, au point que c’est devenu le sujet tabou numéro 1 sur leur Discord. Suyu joue la carte de la prudence à fond et refuse d’être associé de près ou de loin au piratage. Sachant que c’était un autre gros point de crispation de Nintendo contre Yuzu, ça me parait logique.

Après est-ce que ça suffira à éviter les foudres des avocats de Big N, ça c’est une autre histoire. Car même en jouant profil bas, Suyu n’en reste pas moins un émulateur Switch, avec tout ce que ça implique légalement, notamment le fait de devoir extraire la clé de sécurité d’une Switch pour pouvoir jouer aux jeux, ce qui ne plait pas non plus à la firme japonaise. D’ailleurs, les dévs le disent eux-mêmes, ils évoluent pour l’instant dans une « zone grise », le temps de trouver une solution pour en sortir. Wait and see comme on dit.

Mais en attendant, force est de constater que Suyu fait du bon boulot. Enfin un émulateur Switch puissant, open source et qui en plus est plutôt user-friendly. De quoi donner envie d’y jeter un œil et pourquoi pas de filer un coup de main si vous vous y connaissez un peu en dev. Le code est dispo sur le GitLab, avis aux amateurs ! Je vous ferait pas de tuto, hein ^^.

Bon après, bien que l’émulation soit LÉGALE, n’empêche que c’est quand même un peu couillu comme projet. Rien que le nom, Suyu, qui se prononce comme « sue you » (traduisez « attaquez-moi en justice » pour les anglophobes), ça montre bien que les mecs ont de l’humour et qu’ils sont conscients de jouer avec le feu. On peut pas leur enlever ça.

Et puis c’est cool de voir que malgré les menaces, la communauté de l’émulation continue de faire vivre ce hobby de passionnés. Avec tous les projets qui se sont fait dégommer ces derniers temps, on aurait pu croire le milieu complètement plombé. Mais heureusement, y a encore des irréductibles pour prendre la relève et faire perdurer la tradition, même si ça devient de plus en plus tendu.

Donc voilà, un petit coup de projecteur sur Suyu qui le mérite bien. Si vous voulez en savoir plus, je vous invite à faire un tour sur leur site, y a toutes les infos nécessaires. Et n’hésitez pas non plus à rejoindre leur serveur Discord pour suivre l’actu du projet et échanger avec les dévs et la communauté.

Sur ce, je retourne jouer à Zelda BOTW sur mon PC, vu que maintenant c’est possible grâce à Suyu 😉 J’déconne, j’déconne… Quoique !

Source

Qu’est-ce que l’OSINT ?

25 février 2024 à 17:25

L'OSINT est une méthode née à l’issue de la guerre froide, alors que les États-Unis se demandaient quelle nouvelle forme donner aux renseignements. En 2005, la CIA lui crée un Centre dédié. Depuis, l’OSINT a largement investi le monde militaire, des renseignements, de la Justice, des grandes entreprises et des journalistes.

JXL et AVIF – Les nouveaux champions des formats d’image

Par : Korben
19 février 2024 à 09:00

On est tous là avec nos formats d’images d’avant la guerre, à savoir le JPEG, le PNG et le WebP alors qu’il existe des trucs beaucoup plus efficaces aujourd’hui en 2024. L’objectif de cet article est donc de vous les présenter.

Le premier s’appelle AVIF (AV1 Image File Format) qui est basé sur le codec vidéo AV1, très connu pour son efficacité en termes de compression. L’AVIF est très adapté pour tout ce qui est images pour les sites web, mais également pour tout ce qui est images animées. Ça en fait donc une bonne alternative aux GIF animés et surtout, de très nombreux navigateurs modernes le supportent déjà.

L’autre format c’est le JXL qui n’est ni plus ni moins que la contraction de JPEG et de XL. Celui-ci est conçu pour compresser efficacement les photos avec ou sans perte selon ce que vous choisissez, tout en préservant une très haute résolution (au-delà du milliard de pixels si ça vous chante) avec plein dé détails. L’algo qui permet d’encoder les images en JXL est d’ailleurs jusqu’à 10 fois plus rapide que celui d’AVIF.

Ces deux formats qui supportent tous les deux la transparence, sont sortis vers 2019 et sont open source et non commerciaux. Alors c’est bien beau tout ça, mais comment on fait pour convertir nos images dans ces formats ? Et bien logiquement, n’importe quel outil de traitement d’image un peu récent peu le faire, mais autrement, y’a des outils.

Pour l’AVIF, vous pouvez utiliser les outils cavif-rs ou encore FFMPEG. Cavif-rs ce sera plus pour les images statiques et FFMPEG pour les gifs animés.

Prenons cette image PNG pour un beau fond d’écran de 1,9 Mo et d’une résolution de 1456 × 816 pixels :

En la convertissant en AVIF à l’aide de la commande suivante :

cavif Downloads/wallpaper.png -o Downloads/wallavif.avif -f

On obtient la même image, avec la même résolution sauf qu’elle pèse maintenant 77 ko. Je vous l’intégre dans mon WordPress pour que vous voyiez que c’est bien supporté par votre navigateur, mais comme WordPress ne supporte pas encore nativement ce format, le rendu est un peu cra-cra :

Je ne vous avais pas menti, c’est sacrément efficace. Dommage pour moi, ce format n’est pas supporté par mon WordPress, donc je ne peux pas encore l’intégrer à mon article.

Passons maintenant à une image animée avec FFMPEG. Je prends ce GIF de 1,1 Mo :

Avec FFMPEG, je dois d’abord convertir le format des pixels en yuv420p qui est un format de couleur très utilisé pour la vidéo et compatible AVIF :

ffmpeg -i happy.gif -pix_fmt yuv420p -f yuv4mpegpipe happy.y4m

Ensuite, il faut installer la lib avif comme ceci sous Linux :

sudo apt install libavif-bin

Comme ça sous mac :

brew install libavif

Ensuite armé de ce fichier y4m, je peux alors appeler l’outil d’encodage avifenc qui va alors le convertir en AVIF animé :

avifenc happy.y4m happy.avif

Et voilà, je me retrouve avec la même image animée sauf qu’elle pèse 45 ko. C’est magique.

Pour le format JXL c’est encore plus simple, puisqu’il y a un outil officiel à télécharger ici. Si vous êtes sous mac, vous pouvez même l’installer comme ceci :

brew install jpeg-xl

Ensuite, y’a plus qu’à appeler la commande comme ceci avec le paramètre lossless afin de n’avoir aucune perte :

cjxl wallpaper.png wallpaper.jxl --lossless_jpeg=0

Je passe donc d’un fond d’écran de 1,9 Mo en PNG au même fond d’écran de 202 Ko. Voici l’incrustation de ce JXL :

Après si vous avez la flemme de jouer avec tous ces outils sachez que ezgif dont je vous ai déjà parlé ici, propose des convertisseurs pour l’AVIF et le JXL.

D’ailleurs, si vous vous demandez comment je l’ai intégré, et bien, il existe une astuce qui permet d’avoir un rendu de JXL ou d’AVIF avec une image PNG en secours pour les anciens navigateurs qui ne supporteraient ni le AVIF ni le JXL.

Voici le code :

<picture>
      <source type="image/jxl" srcset="https://korben.info/wallpaper.jxl" />
      <img src="https://korben.info/wallpaper.png" />
</picture>

Et pour de l’AVIF ce sera comme ça :

<picture>
      <source type="image/avif" srcset="https://korben.info/wallpaper.avif" />
      <img src="https://korben.info/wallpaper.png" />
</picture>

Bref, tout ça pour dire que les résultats en matière de qualité et de compression avec JXL et AVIF sont assez phénoménaux que ce soit avec perte ou non de qualité. Je vous encourage fortement à adopter ces futurs standards même si pour le moment, c’est encore un peu roots, mais c’est déjà bien supporté sur les navigateurs récents du marché, donc pourquoi s’en priver. J’espère que WordPress le supportera également nativement rapidement, comme ils l’ont fait pour le webp.

OSS Insight – Explorez et comparez les dépôts GitHub en un clin d’oeil

Par : Korben
29 janvier 2024 à 09:00

Vous le savez, je suis un grand amateur et un grand défenseur des logiciels libres et Open Source. Et je n’ai pas peur de le dire, GitHub est l’un de mes sites préférés.

On y trouve des pépites comme des scripts incroyables, des outils géniaux et j’adore ça ! Mais ce n’est pas forcément toujours simple de suivre tout ce qui se passe dans cet univers.

Enfin, ça, c’était avant parce qu’il existe un site génial qui s’appelle OSS Insight et qui offre des informations très détaillées et des tendances sur le monde de l’open source en analysant plus de 5 milliards de lignes d’événements GitHub.

Il fournit une nouvelle façon d’explorer les données GitHub en posant simplement des questions en langage naturel, ce qui est extrêmement pratique quand on veut comparer les choses.

Par exemple, OSS Insight vous permet de comparer deux dépôts à partir des mêmes indicateurs, tels que les étoiles, les forks, les issues, les commits, les pull requests, le nombre de contributeurs, les langages de programmation utilisés ou encore les lignes de code modifiées.

Imaginez que vous travaillez sur un projet et que vous souhaitez comparer deux bibliothèques open source pour déterminer laquelle est la plus populaire et la mieux maintenue. Et bien il suffit de lui demander.

Mais ça ne s’arrête pas à ça. Voici quelques exemples de questions que les gens posent à l’outil :

En plus de cela, OSS Insight offre des informations sur les tendances techniques mensuelles avec des listes de dépôts à découvrir.

Comme ça, vous pouvez suivre de près certains types d’outils populaires, comme les bases de données, les frameworks JavaScript ou encore les outils liés aux LLM. Vous pouvez également obtenir des analyses sur la productivité des développeurs et les statistiques des dépôts.

Pour tester le OSS Insight, il vous suffit de vous rendre sur leur site web et de plonger dans cet océan de données.

OSTE – Le scanner de vulns qui combine Nikto, ZAP, Nuclei, SkipFish, et Wapiti

Par : Korben
28 janvier 2024 à 09:00

Si vous vous intéressez un peu à la sécurité informatique, je vous présente aujourd’hui OSTE qui est ce qu’on pourrait appeler un Metascanner.

Alors qu’est-ce qu’un Metascanner ?

Eh bien il s’agit d’un scanner de vulnérabilité web qui combine différents outils tels que Nikto, zap de l’OWASP, Nucléi, SkipFish ou encore Wapiti.

L’intérêt de cet outil c’est qu’il offre une interface graphique très user friendly qui permet de consulter les rapports de scan, mais également de les lancer. Injections SQL, XSS, XML, HTML ou encore des injections liées à des commandes spécifiques au système d’exploitation visé. Chacun des scanners DAST (Dynamic Application Security Testing) intégrés fournit des listes de vulnérabilités pour vous aider à identifier et corriger les problèmes potentiels.

Pour l’installer, vous aurez besoin de tous les outils que je viens de vous citer, mais si vous utilisez Kali Linux vous n’aurez pas de soucis puisque tout ça est déjà présent dans la distrib. Sinon il faudra les installer manuellement.

Ensuite il ne vous restera plus qu’à cloner le dépôt sur votre machine et à lancer la commande

python3 metascan.py

Vous pourrez alors lancer des scans, charger les résultats, les exporter, les consulter directement depuis l’interface graphique.

Vous l’aurez compris, OSTE est un outil fantastique pour simplifier l’évaluation de la cyber sécurité. N’oubliez pas quand même que c’est destiné à usages éducatifs ou dans le cadre de mission d’audits pour lesquelles vous avez été mandaté.

Si vous voulez en savoir plus, cliquez ici.

Continue – L’extension Visual Studio Code qui code à votre place

Par : Korben
25 janvier 2024 à 09:00

Cursor est à ce jour l’éditeur de Code que je préfère, car il est basé sur Visual Studio et totalement boosté à l’IA. Cela me permet pour moi qui suis une quiche en dev, de mener à bien mes projets de conquête du monde.

Toutefois, c’est payant. Et si vous ne voulez pas lâcher un peu de thunasse, et que vous voulez payer uniquement ce que vous consommez, c’est possible dans Cursor avec une clé OpenAI, mais également en installant ce plugin open source baptisé « Continue » directement dans un bon vieux Visual Studio Code d’origine ou un JetBrains.

Concrètement, ce truc vous permet en surlignant un bout de code, de discuter avec l’IA pour mieux le comprendre, le compléter ou le corriger. Vous pouvez même apporter des modifs directement à votre code simplement en demandant ce que vous voulez en langage naturel du genre :

/edit réécrire ceci pour retourner une liste aplatie à partir d'une matrice 3x3
/edit refactoriser cela en une mise en page flex angulaire sur une seule ligne
/edit définir ici un type pour une liste de listes de dictionnaires

Continue permet aussi de générer des fichiers from scratch, c’est-à-dire de zéro ou de générer des tests unitaires, des commandes Shell ou des recherches sur StackOverflow pour en extraire uniquement le nécessaire.

Continue est compatible avec GPT-4 et GPT-3.5-turbo via l’API OpenAI. Et si vous voulez esquiver OpenAI, vous pouvez toujours la connecter sur un autre LLM en utilisant par exemple LM Studio ou Ollama.

Une fois installé, pour l’activer, il suffit de faire un CMD + M (ou ALT + M).

Amusez-vous bien et codez-moi des trucs de ouf !

Plane – Une bonne alternative à JIRA, Asana ou Linear pour mener vos projets à bien !

Par : Korben
18 janvier 2024 à 09:00

Vous êtes vous déjà demandé pourquoi tous vos projets partaient en couille ?

C’est probablement parce que vous n’avez pas encore trouvé le bon outil pour les planifier ! C’est pourquoi aujourd’hui, je tiens à vous présenter un projet open source à autohéberger qui s’appelle Plane !

Oui, comme l’avion. Bien qu’encore en développement, cet outil, est déjà suffisamment cool pour vous donner envie de l’utiliser afin de suivre vos tâches, vos sprints et autres feuilles de route.

L’interface est plutôt agréable et vous permettra d’afficher les projets, d’y ajouter des pièces jointes, de créer des workflows maison, mais également d’importer toutes les tâches directement depuis d’autres outils comme Github ou Jira. Et bien sûr recevoir des notifs dans Slack, Discord et vos propres outils puisqu’il y a même une API.

Vous pouvez également utiliser des cycles pour planifier des sprints, diviser les projets en modules et créer des filtres personnalisés pour trier les informations comme bon vous semble. Plane offre également la possibilité de faire de la documentation directement au fur et à mesure du développement de votre projet et tout s’intègre parfaitement à Github pour conserver à la fois votre code et vos issues synchronisées avec Plane.

Vous verrez, Plane est assez plaisant à prendre en main puisqu’il y a même Command K, un genre d’interface rapide à Spotlight pour chercher des tâches, créer de nouvelles actions….etc. sans oublier un petit bloc-notes propulsé à base de ChatGPT pour les grosses feignasses qui n’aiment pas écrire.

Si ça vous branche, il n’y a plus qu’à découvrir Plane et kiffer la vie de projets ! Pour apprendre à l’installer avec Docker, c’est par ici.

❌
❌