traduire.
le droit suisse, sans rien inventer.
OpenGlossa ancre les traductions juridiques LLM dans des sources suisses citables (Fedlex, TERMDAT, Tribunal fédéral) via un serveur MCP — glossaire, few-shot, puis contrôle de draft.
Termbase + mémoire de traduction + check_translation :
le LLM rédige, OpenGlossa vérifie les termes officiels. Droit suisse
par défaut (corpus_scope=swiss) ; UE en opt-in.
Corpus
Mémoire de traduction indexée en production : 113 095 segments
parallèles officiels suisses (Fedlex RS + regestes TF). Live par défaut
(corpus_scope=swiss) : TERMDAT + JURIVOC. IATE / EUR-Lex
uniquement en opt-in (eu / all). AS / BBl :
slices au prochain rebuild d’index.
Avis Les sorties d'OpenGlossa ne constituent pas le texte légal officiel faisant foi. Toujours vérifier contre la source officielle (n° RS + article Fedlex, ou référence ATF/BGE).
Recherche
Recherche sémantique via le MCP Render (113k segments DE/FR/IT, scope
swiss). L’anglais = TERMDAT administratif (pas de loi Fedlex EN) ;
IATE/EUR-Lex seulement si corpus_scope=eu|all. Démo
hors-ligne du site ≈ 200 TUs lexicaux — pas le corpus de production.
Évaluation
Deux métriques : (A) term hit-rate@3 sur 15 requêtes (RAG retrouve-t-il
le terme officiel ?) — (B) flag-recall de
check_translation sur 8 drafts (les termes manquants
sont-ils signalés ?). Benchmarks figés, reproductibles
(eval/run_eval.py, eval/run_check_eval.py).
Téléchargements
Extrait de démonstration (CO / SR 220, source officielle Fedlex, citée).
Formats complets (TBX, Parquet, toutes paires) : openglossa build-exports.
Schéma
Modèles pydantic v2 à provenance obligatoire — aucun enregistrement sans source citable.
TermRecord
Entrée terminologique centrée concept (≈ termEntry TBX).
TranslationUnit
Segment parallèle aligné (≈ tu TMX).
TermCandidate
Couple de termes extrait, en file de revue.
Licences
Détails : LICENSING.md, ATTRIBUTIONS.md. Code Apache-2.0 · données CC-BY-4.0.
Connexion MCP
Serveur MCP distant (Streamable HTTP) — six outils pour ancrer et
contrôler les traductions LLM. Défaut corpus_scope=swiss.
Guide : docs/LLM_GROUNDING.md.
https://openglossa-mcp.onrender.com/mcp
Configuration client (Cursor ~/.cursor/mcp.json ou Claude Desktop) :
{
"mcpServers": {
"openglossa": {
"url": "https://openglossa-mcp.onrender.com/mcp"
}
}
}
Client en stdio uniquement ? Faites le pont avec
npx mcp-remote https://openglossa-mcp.onrender.com/mcp.
Outils
Workflow LLM : suggest_glossary → search_parallel → draft → check_translation → corriger les flags → get_official_text (DE/FR/IT).
lookup_term_tool(query, src_lang, tgt_lang, domain?, corpus_scope=swiss)
search_parallel_tool(text, src_lang, tgt_lang, k?, corpus_scope=swiss)
verify_translation_tool(src_term, tgt_term, src_lang, tgt_lang, corpus_scope=swiss)
check_translation_tool(source_text, draft_text, src_lang, tgt_lang, corpus_scope=swiss)
get_official_text_tool(eli_or_citation, lang)
suggest_glossary_tool(text, src_lang, tgt_lang, corpus_scope=swiss)
Pipeline & serveur local
pip install -e ".[all]"
openglossa ingest-fedlex --articles --rs 220 --max-articles 200
openglossa build-index --encoder labse # recherche sémantique
openglossa build-exports # TBX / TMX / CSV / JSONL / Parquet
python -m openglossa.mcp.server # serveur MCP