SynaLemma

Un raisonnement vraiment auditable, parce que ce n'est pas le modèle qui le fait.

Les autres systèmes d'agents s'en remettent au modèle de langage pour raisonner. SynaLemma est un harnais construit à l'inverse : le modèle traduit votre question en règle, et un moteur logique fait le raisonnement. Il vérifie formellement la règle, déduit la réponse dans la base que vous exploitez déjà, et conserve la règle : chaque étape se lit et se rejoue.

Architecture

Le modèle propose. Le moteur logique raisonne.

La plupart des systèmes d'agents placent le modèle de langage au milieu et le laissent raisonner jusqu'à une réponse. SynaLemma le place en périphérie. Le modèle propose une règle, et le moteur effectue chaque jointure, chaque récursion et chaque total. Rien n'atteint vos données ni votre réponse sans passer par le moteur.

Les systèmes d'agents qui laissent le modèle raisonner
  1. Votre question
  2. Modèle de langage
  3. Du SQL deviné
  4. Votre base
  5. Modèle de langage
  6. Une réponse plausible

Le modèle raisonne dans un texte. Son « explication » est écrite après coup et n'enregistre pas la façon dont la réponse a été calculée : il n'y a rien à rejouer.

La connaissance Semantic Layers Des règles vérifiées, en fichiers dans git.
Extérieur · remplaçable Modèle de langage Local ou hébergé. Il propose des règles ; le moteur décide.
↓ proposition ↑ requête contrainte
L'agent Synalinks Pilote le modèle pas à pas, contraint sa sortie à respecter un schéma, trace tout.
règle à vérifier → ← refus motivé, ou lignes
La logique · le centre Synalog
  • vérifie chaque règle
  • fait le raisonnement
  • compile la règle en SQL
  • contrôle le résultat
règle conservée → ← règle réutilisée
↓ SQL vérifié ↑ lignes
Extérieur · inchangée Votre base de données Exécute le SQL. Interrogée sur place.
↑ question ↓ le chiffre et sa règle
↓ chaque changement est un commit
Extérieur · à vous Votre dépôt git Historique, relecture, restauration.
Extérieur Vous, vos équipes, vos autres agents L'application, Slack ou Teams, MCP et Agent2Agent.

Le modèle traduit votre question en règle et formule la réponse. Chaque inférence entre les deux est celle du moteur, et peut être rejouée.

Anatomie

Trois moteurs et un produit, tous écrits par nous.

Chaque couche a un seul rôle et transmet à la suivante quelque chose qu'elle peut vérifier. Trois d'entre elles sont open source ; la quatrième est le produit qui les assemble.

  1. Le harnais

    SynaLemma

    Ce qu'utilisent vos équipes : Lemma, l'assistante ; des tables, des concepts et des règles que l'on peut lire et modifier ; le graphe de ce qui dépend de quoi ; les rôles, l'historique, et les canaux où vous échangez déjà.

  2. L'agent

    Synalinks

    Pilote le modèle pas à pas : cherche les définitions existantes, décompose la question, écrit les règles, appelle les outils. Les sorties respectent un schéma, le modèle se remplace, et chaque étape est tracée.

  3. La logique

    Synalog

    Vérifie chaque règle avant toute génération de SQL, la compile dans le dialecte SQL de votre base, et confronte à vos données ce que son résultat doit respecter.

  4. La connaissance

    Semantic Layers

    Là où vivent les définitions : un fichier lisible par table, concept ou règle, dans un dépôt git. Une couche se relit comme du code et s'installe dans un autre projet.

  5. Votre base de données · tables inchangées, vrais noms, rien de copié

Votre modèle · local ou hébergé, remplaçable

Le produit

Ce que voient vos équipes.

La boucle

