{"id":1001,"date":"2023-12-03T17:09:37","date_gmt":"2023-12-03T16:09:37","guid":{"rendered":"https:\/\/artificiellementintelligent.wordpress.com\/?p=1001"},"modified":"2023-12-03T17:09:37","modified_gmt":"2023-12-03T16:09:37","slug":"les-modeles-de-langage-open-source","status":"publish","type":"post","link":"https:\/\/artificiellementintelligent.eu\/index.php\/2023\/12\/03\/les-modeles-de-langage-open-source\/","title":{"rendered":"Les mod\u00e8les de langage open-source"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Les mod\u00e8les de langage sont des syst\u00e8mes d&rsquo; intelligence artificielle qui utilisent des volumes massifs de donn\u00e9es textuelles collect\u00e9s sur internet pour g\u00e9n\u00e9rer du texte, faire des traductions, interagir avec l&rsquo; utilisateur ou encore g\u00e9n\u00e9rer toutes sortes de contenus originaux.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ces mod\u00e8les peuvent \u00eatre class\u00e9s en deux grandes cat\u00e9gories, les mod\u00e8les <em>propri\u00e9taires<\/em> et les mod\u00e8les <em>open-source<\/em>. Cette distinction va avoir d&rsquo; importantes cons\u00e9quences sur les possibiit\u00e9s d&rsquo; utilisation du mod\u00e8le.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Les mod\u00e8les dont j&rsquo; ai principalement parl\u00e9 jusqu&rsquo;ici &#8211;<em>ChatGPT, Bard, Bing, Claude<\/em>&#8230;- sont des mod\u00e8les propri\u00e9taires : ils sont la propri\u00e9t\u00e9 d&rsquo; une firme et peuvent uniquement \u00eatre exploit\u00e9s selon les conditions d\u00e9crites dans la licence d&rsquo;exploitation. Cette license peut ou non \u00eatre payante. Et \u00e0 ce jour aucun des mod\u00e8les propri\u00e9taires n&rsquo; est exploitable localement : vous devez utiliser une interface (web ou logicielle) pour interroger le mod\u00e8le \u00e0 distance.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">L&rsquo; approche <em>open-source<\/em> est diff\u00e9rente. Elle met \u00e0 disposition du public l&rsquo; ensemble du mod\u00e8le. L&rsquo; utilisateur peut donc l&rsquo; exploiter, le modifier et l&rsquo; am\u00e9liorer \u00e0 sa guise. Comme le concept de l&rsquo; open-source est tr\u00e8s r\u00e9pandu dans le mode de l&rsquo; informatique et bien ant\u00e9rieur aux mod\u00e8les de langage, j&rsquo; ai pens\u00e9 qu&rsquo; il serait int\u00e9ressant de commencer par en dire un peu plus \u00e0 ce sujet.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. Qu&rsquo;est-ce que l&rsquo; <em>open-source <\/em>?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Les d\u00e9buts du mouvement open-source sont intimement li\u00e9s au syst\u00e8me d&rsquo; exploitation UNIX. Les d\u00e9veloppeurs originaux du syst\u00e8me UNIX dans les ann\u00e9es 1970 avaient pour habitude de partager les codes source. Lorsque certaines firmes ont d\u00e9cid\u00e9 de commercialiser le code sous forme propri\u00e9taire pendant les ann\u00e9es 1980, un mouvement de dissidence est n\u00e9 pour cr\u00e9er une version \u00ab\u00a0ouverte\u00a0\u00bb du syst\u00e8me d&rsquo; exploitation. Une fois l&rsquo; approche formalis\u00e9e, le mouvement open-source s&rsquo; est progressivement \u00e9tendu et a prosp\u00e9r\u00e9 jusqu&rsquo; \u00e0 aujourd&rsquo; hui. On lui doit notamment le syst\u00e8me d&rsquo; exploitation Linux et bien d&rsquo; autres logiciels et outils bien connus comme le langage Python.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Le mouvement open-source a donc \u00e9t\u00e9 initi\u00e9 par des programmeurs qui rejetaient le mod\u00e8le ferm\u00e9 et centralis\u00e9 du d\u00e9veloppement de logiciels propri\u00e9taires. Dans ces derniers, seul le code ex\u00e9cutable est publi\u00e9, alors que le code source est tenu secret afin d&rsquo; \u00e9viter la concurrence.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Le mouvement open-source rejette cette pratique : la totalit\u00e9 du code source est publi\u00e9 sous une licence qui permet la libre distribution, l&rsquo;exploitation (commerciale ou non) et la modification du code. En contrepartie, l&rsquo; utilisateur s&rsquo; engage essentiellement sur deux points : ne pas tenter de s&rsquo; approprier le code mis \u00e0 disposition et accepter ce dernier \u00ab\u00a0en l&rsquo;\u00e9tat\u00a0\u00bb sans garantie ou recours en cas de dysfonctionnement. Certaines licenses open-source sont plus restrictives et obligent \u00e9galement l&rsquo;utilisateur \u00e0 publier tout programme d\u00e9riv\u00e9 \u00e9galement sous license open-source; on parle alors de licence r\u00e9ciproque ou <em>copyleft<\/em>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Revenons maintenant aux mod\u00e8les de langage&#8230;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. Situation des mod\u00e8les de langage open-source<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Les premiers mod\u00e8les de langage open-source \u00e9taient consid\u00e9r\u00e9s comme nettement inf\u00e9rieurs aux mod\u00e8les propri\u00e9taires. La situation a chang\u00e9 cette ann\u00e9e, notamment suite aux activit\u00e9s de <em>Meta<\/em> qui a successivement publi\u00e9 les mod\u00e8les <em>LlaMA<\/em> et <em>LlaMA 2<\/em>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Les circonstances de la publication de <em>LlaMA<\/em> en f\u00e9vrier 2023 sont assez cocasses. Meta a initialement publi\u00e9 le code du mod\u00e8le en open-source, mais <em>pas<\/em> les param\u00e8tres du mod\u00e8le -sans lesquels ce dernier est inutilisable-. Les param\u00e8tres \u00e9taient uniquement fournis \u00e0 des fins de recherche au cas par cas, sans possibilit\u00e9 d&rsquo; exploitation commerciale. Il n&rsquo; a pas fallu plus d&rsquo; une semaine pour que ces param\u00e8tres fuitent et se retrouvent disponibles au public par t\u00e9l\u00e9chargement&#8230;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Cette fuite a donn\u00e9 un coup d&rsquo;acc\u00e9l\u00e9rateur au d\u00e9veloppement de mod\u00e8les de langage open-source : des mod\u00e8les d\u00e9riv\u00e9s de LlaMA par affinage comme <em>Vicuna<\/em> et <em>Alpaca<\/em> ont \u00e9t\u00e9 publi\u00e9s quelques semaines plus tard, ainsi que la librairie <em>GPT4ALL<\/em> qui permet de faire facilement fonctionner ces mod\u00e8les sur un ordinateur personnel. Cependant la l\u00e9galit\u00e9 de ces mod\u00e8les d\u00e9riv\u00e9s, reposant sur une fuite, \u00e9tait floue et ne permettait en pratique que la recherche \u00e0 l&rsquo; exclusion de toute exploitation commerciale.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Meta n&rsquo; a pas voulu r\u00e9it\u00e9rer l&rsquo; exp\u00e9rience : le mod\u00e8le suivant <em>LlaMA 2<\/em> , publi\u00e9 en juillet 2023, est disponible sous une licence open-source et permet donc l&rsquo; exploitation commerciale par des tiers.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Et entretemps, d&rsquo; autres mod\u00e8les open-source exploitables commercialement ont \u00e9t\u00e9 d\u00e9velopp\u00e9s comme <em>MPT<\/em> de MosaicML, <em>Falcon<\/em> ou encore <em>Mistral<\/em>, et de nouveaux mod\u00e8les sont r\u00e9guli\u00e8rement publi\u00e9s. La figure 1 montre une tentative de taxonomie des diff\u00e9rents mod\u00e8les. Les mod\u00e8les open-source sont repris sur fond gris\u00e9.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img decoding=\"async\" src=\"https:\/\/artificiellementintelligent.wordpress.com\/wp-content\/uploads\/2023\/12\/image-20231203a.jpg\" alt=\"\" class=\"wp-image-1011\" \/><figcaption class=\"wp-element-caption\">Figure 1 : Taxonomie des mod\u00e8les de langage (Auteur : Jinfeng Yang &amp; al)<\/figcaption><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Un b\u00e9mol cependant : certains mod\u00e8les comme LlaMA 2 ou Falcon ne sont pas totalement open-source et leur exploitation commerciale n&rsquo; est possible que moyennant certaines limitations. Ces limitations -peu contraignantes en pratique- sont g\u00e9n\u00e9ralement de nature \u00e0 emp\u00eacher la concurrence avec le d\u00e9veloppeur ou visent \u00e0 interdire les utilisations ill\u00e9gales ou dangereuses. Par exemple, LlaMA 2 ne peut pas \u00eatre exploit\u00e9 par les entreprises comptant plus de 700 millions d&rsquo;utilisateurs (!) ni pour am\u00e9liorer un autre mod\u00e8le de langage. Comme toujours, v\u00e9rifiez les termes pr\u00e9cis de la licence avec un juriste avant, pour ne pas avoir d&rsquo; ennuis apr\u00e8s.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Les mod\u00e8les open-source sont maintenant tr\u00e8s performants et les meilleurs d&rsquo;entre eux se classent juste en-dessous des meilleurs mod\u00e8les propri\u00e9taires, comme vous pouvez le voir sur <a href=\"https:\/\/huggingface.co\/spaces\/lmsys\/chatbot-arena-leaderboard\">Chatbot arena<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Il est fort possible que les mod\u00e8les open-source comblent l&rsquo; \u00e9cart avec les mod\u00e8les propri\u00e9taires au cours des 12 \u00e0 18 prochains mois: Meta travaille sur Llama 3 qui devrait \u00eatre multimodal et a d\u00e9clar\u00e9 qu&rsquo; il sera publi\u00e9 en open-source, tandis que l&rsquo;affinage permet de cr\u00e9er des mod\u00e8les sp\u00e9cialis\u00e9s qui peuvent rivaliser avec un mod\u00e8le propri\u00e9taire g\u00e9n\u00e9raliste dans un domaine particulier tout en \u00e9tant moins gourmands en puissance de calcul.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. Avantages<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Les avantages des mod\u00e8les <em>open-source<\/em> pour l&rsquo;utilisateur sont de trois ordres :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Co\u00fbt d&rsquo;exploitation<\/strong> : l&rsquo; utilisation d&rsquo; un mod\u00e8le open-source est en g\u00e9n\u00e9ral beaucoup moins on\u00e9reuse que celle d&rsquo; un mod\u00e8le propri\u00e9taire vu l&rsquo; absence de frais de licence. En contrepartie, des frais d&rsquo; infrastructure -serveur local ou dans le cloud- et un investissement initial de mise en place seront n\u00e9cessaire. L&rsquo; \u00e9conomie se r\u00e9alisera donc plut\u00f4t \u00e0 moyen terme.<br><\/li>\n\n\n\n<li><strong>Flexibilit\u00e9<\/strong> : les mod\u00e8les open-source peuvent \u00eatre affin\u00e9s pour mieux r\u00e9pondre aux besoins de l&rsquo; utilisateur. Concr\u00e8tement, affiner correspond \u00e0 \u00e9tendre l&rsquo; entra\u00eenement du mod\u00e8le sur un ensemble de donn\u00e9es textuelles que vous fournissez et qui correspond \u00e0 vos cas d&rsquo; utilisation.<br><\/li>\n\n\n\n<li><strong>Confidentialit\u00e9<\/strong> : le mod\u00e8le se trouvant dans l&rsquo; infrastructure de l&rsquo;exploitant, les risques li\u00e9s \u00e0 l&rsquo;\u00e9change de donn\u00e9es avec une autre organisation souvent situ\u00e9e outre-Atlantique disparaissent.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Un chose \u00e0 souligner est que l&rsquo; affinage, si vous y recourez, est beaucoup moins exigeant en puissance de calcul que l&rsquo; entra\u00eenement intial du mod\u00e8le (et donc en termes de co\u00fbts). L&rsquo; entreprise qui met le mod\u00e8le \u00e0 disposition a d\u00e9j\u00e0 support\u00e9 la toute grande majorit\u00e9 des co\u00fbts d&rsquo; entra\u00eenement.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">En contrepartie, il y aura une activit\u00e9 technique initiale pour installer le mod\u00e8le, le faire fonctionner et l&rsquo;int\u00e9grer dans votre infrastructure (plus l&rsquo; affinage du mod\u00e8le si vous choisissez de le faire).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">4. R\u00e9f\u00e9rences<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><em>Harnessing the Power of LLMs in Practice : A Survey on ChatGPT and Beyond<\/em> : Jinfeng Yang,Hongye Jin, Ruixiang Tang, Xiaotian Han et Qizhang Feng, 2023. Arxiv 2304.13712 : <a href=\"https:\/\/arxiv.org\/abs\/2304.13712\">https:\/\/arxiv.org\/abs\/2304.13712<\/a><br><\/li>\n\n\n\n<li><em>The History of Open-Source LLMs: Early Days (Part One)<\/em>, par Cameron R. Wolfe, 24 juillet 2023 : <a href=\"https:\/\/cameronrwolfe.substack.com\/p\/the-history-of-open-source-llms-early\">https:\/\/cameronrwolfe.substack.com\/p\/the-history-of-open-source-llms-early<\/a><br><\/li>\n\n\n\n<li><em>The History of Open-Source LLMs: Better Base Models (Part Two)<\/em>, par Cameron R. Wolfe, 31 juillet 2023 : <a href=\"https:\/\/cameronrwolfe.substack.com\/p\/the-history-of-open-source-llms-better\">https:\/\/cameronrwolfe.substack.com\/p\/the-history-of-open-source-llms-better<\/a><br><\/li>\n\n\n\n<li><em>The History of Open-Source LLMs: Imitation and Alignment (Part Three)<\/em>, par Cameron R. Wolfe, 7 ao\u00fbt 2023 : <a href=\"https:\/\/cameronrwolfe.substack.com\/p\/the-history-of-open-source-llms-imitation\">https:\/\/cameronrwolfe.substack.com\/p\/the-history-of-open-source-llms-imitation<\/a><br><\/li>\n\n\n\n<li><em>LLaMA-2 from the Ground Up*<\/em>; par Cameron R. Wolfe, 7 ao\u00fbt 2023 : <a href=\"https:\/\/cameronrwolfe.substack.com\/p\/llama-2-from-the-ground-up\">https:\/\/cameronrwolfe.substack.com\/p\/llama-2-from-the-ground-up<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Les mod\u00e8les de langage sont des syst\u00e8mes d&rsquo;IA utilisant des donn\u00e9es textuelles pour g\u00e9n\u00e9rer du texte, traduire ou produire du contenu. Les mod\u00e8les open-source offrent flexibilit\u00e9 et co\u00fbts r\u00e9duits.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12],"tags":[],"class_list":["post-1001","post","type-post","status-publish","format-standard","hentry","category-modeles-de-langage","post-preview"],"_links":{"self":[{"href":"https:\/\/artificiellementintelligent.eu\/index.php\/wp-json\/wp\/v2\/posts\/1001","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/artificiellementintelligent.eu\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/artificiellementintelligent.eu\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/artificiellementintelligent.eu\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/artificiellementintelligent.eu\/index.php\/wp-json\/wp\/v2\/comments?post=1001"}],"version-history":[{"count":0,"href":"https:\/\/artificiellementintelligent.eu\/index.php\/wp-json\/wp\/v2\/posts\/1001\/revisions"}],"wp:attachment":[{"href":"https:\/\/artificiellementintelligent.eu\/index.php\/wp-json\/wp\/v2\/media?parent=1001"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/artificiellementintelligent.eu\/index.php\/wp-json\/wp\/v2\/categories?post=1001"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/artificiellementintelligent.eu\/index.php\/wp-json\/wp\/v2\/tags?post=1001"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}