SlideShare a Scribd company logo
Multi-Platform Chatbot
Modeling and Deployment with
the Jarvis Framework
Gwendal Daniel, Jordi Cabot, Laurent Deruelle & Mustapha Derras
Xatkit
‘‘Chatbots are everywhere’’
- Some dude trying to get his startup funded
Customer Service
Education e-commerce Smart House
Let’s create a chatbot to help
newcomers to write issues on Github!
Alright! It’s just a set of questions &
answers, this will be pretty simple!
Narrator It wasn’t.
Once upon a time
What went wrong?
if(‘’ I have an issue’’) {
return ‘’In which repository?’’
}
Chatbots are complex systems
Conversation Logic
Text Processing
External Services
Messaging
Platforms
Deployment
Evolution
Maintenance
Tests
Chatbot applications
In the end what do we really want to do?
User Intent
Action Parameters
If the User Wants To Open Issue
Reply « In which repository? » on Slack
Platform
Xatkit Framework
• Raise the level of abstraction at what chatbots are defined
• Focus on the core logic of the chatbot
• Conversation and user interactions
• Action computations
• Independent from specific implementation technologies
• Automatize the deployment and execution of the modeled chatbot
• Deploy over multiple platforms
• Execute the chatbot logic
Xatkit Framework
Chatbot
Designer
Intent Recognition Providers
(platform-specific)
Platorm Package
Intent Package
Xatkit Modeling Language
Chatbot
User
Instant
Messaging
Platforms
Xatkit Runtime
Execution Package
uses
uses
Platform-independent
chatbot definition
External
Services
Deployment
Configuration
Platform
Designer
Xatkit Framework
• Intent language package
Library Example
intent OpenNewIssue {
inputs {
‘’I want to create an issue’’
‘’Open an issue’’
}
}
intent SpecifyRepository {
inputs {
‘’In repository MyRepo’’
}
creates context Repository {
sets value name from fragment
‘’MyRepo’’ (entity any)
}
}
Xatkit Framework
• Platform language package
Abstract platform Chat
actions {
PostMessage(message, channel)
Reply(message)
}
}
Platform Slack extends Chat
Platform Discord extends Chat
Platform Github
actions {
OpenIssue(repository, title, content)
}
}
Xatkit Framework
• Execution language package
Import library Example
Import platform Slack
Import platform Discord
Import platform Github
Listen to Slack
on intent OpenNewIssue do
Slack.Reply(‘’Sure, I’ll help you to write
your issue! Which repository would you
like to report an issue for?’’)
on intent SpecifyRepository do
Slack.Reply(‘’Alright, your issue is related to
repository’’ + context(Repository).get(name))
[…]
Github.OpenIssue(context(Repository).get(name),
context(Issue).get(title),
context(Issue).get(content))
Discord.PostMessage(‘’A new issue has been opened in ’’
context(Repository).get(name))
Xatkit Framework Intent Recognition Providers
(platform-specific)
Platorm Package
Intent Package
Xatkit Modeling Language
Instant
Messaging
Platforms
Xatkit Runtime
Execution Package
uses
uses
Platform-independent
chatbot definition
External
Services
Deployment
Configuration
Chatbot
Designer Chatbot
User
Platform
Designer
Xatkit Framework
• Runtime component
• Generic event-based execution engine
• Platform-specific connectors
• Automatic deployment
• Execution life-cycle
• Inputs
• Chatbot model (defined with the Xatkit modeling language)
• Configuration file
Xatkit Framework
• Runtime configuration
• Provide deployment information
• NLP engine to use
• Credentials
• Authentication tokens
• Platform-specific properties (e.g. username, fallback urls, etc)
Xatkit Framework
• Runtime configuration
// Intent Recognition Provider Configuration
xatkit.intent.recognition = DialogFlow
xatkit.dialogflow.project = dialogflow_project_id
xatkit.dialogflow.credentials = key.json
// Platform configuration
xatkit.slack.credentials = slack_oauth_token
xatkit.discord.credentials = discord_credentials
xatkit.github.credentials = github_oauth_token
Tool Support
• Tooling
• Open source project (EPL v2)
• Available on Github
• Under development (~600 commits)
• Test-driven development (~350 tests)
• Forks and contributions more than welcome!
• Supported Platforms
• Github, Giphy, UML
• Slack, Discord, Web-based
• Intent recognition
• DialogFlow
• RegExp (To Extend)
Multi-Platform Chatbot Modeling and Deployment with the Xatkit Framework
Applications
• Chatbots to explain process models
• From Process Models to Chatbots - Anselmo López-Cuenca, Josep Carmona, Lluís Padró and Josep
Sànchez-Ferreres
• (Chat)bots to automatize existing processes
• Interactive FAQ for newcomers
• Develop research prototypes
Your amazing
tool
Xatkit Users
Future Work
• New platforms, actions, recognition engines …
• Chatbot generation
• From models, Web API, etc
• Chatbot + SPL =
• Generic events
• Real world use case
Summary
• An extensible framework to define and deploy chatbots
• DSL to specify intents, platforms, and execution models
• Automatic deployment over NLP engines and messaging platforms
• Chatbot execution management
https://github.com/xatkit-bot-platform

