Vue lecture

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.

EuroLLM - Le LLM européen qui tourne sur votre laptop

Faire tourner un modèle de langage européen sur votre machine sans avoir besoin d’un serveur surpuissant branché sur une centrale nucléaire, c’est maintenant possible, les amis ! Hé oui, EuroLLM vient de prouver qu’on pouvait faire tourner un modèle à 9 milliards de paramètres dans un peu moins de 6 GB de RAM sur un simple laptop.

Une seule commande Ollama , et c’est parti mon kiki !!!

Bien sûr, il est encore loin des gros modèles proprio comme GPT-5 mais c’est le enfin le premier LLM européen que VOUS pouvez faire tourner en local. C’est respectueux de votre vie privée, des droits d’auteurs et c’est gratuit !

Un projet 100% européen

EuroLLM, c’est en réalité une coalition de labos européens : Instituto Superior Técnico (Lisbonne), University of Edinburgh , Université Paris-Saclay , Unbabel , et d’autres et c’est financé par Horizon Europe et l’ EuroHPC , et ce modèle supporte les 24 langues officielles de l’UE, plus 11 langues supplémentaires (arabe, chinois, hindi, japonais, coréen, russe, turc…).

EuroLLM-9B , le modèle de base, a été entraîné sur 4 trillions de tokens avec le supercalculateur MareNostrum 5 à Barcelone (400 GPUs Nvidia H100) et l’architecture utilise du Grouped Query Attention, RoPE, SwiGLU et RMSNorm, comme tout LLM moderne qui se respecte.

Mais il existe d’autres versions comme EuroLLM-1.7B pour smartphones et bientôt EuroLLM-22B pour plus de puissance, ainsi qu’une version vision-language (EuroVLM-9B) et un modèle Mixture-of-Experts (EuroMoE-2.6B).

Et surtout c’est sous licence Apache 2.0. Donc l’usage commercial est autorisé, vous pouvez le fine-tuner sur vos données, et les modifications sont libres, sans redevance à payer. Ce n’est pas la première fois qu’il y a des LLM européens mais ils étaient soit sous licence trop restrictives ou un peu trop lourd pour être utilisé localement par les gens normaux comme vous et moi.

Maintenant comment l’installer ?

La méthode la plus simple, c’est via Ollama :

ollama run hf.co/bartowski/EuroLLM-9B-Instruct-GGUF

Ollama télécharge le modèle en version GGUF (format optimisé CPU/GPU), et vous pouvez commencer à discuter. Il existe aussi une version pré-packagée alibayram/erurollm-9b-instruct (attention, erurollm avec un “u”), quantized en Q4_K_M pour réduire la taille à 5,6 GB.

Si vous préférez Python et Hugging Face Transformers :

from transformers import AutoTokenizer, AutoModelForCausalLM

model_name = "utter-project/EuroLLM-9B-Instruct"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name)

inputs = tokenizer("Explique-moi ce qu'est un LLM en français simple", return_tensors="pt")
outputs = model.generate(**inputs, max_length=200)
print(tokenizer.decode(outputs[0]))

Une fois téléchargé, le modèle reste en cache local. Vous pouvez alors l’utiliser offline, sans connexion internet. Et pour les machines avec moins de RAM, la version 1.7B tourne même sur des Raspberry Pi :

ollama run cas/eurollm-1.7b-instruct-q8

Alors pourquoi c’est important ?

EuroLLM ouvre l’IA européenne à des cas d’usage impossibles avec des API cloud. Par exemple une administration publique ne peut pas envoyer ses documents dans le cloud d’OpenAI… ce serait tout livrer aux américains. Elle peut donc fine-tuner EuroLLM localement. Un journaliste en zone sensible sans connexion fiable peut aussi embarquer le modèle sur son ordi portable. Même un chercheur qui manipule des données médicales confidentielles peut le faire en toute confiance avec EuroLLM puisque tout reste sur sa machine.

C’est cool quand même que l’Europe nous file un modèle gratuit qu’on peut installer chez soi et utiliser sans limite. Après c’est vrai que EuroLLM ne bat pas GPT-4 (pas encore) mais il est suffisamment bon pour 80% des cas d’utilisation réels tels que des résumés, de la traduction, des questions-réponses simples, de la génération de code basique.

La roadmap prévoit d’ajouter de la vision et de la voix aux modèles. D’ailleurs, comme je vous le disais, EuroVLM-9B est déjà en preview sur Hugging Face , ce qui ouvre la voie à de l’OCR multilingue, de l’analyse de documents visuels, ou encore à la création d’assistants vocaux dans n’importe quelle langue…

Voilà j’ai trouvé ça cool à tester et un grand merci à Letsar pour le partage !

Podgenai – Générez des podcasts de A à Z avec l’IA

Vous rêvez de créer votre propre podcast mais vous manquez de temps ou d’inspiration ?

Podgenai est là pour vous aider à générer du contenu audio grâce à la POUISSANCE de l’intelligence artificielle ! Aidée de GPT-4, cette application Python vous permet de produire des épisodes d’environ une heure sur n’importe quel sujet en un clin d’œil.

Le principe est simple, vous choisissez un thème, l’IA analyse le sujet en profondeur, identifie les sous-thèmes pertinents et génère un script complet et structuré pour votre émission. Et pas besoin d’être un expert, puisque l’application vulgarise les concepts techniques tout en rendant ça captivant pour votre audience.

L’outil transforme donc directement le texte en audio grâce à une synthèse vocale de bonne qualité qui vous permet de choisir parmi plusieurs voix. Le son produit est clair, naturel et dynamique et vous avez également un contrôle total sur le contenu généré puisqu’il est possible d’affiner les contenus, d’ajuster la longueur de l’épisode ou encore d’insérer vos propres commentaires et anecdotes. Bref, tout ce qu’il faut pour créer un podcast unique en anglais par contre… A voir ce que ça rend sur un texte en français… y’aura peut-être un petit effet Jane Birkin.

Économie de matos, de temps et surtout c’est accessible à tous. Alors bien sûr, je pense que (pour le moment), ça ne peut pas arriver au niveau d’un vrai podcast fait par un vrai humain… mais pour produire vos propres podcast thématiques rapidement afin de défricher un sujet qui vous tient à cœur et écouter tout ça en voiture lors de votre prochain déplacement, je trouve ça plutôt cool.

Vous l’aurez compris, pour moi c’est plutôt à réserver à des fins personnelles que pour une diffusion grand publique. Mais ça n’a pas arrêté les créateurs de l’outil qui ont mis en ligne leur podcast 100% généré par IA à des fins de démo. Ça vous permettra de vous faire un avis.

Toutes les infos sont ici.

Dot – L’app IA locale pour interagir avec vos documents (RAG)

