Leicht·Facile

Easy-language drafts of Swiss official texts

Leicht·Facile drafts easy-language versions of Swiss official texts (German Leichte Sprache and Einfache Sprache, French FALC, Italian lingua facile) with a large language model, and proves with code that no deadline, amount or phone number got lost. It is a drafting assistant for the people who write official texts, not a replacement for their review or for the test by readers from the target group.

DeutschLeichte-Sprache-Fassungen von Behördentexten mit einem Sprachmodell nach Wahl; Code prüft jeden Wert, ein Mensch gibt frei.

FrançaisVersions FALC de textes officiels suisses avec un modèle au choix ; le code vérifie chaque valeur, une personne relit.

ItalianoVersioni in lingua facile di testi ufficiali svizzeri con un modello a scelta; il codice verifica ogni valore, una persona rivede.

1.25 million adults in Switzerland aged 16 to 65 (22 percent) have low reading skills (Swiss Federal Statistical Office, PIAAC 2022/2023).

Before and after

A sentence from an official letter, in "Behördensprache" and with three negations. A reader with low reading skills has only one question: do I get my money back? The easy-language version answers it in three short sentences.

Before: the letter

Es ist nicht unwesentlich, dass Kosten, die nicht fristgerecht geltend gemacht werden, nicht vergütet werden können.

After: easy language

Das ist wichtig:
Melden Sie Ihre Kosten rechtzeitig.
Sonst bekommen Sie kein Geld zurück.

How it works

The language model does everything that needs language understanding. Plain code does everything that can be counted.

  1. Understand (model)

    The document becomes a fact sheet: the reader's core questions, every fact with its exact value, hard words. Code adds every date, amount and contact the model missed.

  2. Write (model)

    A draft in easy language, every sentence linked to the source sentences it comes from, every omission explained.

  3. Check (code)

    Deterministic rules from the published Swiss guidelines and an exact check of every fact value in both directions: no value lost, no value invented.

  4. Judge (model)

    Meaning only: distorted facts, invented statements, metaphors, unclear references.

  5. Repair (model)

    Only the flagged sentences, until no blocking finding is left; then one sentence for each must-keep value still missing.

  6. Review (person)

    Source and draft side by side, provenance, fact checklist; approve, edit or reject each block, export with an audit trail.

The review page: the source on the left, the easy-language draft in the middle, the must-keep facts on the right
The review page with the German example letter: the source with what was left out and why, the draft with its versions and findings, and the must-keep facts.

Measured, not promised

The full pipeline against a strong single prompt (a published Leichte Sprache prompt from a Swiss public administration) on the same model: 20 held-out pairs of real German texts published by Swiss cantons and federal offices with their easy-language versions, Apertus on the CSCS endpoint, 12 October 2026.

A strong single promptLeicht·Facile
Must-keep facts found82 %100 %
Hard facts lost without a trace15 % (33 % in its default mode)none: it lists every one it misses
Invented values, per 100 blocks0.00.0
Rule errors, per 100 blocks15.03.7

All numbers and the method: evaluation.md.

Your model, your infrastructure

Leicht·Facile works with any OpenAI-compatible endpoint: a provider's API, a gateway or a model server of your own. Documents and review records stay in a database in a folder the organisation controls. At runtime the app contacts only the model endpoint, and a web page's server when a user enters a URL: no telemetry, no CDN, no login provider.

Why Apertus for confidential texts

A letter that names a person is under official secrecy, a patient letter under medical secrecy, a tax letter under tax secrecy. Such texts need a model that runs where the organisation controls it, with open weights and open training data. Apertus, by EPFL, ETH Zurich and CSCS, meets all of that, and Leicht·Facile was built and evaluated with it (why).

Get started

With uv installed, one command downloads the app from PyPI, starts it and opens the browser:

uvx leichtfacile serve

The app's model page asks for the endpoint and its key: Apertus on the CSCS inference API, the Public AI gateway, a provider such as Anthropic, OpenAI, Google or OpenRouter, or a server of your own (vLLM, llama.cpp, Ollama).

Would your administration like help setting it up? See Support for public administrations.

Read more

Roadmap

What has shipped since work began in October 2026, and what comes next. Ideas and requests are welcome as GitHub issues. If your administration needs something from the list sooner, or something that is not on it, tell us.

  1. 0.5 and 0.6 October 2026

    German and French

    Leichte Sprache, Einfache Sprache and FALC: the fact sheet, the rule checks from the published Swiss guidelines, the judge, the repair loop and the review page; exports as Markdown, HTML and Word with an audit trail. A decision mode for KESB and court decisions keeps the operative part and the appeal instructions. The evaluation on 20 held-out pairs (results above).

  2. 0.7 October 2026

    Any model, one command

    On PyPI: uvx leichtfacile serve downloads and starts the app. It works with any OpenAI-compatible endpoint, with its settings in one file and ready-made presets for Apertus and the large providers.

  3. 0.8 October 2026

    Italian

    Lingua facile with 28 rules of its own, a tagger built from the Morph-it! lexicon, vocabulary, prompts, interface and an evaluation on Public AI. The app's model page sets up the endpoint and its key.

  4. Planned

    Letters someone else wrote

    The person who received a letter, or someone who helps them, uploads it. Code lists every deadline, amount and contact in the letter's own wording, a fixed notice says that only the letter counts, and the explanation gives no advice.

  5. Planned

    Decisions: detection and long reasoning

    The app recognises the type of document instead of asking for the mode, and a further mode condenses long legal reasoning and lists every omission.

  6. Planned

    More kinds of documents

    Discharge letters, lease terminations, penal orders, payment orders, school decisions and information for study participants, each with the periods and values its readers must not miss (use cases).

  7. Research

    Scanned letters and photos

    Apertus 1.5 reads images, but on whole pages it turned IBANs and periods into other plausible numbers. Sent in strips at the scan's resolution, it kept every digit of two test letters. For now, a PDF without a text layer gets a clear error message.

Authors

Alexander Bobrovsky

25+ years in IT, 15+ of them in product and program management, with a focus on system design and artificial intelligence. Designed and delivered systems with five-nines availability that process hundreds of millions of events per day.

github.com/bobrovsky420

Ivan Kuzmych

15+ years of hands-on software development in Java, Python and JavaScript/TypeScript: production systems built and shipped end to end, DevOps and CI/CD included.

github.com/ikzmch

Support for public administrations

Leicht·Facile is free and open source, and you can run it on your own. If you work for a public administration and would like help, we, both authors, support you on a voluntary basis and free of charge:

  • Putting it into operation

    Installation on your servers or in your cloud, connection to your model endpoint (Apertus on your own hardware, the CSCS inference API, Public AI or another provider), hardware sizing, and air-gapped installation, where the app, the model and all data run in a network with no connection to the internet.

  • Adjustment to your texts

    Your terms and vocabulary, the facts your letters must never lose, your house rules for easy language, your types of documents.

  • Integration

    Connection to your document management or case management system.

  • Evaluation with your own texts

    We measure the drafts on your letters and their easy-language versions, with the method behind the results above, so you see what the app does before you start.

Tell us briefly who you are, which texts and languages you have in mind and where the app should run, and we will get back to you.

Or write directly to leichtfacile@gmx.ch.