Générateur IA de savoir et de textesKI-Wissens- und TextgeneratorAI knowledge & text generator
Conception technique d'un assistant de rédaction ancré sur les archives de projets d'ecoptima ag : recherche interne & web, génération sourcée, export mise en page.Technisches Konzept eines Redaktionsassistenten, verankert in den Projektarchiven der ecoptima ag: interne & Web-Recherche, quellenbasierte Generierung, Layout-Export.Technical design of a drafting assistant grounded on ecoptima ag's project archives: internal & web retrieval, sourced generation, layout export.
1Besoin clientKundenbedarfClient need
Ce qu'ecoptima veut construireWas ecoptima aufbauen möchteWhat ecoptima wants to build
ecoptima ag (bureau d'aménagement du territoire, ~50 collaborateurs, cantons BE/LU/SO) souhaite exploiter un corpus d'environ 3 000 projets achevés et en cours pour accélérer la production de quatre livrables : rapports explicatifs, prescriptions, programmes de concours et offres.Die ecoptima ag (Raumplanungsbüro, ~50 Mitarbeitende, Kantone BE/LU/SO) möchte einen Bestand von rund 3'000 abgeschlossenen und laufenden Projekten nutzbar machen, um die Erstellung von vier Ergebnistypen zu beschleunigen: Erläuterungsberichte, Vorschriften, Wettbewerbsprogramme und Offerten.ecoptima ag (spatial-planning firm, ~50 staff, cantons BE/LU/SO) wants to leverage a corpus of roughly 3,000 completed and ongoing projects to speed up the production of four deliverables: explanatory reports, regulations, competition programmes and proposals.
- Hébergement suisse : résidence des données en CH, pas de ChatGPT public, aucune donnée utilisée pour entraîner des modèles tiers.Schweizer Hosting: Datenhaltung in der CH, kein öffentliches ChatGPT, keine Nutzung der Daten zum Training fremder Modelle.Swiss hosting: data residency in CH, no public ChatGPT, no data used to train third-party models.
- Traçabilité stricte : chaque paragraphe généré cite sa source. Aucune invention du modèle.Strenge Nachvollziehbarkeit: Jeder generierte Absatz nennt seine Quelle. Keine Erfindungen des Modells.Strict traceability: every generated paragraph cites its source. No model fabrication.
- Sources sur Mac local : lecteurs réseau SMB/AFP, non accessibles directement depuis le cloud.Quellen auf lokalem Mac: SMB/AFP-Netzlaufwerke, aus der Cloud nicht direkt zugänglich.Sources on local Mac: SMB/AFP network drives, not directly accessible from the cloud.
- Nomenclatures cantonales : Überbauungsordnung vs Gestaltungsplan vs Bebauungsplan, le droit varie selon le canton.Kantonale Nomenklaturen: Überbauungsordnung vs. Gestaltungsplan vs. Bebauungsplan, das Recht unterscheidet sich je Kanton.Cantonal nomenclatures: Überbauungsordnung vs Gestaltungsplan vs Bebauungsplan, planning law differs by canton.
2ApprocheAnsatzApproach
Un livrable robuste, dérisqué dès le départEin robustes Ergebnis, von Anfang an risikominimiertA robust deliverable, de-risked from the start
Le projet vise directement un produit exploitable en production. Les principales inconnues, la qualité réelle du corpus (documents scannés, versions, cohérence des métadonnées) et la faisabilité de l'export IDML, sont traitées en tout premier, dans le milestone M0 : analyse d'un échantillon réel et mini-spike sur un gabarit InDesign.Das Projekt zielt direkt auf ein produktionsreifes Produkt. Die wesentlichen Unbekannten, die tatsächliche Qualität des Bestands (gescannte Dokumente, Versionen, Konsistenz der Metadaten) und die Machbarkeit des IDML-Exports, werden zuerst behandelt, im Milestone M0: Analyse einer realen Stichprobe und Mini-Spike auf einer InDesign-Vorlage.The project targets a production-usable product directly. The main unknowns, the actual quality of the corpus (scanned documents, versions, metadata consistency) and the feasibility of IDML export, are addressed first, in milestone M0: analysis of a real sample and a mini-spike on an InDesign template.
Une partie importante du socle, l'ingestion & indexation (M1), la recherche hybride (M2) et la génération sourcée (M3), repose sur des composants que nous avons déjà conçus et éprouvés sur d'autres projets. Leur réutilisation accélère et fiabilise leur intégration ici : nous n'abordons pas ces briques comme de la recherche, mais comme de l'adaptation d'un existant maîtrisé au contexte métier d'ecoptima.Ein wesentlicher Teil der Basis, Ingestion & Indexierung (M1), hybride Suche (M2) und quellenbasierte Generierung (M3), beruht auf Komponenten, die wir bereits in anderen Projekten entwickelt und erprobt haben. Ihre Wiederverwendung beschleunigt und sichert die Integration hier: Wir behandeln diese Bausteine nicht als Forschung, sondern als Anpassung eines beherrschten Bestands an den Fachkontext von ecoptima.A significant part of the foundation, ingestion & indexing (M1), hybrid retrieval (M2) and sourced generation (M3), builds on components we have already designed and proven on other projects. Reusing them accelerates and de-risks their integration here: we approach these building blocks not as research, but as the adaptation of a mastered asset to ecoptima's domain context.
Ces composants s'orchestrent selon une approche agentique. Chaque agent est autonome au sens fort : il raisonne, décide d'appeler ses propres outils (recherche vectorielle, recherche web, génération de fichier), observe le résultat et itère jusqu'à aboutir, le pattern ReAct. Le workflow ecoptima combine plusieurs de ces agents, chacun spécialisé dans une tâche (rédaction & sourcing, structuration sémantique), coordonnés entre eux, la compilation finale de la mise en page étant confiée à un module déterministe. Cette approche, que nous opérons déjà en production sur d'autres projets, présente un avantage structurel : l'architecture est évolutive. De nouveaux agents ou modules peuvent être ajoutés pour couvrir des besoins futurs (nouveaux types de livrables, nouveaux formats, nouvelles sources) sans refondre l'ensemble.Diese Komponenten werden nach einem agentischen Ansatz orchestriert. Jeder Agent ist autonom im starken Sinn: Er argumentiert, entscheidet über den Aufruf seiner eigenen Werkzeuge (Vektorsuche, Websuche, Dateierzeugung), beobachtet das Ergebnis und iteriert bis zum Ziel, das ReAct-Muster. Der ecoptima-Workflow kombiniert mehrere solcher Agenten, jeder auf eine Aufgabe spezialisiert (Redaktion & Sourcing, semantische Strukturierung), untereinander koordiniert, wobei die endgültige Layout-Kompilierung einem deterministischen Modul übertragen wird. Dieser Ansatz, den wir in anderen Projekten bereits produktiv betreiben, bietet einen strukturellen Vorteil: Die Architektur ist erweiterbar. Neue Agenten oder Module lassen sich für künftige Bedürfnisse (neue Ergebnistypen, neue Formate, neue Quellen) ergänzen, ohne das Ganze neu aufzubauen.These components are orchestrated following an agentic approach. Each agent is autonomous in the strong sense: it reasons, decides to call its own tools (vector search, web search, file generation), observes the result and iterates until done, the ReAct pattern. The ecoptima workflow combines several such agents, each specialised in one task (drafting & sourcing, semantic structuring), coordinated with one another, with the final layout compilation entrusted to a deterministic module. This approach, which we already run in production on other projects, offers a structural advantage: the architecture is extensible. New agents or modules can be added to cover future needs (new deliverable types, new formats, new sources) without rebuilding the whole.
3WorkflowWorkflowWorkflow
Flux de données, étape par étapeDatenfluss, Schritt für SchrittData flow, step by step
Chaque étape reçoit une entrée, produit une sortie, et passe la main à la suivante. Les jetons colorés indiquent la donnée qui circule.Jeder Schritt erhält eine Eingabe, erzeugt eine Ausgabe und übergibt an den nächsten. Die farbigen Marken zeigen die durchlaufenden Daten.Each step receives an input, produces an output, and hands off to the next. The coloured chips indicate the data that flows through.
BriefingBriefingBriefing UtilisateurNutzerUser
Le planificateur sélectionne des filtres structurés (canton, type de projet, année) et rédige un prompt libre décrivant l'objectif.Der Planer wählt strukturierte Filter (Kanton, Projektart, Jahr) und formuliert einen freien Prompt zur Zielbeschreibung.The planner selects structured filters (canton, project type, year) and writes a free-text prompt describing the goal.
Recherche hybrideHybride SucheHybrid retrieval SystèmeSystemSystem
La requête interroge en parallèle la base vectorielle interne (sémantique + lexicale, filtrée par les métadonnées) et une API web pour les sources publiques. Les résultats sont scorés et fusionnés.Die Anfrage durchsucht parallel den internen Vektorspeicher (semantisch + lexikalisch, nach Metadaten gefiltert) und eine Web-API für öffentliche Quellen. Die Ergebnisse werden bewertet und zusammengeführt.The query hits the internal vector store (semantic + lexical, filtered by metadata) and a web API for public sources in parallel. Results are scored and merged.
SélectionAuswahlSelection UtilisateurNutzerUser
Le planificateur retient les 3 à 5 meilleures références parmi la liste proposée.Der Planer wählt die 3 bis 5 besten Referenzen aus der vorgeschlagenen Liste.The planner keeps the best 3 to 5 references from the proposed list.
Génération sourcéeQuellenbasierte GenerierungSourced generation SystèmeSystemSystem
Le LLM rédige le rohtext en s'ancrant strictement sur les extraits retenus. Chaque paragraphe porte sa citation ; les passages non-sourcés sont détectés et signalés. La donnée est déjà structurée en texte courant + marginalia.Das LLM verfasst den Rohtext streng verankert an den ausgewählten Auszügen. Jeder Absatz trägt seine Quellenangabe; nicht belegte Passagen werden erkannt und markiert. Die Daten sind bereits in Fliesstext + Marginalien strukturiert.The LLM drafts the raw text, grounded strictly on the selected excerpts. Every paragraph carries its citation; unsourced passages are detected and flagged. The data is already structured into body text + marginalia.
RévisionÜberprüfungReview UtilisateurNutzerUser
Le planificateur relit dans l'éditeur, corrige, attribue ou supprime les paragraphes non-sourcés.Der Planer liest im Editor gegen, korrigiert, weist nicht belegte Absätze zu oder entfernt sie.The planner reads through the editor, corrects, and assigns or removes unsourced paragraphs.
Export mise en pageLayout-ExportLayout export SystèmeSystemSystem
Le texte validé est routé vers le bon format : prescriptions dans le gabarit Word ; rapports et concours en IDML, où texte courant et marginalia tombent dans les cadres InDesign correspondants.Der validierte Text wird ins richtige Format geleitet: Vorschriften in die Word-Vorlage; Berichte und Wettbewerbe nach IDML, wobei Fliesstext und Marginalien in die passenden InDesign-Rahmen fallen.The validated text is routed to the right format: regulations into the Word template; reports and competitions to IDML, where body text and marginalia land in their matching InDesign frames.
4ArchitectureArchitekturArchitecture
Vue d'ensembleGesamtübersichtOverview
POSTES ecoptima (macOS) Lecteurs SMB/AFP ──▶ Sync-Agent (chiffrement, delta) │ ▼ (upload chiffré, planifié) ┌─────────────────────────────────────────┐ │ CLOUD SUISSE (souverain, ex. Hidora · ou Azure CH) │ │ │ │ Stockage ──▶ Ingestion+OCR ──▶ Base vectorielle │ │ objets + chunking (embeddings+méta) │ │ │ │ │ ┌────────────────────────────────▼────────┐ │ │ │ Backend · orchestration recherche hybride │ │ │ │ appel LLM · moteur citations · export IDML │ │ │ └──────┬───────────────────────────┴──────────┘ │ │ LLM (souverain/managé) Web Search (Serper…) │ │ │ │ Frontend web interne — briefing · références · │ │ éditeur sourcé · export │ └─────────────────────────────────────────┘ │ ▼ Export ─▶ Word .dotx / InDesign IDML (Mac)
ARBEITSPLÄTZE ecoptima (macOS) SMB/AFP-Laufwerke ──▶ Sync-Agent (Verschlüsselung, Delta) │ ▼ (verschlüsselter, geplanter Upload) ┌────────────���─────��──────────────────────┐ │ SCHWEIZER CLOUD (souverän, z.B. Hidora · ou Azure CH) │ │ │ │ Speicher ──▶ Ingestion+OCR ──▶ Vektorspeicher │ │ Objekte + Chunking (embeddings+méta) │ │ │ │ │ ┌────────────────────────────────▼────────┐ │ │ │ Backend · Orchestrierung hybride Suche │ │ │ │ LLM-Aufruf · Zitations-Engine · IDML │ │ │ └──────┬───────────────────────────┴──────────┘ │ │ LLM (souverän/managed) Web Search (Serper…) │ │ │ │ Internes Web-Frontend — Briefing · Referenzen · │ │ Quellen-Editor · Export │ └─────────────────────────────────────────┘ │ ▼ Export ─▶ Word .dotx / InDesign IDML (Mac)
ecoptima WORKSTATIONS (macOS) SMB/AFP drives ──▶ Sync-Agent (encryption, delta) │ ▼ (encrypted, scheduled upload) ┌─────────────────────────────────────────┐ │ SWISS CLOUD (sovereign, e.g. Hidora · ou Azure CH) │ │ │ │ Object ──▶ Ingestion+OCR ──▶ Vector store │ │ storage + chunking (embeddings+méta) │ │ │ │ │ ┌────────────────────────────────▼────────┐ │ │ │ Backend · hybrid-retrieval orchestration │ │ │ │ LLM call · citation engine · IDML │ │ │ └──────┬───────────────────────────┴──────────┘ │ │ LLM (sovereign/managed) Web Search (Serper…) │ │ │ │ Internal web frontend — briefing · references · │ │ sourced editor · export │ └─────────────────────────────────────────┘ │ ▼ Export ─▶ Word .dotx / InDesign IDML (Mac)
Pipeline agentique : de la génération à l'IDMLAgentische Pipeline: von der Generierung zum IDMLAgentic pipeline: from generation to IDML
Le traitement d'un livrable est pris en charge par une chaîne d'agents spécialisés. Chaque agent produit une sortie typée que le suivant consomme ; la compilation finale de la mise en page est confiée à un module déterministe (pas de LLM) pour garantir la fidélité au gabarit.Die Verarbeitung eines Ergebnisses übernimmt eine Kette spezialisierter Agenten. Jeder Agent erzeugt eine typisierte Ausgabe, die der nächste konsumiert; die endgültige Layout-Kompilierung übernimmt ein deterministisches Modul (kein LLM), um die Vorlagentreue zu garantieren.Processing a deliverable is handled by a chain of specialised agents. Each agent produces a typed output the next one consumes; the final layout compilation is entrusted to a deterministic module (no LLM) to guarantee template fidelity.
[ Prompt utilisateur ] │ ▼ ┌──────────────────────────────────────────────────────┐ │ AGENT 1 — Rédacteur & Sourcing (LLM · RAG) │ │ ➔ interroge la base vectorielle & le web │ │ ➔ génère le contenu métier brut, ancré sur les sources │ └────────────────────────┬─────────────────────────┘ │ texte + citations ▼ ┌──────────────────────────────────────────────────────┐ │ AGENT 2 — Structurateur & Sémantique (LLM) │ │ ➔ découpe le texte en un JSON sémantique strict │ │ ➔ sépare : { titre, corps_texte, marginale, source } │ └────────────────────────┬─────────────────────────┘ │ JSON structuré ▼ ┌──────────────────────────────────────────────────────┐ │ MODULE 3 — Compilateur IDML (code déterministe / SDK) │ │ ➔ lit le gabarit .idml d'ecoptima │ │ ➔ injecte le JSON dans les bonnes briques XML (Stories) │ │ ➔ associe les ParagraphStyles (EB_Grundtext, etc.) │ └────────────────────────┬─────────────────────────┘ │ ▼ [ Fichier .idml final ]
[ Nutzer-Prompt ] │ ▼ ┌──────────────────────────────────────────────────────┐ │ AGENT 1 — Redaktion & Sourcing (LLM · RAG) │ │ ➔ durchsucht Vektorspeicher & Web │ │ ➔ erzeugt rohen Fachinhalt, an Quellen verankert │ └────────────────────────┬─────────────────────────┘ │ Text + Quellen ▼ ┌──────────────────────────────────────────────────────┐ │ AGENT 2 — Strukturierung & Semantik (LLM) │ │ ➔ zerlegt den Text in striktes semantisches JSON │ │ ➔ trennt: { Titel, Fliesstext, Marginalie, Quelle } │ └────────────────────────┬─────────────────────────┘ │ strukturiertes JSON ▼ ┌──────────────────────────────────────────────────────┐ │ MODUL 3 — IDML-Compiler (deterministischer Code / SDK) │ │ ➔ liest die .idml-Vorlage von ecoptima │ │ ➔ spritzt JSON in die richtigen XML-Bausteine (Stories) │ │ ➔ ordnet ParagraphStyles zu (EB_Grundtext usw.) │ └────────────────────────┬─────────────────────────┘ │ ▼ [ finale .idml-Datei ]
[ User prompt ] │ ▼ ┌──────────────────────────────────────────────────────┐ │ AGENT 1 — Drafting & Sourcing (LLM · RAG) │ │ ➔ queries the vector store & the web │ │ ➔ generates raw domain content, grounded on sources │ └────────────────────────┬─────────────────────────┘ │ text + citations ▼ ┌──────────────────────────────────────────────────────┐ │ AGENT 2 — Structuring & Semantics (LLM) │ │ ➔ splits the text into strict semantic JSON │ │ ➔ separates: { title, body_text, marginal, source } │ └────────────────────────┬─────────────────────────┘ │ structured JSON ▼ ┌──────────────────────────────────────────────────────┐ │ MODULE 3 — IDML Compiler (deterministic code / SDK) │ │ ➔ reads ecoptima's .idml template │ │ ➔ injects JSON into the correct XML blocks (Stories) │ │ ➔ maps ParagraphStyles (EB_Grundtext, etc.) │ └────────────────────────┬─────────────────────────┘ │ ▼ [ final .idml file ]
La séparation nette entre agents LLM (raisonnement, langue) et module déterministe (mise en page) est délibérée : elle isole la partie créative, où le modèle apporte de la valeur, de la partie mécanique, où l'on exige une reproductibilité exacte. C'est aussi ce qui rend l'architecture évolutive : un nouveau format d'export se traite en ajoutant un module compilateur, sans toucher aux agents.Die klare Trennung zwischen LLM-Agenten (Argumentation, Sprache) und deterministischem Modul (Layout) ist bewusst gewählt: Sie trennt den kreativen Teil, in dem das Modell Wert schafft, vom mechanischen Teil, der exakte Reproduzierbarkeit verlangt. Das macht die Architektur zugleich erweiterbar: Ein neues Exportformat wird durch Hinzufügen eines Compiler-Moduls abgedeckt, ohne die Agenten anzufassen.The clear separation between LLM agents (reasoning, language) and deterministic module (layout) is deliberate: it isolates the creative part, where the model adds value, from the mechanical part, which demands exact reproducibility. It is also what makes the architecture extensible: a new export format is handled by adding a compiler module, without touching the agents.
5Outils techniquesTechnische WerkzeugeTechnical tools
Stack envisagéeVorgesehener StackEnvisaged stack
Chaque brique porte, le cas échéant, ses deux options alignées sur la décision d'hébergement (Lot 0) : A = souverain auto-hébergé · B = managé Azure. Les choix sans mention sont indépendants de cet arbitrage.Wo relevant trägt jede Komponente ihre zwei Optionen entsprechend der Hosting-Entscheidung (Lot 0): A = souverän selbstgehostet · B = managed Azure. Optionen ohne Kennzeichnung sind unabhängig davon.Where relevant, each component carries its two options aligned with the hosting decision (Lot 0): A = sovereign self-hosted · B = managed Azure. Choices without a label are independent of that trade-off.
HébergementHostingHosting
- Hidora / Hikube (CH, GPU)Hidora / Hikube (CH, GPU)Hidora / Hikube (CH, GPU)Opt. A
- Azure Switzerland NorthAzure Switzerland NorthAzure Switzerland NorthOpt. B
- Stockage objets S3Objektspeicher S3S3 object storage
- Coffre à secretsSecrets-VaultSecrets vault
Ingestion / OCRIngestion / OCRIngestion / OCR
- MinerU (auto-hébergé)MinerU (selbstgehostet)MinerU (self-hosted)Opt. A
- Azure Document IntelligenceAzure Document IntelligenceAzure Document IntelligenceOpt. B
- Extraction PDF nativeNative PDF-ExtraktionNative PDF extraction
Recherche / RAGSuche / RAGRetrieval / RAG
- Base vectorielle (Qdrant…)Vektorspeicher (Qdrant…)Vector store (Qdrant…)
- Embeddings (bge-m3)Embeddings (bge-m3)Embeddings (bge-m3)
- Reranker (bge-reranker)Reranker (bge-reranker)Reranker (bge-reranker)
- BM25 (lexical)BM25 (lexikalisch)BM25 (lexical)
Recherche webWebsucheWeb search
- SerperSerperSerper
- TavilyTavilyTavily
- Brave Search APIBrave Search APIBrave Search API
Génération LLMLLM-GenerierungLLM generation
- LLM open-source auto-hébergéOpen-Source-LLM selbstgehostetSelf-hosted open-source LLMOpt. A
- GPT-4o via AzureGPT-4o via AzureGPT-4o via AzureOpt. B
- Orchestration RAG / agentRAG-/Agent-OrchestrierungRAG / agent orchestration
Export documentsDokumenten-ExportDocument export
- Gabarit Word .dotxWord-Vorlage .dotxWord .dotx template
- Génération IDML (XML InDesign)IDML-Generierung (InDesign-XML)IDML generation (InDesign XML)
SynchronisationSynchronisationSynchronisation
- Sync-Agent macOSmacOS Sync-AgentmacOS Sync-Agent
- Accès SMB/AFPSMB/AFP-ZugriffSMB/AFP access
- Chiffrement + deltaVerschlüsselung + DeltaEncryption + delta
FrontendFrontendFrontend
- Application web (navigateur)Web-Anwendung (Browser)Web application (browser)
- Éditeur texte / marginaliaEditor Text / MarginalienBody/marginalia editor
- Mockup existant comme référenceBestehendes Mockup als ReferenzExisting mockup as reference
Exploitation / sécuritéBetrieb / SicherheitOperations / security
- RBAC + journalisationRBAC + LoggingRBAC + logging
- Supervision / monitoringÜberwachung / MonitoringSupervision / monitoring
- Sauvegarde / repriseBackup / WiederherstellungBackup / recovery
- Serving LLMLLM-ServingLLM servingOpt. A
Note : les outils sont cités à titre indicatif ; une partie du socle (RAG, base vectorielle, génération sourcée) capitalise sur un savoir-faire éprouvé en interne. Les noms précis seront figés en M0 selon la décision d'hébergement.Hinweis: Die Werkzeuge sind indikativ genannt; ein Teil der Basis (RAG, Vektorspeicher, quellenbasierte Generierung) baut auf erprobtem internem Know-how auf. Die genauen Namen werden in M0 je nach Hosting-Entscheidung festgelegt.Note: tools are listed indicatively; part of the foundation (RAG, vector store, sourced generation) builds on proven in-house expertise. Exact names will be fixed in M0 depending on the hosting decision.
6Milestones
Découpage de l'exécutionAufteilung der UmsetzungExecution breakdown
Estimations en jours-homme, calibrées à la productivité de l'équipe. ⚠ = forte incertitude, à réaffiner après M0.Schätzungen in Personentagen, kalibriert auf die Produktivität des Teams. ⚠ = hohe Unsicherheit, nach M0 zu verfeinern.Estimates in person-days, calibrated to the team's productivity. ⚠ = high uncertainty, to be refined after M0.
- ContenuInhaltScope
- Atelier de cadrage, analyse d'un échantillon (ratio scannés/numériques), mini-spike IDML sur gabarit réel, choix d'outils, environnement cloud, socle applicatif.Kick-off-Workshop, Stichprobenanalyse (Verhältnis gescannt/digital), IDML-Mini-Spike auf realer Vorlage, Werkzeugwahl, Cloud-Umgebung, Anwendungsbasis.Kick-off workshop, sample analysis (scanned/digital ratio), IDML mini-spike on a real template, tooling choices, cloud environment, application foundation.
- RôleRolleRole
- Absorbe la mesure des inconnues et pose les fondations du MVP. Resserre M1, M4, M6.Absorbiert die Messung der Unbekannten und legt die Produktbasis. Verengt M1, M4, M6.Absorbs the measurement of unknowns and lays the product foundations. Tightens M1, M4, M6.
- ContenuInhaltScope
- Pipeline OCR/extraction à l'échelle ~3 000 docs, cas difficiles, nettoyage, dédoublonnage, métadonnées, chunking, embeddings, indexation.OCR-/Extraktions-Pipeline im Massstab ~3'000 Dok., schwierige Fälle, Bereinigung, Deduplizierung, Metadaten, Chunking, Embeddings, Indexierung.OCR/extraction pipeline at ~3,000-doc scale, difficult cases, cleaning, de-duplication, metadata, chunking, embeddings, indexing.
- RisqueRisikoRisk
- Dépend de la saleté réelle du corpus. Le choix d'outil OCR ne pèse que ~10 % ; l'essentiel est le nettoyage.Hängt vom tatsächlichen Zustand des Bestands ab. Die OCR-Werkzeugwahl macht nur ~10 % aus; der Grossteil ist die Bereinigung.Depends on the actual state of the corpus. The OCR tool choice weighs only ~10 %; cleaning is the bulk.
- ContenuInhaltScope
- Recherche sémantique + lexicale (BM25) + fusion hybride, intégration API web, filtrage pertinence, restitution unifiée, tuning allemand technique.Semantische + lexikalische Suche (BM25) + hybride Fusion, Web-API-Integration, Relevanzfilterung, einheitliche Rückgabe, Tuning für Fachdeutsch.Semantic + lexical (BM25) retrieval + hybrid fusion, web API integration, relevance filtering, unified restitution, technical-German tuning.
- ContenuInhaltScope
- Intégration LLM + RAG, prompt engineering (citation par paragraphe), détection du non-sourcé, nomenclatures cantonales, spécialisation par type de livrable, séparation texte/marginalia.LLM- + RAG-Integration, Prompt-Engineering (Zitat pro Absatz), Erkennung unbelegter Stellen, kantonale Nomenklaturen, Spezialisierung je Ergebnistyp, Trennung Text/Marginalien.LLM + RAG integration, prompt engineering (per-paragraph citation), unsourced detection, cantonal nomenclatures, per-deliverable specialisation, body/marginalia separation.
- ContenuInhaltScope
- Agent macOS (SMB/AFP, chiffrement, delta), planification, extraction métadonnées, tests sur l'infra réelle.macOS-Agent (SMB/AFP, Verschlüsselung, Delta), Planung, Metadaten-Extraktion, Tests auf realer Infrastruktur.macOS agent (SMB/AFP, encryption, delta), scheduling, metadata extraction, testing on the real infrastructure.
- ContenuInhaltScope
- Analyse du gabarit, moteur d'export DOCX, mapping des styles, tests de fidélité.Vorlagenanalyse, DOCX-Export-Engine, Stil-Mapping, Treuetests.Template analysis, DOCX export engine, style mapping, fidelity testing.
- ContenuInhaltScope
- Génération IDML, mapping styles/objets, routage texte courant / marginalia dans les bons cadres, tests sur Mac ecoptima.IDML-Generierung, Stil-/Objekt-Mapping, Routing Fliesstext / Marginalien in die richtigen Rahmen, Tests auf ecoptima-Macs.IDML generation, style/object mapping, routing body text / marginalia into the correct frames, testing on ecoptima Macs.
- RisqueRisikoRisk
- Poste le plus incertain. Le mini-spike M0 valide la faisabilité avant engagement ferme ; prévoir un jalon go/no-go.Unsicherste Position. Der M0-Mini-Spike validiert die Machbarkeit vor fester Zusage; Go/No-Go-Meilenstein vorsehen.Most uncertain item. The M0 mini-spike validates feasibility before firm commitment; plan a go/no-go gate.
- ContenuInhaltScope
- Briefing, sélection de références, éditeur avancé texte/marginalia, export multi-format, câblage bout-en-bout, polissage UX.Briefing, Referenzauswahl, erweiterter Editor Text/Marginalien, Multi-Format-Export, End-to-End-Verdrahtung, UX-Feinschliff.Briefing, reference selection, advanced body/marginalia editor, multi-format export, end-to-end wiring, UX polish.
- ContenuInhaltScope
- RBAC, journalisation, sauvegarde/reprise, durcissement, revue conformité (résidence CH, LPD), documentation.RBAC, Logging, Backup/Wiederherstellung, Härtung, Compliance-Prüfung (CH-Datenhaltung, DSG), Dokumentation.RBAC, logging, backup/recovery, hardening, compliance review (CH residency, FADP), documentation.
- ContenuInhaltScope
- Serving LLM (débit, disponibilité), supervision du modèle. Disparaît si Option B (managé) : serving externalisé.LLM-Serving (Durchsatz, Verfügbarkeit), Modellüberwachung. Entfällt bei Option B (managed): Serving ausgelagert.LLM serving (throughput, availability), model supervision. Disappears under Option B (managed): serving externalised.
7SynthèseZusammenfassungSummary
Charge par milestoneAufwand je MilestoneEffort by milestone
| MilestoneMilestoneMilestone | IntituléTitelTitle | Bas (j/h)Min (PT)Low (pd) | Haut (j/h)Max (PT)High (pd) |
|---|---|---|---|
| M0 | Cadrage, dérisquage & socleRahmen, Risikominimierung & BasisScoping, de-risking & foundation | 6 | 10 |
| M1 | Ingestion & indexationIngestion & IndexierungIngestion & indexing | 10 | 16 |
| M2 | Recherche interne + webInterne + Web-SucheInternal + web retrieval | 7 | 11 |
| M3 | Génération sourcéeQuellenbasierte GenerierungSourced generation | 8 | 13 |
| M4 | Sync-Agent Mac → CloudSync-Agent Mac → CloudSync-Agent Mac → Cloud | 6 | 9 |
| M5 | Export Word .dotxWord-.dotx-ExportWord .dotx export | 3 | 4,5 |
| M6 | Export InDesign IDMLInDesign-IDML-ExportInDesign IDML export | 7,5 | 12 |
| M7 | Frontend completVollständiges FrontendComplete frontend | 7 | 11 |
| M8 | Sécurité & productionSicherheit & Go-liveSecurity & production | 5,5 | 9,5 |
| M9 | Exploitation LLM (cond.)LLM-Betrieb (bed.)LLM operations (cond.) | 2,5 | 4,5 |
| TOTAL | Total projetGesamtprojektWhole project | ~63 | ~100,5 |
Développement pur, hors coordination et congés. M9 conditionnel à l'option d'hébergement. Ne pas convertir mécaniquement en délai : dépendances M0 → M1 → M2/M3, et M3 (séparation marginalia) → M6.Reine Entwicklung, ohne Koordination und Abwesenheiten. M9 abhängig von der Hosting-Option. Nicht mechanisch in Kalenderzeit umrechnen: Abhängigkeiten M0 → M1 → M2/M3 und M3 (Marginalien-Trennung) → M6.Development effort only, excluding coordination and leave. M9 conditional on the hosting option. Do not convert mechanically into calendar time: dependencies M0 → M1 → M2/M3, and M3 (marginalia separation) → M6.
Effort summary : du kickoff à la livraisonEffort Summary: vom Kickoff bis zur LieferungEffort summary: from kickoff to delivery
Scénario idéal : l'ensemble des milestones, IDML compris, tient dans les 2 mois (~65 j/h). Les postes à risque (M1 ingestion, M4 sync-agent Mac, M6 IDML, M8 mise en production) portent une extension probable, hachurée, qui s'échelonne sur le mois 3 (~100 j/h), la mise en production fermant la fenêtre. Le frontend (M7) est développé tôt, en semaines 3 à 6, sur données simulées ; le sync-agent Mac (M4) démarre au début du mois 2.Idealszenario: Alle Milestones, inklusive IDML, bleiben innerhalb von 2 Monaten (~65 PT). Die Risikopositionen (M1 Ingestion, M4 Sync-Agent Mac, M6 IDML, M8 Go-live) tragen eine wahrscheinliche, schraffierte Verlängerung, die über den 3. Monat gestaffelt ist (~100 PT), wobei das Go-live das Fenster schliesst. Das Frontend (M7) wird früh entwickelt, in den Wochen 3 bis 6, auf simulierten Daten; der Sync-Agent Mac (M4) startet zu Beginn des 2. Monats.Ideal scenario: all milestones, IDML included, fit within 2 months (~65 pd). The risk items (M1 ingestion, M4 Mac sync-agent, M6 IDML, M8 go-live) carry a likely, hatched extension staggered across month 3 (~100 pd), with go-live closing the window. The frontend (M7) is built early, in weeks 3 to 6, on simulated data; the Mac sync-agent (M4) starts at the beginning of month 2.
Séquencement indicatif sur 12 semaines. Le recouvrement des bandes reflète le travail simultané. La fenêtre 2–3 mois suppose un effectif constant d'environ 2 à 3 personnes en parallèle : à ~65 j/h le projet tient en 2 mois ; à ~100 j/h il s'étend vers 3 mois selon le débordement des postes à risque.Indikative Abfolge über 12 Wochen. Die Überlappung der Balken spiegelt die gleichzeitige Arbeit. Das 2–3-Monats-Fenster setzt ein konstantes Team von etwa 2 bis 3 Personen parallel voraus: bei ~65 PT hält das Projekt 2 Monate; bei ~100 PT dehnt es sich je nach Überschreitung der Risikopositionen Richtung 3 Monate.Indicative sequencing over 12 weeks. The overlapping bars reflect simultaneous work. The 2–3 month window assumes a constant team of about 2 to 3 people in parallel: at ~65 pd the project fits in 2 months; at ~100 pd it extends toward 3 months depending on the risk items' overrun.
8Premier échangeErster AustauschKick-off
Questions à clarifierZu klärende FragenQuestions to clarify
9Notre savoir-faireUnser Know-howOur track record
Des briques déjà en productionBausteine, die bereits produktiv laufenBuilding blocks already in production
Les composants évoqués en section 2 ne sont pas théoriques. Ils proviennent de plateformes que nous avons conçues, mises en production et que nous exploitons aujourd'hui. Les trois références ci-dessous sont celles dont le socle technique recoupe le plus directement le projet ecoptima.Die in Abschnitt 2 genannten Komponenten sind nicht theoretisch. Sie stammen aus Plattformen, die wir entworfen, in Betrieb genommen haben und heute betreiben. Die drei folgenden Referenzen sind jene, deren technische Basis sich am direktesten mit dem ecoptima-Projekt deckt.The components mentioned in section 2 are not theoretical. They come from platforms we designed, put into production and operate today. The three references below are those whose technical foundation overlaps most directly with the ecoptima project.
Espace de travail IA souverain, entièrement hébergé en Suisse et exploité comme produit SaaS complet. Chaque utilisateur y dispose de sa propre base de connaissances privée : il y dépose ses documents, les interroge en langage naturel et obtient des réponses rattachées à leurs sources. L'ensemble de la chaîne, ingestion, découpage, indexation vectorielle, recherche et restitution, est la nôtre. La plateforme se décline aussi en instance dédiée à une seule entreprise, intégrée à son système d'information en un à deux jours.Souveräner KI-Arbeitsplatz, vollständig in der Schweiz gehostet und als vollwertiges SaaS-Produkt betrieben. Jede Person verfügt über eine eigene, private Wissensbasis: Dokumente werden abgelegt, in natürlicher Sprache abgefragt, und die Antworten sind an ihre Quellen gebunden. Die gesamte Kette, Ingestion, Chunking, Vektorindexierung, Suche und Rückgabe, stammt von uns. Die Plattform ist auch als dedizierte Instanz für ein einzelnes Unternehmen verfügbar, in ein bis zwei Tagen in dessen IT integriert.Sovereign AI workspace, entirely hosted in Switzerland and operated as a complete SaaS product. Every user has their own private knowledge base: they upload their documents, query them in natural language and get answers tied to their sources. The whole chain, ingestion, chunking, vector indexing, retrieval and restitution, is ours. The platform also comes as a dedicated single-company instance, integrated with its information system in one to two days.
Écosystème de onze agents IA déployés sur l'infrastructure du client, répartis en deux familles : génération de tests et automatisation du support technique. Chaque agent est branché sur la stack existante de l'éditeur, gestion de code, ticketing, documentation et messagerie interne, et travaille sous validation humaine : aucun agent ne publie ni ne fusionne quoi que ce soit sans l'accord explicite de l'équipe.Ökosystem aus elf KI-Agenten, auf der Infrastruktur des Kunden betrieben und in zwei Familien gegliedert: Testgenerierung und Automatisierung des technischen Supports. Jeder Agent ist an den bestehenden Stack angebunden, Code-Verwaltung, Ticketing, Dokumentation und interne Kommunikation, und arbeitet unter menschlicher Freigabe: kein Agent veröffentlicht oder merged etwas ohne ausdrückliche Zustimmung des Teams.Ecosystem of eleven AI agents deployed on the client's own infrastructure, split into two families: test generation and technical-support automation. Each agent plugs into the vendor's existing stack, code management, ticketing, documentation and internal messaging, and works under human validation: no agent publishes or merges anything without the team's explicit approval.
Agent conversationnel SaaS qui accompagne chaque collaborateur individuellement, à partir d'une lecture multi-axes de son profil. Le système s'appuie sur un corpus de connaissances propriétaire très spécifique et sur l'entraînement d'un modèle sur mesure, afin que les réponses restent dans le cadre méthodologique du client plutôt que dans la culture générale d'un modèle générique. C'est exactement l'enjeu que pose ici la variation des nomenclatures cantonales.Konversationeller SaaS-Agent, der jede Mitarbeiterin und jeden Mitarbeiter individuell begleitet, ausgehend von einer mehrdimensionalen Profilanalyse. Das System stützt sich auf einen sehr spezifischen, proprietären Wissensbestand und auf das Training eines massgeschneiderten Modells, damit die Antworten im methodischen Rahmen des Kunden bleiben und nicht im Allgemeinwissen eines generischen Modells. Genau diese Frage stellt sich hier bei den unterschiedlichen kantonalen Nomenklaturen.SaaS conversational agent that supports each employee individually, based on a multi-axis reading of their profile. The system relies on a highly specific proprietary knowledge corpus and on training a bespoke model, so that answers stay within the client's methodological framework rather than a generic model's general knowledge. That is precisely the issue raised here by varying cantonal nomenclatures.
10Budget
Enveloppe et options, à configurerRahmen und Optionen, konfigurierbarEnvelope and options, configurable
Le chiffrage ci-dessous découle directement de la charge établie en section 7, valorisée à 600 CHF par jour. Le curseur et les options recalculent l'enveloppe en direct. Montants hors TVA, indicatifs, à confirmer à l'issue de M0.Die folgende Kalkulation leitet sich direkt aus dem in Abschnitt 7 ermittelten Aufwand ab, bewertet mit 600 CHF pro Tag. Regler und Optionen berechnen den Rahmen laufend neu. Beträge exkl. MWST, indikativ, nach M0 zu bestätigen.The costing below derives directly from the effort established in section 7, valued at 600 CHF per day. The slider and options recompute the envelope live. Amounts excl. VAT, indicative, to be confirmed after M0.
Périmètre de développementEntwicklungsumfangDevelopment scope
Pilotage & coordinationSteuerung & KoordinationCoordination & project management
Infrastructure, coût mensuelInfrastruktur, monatliche KostenInfrastructure, monthly cost
Support Adopt-AI, coût mensuelAdopt-AI Support, monatliche KostenAdopt-AI support, monthly cost
Ce configurateur est un outil d’arbitrage, pas une offre. Il rend visible l’effet de chaque décision sur l’enveloppe : périmètre, langue du pilotage, niveau d’infrastructure et intensité du support. L’offre ferme sera émise après M0, une fois les postes à risque mesurés.Dieser Konfigurator ist ein Entscheidungswerkzeug, kein Angebot. Er macht die Wirkung jeder Entscheidung auf den Rahmen sichtbar: Umfang, Sprache der Steuerung, Infrastrukturniveau und Supportintensität. Das verbindliche Angebot folgt nach M0, sobald die Risikopositionen gemessen sind.This configurator is a decision-making tool, not an offer. It makes the effect of each decision on the envelope visible: scope, language of coordination, infrastructure level and support intensity. The firm offer will be issued after M0, once the risk items have been measured.
Voir le générateur en fonctionnementDen Generator in Aktion sehenSee the generator in action
Prototype cliquable du générateur de savoir et de textes : recherche dans les archives, génération sourcée, panneau de citations et export. Il s’ouvre dans une seconde fenêtre, sans quitter ce document.Klickbarer Prototyp des KI-Wissens- und Textgenerators: Recherche im Archiv, quellenbasierte Generierung, Zitatpanel und Export. Öffnet sich in einem zweiten Fenster, ohne dieses Dokument zu verlassen.Clickable prototype of the knowledge & text generator: archive retrieval, sourced generation, citation panel and export. It opens in a second window, without leaving this document.