Aller au contenu

Bienvenue sur Tock : une plateforme conversationnelle ouverte, avec ou sans IA générative

Tock (The Open Conversation Kit) est une plateforme complète et ouverte pour construire des assistants conversationnels : répondre à partir de vos documents avec le LLM de votre choix (RAG), dérouler des parcours maîtrisés écrits par vos équipes, ou combiner les deux.

Contrairement à la plupart des solutions conversationnelles, Tock ne dépend pas d'API tierces, bien qu'il soit possible d'en intégrer. L'utilisateur choisit les composants qu'il embarque, y compris des LLM locaux, et peut ainsi conserver la maîtrise de ses modèles et données conversationnelles.

Tock est utilisé en production depuis 2016 par SNCF (assistant OUI.sncf, aujourd'hui SNCF Connect) (Web/mobile, réseaux sociaux, enceintes connectées) et de plus en plus d'organisations (ENEDIS, Orange, Crédit Mutuel Arkéa...).

L'ensemble du code source est disponible sur GitHub sous licence Apache 2.

Avec LLM, sans LLM, ou les deux

Avec LLM Sans LLM Mixte
Principe Le RAG répond à partir de vos documents Le modèle NLU détecte l'intention, des stories et des FAQ répondent Le modèle NLU oriente chaque phrase vers une story ou vers le RAG
Réponses Générées, avec leurs sources Écrites et validées par vos équipes Écrites pour les parcours sensibles, générées pour le reste
Adapté à Bases documentaires larges, questions ouvertes Parcours transactionnels, contextes réglementés, bots embarqués sans Internet, pas de coût d'inférence La plupart des assistants en production
Pour commencer Tutoriel RAG Premier bot avec Tock Studio Comment le bot répond

L'IA générative est une brique optionnelle : l'orchestrateur Gen AI n'est déployé que si vous l'utilisez, et un bot existant peut activer le RAG depuis Tock Studio.

Aperçu

Des guides, supports et une video de démonstration (20 minutes, en Anglais) sont également disponibles :

Vidéo Open Source Experience 2021

Fonctionnalités

  • IA générative (voir Gen AI) :
  • Interfaces Tock Studio :
    • Configuration des fonctionnalités Gen AI, de la base de connaissances et des prompts
    • Construction de parcours conversationnels, de FAQ et d'arbres de décision sans code
    • Support de l'internationalisation (i18n) pour les bots multilingues
    • Suivi des conversations, tendances / parcours utilisateurs (Analytics) et qualité des réponses
  • Plateforme NLU complète (Natural Language Understanding ou TAL en français), qui oriente chaque phrase vers un parcours ou vers le RAG :
  • Assistants autonomes ou intégrés à des sites Web, applications mobiles, réseaux sociaux, enceintes connectées etc. sans dépendre d'un canal particulier
  • Frameworks pour développer des parcours complexes et intégrer des services tiers :
    DSLs en Kotlin, Javascript/Nodejs, Python et API tous langages (voir Bot API)
  • Nombreux connecteurs texte et voix : Messenger, WhatsApp, Teams, Slack, Google Chat, Mattermost, iAdvize, Alcmeon, clients compatibles OpenAI, un connecteur Web avec des kits React et Vue... (voir canaux)
  • Installation cloud ou on-premise, avec ou sans Docker, sur Kubernetes, même "embarqué" sans Internet

Réponse RAG avec ses sources, testée dans Tock Studio

Technologies

L'ensemble de la plateforme peut fonctionner conteneurisée (implémentation Docker fournie).

La plateforme applicative par défaut est la JVM. Le langage de référence est Kotlin mais d'autres langages de programmation peuvent être utilisés via les API mises à disposition.

Côté serveur, Tock utilise Vert.x et MongoDB (alt. DocumentDB). Différentes briques NLU peuvent être utilisées, mais Tock n'a pas de dépendance forte envers l'une d'elles.

Les interfaces graphiques Tock Studio sont écrites avec Angular en Typescript.

L'orchestrateur Gen AI est un service Python construit avec FastAPI et LangChain, qui appelle les fournisseurs de LLM, d'embeddings et de bases vectorielles.

Des intégrations React et Vue sont fournies pour les interfaces Web.

Démarrer...

*NLU: Natural Language Understanding

Chat with Tock
×