Vous rêvez d’exploiter la puissance des grands modèles de langage pour interagir avec vos documents, mais vous ne voulez pas que vos données quittent votre ordinateur ? Et bien j’ai ce qu’il vous faut !

Admettons que vous avez une tonne de documents sur votre disque dur, des PDFs, des fichiers Word, des présentations PowerPoint, des feuilles de calcul Excel et même des fichiers Markdown… Vous aimeriez pouvoir obtenir des réponses à vos questions à partir de leur contenu, avoir des résumés, générer de nouvelles idées à partir de ces informations… Bref, avoir un genre d’assistant intelligent qui pourrait comprendre et manipuler toutes ces données. Et bien c’est exactement ce que propose Dot !

Au cœur de son fonctionnement, on trouve un modèle de langage pré-entraîné, en l’occurrence une version de Mistral 7B au moment où j’écris ces lignes, qui tourne en local et permet de faire ce qu’on appelle du « Retrieval Augmented Generation » ou RAG.

En gros, ça veut dire que l’IA ne se contente pas de générer du texte à partir de ce qu’elle a appris, mais qu’elle va aussi chercher des informations pertinentes dans une base de connaissances locale. Vous sélectionnez un dossier contenant les documents que vous voulez indexer, Dot va les analyser, les découper en morceaux, calculer des embeddings et construire un index permettant de retrouver rapidement les passages les plus pertinents pour une requête donnée.

Et ensuite, vous pouvez discuter avec Dot comme vous le feriez avec un assistant IA classique. Vous lui posez une question, et il utiliser ses connaissances générales pour formuler une réponse, mais aussi aller piocher dans votre base documentaire pour l’enrichir avec des informations spécifiques. Du coup, ça booste d’un cran la pertinence et la qualité des réponses obtenues !

Bien sûr, comme Dot tourne exclusivement en local, vous n’avez pas à vous inquiéter pour la confidentialité de vos données puisque rien ne quitte jamais votre machine. C’est un gros avantage par rapport aux solutions cloud qui vont envoyer vos documents sur des serveurs distants. Et si vous avez besoin d’un coup de main pour des tâches qui ne nécessitent pas forcément d’accéder à vos documents, Dot intègre un mode « Big Dot ». Vous basculez dessus en un clic, et vous vous retrouvez avec un assistant IA généraliste, capable de tenir des conversations sur n’importe quel sujet, d’aider à la rédaction, de faire du brainstorming, etc. C’est comme avoir un ChatGPT en local sous la main à tout moment.

Si ça vous dit de tester, c’est gratuit, open source, dispo sous macOS, Windows, Linux et disponible ici : https://dotapp.uk/

Auto-News – L’agrégateur de news automatisé par IA

Ce serait cool si on pouvait avoir accès directement aux informations les plus pertinentes pour nous, sans être submergé par le bruit constant des trucs sans intérêt. Et bien c’est exactement ce que propose Auto-News, un agrégateur d’actu personnel qui exploite la puissance de l’intelligence artificielle pour vous aider à vous informer de manière plus efficace.

Notre temps étant précieux, il est crucial de bien l’utiliser et malheureusement, tout ces moments qu’on passe à chercher, filtrer et organiser le contenu provenant de différentes sources, c’est un peu du gâchis.

Cet outil est donc capable d’agrèger les flux de diverses sources telles que Twitter, RSS, YouTube, des articles web, Reddit et même vos notes personnelles et grâce à l’utilisation de modèles de langage comme ChatGPT, il est capable de résumer et de filtrer le contenu, éliminant ainsi plus de 80% du bruit.

Comme ça, vous pouvez rester concentré sur la lecture des actus qui vous intéressent vraiment, en fonction de vos centres d’intérêt, tout en restant aligné sur vos objectifs. N’oubliez pas quand même de mettre Korben.info dans vos sources :))

Mais Auto-News va encore plus loin puisqu’il est capable de générer des listes de tâches à partir de vos notes. Il peut également les organiser en les résumant avec les informations clés et y’a même une fonctionnalité expérimentale appelée « Deepdive » qui grâce à un agent de recherche web et à l’outil Autogen de Microsoft, vous permet d’explorer en profondeur des sujets qui vous passionnent.

Côté technique, Auto-News prend en charge plusieurs backends d’IA, dont OpenAI ChatGPT et Google Gemini. L’interface utilisateur est basée sur Notion, ce qui signifie que vous pouvez y accéder de n’importe où, que ce soit via un navigateur web ou une application mobile. Son déploiement est plutôt flexible, avec une prise en charge de Docker Compose et de Kubernetes donc ça peut s’intégrer facilement dans votre flux de travail.

A découvrir ici.

Perplexica – Le moteur de recherche open source propulsé à l’IA

Perplexica est un moteur de recherche gratuit et transparent, qui comprend ce que vous lui demandez et qui vous trouve pile poil ce que vous cherchez, le tout boosté à l’intelligence artificielle dernière génération. Ça vous parle, non ?

Ah bah oui c’est comme Perplexity.ai sauf que c’est gratuit, open source et que ça vous permet de fouiller le web en profondeur pour dénicher les réponses à toutes vos questions. Pour cela, l’outil utilise des algorithmes d’apprentissage automatique basés notamment sur la recherche par similarité sémantique. En gros, il est capable de piger le sens de votre question et de trouver les sources les plus pertinentes.

Comme ça, vous obtenez des réponses claires et sourcées, servies sur un plateau d’argent sans avoir besoin de passer des heures à éplucher les pages de résultats pour trouver l’info qui vous intéresse.

Pas de cookies qui vous espionnent ni de revente de données personnelles en douce et vos recherches restent confidentielles. Côté fonctionnalités, Perplexica propose plusieurs modes de recherche bien pratiques :

  • Le mode Copilot (encore en développement) : il génère des requêtes pour trouver les sources Internet les plus pertinentes. Plutôt que d’utiliser uniquement le contexte fourni par SearXNG, il visite directement les meilleurs résultats pour trouver les sources les plus adaptées à votre question.
  • Le mode Normal : il traite votre requête et effectue une recherche web classique.
  • Les Focus Modes : des modes spécialisés pour répondre à des besoins spécifiques, comme la recherche académique, la recherche YouTube, les calculs via Wolfram Alpha ou encore la recherche Reddit pour les discussions et avis.

Et niveau technique, il utilise un meta-moteur de recherche bien fichu qui s’appelle SearXNG. C’est lui qui récupère les résultats, les trie, les recoupe, pour ne garder que la crème de la crème. L’avantage, c’est que vous avez toujours des infos à jour, sans latence. Et comme je le disais en intro, il s’appuie aussi sur des modèles de langage locaux comme Llama3 et Mixtral, via l’API Ollama ce qui lui permet d’affiner encore plus les résultats.