Ce qui se passe entre votre question et la réponse.

  1. 01

    Chercher

    L'agent cherche dans la couche une définition qui répond déjà à la question. Une couche de milliers de définitions n'entre jamais entière dans le contexte du modèle : seulement ce qui correspond.

  2. 02

    Écrire

    Si aucune ne convient, l'agent en écrit une, en s'appuyant sur les concepts déjà présents plutôt que de repartir des tables brutes.

  3. 03

    Vérifier

    La règle passe le vérificateur formel. Si elle ne passe pas, elle est refusée, avec le motif du refus, et rien n'est enregistré si l'ensemble de la couche ne tient plus.

  4. 04

    Exécuter

    La règle vérifiée est compilée en SQL et exécutée dans votre base. Ses assertions sont contrôlées sur les mêmes données.

  5. 05

    Répondre

    Alors seulement l'assistante répond, en reprenant les lignes renvoyées par l'exécution et en citant la règle, que vous pouvez ouvrir.

  6. 06

    Garder

    La règle est versionnée dans la couche, avec son auteur et sa date. La question suivante part d'elle.

Vérifié par la logique

Deux vérifications. Aucune n'est faite par un modèle.

Demander à un second modèle de vérifier le premier ne fait qu'ajouter un autre avis. SynaLemma vérifie par la logique. C'est le premier et le seul système d'IA qui écrit ses propres règles, les vérifie formellement et confronte leurs résultats à des énoncés mathématiques.

1

La définition, avant son exécution

Le vérificateur formel de Synalog examine chaque règle avant qu'aucun SQL ne soit généré, sans base de données : variables jamais liées, négation et agrégation non sûres, négation à travers une récursion, récursion sans cas de base ou sans borne, colonnes, fonctions et prédicats inconnus. Plus de quinze classes d'erreurs, toutes signalées d'un coup. Une règle qui ne passe pas n'est jamais enregistrée, ni exécutée.

2

Son résultat, face à vos données

Une assertion énonce ce qu'un résultat doit respecter, indépendamment de la façon dont il est calculé : une pièce n'apparaît qu'une fois, un stock n'est jamais négatif, les livraisons en retard ne dépassent jamais les livraisons. Elle s'écrit en logique du premier ordre (∀, ∃, →, sommes et comparaisons) sous forme de proposition Lean, la notation de l'assistant de preuve Lean. Synalog compile une recherche de contre-exemples en SQL et l'exécute sur votre base. Dans SynaLemma, une assertion contredite s'affiche sur la règle, avec les lignes qui la contredisent en un clic.

Une assertion violée nomme ce qui la contredit : ici, deux fournisseurs sous le niveau de service convenu
counterexamples
✗ OnTimeDelivery.meets_service_level is violated:
  ∀ s r d t, OnTimeDelivery s r d t → t ≥ 0.6
  2 counterexamples:
+-------------------+------+----+-------+
| s                 | r    | d  | t     |
+-------------------+------+----+-------+
| Shenzhen VoltPack | high | 34 | 0.588 |
| Hsinchu Controls  | high | 47 | 0.553 |
+-------------------+------+----+-------+
Audit

Deux pistes d'audit : comment la réponse a été déduite, et comment la règle est née.

Auditer une IA, c'est d'ordinaire relire les journaux de ce qu'un modèle a dit. Dans SynaLemma, vous auditez deux enregistrements exacts : la déduction, faite par le moteur logique, et l'historique des règles, conservé dans git, l'outil que les équipes logicielles utilisent déjà pour suivre chaque changement.

01

De la réponse aux lignes

Chaque chiffre cite sa règle et la ligne d'où il vient. Chaque règle nomme les concepts sur lesquels elle s'appuie, et chaque concept les tables qu'il lit. Suivez la chaîne, ou réexécutez n'importe lequel de ses maillons.

02

De la règle à son histoire

Une couche sémantique est un dépôt git : un fichier par table, concept et règle. Chaque changement est un commit attribué à son auteur, que ce soit une personne, Lemma ou un autre agent, avec le détail des modifications et la possibilité de revenir en arrière.

03

Relu comme du code

Quelle était cette définition le jour où ce chiffre a été communiqué ? Qui l'a changée, et quand ? Comparez deux versions, restaurez-en une, ou faites passer un changement par la même relecture que n'importe quel autre code.

L'historique enregistre vos définitions et leurs changements, pas vos données : les lignes restent dans votre base.

Vos systèmes existants

Fonctionne sur les systèmes que vous exploitez déjà.

Une couche sémantique classique est un projet de modélisation qui prend des mois et se périme peu après sa livraison. SynaLemma écrit la couche au fil des questions, par-dessus vos bases existantes.

