mirror of
https://github.com/almet/notmyidea.git
synced 2025-04-28 19:42:37 +02:00
110 lines
No EOL
7.9 KiB
HTML
110 lines
No EOL
7.9 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="fr">
|
||
<head>
|
||
<title>
|
||
Découverte de nouveaux outils pour le développement: <span class="caps">LLM</span>, Helix et plus - Alexis Métaireau </title>
|
||
<meta charset="utf-8" />
|
||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||
<link rel="stylesheet"
|
||
href="https://blog.notmyidea.org/theme/css/main.css?v2"
|
||
type="text/css" />
|
||
<link href="https://blog.notmyidea.org/feeds/all.atom.xml"
|
||
type="application/atom+xml"
|
||
rel="alternate"
|
||
title="Alexis Métaireau ATOM Feed" />
|
||
</head>
|
||
<body>
|
||
<div id="content">
|
||
<section id="links">
|
||
<ul>
|
||
<li>
|
||
<a class="main" href="/">Alexis Métaireau</a>
|
||
</li>
|
||
<li>
|
||
<a class=""
|
||
href="https://blog.notmyidea.org/journal/index.html">Journal</a>
|
||
</li>
|
||
<li>
|
||
<a class="selected"
|
||
href="https://blog.notmyidea.org/code/">Code, etc.</a>
|
||
</li>
|
||
<li>
|
||
<a class=""
|
||
href="https://blog.notmyidea.org/weeknotes/">Notes hebdo</a>
|
||
</li>
|
||
<li>
|
||
<a class=""
|
||
href="https://blog.notmyidea.org/lectures/">Lectures</a>
|
||
</li>
|
||
<li>
|
||
<a class=""
|
||
href="https://blog.notmyidea.org/projets.html">Projets</a>
|
||
</li>
|
||
</ul>
|
||
</section>
|
||
|
||
<header>
|
||
<h1 class="post-title">Découverte de nouveaux outils pour le développement: <span class="caps">LLM</span>, Helix et plus</h1>
|
||
<time datetime="2023-09-12T00:00:00+02:00">12 septembre 2023</time>
|
||
|
||
|
||
</header>
|
||
<article>
|
||
|
||
<h2 id="llm"><span class="caps">LLM</span></h2>
|
||
<ul>
|
||
<li><a href="https://localai.io/model-compatibility/">LocalAI</a> permet de faire tourner des modèles en local avec la même <span class="caps">API</span> <span class="caps">HTTP</span> que celle d’OpenAI</li>
|
||
<li><a href="https://github.com/bofenghuang/vigogne">Le modèle Vigogne</a> est un modèle entrainé (<em>fine-tuned</em>) avec des données en Français. Notamment <a href="https://huggingface.co/bofenghuang/vigogne-2-7b-chat/tree/v1.0">ce modèle</a>qui prends <span class="caps">LLAMA2</span> en entrée.</li>
|
||
<li><a href="https://python.langchain.com/docs/get_started/introduction.html">LangChain</a> semble être un framework pour travailler avec les différents concepts utiles. A voir.</li>
|
||
</ul>
|
||
<p>Pour la première fois, j’ai commencé à utiliser un peu plus l’outil <a href="https://llm.datasette.io">llm</a> pour m’aider dans les tâches de programmation. </p>
|
||
<p>!! warning
|
||
J’utilise actuellement par défaut le modèle en ligne d’OpenAI “<span class="caps">GTP4</span>”, à travers leur <span class="caps">API</span>. Cela me pose des problèmes éthiques, mais mon approche est pour le moment de voir le type de résultats que j’obtiens pour ensuite comparer avec des modèles locaux type <span class="caps">LLAMA2</span>.</p>
|
||
<p>Deux choses que j’ai trouvées utiles :</p>
|
||
<div class="highlight"><pre><span></span><code>git<span class="w"> </span>diff<span class="w"> </span><span class="p">|</span><span class="w"> </span>llm<span class="w"> </span><span class="s2">"write me a commit message"</span>
|
||
git<span class="w"> </span>diff<span class="w"> </span><span class="p">|</span><span class="w"> </span>llm<span class="w"> </span><span class="s2">"find a branch name"</span>
|
||
</code></pre></div>
|
||
|
||
<p>Qui peuvent faciliter la vie plutôt que de chercher à décrire des choses manuellement (le “branch-name”, je le trouve particulièrement utile)</p>
|
||
<p>J’ai aussi trouvé l’idée intéressante d’automatiser l’écrite de tests, avec pytest. Bien sur ça ne fait pas tout, mais ça donne un template de départ qui est intéressant :</p>
|
||
<div class="highlight"><pre><span></span><code>cat<span class="w"> </span>code/test_file.py<span class="w"> </span><span class="p">|</span><span class="w"> </span>llm<span class="w"> </span><span class="s2">"write tests for this, using pytest"</span>
|
||
</code></pre></div>
|
||
|
||
<p>J’ai par exemple demandé à llm de me lister 20 titres pour cet article :</p>
|
||
<div class="highlight"><pre><span></span><code>cat<span class="w"> </span>~/dev/til.notmyidea.org/content/<span class="k">$(</span>date<span class="w"> </span>+%F<span class="k">)</span>.md<span class="w"> </span><span class="p">|</span><span class="w"> </span>llm<span class="w"> </span><span class="s2">"Liste moi 20 titres pour cet article. Quelque chose de simple"</span>
|
||
<span class="m">1</span>.<span class="w"> </span><span class="s2">"Découverte de nouveaux outils pour le développement: LLM, Helix et plus"</span>
|
||
<span class="m">2</span>.<span class="w"> </span><span class="s2">"Explorer les modèles LLM pour la génération de code"</span>
|
||
<span class="m">3</span>.<span class="w"> </span><span class="s2">"L'amélioration du développement grâce à LLM et Helix"</span>
|
||
<span class="m">4</span>.<span class="w"> </span><span class="s2">"Introduction à l'éditeur Helix et à LLM"</span>
|
||
<span class="m">5</span>.<span class="w"> </span><span class="s2">"Boostez votre productivité de développement avec LLM et Helix"</span>
|
||
<span class="m">6</span>.<span class="w"> </span><span class="s2">"Comment j'intègre LLM et Helix dans mon flux de travail de développement"</span>
|
||
<span class="m">7</span>.<span class="w"> </span><span class="s2">"Les avantages de l'utilisation de LLM pour la programmation"</span>
|
||
<span class="m">8</span>.<span class="w"> </span><span class="s2">"Approches innovantes pour le développement de code avec LLM"</span>
|
||
<span class="m">9</span>.<span class="w"> </span><span class="s2">"L'avenir du développement de code avec LLM et Helix"</span>
|
||
<span class="m">10</span>.<span class="w"> </span><span class="s2">"Optimisation des tâches de programmation avec LLM"</span>
|
||
<span class="m">11</span>.<span class="w"> </span><span class="s2">"Ouvrir de nouvelles possibilités de codage avec LLM et Helix"</span>
|
||
<span class="m">12</span>.<span class="w"> </span><span class="s2">"Utiliser des modèles LLM pour améliorer la qualité du code"</span>
|
||
</code></pre></div>
|
||
|
||
<h2 id="helix">Helix</h2>
|
||
<p>Je me mets à tester un peu plus l’éditeur Helix. Je suis un habitué de Vim pour toutes les petites modifications que je fais depuis mon terminal, et Helix semble intéressant.</p>
|
||
<ul>
|
||
<li><code>x</code>pour sélectionner une ligne (<code>xd</code> pour sélectionner et supprimer)</li>
|
||
<li><code>ma</code> pour sélectionner “around” quelque chose. <code>maw</code> pour sélectionner le mot</li>
|
||
<li><code>c</code> pour effacer la sélection et passer en mode insertion.</li>
|
||
</ul>
|
||
<h2 id="divers">Divers</h2>
|
||
<blockquote>
|
||
<p>J’ai fait confiance, j’ai appris.
|
||
— <a href="https://d%C3%A9tour.studio">Thomas</a></p>
|
||
</blockquote>
|
||
<p>J’aime beaucoup ce que ça dit. Faire confiance est peut-être nécessaire, même si on est déçu au final, on aura au moins appris. Ça me touche.</p>
|
||
</article>
|
||
<footer>
|
||
<a id="feed" href="/feeds/all.atom.xml">
|
||
<img alt="RSS Logo" src="/theme/rss.svg" />
|
||
</a>
|
||
</footer>
|
||
</div>
|
||
</body>
|
||
</html> |