Et pour l’installer, c’est super simple :

  1. Clonez le dépôt GitHub de Perplexica : git clone https://github.com/ItzCrazyKns/Perplexica.git
  2. Renommez le fichier sample.config.toml en config.toml et remplissez les champs nécessaires (clé API, etc.)
  3. Lancez la commande docker compose up -d
  4. Attendez quelques minutes que l’installation se termine
  5. Accédez à Perplexica via http://localhost:31337 depuis votre navigateur

Une fois que c’est en place, vous pouvez même utiliser Perplexica comme moteur de recherche par défaut dans votre navigateur. Il suffit d’aller dans les paramètres, d’ajouter un nouveau moteur de recherche avec l’URL http://localhost:31337/?q=%s et le tour est joué !

Après, forcément, c’est encore un jeune projet, donc il y a des petits trucs à peaufiner et les devs planchent notamment sur la finalisation du mode Copilot, l’ajout d’une page de paramètres, de fonctionnalités comme l’historique de recherche, et le support des modèles de langage locaux.

Mais même en l’état, je trouve que ça vaut grave le coup de tester Perplexica, ne serait-ce que pour voir à quoi peut ressembler un moteur de recherche IA à la fois éthique et transparent ^^.

Remerciement spécial à Lorenper pour l’info !

Auto-News – L’agrégateur de news qui vous permet d’éviter le « bruit »

Auto-News est un agrégateur de news automatisé boosté à l’IA qui rassemble vos sources favorites – tweets, RSS, YouTube, articles web, Reddit, même vos petites notes perso. Puis c’est la magie de l’IA qui analyse tout ça en deux temps trois mouvements, résume le contenu à vitesse grand V, et vous sert sur un plateau les pépites qui matchent avec vos centres d’intérêt. Le reste, poubelle ! Comme ça, fini le tri bien pénible.

Vous créez simplement une page sur Notion comme point d’entrée, vous renseignez vos petits tokens chéris, et voilà le travail ! Auto-News va gentiment créer tout un joli système de dossiers et de bases de données pour ranger vos contenus. Il vous suffira alors d’indiquer vos flux RSS favoris, vos comptes Twitter et Reddit à suivre, et hop, la machine est lancée !

L’outil est également capable de générer des transcriptions pour les vidéos YouTube et les articles web, histoire que vous puissiez les parcourir en diagonale, et grâce à ses supers pouvoirs d’IA, il vous concocte même des listes de tâches à partir de vos notes et réflexions.

Côté technique, c’est du solide puisque ça tourne sous Linux ou MacOS, avec Docker pour faciliter le déploiement et le top du top, c’est son interface façon Notion utilisable depuis votre iPhone, votre Android ou n’importe quel navigateur.

Parfait pour dire adieu à l’infobésité et découvrir le plaisir d’une lecture personnalisée. Pour plus d’infos, c’est par ici.

Le son des images #IA

Des chercheurs de l’Université du Michigan ont mis au point une technique absolument dingue qui permet de générer des spectrogrammes ayant l’allure d’images capables de produire des sons qui leur correspondent lorsqu’ils sont écoutés. Ils appellent cela des « images qui sonnent ».

Leur approche est simple et fonctionne sans entraînement spécifique. Elle s’appuie sur des modèles de diffusion text-to-image et text-to-spectrogram pré-entraînés, opérant dans un espace latent partagé. Durant le processus de génération, les deux modèles « débruitent » des latents partagés de manière simultanée, guidés par deux textes décrivant l’image et le son désirés.

Le résultat est bluffant ! Ça donne des spectrogrammes qui, vus comme des images, ressemblent à un château avec des tours, et écoutés comme des sons, font entendre des cloches. Ou des tigres dont les rayures cachent les motifs sonores de leurs rugissements.

Pour évaluer leur bidouille, les chercheurs ont utilisé des métriques quantitatives comme CLIP et CLAP, ainsi que des études de perception humaine. Leur méthode dépasse les approches alternatives et génère des échantillons qui collent finement aux prompts textuels dans les deux modalités. Ils montrent aussi que coloriser les spectrogrammes donne des images plus agréables à l’œil, tout en préservant l’audio.

Cette prouesse révèle qu’il existe une intersection entre la distribution des images et celle des spectrogrammes audio et en dépit de leurs différences, ils partagent des caractéristiques bas niveau comme les contours, les courbes et les coins. Cela permet de composer de façon inattendue des éléments visuels ET acoustiques, comme une ligne qui marque à la fois l’attaque d’un son de cloche et le contour d’un clocher.

Les auteurs y voient une avancée pour la génération multimodale par composition et une nouvelle forme d’expression artistique audio-visuelle. Une sorte de stéganographie qui cacherait des images dans une piste son, dévoilées uniquement lorsqu’elles sont transformées en spectrogramme.

Pour recréer cette méthode chez vous, il « suffit » d’aller sur le Github du projet et de suivre les instructions techniques.

Source

Discord LLMCord – Quand les chatbots s’invitent dans Discord

Vous êtes fan de Discord et vous aimez bidouiller des trucs ?? Alors préparez-vous à découvrir Discord LLMCord. C’est un petit bout de code qui va vous permettre de causer avec des IA directement dans vos canaux, comme si c’étaient vos potes. Et ça marche avec à peu près tous les modèles de langage, qu’ils soient hébergés à distance ou en local sur votre bécane.

Pour lancer une conversation, il suffit de tagger le bot et hop, c’est parti mon kiki. Vous pouvez continuer la discussion en répondant aux messages et ainsi construire des fils de discussion complets. Vous pouvez par exemple :

  • Poursuivre votre propre conversation ou celle de quelqu’un d’autre.
  • « Rembobiner » une discussion en répondant à un vieux message.
  • Poser une question sur n’importe quel message de votre serveur en taguant le bot.

En plus, si vous envoyez plusieurs messages à la suite, ils seront automatiquement mis bout à bout et si vous répondez juste au dernier, le bot verra tous les précédents. Vous pouvez aussi déplacer une conversation dans un fil sans perdre le fil (lol). Il vous suffit de créer un thread à partir d’un message et de tagger le bot dedans pour continuer à papoter.

Côté compatibilité, ça supporte les modèles distants d’OpenAI, Mistral, Anthropic et plein d’autres grâce à LiteLLM. Si vous voulez faire tourner un modèle en local, pas de souci non plus puisque ça marche avec OLLaMa, OobaBooga, Jan, LM Studio ou n’importe quel serveur d’API compatible OpenAI.

Le bot gère même les images si vous utilisez un modèle de vision comme GPT-4, Claude-3 ou LLaVA. Il a un prompt système personnalisable et vous pouvez lui parler en DM pour plus d’intimité (pas besoin de le tagger).