Pas d'ETL, pas de second entrepôt

Les règles se compilent en SQL et s'exécutent là où sont les données. Sur une base que vous exploitez, SynaLemma déclare les tables que vous choisissez et ne les modifie jamais. Un compte en lecture seule suffit.

Les tables telles qu'elles sont

Les schémas anciens gardent leurs vrais noms de tables et de colonnes, espaces et accents compris. La couche leur donne un sens sans y toucher.

Un graphe de connaissances, sans base graphe

Entités et relations sont modélisées par-dessus vos tables relationnelles. Le graphe est virtuel : il se compile en SQL.

Les questions que SQL rend difficiles

Nomenclatures à tous les niveaux, chaînes hiérarchiques, « quels assemblages s'arrêtent si ce fournisseur fait défaut » : une récursion à la profondeur que vous déclarez, donc qui se termine toujours, et le raisonnement dans le temps.

Les bases auxquelles SynaLemma se connecte
  • PostgreSQL
  • BigQuery
  • Databricks
  • Trino
  • Presto
  • DuckDB
  • SQLite

Et vos fichiers : CSV, Excel, JSON, JSONL, Parquet.

Dans le produit

Tout ce dont disposent vos équipes.

La couche vous appartient. Tout ce qu'écrit l'assistante peut être lu, corrigé et verrouillé par une personne.

Lemma, l'assistante

Demander

  • Chaque chiffre cité par une mention cliquable, jusqu'à la ligne d'où il vient.
  • Vous la voyez travailler, étape par étape : ce qu'elle a cherché, écrit, exécuté.
  • Des questions suggérées, tirées de votre propre couche.
  • Des messages vocaux, transcrits sur votre serveur.
  • Elle propose avant d'agir sur une demande ouverte, et pose une question quand c'est ambigu.
  • « Expliquer » et « Corriger » sur n'importe quelle règle, en un clic.
Tables

Vos données

  • Importez des fichiers CSV, Excel, JSON, JSONL, Parquet et SQLite, par glisser-déposer.
  • Connectez une base et choisissez les tables à exposer.
  • Copiez des tables depuis une autre base en une fois, sans rien écrire sur la source.
  • Un tableur avec colonnes typées, tri, recherche, annuler et rétablir.
  • Exportez toute table ou tout résultat en CSV ou en Excel.
  • Verrouillez les lignes d'une table, ou protégez sa structure.
Concepts, Règles, Mémoire

Votre connaissance

  • Chaque règle en diagramme pour ceux qui ne lisent pas le code, et en code pour ceux qui le lisent.
  • Modifiez une règle sur place : elle est vérifiée à l'enregistrement, et un refus dit pourquoi.
  • Validée, non validée, verrouillée : l'état de chaque définition est visible.
  • Mémoire : le graphe de ce qui dépend de quoi, entre tables, concepts et règles.
  • Les assertions avec leur état, et les lignes qui les contredisent.
  • Un historique avec les différences, et une restauration vers n'importe quelle version.
Une connaissance réutilisable

Couches

  • Installez une couche prête à l'emploi depuis un dépôt git ou un zip. Rien n'est gardé si elle ne se vérifie pas sur votre base.
  • Travaillez sur plusieurs couches à la fois.
  • Exportez une couche en simples fichiers : ni connexion, ni secrets, ni lignes.
  • Une couche est un dossier qui s'exécute avec l'outillage open source Synalog, avec ou sans nous.
Au-delà de l'application

Agents et automatisation

  • Un serveur MCP donne à Claude Code, Codex, Cursor, VS Code Copilot ou Windsurf les mêmes outils que Lemma.
  • Un point d'accès Agent2Agent permet à un autre agent d'interroger Lemma directement.
  • Slack, Microsoft Teams, Discord, Telegram ou WhatsApp, par un bot qui vous appartient.
  • Boucles : la même question posée à intervalle régulier, revue des ruptures le lundi ou contrôle qualité quotidien, publiée dans un canal.
  • Un SDK de plugins pour ajouter vos propres pages et fonctions.
Le contrôle