More Related Content

PPTX
Chatbot Tutorial - Create your first bot with Xatkit
PPTX
Création facile de chatbots - Créez votre chatbot en 20 minutes avec une plat...
PPTX
#OSSPARIS19 - Création facile de chatbots - Créez votre chatbot en 20 minutes...
PPTX
Chatbot ppt
PDF
GPT-2: Language Models are Unsupervised Multitask Learners
PDF
Chatbots and Deep Learning
ODP
Start a deep learning startup - tutorial
PDF
Julia language: inside the corporation
Chatbot Tutorial - Create your first bot with Xatkit
Création facile de chatbots - Créez votre chatbot en 20 minutes avec une plat...
#OSSPARIS19 - Création facile de chatbots - Créez votre chatbot en 20 minutes...
Chatbot ppt
GPT-2: Language Models are Unsupervised Multitask Learners
Chatbots and Deep Learning
Start a deep learning startup - tutorial
Julia language: inside the corporation

What's hot (17)

PDF
OWF14 - Big Data : The State of Machine Learning in 2014
PPTX
GoF Design patterns I: Introduction + Structural Patterns
PDF
Design Patterns Presentation - Chetan Gole
PPT
Design Patterns
PPT
JAVA design patterns and Basic OOp concepts
PPTX
ODSC East 2020 : Continuous_learning_systems
PPTX
Design patterns
PPTX
Let us understand design pattern
PPTX
Thomas Wolf "Transfer learning in NLP"
PPTX
Feature Engineering for NLP
PPT
Design patterns ppt
PDF
Thomas Wolf "An Introduction to Transfer Learning and Hugging Face"
PPTX
Design pattern
PDF
Design patterns
PPTX
Vitalii Braslavskyi - Declarative engineering
PDF
Raising the Bar
PDF
Rsqrd AI: ML Tooling at an AI-first Startup
OWF14 - Big Data : The State of Machine Learning in 2014
GoF Design patterns I: Introduction + Structural Patterns
Design Patterns Presentation - Chetan Gole
Design Patterns
JAVA design patterns and Basic OOp concepts
ODSC East 2020 : Continuous_learning_systems
Design patterns
Let us understand design pattern
Thomas Wolf "Transfer learning in NLP"
Feature Engineering for NLP
Design patterns ppt
Thomas Wolf "An Introduction to Transfer Learning and Hugging Face"
Design pattern
Design patterns
Vitalii Braslavskyi - Declarative engineering
Raising the Bar
Rsqrd AI: ML Tooling at an AI-first Startup
Ad

Similar to Multi-Platform Chatbot Modeling and Deployment with the Xatkit Framework (20)

PDF
Lessons learned from building a commercial bot development platform
PPTX
The Software Challenges of Building Smart Chatbots - ICSE'21
PPSX
Chatbot
PDF
Cómo construir un chatbot inteligente sin morir en el intento
PDF
Chatbot
PDF
How to build a Chatbot with Google's Dialogflow
PDF
Writing a slack chatbot mxlos
PDF
Writing a slack chatbot seattle
PDF
Identifying and solving enterprise problems
PPTX
Getting Started With bots
PDF
Building Enterprise Chat Bots
PDF
Chatbots for Brand Representation in Comparison with Traditional Websites
PPTX
ANIn Mumbai April 2023 | Development of AI/ML based chatbots - Fahed Ali Shaikh
PPTX
Chatbot Technology
PPTX
BotCommons: Metadata for Bots - Devoxx 2017
PPTX
Build a mobile chatbot with Xamarin
PDF
Writing a slack chatbot DrupalCampLA
PPTX
Chatbot using Python, mini project presentation
PDF
Chatbots DDD North2016
PDF
IRJET- Chatbot System for Latest Applications and Software
Lessons learned from building a commercial bot development platform
The Software Challenges of Building Smart Chatbots - ICSE'21
Chatbot
Cómo construir un chatbot inteligente sin morir en el intento
Chatbot
How to build a Chatbot with Google's Dialogflow
Writing a slack chatbot mxlos
Writing a slack chatbot seattle
Identifying and solving enterprise problems
Getting Started With bots
Building Enterprise Chat Bots
Chatbots for Brand Representation in Comparison with Traditional Websites
ANIn Mumbai April 2023 | Development of AI/ML based chatbots - Fahed Ali Shaikh
Chatbot Technology
BotCommons: Metadata for Bots - Devoxx 2017
Build a mobile chatbot with Xamarin
Writing a slack chatbot DrupalCampLA
Chatbot using Python, mini project presentation
Chatbots DDD North2016
IRJET- Chatbot System for Latest Applications and Software
Ad