Si vous utilisez l’API OpenAI, LLMCord est également capable de reconnaître l’identité des utilisateurs. De plus, les réponses s’affichent en temps réel, avec un joli dégradé de vert quand c’est fini et s’il cause trop, il coupe automatiquement ses messages en plusieurs morceaux. Pratique pour éviter de se faire ban par Discord ! Il affiche aussi des avertissements utiles si besoin, genre « J’utilise seulement les 20 derniers messages » quand vous dépassez la limite. Bref, c’est un bot bien élevé.

Sous le capot, il utilise un dico global avec des mutex pour mettre en cache les données des messages de manière efficace et thread-safe, comma ça, ça réduit les appels à l’API Discord et ça évite les fuites de mémoire. Le tout totalement en asynchrone.

Pour l’installer, c’est fastoche. Vous clonez le repo GitHub, vous installez les dépendances Python avec pip et vous créez un fichier .env avec vos clés d’API et les paramètres du bot. Lancez le script et tada, l’URL d’invitation de votre bot s’affiche dans la console. Pour plus de détails, suivez ce guide :

  1. Installer Python : Téléchargez et installez Python à partir de python.org.
  2. Cloner le dépôt git : Ouvrez un terminal et clonez le dépôt : bash git clone https://github.com/jakobdylanc/discord-llm-chatbot.git cd discord-llm-chatbot
  3. Installer les packages nécessaires : bash pip install -r requirements.txt
  4. Créer un fichier .env : bash cp .env.example .env
  5. Configurer les variables d’environnement : Ouvrez .env et remplissez les champs nécessaires : plaintext DISCORD_BOT_TOKEN=YOUR_DISCORD_BOT_TOKEN OPENAI_API_KEY=your-openai-api-key MODEL_NAME=local/openai/YOUR_MODEL_NAME
  6. Exécuter le script : Dans le terminal, lancez : bash python llmcord.py

Ah et j’oubliais, LLMCord est open source (vive le libre !), donc si vous voulez contribuer ou l’adapter à vos besoins, forkez et PR sans modération.

Avec ça, votre Discord ne sera plus jamais pareil et je sens que vous allez bien vous marrer ! Alors merci à Lorenper pour l’info car c’est une chouette découverte !

Source

L’IA qui raisonne comme un humain

Les scientifiques du MIT boostent les capacités de raisonnement de l’IA avec une architecture hybride révolutionnaire ! Hé oui, les petits génies du MIT ont développé 3 frameworks qui vont donner aux IA le pouvoir de raisonner comme des humains.

Imaginez que vous ayez un pote un peu limité niveau jugeote (on a tous un [insère ici le prénom de ton collègue le plus proche] dans notre entourage 😅). Il comprend ce que vous lui dites, il peut même vous répondre, mais dès qu’il faut réfléchir un peu, ça rame et parfois ça plante. Eh bien, les IA actuelles, c’est un peu pareil !

Elles sont super balèzes pour ingurgiter des tonnes de données et cracher du texte, mais niveau compréhension du contexte et raisonnement complexe, ce n’est pas encore tout à fait ça. Et c’est là que nos amis du MIT entrent en scène avec leur trésor d’abstractions en langage naturel. En gros, ils ont créé des lib qui vont aider les IA à mieux piger leur environnement et résoudre des problèmes de manière plus humaine. On parle donc de 3 frameworks aux petits noms mignons : LILO, Ada et LGA.

LILO, c’est l’atout du développeur. Il va aider les IA à synthétiser, compresser et documenter du code comme un pro. Fini les IA qui créent des pavés de code illisibles, place à des programmes bien structurés et commentés !

Ada, c’est la stratège du groupe. Elle va permettre aux IA de planifier des actions de manière flexible. Au lieu de suivre bêtement une recette, l’IA va pouvoir s’adapter et improviser en fonction de ce qu’elle trouve dans son frigo. Ada a même montré une amélioration de 59% pour des tâches de simulation de cuisine et de 89% pour des tâches de construction de lit.

Enfin, LGA, c’est l’as de la perception. Elle va filer un gros coup de pouce aux robots pour qu’ils comprennent mieux leur environnement, un peu comme si on leur refilait une bonne paire de lunettes. Terminé les robots qui se prennent les pieds dans le tapis, ils vont pouvoir naviguer dans votre appart’ comme un poisson dans l’eau (ou presque 😅).

Avec ces 3 frameworks qui mixent réseaux de neurones et approches logiques classiques, les chercheurs espèrent bien faire passer les IA au niveau supérieur. Ainsi, on aura enfin des chatbots qui comprennent vos blagues pourries, des robots qui vous apportent une bière sans renverser la moitié au passage, et pourquoi pas des IA qui vous aident à coder votre prochain jeu vidéo pendant que vous glandouillez sur le canapé !

Pour ceux qui veulent aller plus loin, voici les publications sur arXiv des avancées réalisées :
Library Induction from Language Observations
Action Domain Acquisition
Language-Guided Abstraction

J’ai hâte de voir tout ça fonctionner pour en vrai !

Source

En manque d’inspiration avec vos prompts IA ? Allez jeter un œil à la bibliothèque d’Anthropic

Vous en avez assez de passer des heures à chercher la formulation parfaite pour obtenir de bons résultats avec vos prompts IA ?

Ne vous cassez plus la tête, puisque Anthropic a pensé à tout avec sa Prompt Library. Cette bibliothèque gratuite de prompts va vous permettre d’interagir plus facilement avec des outils comme Claude3, ChatGPT, Mistral…etc. Les prompts que vous y trouverez sont pré-optimisés pour une multitude de tâches, allant de la rédaction au développement en passant par l’analyse de données. Et ça n’a de cesse de s’enrichir puisque tout le monde peut soumettre ses meilleurs prompts.

Pour l’utiliser, il vous suffit de copier-coller le prompt de votre choix dans votre IA préférée, d’y apporter quelques modifications si le cœur vous en dit, et voilà ! Il y a même le code en TypeScript ou Python qui vous permettra de passer un message « system » avant votre message « user ».

Chacun de ces prompts est le fruit d’un travail minutieux de la part des équipes d’Anthropic dont l’objectif est de fournir des résultats d’e qualité supérieure d’excellente qualité afin de montrer ce que Claude3 a dans le ventre. Et, comme je le disais, il y en a pour tous les goûts… Des prompts pour générer des recettes, interpréter les rêves, se lancer dans la médiation pleine conscience, à des choses plus boulot / business comme créer une marque, rédiger des documents, debugger du code python et j’en passe.

Si ça vous dit de jeter un œil, c’est par ici que ça se passe.

Open WebUI – Une interface graphique pour Ollama

Open WebUI débarque pour changer notre façon d’interagir avec Ollama grâce à une interface graphique intuitive et ergonomique ! Parce que l’IA, c’est cool, mais si c’est simple à utiliser, c’est encore mieux. Ollama pour rappel, c’est un outil qui permet de faire tourner des LLM en local et qui s’utilise soit via du code, soit directement en ligne de commande.