Administration

  • Quatre rôles (administrateur, éditeur, analyste, lecteur) et des permissions par personne. Lemma ne reçoit que les outils que le rôle de la personne qui demande autorise.
  • Des organisations, chacune avec son propre stockage.
  • Choisissez le modèle dans un catalogue, testez la connexion, changez quand vous voulez. Modèles locaux : sans clé d'API ni coût par token.
  • Chaque étape de l'agent, chaque appel d'outil et de modèle est tracé, chez vous.
  • Identifiants et jetons stockés chiffrés.
  • Interface en français, anglais, néerlandais, italien et espagnol.
Déploiement

Sur vos serveurs, avec le modèle de votre choix.

SynaLemma se déploie sur votre infrastructure. Avec un modèle local, rien n'en sort. Avec un modèle hébergé, vos questions et les extraits de données nécessaires pour y répondre vont au fournisseur que vous avez choisi, et nulle part ailleurs.

Votre modèle

Des modèles ouverts sur votre propre matériel (Ollama, vLLM, LM Studio) ou le fournisseur avec lequel vous avez déjà un contrat. Les règles n'en dépendent pas.

Vos données

Interrogées sur place, par un compte qui n'a besoin que de lire. Les identifiants de base sont stockés chiffrés. Les messages vocaux enregistrés dans l'application sont transcrits sur votre serveur.

Vos règles

De simples fichiers dans un langage ouvert, sur des moteurs publiés sous Apache-2.0. Elles s'exécutent aussi avec le seul outillage open source.

Questions fréquentes

Ce qu'on nous demande en premier.

Nous n'avons pas d'expertise IA en interne. Est-ce un problème ?

Non. SynaLemma vient avec un ou plusieurs ingénieurs dédiés selon la taille de votre projet, issus de l'équipe qui le construit. Ils travaillent aux côtés de vos équipes pour le mettre en place, s'occuper de vos données, et écrire et vérifier vos définitions avec vos experts.

Le modèle ne raisonne-t-il pas quand même, en écrivant la règle ?

Il décide de ce qu'il demande au moteur : quels concepts combiner, et comment. Cette décision est écrite, sous forme de règle que vous pouvez lire, et c'est le moteur, pas le modèle, qui en déduit chaque ligne. Si la décision est fausse, elle l'est à un endroit que l'on voit, que l'on corrige une fois, et que l'on verrouille.

SynaLemma est-il open source ?

Les trois moteurs sur lesquels il repose (Synalinks, Synalog, Semantic Layers) sont open source sous licence Apache-2.0. SynaLemma lui-même, le produit qui les assemble, est propriétaire et vendu sous licence commerciale. Vos règles sont des fichiers au format ouvert : elles ne sont jamais captives.

Avec quelles bases fonctionne-t-il ?

PostgreSQL, BigQuery, Databricks, Trino, Presto, DuckDB et SQLite, interrogées sur place : vos tables restent où elles sont. Et des fichiers : CSV, Excel, JSON, JSONL et Parquet. Une même règle se compile dans le dialecte SQL du moteur sur lequel elle s'exécute.

Avec quels modèles de langage ?

Tout modèle capable d'appeler des outils, choisi dans un catalogue depuis les paramètres : des modèles ouverts servis localement par Ollama, vLLM ou LM Studio, ou des fournisseurs hébergés comme Mistral, Anthropic, OpenAI ou Google. Changer de modèle ne change pas les règles. Tout, sauf la conversation elle-même, fonctionne sans aucun modèle.

Et si le modèle écrit une règle fausse ?

Une règle structurellement fausse est refusée par le vérificateur. Une règle qui contredit une assertion est signalée, avec les lignes qui la contredisent. Et comme la règle est lisible, le responsable du chiffre peut la voir et la corriger. Ce n'est pas possible quand la réponse est un paragraphe de prose.

Cela remplace-t-il nos tableaux de bord ?

Non. SynaLemma ne dessine pas de graphiques : les réponses sont des chiffres, des tableaux et les règles qui sont derrière. Il donne un seul endroit où vivent les définitions de vos tableaux de bord, et permet aux personnes comme aux agents de les interroger en langage courant.

Voyez-le tourner

Venez avec une question sur laquelle vos équipes ne s'accordent pas.

Lors d'une démo gratuite de trente minutes, nous vous montrons la réponse de SynaLemma et la règle qu'il a utilisée.