Le format sur le mois précédent octobre, semble avoir plutôt fonctionné même si ce n'était pas toujours très régulier. Je vais donc tenter de continuer comme ça.
L'étape suivante, sera de retirer les informations intéressantes de ces journaux pour les mettre sur des pages dédiées comme par exemple mes recherches sur les LLM.
L'écriture des journaux depuis quelques temps me laisse toujours penser qu'arriver à implémenter correctement une méthode gestion de tâche m'aiderait beaucoup. Craig Maloney m'avait initié à GTD quelques années en arrière (~2018). Malheureusement, je n'avais pas réussi car j'avais trop voulu me tenir à un outils. Et j'en avais testé plusieurs mais tous basés sur le format todo.txt.
Aujourd'hui, Craig a à nouveau partagé un lien de Lars Wirzenius sur le sujet. Cette nouvelle introduction à GTD m'a donné de redonner une chance à celle-ci au travers de ce wiki. J'avais d'ailleurs plus ou moins commencé quelque chose de similaire au travers d'une liste mensuel avec des objectifs et les différents évènements du mois de Novembre.
Ce que j'ai apprécié dans cet article, c'est le choix d'utiliser comme outils des fichiers markdown. C'est exactement ce que je fais au travers de ce wiki et je pense que cela peut éventuellement fonctionner.
En utilisant des outils que j'avais écris il y a quelques temps, je me demande si ça ne serait pas intéressant de mettre en place GTD sur Nextcloud plutôt qu'ici?
Migration vers Nextcloud faite:
le résultat semble plutôt bien fonctionner sur les modifications des deux côtés.
Suite à l'interview de Craig Maloney, j'écoute le podcast ZenHabits de Léo Babauta.
Je n'ai malheureusement pas pris de note des différents épisodes que j'ai déjà écouté. Mais j'aime beaucoup sa façon de présenter les différents freins dans nos réalisations et les différents conseils donnés sans pour autant aller vers le productivisme.
Dans l'interview avec Jocelyn Glei, il parle beaucoup de choses que j'essaie de mettre en place avec GTD et surtout avant avec mes journaux. Certes ils leur donnent une autre dimension mais c'est intéressant de voir que ça se rapproche de ce dont j'ai le sentiment d'avoir besoin.
J'ai très rapidement rattrapé mon retard sur le podcast. J'ai beaucoup apprécié l'interview avec Derek Sivers. Je pense que je vais prochainement me procurer un de ses livres.
Le froid arrivant, je retombe dans les problèmes que j'avais laissé tombé avec la douceur. Je dispose de tête thermostatique connectée mais qui ont des difficultés à couper le chauffage en raison de mes vannes thermostatiques qui sont très vieilles. L'an dernier, j'en ai même cassé une en tentant de les dégripper (mémo: ne jamais tirer sur la tige, on peut juste la pousser). Il faut que je change mes vannes mais vu que c'est de la plomberie, il vaut mieux que quelqu'un de compétent s'en charge.
Sur Home Assistant, il est possible d'utiliser un assistant vocal totalement déconnecté. Pour cela, il faut faire les choses suivantes:
Avec les custom sentences que j'ai faites pour la météo et la prévision de pluie, j'ai tenté de les activer avec ma propre voix. Il faut savoir plusieurs choses sur Whisper:
Dans mon cas, j'ai réussi à obtenir de bons résultats avec le paramétrage:
base-int8
Bon par contre, objectivement c'est long!
Au niveau du TTS, la voix siwis-low fait l'affaire mais lit un peu vite et a quelques loupés sur des prononciations qui semblent assez évidentes.
alternative: serveur Willow
les apis Renault ne remontent pas correctement les valeurs du temps de charge de ma voiture (Hybride Rechargeable). J'ai donc ajouté dans Home Assistant ces deux métriques:
- platform: template
sensors:
fz***_batterie_temps_de_charge_restant:
friendly_name: FZ*** temps de charge restant
device_class: duration
# la voiture dispose d'une batterie de 8kWh
value_template: >
{% if is_state('binary_sensor.fz***_en_charge','on') -%}
{{ (((1 - (states('sensor.fz***_batterie') | int) / 100) * 8 / (states('sensor.fz***_puissance_de_charge_admissible') | float) ) * 60) | int }}
{% endif -%}
unit_of_measurement: 'min'
fz***_batterie_fin_de_charge:
friendly_name: FZ*** heure de fin de charge
device_class: timestamp
value_template: >
{% if is_state('binary_sensor.fz***_en_charge','on') -%}
{{ (now()|as_timestamp + (states('sensor.fz****_batterie_temps_de_charge_restant') | float *60))| timestamp_custom('%Y-%m-%dT%H:%M:%S.%f+00:00', False)}}
{% endif -%}
allacrity:
des soucis pour copier/coller à régler => Ctrl + Shift + V
tty-clock: inutile donc indispensable !
Dans le même genre, il y a aussi Autogen de Microsoft
il est assez facile de tester les modèles, j'ai mis ça dans un notebook Jupyter. Mais la doc est assez complète: ici
penser à utiliser le bon prompt en fonction du modèle (voir carte)
sur le PC avec GPU, il faut savoir qu'ils n'utilisent pas cuda mais vulkan.
A priori le package vulkan-tools
est suffisant mais c'est KO, la carte GPU n'est pas détectée.
A priori la carte RTX 2060 n'est pas supportée (Pascal), voir ticket
PromptEngineer propose localGPT qui est un outils qui combine un moteur de LLM qui discute sur la base de vos documents locaux. Pour cela, il sont transformés en petits paquets et "vectorisés" dans une base ChromaDB. À chaque demande, une requête permet d'obtenir les meilleures petits paquets et sont envoyés dans le contexte.
en suivant les étapes du README, et après beaucoup de Giga-octets téléchargés, on arrive bien à générer la collection ChromaDB avec les documents exemple mais on se rend compte que les modèles proposés ne sont pas compatibles avec les cpu.
A tester avec le même modèle que GPT4All.
Sur la machine avec CUDA, il faut "tricher" si la version CUDA n'est pas la plus récente afin d'installer auto-gptq. Pour cela, depuis le github de la lib, il faut faire:
pip install auto-gptq --extra-index-url https://huggingface.github.io/autogptq-index/whl/cu118/
et il faut exécuter l'astuce indiqué pour les modèles GGUF:
CMAKE_ARGS="-DLLAMA_CUBLAS=on" FORCE_CMAKE=1 pip install llama-cpp-python==0.1.83 --no-cache-dir
Tentative avec plusieurs modèles et à chaque fois je tombe sur un out-of-memory. Visiblement, l'astuce est d'utiliser un modèle d'embeddings moins gourmand: all-MiniLM-L6-v2
Après application, je tombe sur une nouvelle erreur avec un SegFault. Je tente de réinstaller le venv au cas ou.
Idem, tentative en installant torch avec ma version cuda:
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
note: cette méthode d'installation de pytorch
n'est pas compatible avec ingest.py
, cela fait planter le process.
Pour tenter d'avoir des versions CUDA plus à jour: https://www.linuxcapable.com/how-to-install-cuda-toolset-on-debian-linux/
=> permet d'obtenir CUDA 12.3 au lieu de 11.8
Attention libcudnn n'est plus présente et celle de debian n'est plus compatible il faut installer à la main (compte nvidia requis):
https://docs.nvidia.com/deeplearning/cudnn/install-guide/index.html
procédure manuel avec méthode tar.gz
manque lib libcublas.so
ChromaDB est une base de donnée vectorielle qui permet de générer des embeddings sur la base de documents. Les embeddings sont générés à partir d'un modèle. ChromaDB permet de retrouver les embeddings les plus proches d'une requête.
pour faire tourner un modèle type whisper il faut une GPU d'au moins 3Go avec le modèle medium mais plus de 4Go sur un modèle élevé.
on trouve des confs sur leboncoin mais il me faut se méfier de celle avec un CPU trop ancien.
Actuellement sur une offre avec une RTX2060 6Go qui j'espère me permettra de faire quelques belles choses.
18/11: matériel obtenu et sous windows, les tests sont très concluants. reste à passer sous linux.
Whisper est un modèle STT d'OpenAI. Un projet a converti ce modèle pour qu'il soit plus rapide et moins gourmand.
Avec whisper, je ne peux pas lancer le modèle large car je ne dispose pas suffisament de mémoire (6Go max). J'ai donc fait mes tests avec le modèle medium.
Avec faster-whisper, le modèle large-v2 se charge dans moins de 5Go et tourne parfaitement sur mon PC.
la carte graphique pendant le traitement consomme ~130W (pour un max possible de 160W).
Sur faster-whisper, on peut activer un filtre de détection de silence qui semble permettre un meilleur décodage du français.
Tests fait sur:
Important: faster-whisper n'est pas compatible CUDA12
=> Mon patron, sportif a commencé un peu mon coaching. Je vais donc à partir des prochaines séances commencer son programme de Préparation Physique Générale!
A la recherche de chaussure avec un drop 8-12mm + amorti souple. De préférence trail vu le type d'endroit ou j'aime courrir.
J'ai trouvé trois modèles sur lesquels j'ai demandé un avis:
prise renforcée: legrand ~165€ + cable
installation d'une borne par un technicien: crédit d'impôt de 300€ (pour la prime Advenir, sa puissance doit être supérieure ou égale à 22 kW) => izzy (edf): 1422€ pour 7kW => pas intéressant vu que la voiture n'accepte que 3.7kW
suite à quelques recherches et conseils, on arrive à ce schéma:
11/11: commandes passées, reste les cables à prendre sur place chez LM
19/11: installé surtout par mon beau-frère, manque l'interrupteur connecté pour automatiser mais on a mis un interrupteur provisoire.
26/11: installation de l'interrupteur connecté + automatisation \o/
Ce 07/11, Zaclys informe que l'on peut créer son Blogz si l'on est abonné. Il s'agit d'une instance WriteFreely. J'ai donc le compte @valvin@blogz.zaclys.com
et j'ai écrit (à l'arrache) un premier billet. Je n'ai pas encore eu l'occasion de tester la partie Fediverse mais à venir!
Le 14/11, j'ai écrit un second billet pour tester. A noter, qu'il est préférable de bien penser au slug de son billet avant sa publication.
valvin.fr
OK