Avec Open WebUI, vous allez enfin avoir une interface web personnalisable avec votre thème, sombre pour les hackers en herbe ou clair pour les âmes sensibles, dans la langue de votre choix, de l’anglais au klingon en passant par le français, et vous pourrez ainsi causer avec Ollama comme si vous étiez sur ChatGPT. Avec le support de Markdown, de LaTeX et de la coloration syntaxique, vous pourrez même lui faire cracher du code et des formules mathématiques comme jamais.

Open WebUI permet même d’utiliser plusieurs modèles en parallèle, comparer leurs réponses, et même les faire discuter entre eux… Et si vous voulez de l’interaction plus poussée, lâchez-vous avec les fonctionnalités de Récupération Augmentée (RAG). Vous pourrez intégrer des documents externes dans vos conversations et même aller les chercher directement sur le web grâce à une fonction de navigation intégrée.

Avec l’outil de création de fichiers modèle (modelfiles), vous pouvez également définir des agents conversationnels sur mesure et les partager avec la communauté Open WebUI.

Bien sûr, comme tout bon logiciel qui se respecte, Open WebUI gère la reconnaissance vocale, la synthèse Text-to-Speech et même la génération d’images avec DALL-E et d’autres systèmes compatibles. Cadeau bonux, l’intégration avec les API compatibles OpenAI, pour encore plus de possibilités déjantées.

Pour plus d’informations sur ces fonctionnalités et comment les configurer, consultez la documentation officielle d’Open WebUI.

C’est open source, c’est puissant, c’est customisable à outrance alors que vous soyez un champion du dev ou comme moi, juste un curieux qui veut s’amuser avec l’IA, vous allez vous régaler.

Avant de vous lancer dans l’installation d’Open WebUI, assurez-vous d’avoir les prérequis suivants :

  • Docker installé sur votre machine
  • Une URL de base pour Ollama (OLLAMA_BASE_URL) correctement configurée

Pour configurer l’URL de base d’Ollama, vous pouvez soit la définir en tant que variable d’environnement, soit la spécifier dans un fichier de configuration dédié.

Une fois les prérequis remplis, vous pouvez procéder à l’installation d’Open WebUI en utilisant Docker :

docker run -d -p 3000:8080 --name open-webui --restart always ghcr.io/open-webui/open-webui:main

Cette commande va télécharger l’image Docker d’Open WebUI et lancer un conteneur accessible sur http://localhost:3000.

Amusez-vous bien et si vous voulez en savoir plus, toutes les infos sont ici.

Llamafile – Exécutez des modèles de langage en un seul fichier !

llamafile est un projet complètement barré qui va vous permettre de transformer des modèles de langage en exécutables. Derrière se cache en fait la fusion de deux projets bien badass : llama.cpp, un framework open source de chatbot IA, et Cosmopolitan Libc, une libc portable pour compiler des programmes C multiplateformes. En combinant astucieusement ces deux technos, les petits gars de Mozilla ont réussi à pondre un outil qui transforme les poids de modèles de langage naturel en binaires exécutables.

Imaginez un peu, vous avez un modèle de langage qui pèse dans les 4 gigas, dans un format .gguf (un format couramment utilisé pour les poids de LLM). Et bien avec llamafile, vous pouvez le transformer en un exécutable standalone qui fonctionnera directement sur le système sur lequel il est sans avoir besoin d’installer quoi que ce soit. Ça va permettre de démocratiser l’utilisation et la diffusion des LLM.

Et niveau portabilité, c’est le feu puisque ça tourne sur six OS, de Windows à FreeBSD en passant par macOS. Les devs ont bien bossé pour que ça passe partout, en résolvant des trucs bien crados comme le support des GPU et de dlopen() dans Cosmopolitan et croyez-moi (enfin, croyez-les) ça n’a pas été une mince affaire !

Niveau perf aussi c’est du brutal ! Sur Linux llamafile utilise pledge() et SECCOMP pour sandboxer le bousin et empêcher les accès fichiers non désirés et avec les derniers patchs de Justine Tunney, la perf CPU pour l’inférence en local a pris un boost de malade du genre 10 fois plus rapide qu’avant. Même sur un Raspberry Pi on peut faire tourner des petits modèles à une vitesse honnête.

Allez, assez parlé, passons à la pratique !