More from Jordi Cabot (20)

PPTX
Who will create the languages of the future?
PPTX
Societal challenges of AI: biases, multilinguism and sustainability
PPTX
¿Cómo será el programador del futuro? ¿Tendremos trabajo?
PPTX
The low-code handbook - Chapter 1: Basic Low-code questions and answers.
PPTX
Who is going to develop the apps of the future? (hint: it’s not going to be ...
PPTX
Application of the Tree-of-Thoughts Framework to LLM-Enabled Domain Modeling
PPTX
AI and Software consultants: friends or foes?
PPTX
Model-driven engineering for Industrial IoT architectures
PPTX
Smart modeling of smart software
PPTX
Modeling should be an independent scientific discipline
PPTX
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...
PPTX
How to sustain a tool building community-driven effort
PPTX
All Researchers Should Become Entrepreneurs
PPTX
Low-code vs Model-Driven Engineering
PDF
Future Trends on Software and Systems Modeling
PPTX
Ingeniería del Software dirigida por modelos -Versión para incrédulos
PPTX
An LSTM-Based Neural Network Architecture for Model Transformations
PPTX
WAPIml: Towards a Modeling Infrastructure for Web APIs
PPTX
Is there a future for Model Transformation Languages?
PPTX
Software Modeling and Artificial Intelligence: friends or foes?
Who will create the languages of the future?
Societal challenges of AI: biases, multilinguism and sustainability
¿Cómo será el programador del futuro? ¿Tendremos trabajo?
The low-code handbook - Chapter 1: Basic Low-code questions and answers.
Who is going to develop the apps of the future? (hint: it’s not going to be ...
Application of the Tree-of-Thoughts Framework to LLM-Enabled Domain Modeling
AI and Software consultants: friends or foes?
Model-driven engineering for Industrial IoT architectures
Smart modeling of smart software
Modeling should be an independent scientific discipline
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...
How to sustain a tool building community-driven effort
All Researchers Should Become Entrepreneurs
Low-code vs Model-Driven Engineering
Future Trends on Software and Systems Modeling
Ingeniería del Software dirigida por modelos -Versión para incrédulos
An LSTM-Based Neural Network Architecture for Model Transformations
WAPIml: Towards a Modeling Infrastructure for Web APIs
Is there a future for Model Transformation Languages?
Software Modeling and Artificial Intelligence: friends or foes?

Recently uploaded (20)

PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PDF
PTS Company Brochure 2025 (1).pdf.......
PDF
System and Network Administration Chapter 2
PDF
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
PDF
top salesforce developer skills in 2025.pdf
PPTX
ai tools demonstartion for schools and inter college
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PPTX
L1 - Introduction to python Backend.pptx
PPTX
history of c programming in notes for students .pptx
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PDF
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
PDF
AI in Product Development-omnex systems
PPTX
Transform Your Business with a Software ERP System
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Design an Analysis of Algorithms I-SECS-1021-03
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PTS Company Brochure 2025 (1).pdf.......
System and Network Administration Chapter 2
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
top salesforce developer skills in 2025.pdf
ai tools demonstartion for schools and inter college
Which alternative to Crystal Reports is best for small or large businesses.pdf
L1 - Introduction to python Backend.pptx
history of c programming in notes for students .pptx
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
How to Migrate SBCGlobal Email to Yahoo Easily
Upgrade and Innovation Strategies for SAP ERP Customers
Wondershare Filmora 15 Crack With Activation Key [2025
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
AI in Product Development-omnex systems
Transform Your Business with a Software ERP System

Multi-Platform Chatbot Modeling and Deployment with the Xatkit Framework

  • 1. Multi-Platform Chatbot Modeling and Deployment with the Jarvis Framework Gwendal Daniel, Jordi Cabot, Laurent Deruelle & Mustapha Derras Xatkit
  • 2. ‘‘Chatbots are everywhere’’ - Some dude trying to get his startup funded Customer Service Education e-commerce Smart House
  • 3. Let’s create a chatbot to help newcomers to write issues on Github! Alright! It’s just a set of questions & answers, this will be pretty simple! Narrator It wasn’t. Once upon a time
  • 4. What went wrong? if(‘’ I have an issue’’) { return ‘’In which repository?’’ }
  • 5. Chatbots are complex systems Conversation Logic Text Processing External Services Messaging Platforms Deployment Evolution Maintenance Tests
  • 6. Chatbot applications In the end what do we really want to do? User Intent Action Parameters If the User Wants To Open Issue Reply « In which repository? » on Slack Platform
  • 7. Xatkit Framework • Raise the level of abstraction at what chatbots are defined • Focus on the core logic of the chatbot • Conversation and user interactions • Action computations • Independent from specific implementation technologies • Automatize the deployment and execution of the modeled chatbot • Deploy over multiple platforms • Execute the chatbot logic
  • 8. Xatkit Framework Chatbot Designer Intent Recognition Providers (platform-specific) Platorm Package Intent Package Xatkit Modeling Language Chatbot User Instant Messaging Platforms Xatkit Runtime Execution Package uses uses Platform-independent chatbot definition External Services Deployment Configuration Platform Designer
  • 9. Xatkit Framework • Intent language package Library Example intent OpenNewIssue { inputs { ‘’I want to create an issue’’ ‘’Open an issue’’ } } intent SpecifyRepository { inputs { ‘’In repository MyRepo’’ } creates context Repository { sets value name from fragment ‘’MyRepo’’ (entity any) } }
  • 10. Xatkit Framework • Platform language package Abstract platform Chat actions { PostMessage(message, channel) Reply(message) } } Platform Slack extends Chat Platform Discord extends Chat Platform Github actions { OpenIssue(repository, title, content) } }
  • 11. Xatkit Framework • Execution language package Import library Example Import platform Slack Import platform Discord Import platform Github Listen to Slack on intent OpenNewIssue do Slack.Reply(‘’Sure, I’ll help you to write your issue! Which repository would you like to report an issue for?’’) on intent SpecifyRepository do Slack.Reply(‘’Alright, your issue is related to repository’’ + context(Repository).get(name)) […] Github.OpenIssue(context(Repository).get(name), context(Issue).get(title), context(Issue).get(content)) Discord.PostMessage(‘’A new issue has been opened in ’’ context(Repository).get(name))
  • 12. Xatkit Framework Intent Recognition Providers (platform-specific) Platorm Package Intent Package Xatkit Modeling Language Instant Messaging Platforms Xatkit Runtime Execution Package uses uses Platform-independent chatbot definition External Services Deployment Configuration Chatbot Designer Chatbot User Platform Designer
  • 13. Xatkit Framework • Runtime component • Generic event-based execution engine • Platform-specific connectors • Automatic deployment • Execution life-cycle • Inputs • Chatbot model (defined with the Xatkit modeling language) • Configuration file
  • 14. Xatkit Framework • Runtime configuration • Provide deployment information • NLP engine to use • Credentials • Authentication tokens • Platform-specific properties (e.g. username, fallback urls, etc)
  • 15. Xatkit Framework • Runtime configuration // Intent Recognition Provider Configuration xatkit.intent.recognition = DialogFlow xatkit.dialogflow.project = dialogflow_project_id xatkit.dialogflow.credentials = key.json // Platform configuration xatkit.slack.credentials = slack_oauth_token xatkit.discord.credentials = discord_credentials xatkit.github.credentials = github_oauth_token
  • 16. Tool Support • Tooling • Open source project (EPL v2) • Available on Github • Under development (~600 commits) • Test-driven development (~350 tests) • Forks and contributions more than welcome! • Supported Platforms • Github, Giphy, UML • Slack, Discord, Web-based • Intent recognition • DialogFlow • RegExp (To Extend)
  • 18. Applications • Chatbots to explain process models • From Process Models to Chatbots - Anselmo López-Cuenca, Josep Carmona, Lluís Padró and Josep Sànchez-Ferreres • (Chat)bots to automatize existing processes • Interactive FAQ for newcomers • Develop research prototypes Your amazing tool Xatkit Users
  • 19. Future Work • New platforms, actions, recognition engines … • Chatbot generation • From models, Web API, etc • Chatbot + SPL = • Generic events • Real world use case
  • 20. Summary • An extensible framework to define and deploy chatbots • DSL to specify intents, platforms, and execution models • Automatic deployment over NLP engines and messaging platforms • Chatbot execution management https://github.com/xatkit-bot-platform