Principes & Valeurs
Pourquoi ces principes¶
SalamBot opère dans un contexte marocain complexe : multilingue, réglementé, avec des attentes élevées en matière de sécurité et de qualité. Ces principes directeurs guident toutes les décisions de conception, de mise en œuvre et de priorisation.
Ils sont opposables et testables. Chaque fonctionnalité, chaque choix technique, chaque compromis doit pouvoir être évalué à l'aune de ces principes. Ils évoluent avec le produit mais restent la référence stable pour les arbitrages.
Principes fondamentaux¶
Local-first & multilingue¶
- Darija/Arabizi/FR/AR d'abord ; code-switching pris en charge nativement
- UX et messages adaptés au registre administratif marocain
- Détection automatique de langue sans friction utilisateur
Sécurité & conformité par défaut¶
- Conformité RGPD et loi 09-08 (CNDP) intégrée dès la conception
- Minimisation des données, chiffrement en transit/au repos, journaux d'audit
- Rétention 30–90 jours configurable par tenant ; PII masking à l'ingestion et dans les logs
- Contrôles de sécurité automatisés en CI/CD
Véracité ancrée (RAG-first)¶
- Réponses appuyées par sources ; préférer « je ne sais pas » si no-hit (fallback UX explicite)
- Citations/canaux activables par policy organisationnelle
- Pas de génération créative sans ancrage documentaire
Humain dans la boucle¶
- Escalade claire si confiance basse ou risque sécurité détecté
- Transfert avec contexte minimal requis pour continuité
- Seuils de confiance configurables par tenant
SLO de latence comme contrainte produit¶
- Budgets p95 : ingestion 150ms, NLU 200ms, retrieval 500ms, TTFB LLM 600ms, e2e ≤ 2500ms
- Dégradations contrôlées (mode light, réponses brèves) avant échec
- Monitoring temps réel avec alertes sur dépassements
Isolation par tenant¶
- Aucune fuite inter-tenant (données, embeddings, policies)
- Contrôles en CI : tests no-hit et faux positifs obligatoires
- Séparation logique obligatoire ; séparation physique optionnelle par tenant/région selon le mode de déploiement
Observabilité-by-design¶
- Traçage corrélé via correlation_id (OpenTelemetry: trace_id/span_id) sur toute la chaîne
- Métriques clés exposées (latence, qualité, sécurité) en temps réel
- Logs structurés avec niveaux de sensibilité et masquage PII
Accessibilité & inclusivité¶
- Support AR/FR/Darija, droite-à-gauche, Arabizi sans discrimination
- Langage clair et respectueux, éviter les biais culturels
- Interface adaptable aux différents niveaux de littératie numérique
- Conformité visée : WCAG 2.1 AA
Modularité & réversibilité¶
- Composants activables à la carte ; choix LLM remplaçable
- Décisions sensibles documentées (ADR) avec rationale
- APIs stables permettant l'évolution indépendante des modules
Efficience & coût¶
- Optimiser tokens/contexte ; caches intelligents ; modèles adaptés au besoin
- Objectif throughput et coût/interaction suivis et optimisés
- Dégradation gracieuse sous charge plutôt qu'échec brutal
Règles d'arbitrage (trade-offs) sous contrainte¶
Qualité vs latence : Respecter les budgets p95 ; réduire le contexte avant de changer de modèle. La latence est une contrainte produit non négociable.
Couverture vs sécurité : La sécurité prime toujours. Bloquer ou escalader plutôt que risquer une réponse inappropriée ou non conforme.
Rapidité de livraison vs modularité : Conserver l'interface stable (contrats I/O) et déposer un ADR. La dette technique doit être documentée et planifiée.
Coût vs performance : Optimiser d'abord l'utilisation (cache, contexte), puis ajuster les modèles. Le coût par interaction est un KPI de pilotage.
Non-objectifs (V1)¶
SalamBot V1 se concentre sur l'excellence conversationnelle. Les fonctionnalités suivantes sont explicitement exclues :
- Génération créative marketing longue-forme
- BI/prédictif avancé ou analytics complexes
- Voix (STT/TTS) native intégrée
- Intégrations legacy exhaustives (approche sélective)
- Collaboration d'équipe ou workflow management
- Personnalisation comportementale avancée
Comment proposer/mettre à jour un principe¶
Processus de modification¶
- Créer une PR modifiant ce fichier + un ADR résumé justifiant le changement
- Lier mesures d'impact (qualité, sécurité, latence) et tests de validation
- Validation conjointe Product/Tech/Qualité ; étiquette
principle-change - Mise à jour des tests/guardrails si nécessaire post-merge
Critères d'acceptation¶
- Impact mesurable sur les KPIs produit
- Compatibilité avec l'architecture existante
- Testabilité et opposabilité du principe
- Consensus des parties prenantes clés
Références croisées¶
Mise en pratique : Guide de démarrage rapide
Architecture technique : Composants détaillés
Flux opérationnels : Séquences & flux
Mesure qualité : Qualité et évaluation
Intégration : Référence API
Ces principes constituent le socle de gouvernance produit SalamBot. Ils évoluent avec le produit mais garantissent la cohérence des décisions dans un contexte marocain exigeant.