Voici comment tester vous-même un llamafile en un rien de temps :

  1. Téléchargez l’exemple de llamafile pour le modèle LLaVA (licence : LLaMA 2, OpenAI) : llava-v1.5-7b-q4.llamafile (3,97 Go). LLaVA est un nouveau LLM qui peut non seulement discuter, mais aussi analyser des images que vous uploadez. Avec llamafile, tout se passe en local, vos données ne quittent jamais votre PC.
  2. Ouvrez le terminal de votre ordinateur.
  3. Si vous êtes sous macOS, Linux ou BSD, vous devrez autoriser l’exécution de ce nouveau fichier. (À faire une seule fois) :
    chmod +x llava-v1.5-7b-q4.llamafile
  4. Sous Windows, renommez simplement le fichier en ajoutant « .exe » à la fin.
  5. Lancez le llamafile, par exemple :
    ./llava-v1.5-7b-q4.llamafile
  6. Votre navigateur devrait s’ouvrir automatiquement sur une interface de chat. (Sinon, ouvrez-le et allez sur http://localhost:8080)
  7. Quand vous avez fini, retournez dans le terminal et faites Ctrl-C pour arrêter llamafile.

Évidemment, Mozilla ne compte pas s’arrêter là et continue de bosser comme des dingues pour suivre le rythme des nouveaux modèles qui sortent et avec le support des dernières architectures dès leur sortie.

Il est même prévu qu’on puisse bientôt générer nos propres llamafiles en un seul clic ! D’ailleurs, Hugging Face est déjà dans la boucle pour héberger tout ce petit monde. Bref, je vous le dis, les amis, llamafile est un projet à suivre absolument !

Alors on dit merci qui ?

Merci Mozilla ! 🙏🦊

Discutez avec les interviews de Steve Jobs !

Fans de Steve Jobs, réjouissez-vous !

Grâce à la magie de l’intelligence artificielle, vous allez pouvoir discuter avec votre gourou préféré. Enfin, quand je dis « discuter », c’est un bien grand mot. Disons plutôt que vous allez pouvoir poser des questions à un modèle de langage entraîné sur une petite quantité d’interviews et discours de Steve Jobs himself.

Pour cela, le créateur de ce chatbot a utilisé un service nommé Jelli.io qui permet justement de chatter avec des vidéos et le résultat est plutôt cool, même si le chatbot n’incarne pas directement Steve Jobs (pour des questions éthiques j’imagine et pour n’énerver personne…)

Bref, de quoi vous inspirer et vous motiver sans forcement mater des heures et des heures d’interviews.

Ollama 0.133 – Enfin une gestion en parallèle des LLMs

Vous avez vu la dernière version d’Ollama ? Cette version 0.133 a l’air plutôt pas mal. Bon, je sais, je sais, ça faisait un bail que je n’avais pas parlé des mises à jour de cet outil génial pour faire tourner des modèles d’IA en local, mais là, impossible de passer à côté !

Déjà, on a le droit à des fonctionnalités expérimentales de parallélisme (je sais pas si c’est comme ça qu’on dit en français…) qui vont vous permettre d’optimiser grave vos applis d’IA. Il y a donc 2 nouvelles variables d’environnement qui débarquent : OLLAMA_NUM_PARALLEL et OLLAMA_MAX_LOADED_MODELS. Avec ça, vous allez pouvoir gérer plusieurs modèles et requêtes en même temps, comme des pros ! 😎

Par exemple, si vous avez un modèle pour compléter votre code avec une IA de 6 milliards de paramètres comme Llama 3, et en même temps vous demandez à Phi 3 Mini et ses 3,8 milliards de paramètres comment architecturer votre projet et bien maintenant, c’est possible ! Comme ça, plus besoin d’attendre que l’un ait fini pour lancer l’autre puisque tout ça va se lancer en parallèle.

Alors bien sûr, c’est encore expérimental car il n’y a pas encore de priorité, et on est limité par la mémoire dispo sur notre machine. D’ailleurs, il vaut mieux avoir 16 Go de RAM et un CPU 4 cœurs pour que ça fonctionne correctement.

Il y a aussi plein de nouveaux modèles d’IA compatibles avec Ollama maintenant. Des gros calibres comme Llama 3, le meilleur modèle open-source à ce jour, mais aussi des plus légers et spécialisés comme Phi 3 Mini, Moondream pour la vision par ordinateur sur des appareils à la marge, ou encore Dolphin Llama 3 qui répond sans censure. Et le premier modèle Qwen (c’est chinois) de plus de 100 milliards de paramètres, Qwen 110B, est également de la partie. Ça en fait des compagnons pour nous assister dans nos projets !

Ensuite, imaginons que vous vouliez tester le parallélisme. Vous devez simplement lancer votre serveur Ollama avec les fameuses variables d’environnement.

Voici comment procéder :

Définir les variables sur Mac :

  • Utilisez launchctl pour définir chaque variable. Par exemple, pour permettre à Ollama de gérer trois requêtes simultanément, tapez dans le terminal :
    launchctl setenv OLLAMA_NUM_PARALLEL 3
  • Pour définir le nombre maximal de modèles chargés simultanément à deux, utilisez :
    launchctl setenv OLLAMA_MAX_LOADED_MODELS 2
  • Après avoir défini les variables, redémarrez l’application Ollama.

Configurer les variables sur Linux :

    • Éditez le service systemd d’Ollama avec systemctl edit ollama.service, ce qui ouvrira un éditeur de texte.
    • Ajoutez les lignes suivantes sous la section [Service] :
      [Service] Environment="OLLAMA_NUM_PARALLEL=3" Environment="OLLAMA_MAX_LOADED_MODELS=2"
    • Sauvegardez et quittez l’éditeur. Rechargez systemd et redémarrez Ollama avec :
      systemctl daemon-reload systemctl restart ollama

    Paramétrer les variables sur Windows :

      • Quittez l’application Ollama via la barre des tâches.
      • Accédez aux variables d’environnement système via le panneau de configuration et créez ou modifiez les variables pour votre compte utilisateur :
        • Pour OLLAMA_NUM_PARALLEL, ajoutez ou modifiez la variable à 3.
        • Pour OLLAMA_MAX_LOADED_MODELS, ajustez la variable à 2.
      • Appliquez les changements et redémarrez Ollama à partir d’une nouvelle fenêtre de terminal.

      Là, ça veut dire que vous pourrez envoyer 3 requêtes en parallèle sur le même modèle, et charger jusqu’à 2 modèles différents si votre RAM de 16 Go minimum le permet.

      Bon, et une fois que c’est lancé, vous pourrez envoyer des requêtes à tour de bras. Un coup à Llama 3 pour qu’il vous aide à générer un résumé de texte hyper optimisé, un autre à Phi 3 Mini pour résumer un article scientifique, tout ça pendant que Moondream analyse une image pour de la détection d’objets.

      Allez, je vous laisse tranquille, faut que j’aille optimiser mes scripts maintenant.

      Ollama 0.133 est dispo ici.

      Source

      Reor – L’appli magique de prise de notes boostée à l’IA locale et gratuite

      Dispo sous Windows, Linux et macOS (Intel et Silicon), Reor est un outil de prise de notes markdown capable de s’auto-organiser. Cela signifie que l’outil utilise de l’IA localement pour vous aider à mettre de l’ordre dans vos idées.

      C’est assez ouf puisque ça vous fera gagner un max de temps en reliant automatiquement vos idées, mais également en répondant à toutes vos questions en se basant sur vos notes. Reor offre également un moteur de recherche sémantique et le tout est stocké localement, ce qui évitera que vos données ne soient pompées.

      Reor tire parti des géants tels que Llama.cpp, Transformers.js et LanceDB pour permettre à la fois aux modèles LLM et d’inférences de s’exécuter localement. Il est également possible de se connecter à des API compatibles OpenAI si vous le désirez.

      Alors, comment fonctionne cette auto-organisation ?

      En réalité, chaque note que vous écrivez est fragmentée et intégrée dans une base de données vectorielle interne. Les notes connexes sont automatiquement reliées par la similarité vectorielle. De plus, la base de Q&R alimentée par les LLM fonctionne sur un principe de RAG (Retrieval-Augmented Generation) sur le corpus de notes que vous lui avez donné. Exactement comme ce qu’on peut faire aujourd’hui avec des PDF et des outils comme PDFtoChat.

      Pour commencer, rien de plus simple : il vous suffit de télécharger Reor et de l’installer comme n’importe quelle autre application. Notez que pour l’instant, l’application ne télécharge pas les modèles pour vous, vous devrez donc télécharger manuellement votre modèle de choix au format GGUF et l’importer dans l’outil. Cela peut être Mistral ou Llama 2 par exemple. Et comme ce sont des modèles open source et gratuits, vous n’aurez rien à payer.

      L’importation de notes provenant d’autres applications est également possible, puisque Reor stocke ses données dans un seul répertoire, que vous choisissez lors de la première utilisation. Pour importer des notes/fichiers d’une autre application, il vous suffit donc de remplir ce répertoire manuellement avec des fichiers Markdown.

      Voilà, c’est encore un peu brut comme outil, mais je parie que ça s’affinera avec le temps.

      Merci à Lorenper

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

      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

      LocalAI – L’alternative open source puissante à OpenAI

      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

      NotesGPT – Racontez votre vie à l’IA et elle organisera votre Todo List

      Je parle beaucoup d’IA en ce moment, donc histoire de changer, je vais encore vous vous parler d’un outil « intelligent » (je vous ai bien eu ! ^^) qui cette fois va plaire à tous ceux qui veulent être plus organisés et efficaces : NotesGPT.

      Cet outil permet de convertir vos notes vocales en résumés organisés et en actions claires grâce à l’intelligence artificielle. C’est un nouvel usage qui va peut-être changer la façon dont vous prenez des notes et organisez votre travail. NotesGPT est open source et repose sur une combinaison de technologies, dont Convex, Together.ai et Whisper. Ces outils permettent de générer des éléments d’action comme une todo list à partir de vos notes en quelques secondes seulement.

      C’est bien sûr utilisable en ligne ici, mais pour ceux qui souhaitent déployer leur propre version de l’application, il est possible de le faire. Il vous suffit pour cela de suivre les étapes décrites sur la page Deploy Your Own du projet notesGPT sur GitHub.

      L’équipe derrière NotesGPT travaille également sur une série de tâches futures pour améliorer encore l’outil. Parmi ces améliorations, on peut citer la possibilité de conserver les enregistrements pour une écoute future, d’animer le microphone pour qu’il soit synchronisé avec votre voix, de stocker les éléments d’action terminés pour les consulter ultérieurement, et bien d’autres choses encore.

      Je l’ai testé et c’est assez bluffant même si après les tâches sont décrites en anglais.

      Ce genre d’outils peut aider les pros, mais également les étudiants à gérer leurs notes vocales de manière plus efficace. Grâce à l’IA, on gagne encore plus de temps. Après si vous êtes septique, le mieux c’est encore de le tester par vous-même.

      Merci à Lorenper

      PDFtoChat – Faites vous aider dans la lecture de PDF grâce à l’IA

      Il existe une foultitude d’outils de ce genre, plus ou moins gratuits, plus ou moins efficaces donc en général, je passe mon chemin, mais celui-ci étant vraiment cool, je tiens à la partager avec vous.

      Il s’agit de PDFtoChat qui comme son nom l’indique, permet de discuter avec un document PDF. En gros l’idée est simple : Vous uploadez sur le site votre PDF, celui-ci sera alors « absorbé » par une IA (Mixtral) et vous pourrez alors poser des questions sur le document.

      Comme ça, si c’est en anglais, vous avez les explications en français. Si c’est trop long à lire, vous avez le résumé, si c’est trop complexe pour votre petit cerveau, l’IA vous l’expliquera. Et si vous cherchez une aiguille dans une botte de foin, l’IA la trouvera pour vous.

      L’avantage de PDFtoChat, je trouve c’est son interface minimaliste qui permet de se concentrer sur les réponses et surtout des liens directs vers les pages qui ont servi de base pour vous répondre. Ça permet de vérifier que l’IA ne dit pas de conneries.

      Pour utiliser PDFtoChat, il suffit d’aller sur le site et de vous connecter avec un compte Google. Ensuite vous pourrez uploader un PDF. Évitez quand même de mettre des choses confidentielles, car on ne sait pas trop où ça atterri. Mais pour lire des conditions générales d’utilisation ou se faire expliquer des études scientifiques afin de moins passer pour un con sur Twitter, c’est vachement pratique !

      Lumos – Le copilote IA de vos séances de surf

      Allez, aujourd’hui, on va faire un peu d’IA. J’sais pas si vous vous souvenez, mais il y a quelque temps, je vous avais fait une jolie démo de Ollama permettant de faire tourner des LLM (modèles de langage comme ChatGPT) en local avec des modèles ouvert comme Mistral ou Vigogne.

      Sauf que voilà, c’est pas forcément pratique à utiliser ailleurs que dans vos propres scripts. Mais c’était sans compter sur Lumos, une extension Chrome propulsée par Ollama qui permet d’avoir sous la main, votre LLM durant vos séances de surf. Ainsi, vous pourrez lui demander des résumés de longs posts de forums, de vous expliquer le dernier rapport de bug d’un projet Github, de résumer les articles trop longs à lire de korben.info ^^ ou encore lui poser des questions par rapport à de la documentation technique ou des fiches produits que vous consulteriez en ligne.

      Bref, c’est génial ! Vous devrez bien évidemment avoir un Ollama fonctionnel sur votre machine… Voici d’ailleurs ma vidéo à ce sujet :

      Installez ensuite l’extension sous Chrome.

      Puis lancez le serveur à l’aide de cette commande :

      OLLAMA_ORIGINS=chrome-extension://* ollama serve

      Ou comme ceci si vous utilisez Docker:

      docker run -e OLLAMA_ORIGINS="chrome-extension://*" -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama

      Et vous pourrez ensuite profiter de la puissance du LLM de votre choix directement dans votre navigateur au travers d’une fenêtre de chat.

      Si vous voulez plus d’infos, c’est par ici que ça se passe.

      LiteLLM – Pour discuter avec toutes les API LLM en utilisant la syntaxe OpenAI

      Si vous codez en Python autour d’API de LLM comme celle d’OpenAI, d’Anthropic ou encore de Huggingface…etc., je vous présente LiteLLM qui risque de vous faire gagner pas mal de temps.

      Il s’agit d’une lib Python capable d’interagir avec tout un tas d’API en utilisant le format de celle d’OpenAI. Elle fournit une interface simple et uniformisée pour appeler ces modèles , ce qui va vous faciliter leur utilisation pour des choses comme de la génération de texte, de la traduction ou encore du chat…

      Pour l’installer, rien de plus simple :

      pip install litellm

      Ensuite, y’a plus qu’à créer un objet LiteLLM dans votre code, en lui fournissant l’ID et le nom du modèle à utiliser. Par exemple pour vous connecter à OpenAI, le code sera le suivant :

      from litellm import completion
      import os
      
      ## set ENV variables
      os.environ["OPENAI_API_KEY"] = "your-api-key"
      
      response = completion(
        model="gpt-3.5-turbo", 
        messages=[{ "content": "Hello, how are you?","role": "user"}]
      )

      Pour Claude 2, ça sera ça :

      from litellm import completion
      import os
      
      ## set ENV variables
      os.environ["ANTHROPIC_API_KEY"] = "your-api-key"
      
      response = completion(
        model="claude-2", 
        messages=[{ "content": "Hello, how are you?","role": "user"}]
      )

      Pour utiliser Ollama, ça donnerait également ça :

      from litellm import completion
      
      response = completion(
                  model="ollama/llama2", 
                  messages = [{ "content": "Hello, how are you?","role": "user"}], 
                  api_base="http://localhost:11434"
      )

      Donc pas grand-chose qui change.

      Vous l’aurez donc compris, LiteLLM permet de pondre un seul et unique code, mais pour discuter avec tous les fournisseurs d’IA du moment (et les logiciels libres existants)

      Y’a la possibilité d’avoir du stream sur les réponses (c’est à dire, le texte qui s’affiche au fur et à mesure), de la gestion des exceptions, du log, sans oublier du calcul de coût et l’usage que vous pouvez avoir de ces API afin de ne pas éclater votre compte en banque.

      LiteLLM intègre également un proxy OpenAI pour rediriger vos requêtes vers le modèle de votre choix. Pour l’installer :

      pip install 'litellm[proxy]'

      Lancez ensuite le proxy avec le modèle de votre choix :

      litellm --model huggingface/bigcode/starcoder

      Et lui passer vos requêtes dans le code python directement :

      import openai # openai v1.0.0+
      client = openai.OpenAI(api_key="anything",base_url="http://0.0.0.0:8000") # set proxy to base_url
      # request sent to model set on litellm proxy, `litellm --model`
      response = client.chat.completions.create(model="gpt-3.5-turbo", messages = [
          {
              "role": "user",
              "content": "this is a test request, write a short poem"
          }
      ])
      
      print(response)

      Si LiteLLM vous intéresse, vous trouverez toutes les infos sur la page Github ainsi que les endpoints ici.

      Votre LLM (ChatGPT-like) à la maison et comment coder par dessus. #mistral #llama2 #falcon

      💾

      Et salut,
      dans cette vidéo, je vous explique comment tester les modèles de langage qui vous plaisent tels que llama2, Mistral, Falcon et j'en passe et surtout comment les utiliser ensuite avec votre propre code. (je vous fais un exemple en python)

      ★ POUR SOUTENIR LA CHAINE ★

      Venez voir ce que je vous propose ici : https://patreon.com/korben

      ★ RETROUVEZ-MOI SUR TWITCH EN LIVE ★

      Je fais également du live stream sur : https://twitch.tv/korbenfr

      ⚑ S'ABONNER A LA CHAINE ⚑
      Si vous ne voulez pas rater les prochaines vidéos, n'hésitez pas à vous abonner, à cocher la cloche et tout le reste via http://www.youtube.com/subscription_center?add_user=Korben00

      ★★★ RETROUVEZ-MOI AILLEURS ★★★
      Laissez un commentaire sur cette vidéo et j'essayerai d'y répondre. Ou vous pouvez également vous me retrouver sur différentes plateformes sociales :
      Mon site : https://korben.info
      Pour s'abonner au podcast : https://paralleles.org
      Twitter : https://twitter.com/Korben
      Instagram : https://www.instagram.com/korben00/
      TikTok : https://www.tiktok.com/@korbeninfo
      Facebook : https://www.facebook.com/ManuelDorne
      La chaine YouTube Webosaures : https://www.youtube.com/channel/UCu34Tq5qMR-FiTYwLyy9U6w

      ✔ Liens mentionnés dans la vidéo ✔
      http://ollama.ai

      Merci d'avoir regardé, liké et/ou partagé - j'apprécie vraiment :)
      Faites attention à vous

      #Korben

      LM Studio – Pour faire tourner des LLMs en local et les utiliser directement dans votre code

      Avec tout ce qui se passe côté OpenAI en ce moment, je suis en train de chercher des alternatives libres pour re-brancher sur mes scripts existants qui ne demandent pas trop de réécriture. C’est simplement un principe de précaution pour ne pas être pris au dépourvu si la qualité de service baisse côté ChatGPT.

      Et pour ça, j’ai besoin d’un modèle de langage et d’un outil qui permette de transformer ce modèle en API que je peux appeler dans mon code.

      Pour l’instant, tout ceci est en phase de R&D mais je me suis dit qu’un petit retour, ça vous ferait plaisir. Je suis donc parti sur un modèle OpenChat censé être aussi performant qu’un ChatGPT 3.5. Jusque là rien de compliqué.

      J’ai donc fait tourner ce modèle dans llamacpp sans souci en mode discussion. Puis je suis parti en quête d’un bridge pour avoir des API. Je suis donc tombé sur Llama-cpp-python avec son option Server qui malheureusement n’a jamais voulu correctement fonctionner chez moi pour de sombres incompatibilités x64 / ARM64 même dans pyenv. Bref…

      N’ayant pas le temps d’y passer des semaines, on m’a ensuite gentiment rappelé durant mon live Twitch, que je pouvais faire ça avec Ollama, ce que j’avais complètement zappé alors que j’ai fait une vidéo pour les Patreons à ce sujet (arf).

      Puis Thoxy et LePopeye, lecteurs de Korben.info, m’ont recommandé un outil baptisé LM Studio dont je vais vous parler dans cet article.

      LM Studio est un outil fonctionnant sous macOS, Windows et Linux qui permet très simplement de télécharger des LLMs (Large Language Models) et de les faire tourner en local. Ainsi vous pouvez discuter avec ces modèles via un chat comme vous le feriez avec ChatGPT.

      Mais ce n’est pas tout puisque l’outil offre des tas de possibilités de réglages (y compris du support pour les Mac Silicon) pour optimiser le modèle. Et bien sûr, la fonctionnalité qui m’a le plus intéressé, c’est la possibilité de faire tourner un serveur local qui sert une API identique à celle de ChatGPT.

      Cela permet, sans énormément de modifs dans votre code, de basculer des services d’OpenAI à une IA locale de manière transparente ou presque pour peut que vous utilisiez la lib OpenAI 0.28.1

      pip install openai==0.28.1

      Voici un code d’exemple qui montre comment l’appeler en Python :

      import os
      import openai
      
      openai.api_base = "http://localhost:1234/v1" 
      openai.api_key = "" 
      
      completion = openai.ChatCompletion.create(
        model="local-model",
        messages=[
          {"role": "system", "content": "Always answer in rhymes."},
          {"role": "user", "content": "Introduce yourself."}
        ]
      )
      
      print(completion.choices[0].message)

      Pas besoin de clé API donc. Et pas besoin de casser tout votre code. Suffit de migrer vers LM Studio. Puis c’est gratuit 🙂

      Bref, j’ai fait mes tests comme ça et malheureusement pour le moment, c’est pas super concluant. L’outil répond correctement en version « chat » mais son paramétrage un peu différent en version serveur. Donc faut encore que je gratte un peu pour trouver le dressage optimale de mon IA. Mais j’y suis presque.

      Si ça vous branche de tester LM Studio, c’est par ici que ça se passe.

      ❌