Skip to content

Releases: charnould/pierre

v.0.17.0

19 Dec 15:09
Compare
Choose a tag to compare

Breaking

  • Nécessite minimum Kamal v.2.4.0 (vous devrez lancer kamal proxy reboot)
  • Nécessite minimum Bun v.1.1.40
  • Ajoute un disclaimer dans config.ts (cf. exemple). Utiliser bun test:config pour valider le format de config.ts.
  • Modifie comment apprendre à PIERRE de nouvelles connaissances. Voir la documentation (README.md) pour comprendre les nouveautés, notamment relatives à _metadata.xlsx.

Important

L'apprentissage automatique de connaissances proprietary par PIERRE évoluera probablement encore.

Fix (ou Feature)

  • Améliore le streaming des réponses
  • Augmente le délai avant le timeout d'une requête
  • Optimise les performances du reranker
  • reconstruit les bases de connaissances
  • Améliore les prompts
  • Ajoute à la recherche vectorielle la recherche FTS5 (bm25)
  • Corrige la gestion des dates dans les prompts
  • Met à jour les dépendances
  • Modifie bun.lock (d'un binaire à un fichier-texte)
  • Autres améliorations diverses

Full Changelog: v.0.16.2...v.0.17.0

v.0.16.2

03 Dec 21:02
Compare
Choose a tag to compare

What's Changed

  • fix: fix bug introduced in v0.16.0: update build script and store SQLite files in knowledge folder and not Docker volume
  • perf: enhance prompt to include escalation guidance for ‘collaborator mode’ responses
  • perf: retrieve the latest articles from Wikipedia
  • chore: rebuild frontend assets to incorporate recent updates and ensure compatibility
  • build: update dependencies
  • docs: update pierre social image

Full Changelog: v.0.16.1...v.0.16.2

v.0.16.1

02 Dec 12:36
Compare
Choose a tag to compare

What's Changed

  • docs : renomme la présentation .pdf de PIERRE et ajoute un simulateur de coût .xlsx
  • fix : corrige un bug provoqué par la dernière version de llamaindex

Warning

La remarque ci-dessous, relative à la v.0.16.0, reste applicable à cette version v.0.16.1.

En déployant un clone de PIERRE, j'ai découvert un bug (en cours de résolution) : si vous utilisez la commande bun generate --proprietary (pour créer une base de connaissances propriétaire) et que vous déployez la version 0.16.0 pour la première fois, tout fonctionne. Par contre, si vous re-générez/modifiez cette base propriétaire et déployez à nouveau, alors cette dernière version de la base ne sera pas prise en compte. Le bug provient de la façon dont Kamal/Docker gère les volumes.

D'ici la résolution, le moyen le plus simple est : lancer dotenvx run -f .env.production -- kamal accessory remove all, puis redéployer. Vous perdrez par contre l'historique des conversations et les utilisateurs.

Full Changelog: v.0.16.0...v.0.16.1

v.0.16.0

01 Dec 14:08
Compare
Choose a tag to compare

What's Changed

Breaking (ou importants)

  • feat: implémente un reranker (chaque chunk retourné par la BDD est testé pour s'assurer de sa pertinence). Une conséquence pratique : si le reranker indique qu'aucun chunk n'est pertinent, PIERRE répond ne pas être en capacité de répondre
  • feat: ajout de disclaimer au fichier config.ts qui permet d'afficher une mention après les messages générés par PIERRE (ex : Une IA peut se tromper, vérifier les informations). Ce disclaimer peut être différent selon les context
  • feat: implémente (beta) l'ingestion automatisée des fichiers .docx, .xlsx (et .md) pour apprendre à PIERRE vos documents internes (ex : procédures, carnet de patrimoine, etc.). Consulter le README.md pour savoir comment créer, construire et reconstruire la base de connaissances, y compris propriétaire/confidentielle
  • feat: pour chaque context, il convient d'indiquer à quelles bases de connaissances il a accès
knowledge: {
  community: true,
  proprietary: { public: false, private: false }
}
  • refactor: renomme les différentes bases de données et leur localisation (les précédentes/anciennes conversations n'apparaitront donc plus dans la console d'administration)

Warning

En déployant un clone de PIERRE, j'ai découvert un bug (en cours de résolution) : si vous utilisez la commande bun generate --proprietary (pour créer une base de connaissances propriétaire) et que vous déployez la version 0.16.0 pour la première fois, tout fonctionne. Par contre, si vous re-générez/modifiez cette base propriétaire et déployez à nouveau, alors cette dernière version de la base ne sera pas prise en compte. Le bug provient de la façon dont Kamal/Docker gère les volumes.

D'ici la résolution, le moyen le plus simple est : lancer dotenvx run -f .env.production -- kamal accessory remove all, puis redéployer. Vous perdrez par contre l'historique des conversations et les utilisateurs.

Autres

  • refactor: réécrit le script de (re)construction des bases de connaissances et réduit sa génération à 2-3 minutes au lieu de 15 (dépend de sa taille).
  • fix: corrige un bug relatif à l'accès aux pages protected
  • perf: modifie le routing(IA) pour distinguer les profanity des no-knowledge
  • chore: améliorations diverses, notamment des prompts
  • test: ajout d'un test pour permettre aux cloneurs/forkers de tester leur configuration (bun test:config). Vous pouvez ainsi vous assurez que votre fichier config.ts est conforme (in fine, le test doit être amélioré pour tester aussi les variables d'environnement)
  • docs: fait le ménage dans quelques exemples/démonstrations
  • docs: ajout d'un contenu créé collaborativement avec un bailleur social (Grand Dijon Habitat)
  • docs: mise à jour du README.mdpour expliquer les évolutions (à consulter si vous rencontrez des erreurs/anomalies)

Full Changelog: v.0.15.0...v.0.16.0

v.0.15.0

15 Nov 07:35
Compare
Choose a tag to compare

What's Changed

  • Corrections et améliorations diverses
  • [BREAKING] Ajoute la possibilité de protéger l'accès à certains contexts par ID/mot de passe (cf. exemple)
  • [BREAKING] Préfigure une prochaine fonctionnalité permettant de choisir pour chaque context les bases de connaissances qui sont utilisées. Cela permet notamment d'utiliser des données internes/confidentielles lorsque le context est dédié/limité aux collaborateurs (cf. exemple). A ce jour, la fonctionnalité n'est pas active.

Pour mettre à jour depuis v.0.14.0, il suffit de mettre à jour/modifier config.ts.

...
default: {
    protected: false,
    knowledge: {
        community: true,
        self: { public: false, collaborators: false }
      },
     ...
}
...

Full Changelog: v.0.14.0...v.0.15.0

v.0.14.0

09 Nov 14:05
Compare
Choose a tag to compare

EDIT (2024-11-09 à 18h30) : Ajout du [BREAKING CHANGE] relatif à AUTH_SECRET qui doit impérativement être une chaine de 32 caractères hexadécimaux.


Une mise à jour importante qui prépare plusieurs nouvelles fonctionnalités 🚀 !

  • [BREAKING] La variable d'environnement AUTH_SECRET doit impérativement être une chaine de 32 caractères hexadécimaux (pour en générer une, saisissez dans votre terminal : openssl rand -hex 16)
  • [BREAKING] Renomme une variable d'environnement (AUTH_PASSWORDS -> AUTH_PASSWORD) et supprime la capacité d'y indiquer plusieurs mots de passe. L'objectif : s'aligner avec la (nouvelle) gestion des utilisateurs. Pour déployer cette version, assurez-vous donc que votre env.production est aligné avec env.example.
  • [FEAT] Ajoute une interface pour la gestion des utilisateurs avec 3 rôles (certaines fonctionnalités seront livrées plus tard) :
    • Administrateur : peut (a) modifier les utilisateurs, (b) modifier la base de connaissances, (c) consulter les conversations, (d) consulter les statistiques et (e) utiliser « l'aide de camp » (consulter le README.md pour utiliser l'interface d'administration).
    • Contributeur : peut uniquement réaliser (b) et (e)
    • Collaborateur : peut uniquement utiliser (e).
  • [FEAT] Ajoute (pour partie) les interfaces-utilisateurs pour les fonctionnalités décrites ci-dessus.
  • Améliorations diverses

Full Changelog: v.0.13.0...v.0.14.0

v.0.13.0

02 Nov 11:13
Compare
Choose a tag to compare

What's Changed

  • [BREAKING] build: PIERRE nécessite minimum Bun v.1.1.34 et Kamal 2.3.0
  • [BREAKING] feat: introduce context property in config.ts to support multiple contexts

🚀 Une nouvelle fonctionnalités suite à un échange avec un bailleur social !

Pouvoir afficher différentes versions de PIERRE selon qu'on le consulte sur un site web, sur un espace-locataire, depuis une borne interactive en agence, non comme un locataire mais un collaborateur qui l'utilise comme assistant du quotidien...

Pour déployer cette version et créer ces context, il convient de modifier le fichier assets/**/config.ts

  • revert: re-commit assets/**/config.ts (générait plus de problèmes que cela n'en résolvait)
  • fix: améliorations diverses

Full Changelog: v.0.12.4...v.0.13.0

v.0.12.4

31 Oct 20:15
Compare
Choose a tag to compare

What's Changed

Full Changelog: v.0.12.3...v.0.12.4

v.0.12.3

31 Oct 15:28
Compare
Choose a tag to compare

What's Changed

  • fix: prevent assets/*/config.ts from being served
  • fix: git-ignore /assets/**/config.ts
  • fix: remove files ignored by .gitignore
  • build: update dependencies
  • test: check whether config.example.ts parses successfully
  • chore: add granddijonhabitat.fr
  • chore: add .env.production and .env.staging to .dockerignore
  • docs: udpate slightly Pierre's presentation (pdf)
  • docs: add a config.example.ts (since config.ts is now git-ignored)
  • docs: modify README.md since config.ts is now git-ignored + typos/improvements
  • docs: tiny fixes to Pierre's presentation (pdf)

Full Changelog: v.0.12.2...v.0.12.3

v.0.12.2

28 Oct 13:28
Compare
Choose a tag to compare

What's Changed

  • perf: improve (again) query augmentation prompt (location inference + other)
  • style: remove/add newlines
  • perf: improve answer generation prompt (web + sms)
  • build: update dependencies
  • fix: simplify split_sms function (it splits now simply by \n)

Full Changelog: v.0.12.1...v.0.12.2