IP Library › Granted Patent US 12,488,064
Granted Patent B2
US 12,488,064 · App. 18/083,636 · Granted Dec 2, 2025

Generating ChatOps based process orchestration flows

Inventors: Sampath Dechu (Acton, MA); Neelamadhav Gantayat (Bangalore, IN); Avirup Saha (Kolkata, IN); Dharma Teja Atluri (Hyderabad, IN)
Assignee: International Business Machines Corporation
G06F18/23211G06F18/2415G06F40/166G06F40/289G06F40/35
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,488,064
App. No.
18/083,636
Filed
Dec 19, 2022
Granted
Dec 2, 2025
Kind
B2
Art Unit
2172
USPC
715/222
Abstract

Mechanisms are provided for automated generation of an electronic form for an electronic messaging subsystem. Historical conversation logs are obtained from the electronic messaging subsystem which comprise a plurality of communication sequences. Communication sequences within the historical conversation logs are clustered according to similarity of features. For each cluster the following operations are performed: identifying, within the cluster, sequences of normalized utterances that are repeated across communication sequences of the cluster; categorizing each sequence, in a set of the sequences of normalized utterances, as to whether the sequence can be represented as one or more electronic forms; and extracting, for each communication sequence in the cluster, attributes and corresponding attribute values. One or more electronic form data structures are generated based on the attributes and corresponding attribute values extracted for each communication sequence in the cluster.

Claims (61)

1 . A method, in a data processing system, for automated generation of an electronic form for an electronic messaging system, the method comprising:

obtaining historical conversation logs from the electronic messaging system, wherein the historical conversation logs comprise a plurality of communication sequences corresponding to a communication interchange between a plurality of entities, and wherein the plurality of entities are associated with a plurality of levels of hierarchy within an organization;

clustering communication sequences within the historical conversation logs according to similarity of features to thereby generate clusters of communication sequences;

for each cluster in the clusters of communication sequences:

identifying, within each cluster, sequences of normalized utterances that are repeated across communication sequences of the cluster;

categorizing each sequence, in a set of the sequences of normalized utterances, as to whether each sequence can be represented as one or more electronic forms, wherein the categorizing comprises executing at least one of a rule-based classifier computing model on patterns of characteristics of the sequence to classify the sequence as either a first class of sequence for which the one or more electronic forms may be used to gather information gathered as part of the sequence or a second class of sequence for which the one or more electronic forms may not be used, wherein the second class of sequence has a length greater than a predetermined threshold length; and

extracting, for each communication sequence in the cluster, attributes and corresponding attribute values; and

generating, for at least one of the clusters, in response to at least one sequence of the at least one cluster being categorized as the first class of sequence, one or more electronic form data structures based on the attributes and corresponding attribute values extracted for each communication sequence in the at least one cluster, wherein generating the one or more electronic form data structures comprises generating a plurality of different electronic form data structures, wherein each different electronic form data structure corresponds to a different entity of the plurality of entities, and wherein different ones of the electronic form data structures in the plurality of different electronic form data structures are associated with different stages of a workflow sequence and are presented, by the electronic messaging system, to corresponding ones of the plurality of entities in accordance with execution of a corresponding stage of the workflow sequence in an order of the workflow sequence.

2 . The method of claim 1 , further comprising:

determining, based on an artificial intelligence computer model analysis of the historical conversation logs, a preference for an entity of the plurality of entities with regard to using electronic forms or using a conversational interchange of messages to accomplish tasks; and

in response to determining that the preference is to use electronic forms, presenting an electronic form, based on the one or more electronic form data structures, to the entity via the electronic messaging system.

3 . The method of claim 1 , wherein clustering communication sequences within the historical conversation logs comprises executing natural language processing computer logic on the historical conversation logs to extract the features from the historical conversation logs, wherein the features comprise terms or phrases that reference tasks or issues being discussed in the historical conversation logs.

4 . The method of claim 1 , wherein identifying sequences of normalized utterances that are repeated across communication sequences of the cluster comprises:

determining a frequency of occurrence of each sequence of normalized utterances in the identified sequences of normalized utterances; and

selecting the set of the sequences of normalized utterances as those sequences of normalized utterances for which the frequency of occurrence is equal to or greater than a predetermined threshold value.

5 . The method of claim 1 , further comprising, for each cluster in the clusters of communication sequences, identifying and storing a triggering utterance for the cluster in association with the one or more electronic form data structures, wherein the triggering utterance is an utterance that, when identified in a subsequent electronic communication, triggers presentation of an electronic form in the electronic messaging system based on the associated one or more electronic form data structures.

6 . The method of claim 1 , further comprising:

generating an electronic form based on the one or more electronic form data structures, in response to a normalized utterance of the at least one cluster being detected in a subsequent communication interchange of an ongoing electronic communication session between the plurality of entities; and

presenting the electronic form to at least one entity of the plurality of entities via the electronic messaging system as part of the ongoing electronic communication session, wherein the electronic form comprises fields that are of a type corresponding to the attributes and attribute values.

7 . The method of claim 6 , wherein the fields present predetermined value options for selection by the at least one entity of the plurality of entities based on the attribute values for attributes corresponding to the fields.

8 . The method of claim 1 , wherein the electronic messaging system is a subsystem of a ChatOps environment, and wherein the historical conversation logs are logs of asynchronous electronic communications between the plurality of entities via the subsystem.

9 . The method of claim 1 , wherein each electronic form data structure is associated with a corresponding level of hierarchy of the plurality of levels of hierarchy, and wherein different electronic form data structures are presented to different entities of the plurality of entities in accordance with a level of hierarchy associated with each entity of the plurality of entities, and wherein different stages of the workflow sequence are associated with different entities having different entity roles.

10 . A non-transitory computer-readable medium storing a set of instructions for an automated generation of electronic form for an electronic messaging system, the set of instructions comprising:

one or more instructions that, when executed by one or more processors of a device, cause the device to:

obtain historical conversation logs from an electronic messaging system, wherein the historical conversation logs comprise a plurality of communication sequences corresponding to a communication interchange between a plurality of entities, and wherein the plurality of entities are associated with a plurality of levels of hierarchy within an organization;

cluster communication sequences within the historical conversation logs according to similarity of features to thereby generate clusters of communication sequences;

for each cluster in the clusters of communication sequences:

identify, within each cluster, sequences of normalized utterances that are repeated across communication sequences of the cluster;

categorize each sequence, in a set of the sequences of normalized utterances, as to whether each sequence can be represented as one or more electronic forms, wherein the categorizing comprises executing at least one of a rule-based classifier computing model on patterns of characteristics of the sequence to classify the sequence as either a first class of sequence for which the one or more electronic forms may be used to gather information gathered as part of the sequence or a second class of sequence for which the one or more electronic forms may not be used, wherein the second class of sequence has a length greater than a predetermined threshold length; and

extract, for each communication sequence in the cluster, attributes and corresponding attribute values; and

generate, for at least one of the clusters, in response to at least one sequence of the at least one cluster being categorized as the first class of sequence, one or more electronic form data structures based on the attributes and corresponding attribute values extracted for each communication sequence in the at least one cluster, wherein generating the one or more electronic form data structures comprises generating a plurality of different electronic form data structures, wherein each different electronic form data structure corresponds to a different entity of the plurality of entities, and wherein different ones of the electronic form data structures in the plurality of different electronic form data structures are associated with different stages of a workflow sequence and are presented, by the electronic messaging system, to corresponding ones of the plurality of entities in accordance with execution of a corresponding stage of the workflow sequence in an order of the workflow sequence.

11 . The non-transitory computer-readable medium of claim 10 , wherein the one or more instructions, to cause the device to generate the electronic form for the electronic messaging system, cause the device to:

determine, based on an artificial intelligence computer model analysis of the historical conversation logs, a preference for an entity of the plurality of entities with regard to using electronic forms or using a conversational interchange of messages to accomplish tasks; and

in response to determining that the preference is to use electronic forms, present an electronic form, based on the one or more electronic form data structures, to the entity via the electronic messaging system.

12 . The non-transitory computer-readable medium of claim 10 , wherein the one or more instructions, to cause the device to cluster communication sequences within the historical conversation logs, cause the device to:

execute natural language processing computer logic on the historical conversation logs to extract the features from the historical conversation logs, wherein the features comprise terms or phrases that reference tasks or issues being discussed in the historical conversation logs.

13 . The non-transitory computer-readable medium of claim 10 , wherein the one or more instructions, to cause the device to identify sequences of normalized utterances that are repeated across communication sequences of the cluster, cause the device to:

determine a frequency of occurrence of each sequence of normalized utterances in the identified sequences of normalized utterances; and

select the set of the sequences of normalized utterances as those sequences of normalized utterances for which the frequency of occurrence is equal to or greater than a predetermined threshold value.

14 . The non-transitory computer-readable medium of claim 10 , wherein the one or more instructions, to cause the device to generate the electronic form for the electronic messaging system, for each cluster in the clusters of communication sequences, cause the device to:

identify and store a triggering utterance for the cluster in association with the one or more electronic form data structures, wherein the triggering utterance is an utterance that, when identified in a subsequent electronic communication, triggers presentation of an electronic form in the electronic messaging system based on the associated one or more electronic form data structures.

15 . The non-transitory computer-readable medium of claim 10 , wherein the one or more instructions, to cause the device to generate the electronic form for the electronic messaging system, cause the device to:

generate an electronic form based on the one or more electronic form data structures, in response to a normalized utterance of the at least one cluster being detected in a subsequent communication interchange of an ongoing electronic communication session between the plurality of entities; and

present the electronic form to at least one entity of the plurality of entities via the electronic messaging system as part of the ongoing electronic communication session, wherein the electronic form comprises fields that are of a type corresponding to the attributes and attribute values.

16 . The non-transitory computer-readable medium of claim 15 , wherein the fields present predetermined value options for selection by the at least one entity of the plurality of entities based on the attribute values for attributes corresponding to the fields.

17 . The non-transitory computer-readable medium of claim 10 , wherein each electronic form data structure is associated with a corresponding level of hierarchy of the plurality of levels of hierarchy, and wherein different electronic form data structures are presented to different entities of the plurality of entities in accordance with a level of hierarchy associated with each entity of the plurality of entities, and wherein different stages of the workflow sequence are associated with different entities having different entity roles.

18 . An apparatus comprising:

one or more processors; and

one or more memory devices coupled to the one or more processors, wherein the one or more processors are configured to:

obtain historical conversation logs from an electronic messaging system, wherein the historical conversation logs comprise a plurality of communication sequences corresponding to a communication interchange between a plurality of entities, and wherein the plurality of entities are associated with a plurality of levels of hierarchy within an organization;

cluster communication sequences within the historical conversation logs according to similarity of features to thereby generate clusters of communication sequences;

for each cluster in the clusters of communication sequences:

identify, within each cluster, sequences of normalized utterances that are repeated across communication sequences of the cluster;

categorize each sequence, in a set of the sequences of normalized utterances, as to whether each sequence can be represented as one or more electronic forms, wherein the categorizing comprises executing at least one of a rule-based classifier computing model on patterns of characteristics of the sequence to classify the sequence as either a first class of sequence for which the one or more electronic forms may be used to gather information gathered as part of the sequence or a second class of sequence for which the one or more electronic forms may not be used, wherein the second class of sequence has a length greater than a predetermined threshold length; and

extract, for each communication sequence in the cluster, attributes and corresponding attribute values; and

generate, for at least one of the clusters, in response to at least one sequence of the at least one cluster being categorized as the first class of sequence, one or more electronic form data structures based on the attributes and corresponding attribute values extracted for each communication sequence in the at least one cluster, wherein generating the one or more electronic form data structures comprises generating a plurality of different electronic form data structures, wherein each different electronic form data structure corresponds to a different entity of the plurality of entities, and wherein different ones of the electronic form data structures in the plurality of different electronic form data structures are associated with different stages of a workflow sequence and are presented, by the electronic messaging system, to corresponding ones of the plurality of entities in accordance with execution of a corresponding stage of the workflow sequence in an order of the workflow sequence.

19 . The apparatus of claim 18 , wherein the one or more processors are further configured to:

determine, based on an artificial intelligence computer model analysis of the historical conversation logs, a preference for an entity of the plurality of entities with regard to using electronic forms or using a conversational interchange of messages to accomplish tasks; and

in response to determining that the preference is to use electronic forms, present an electronic form, based on the one or more electronic form data structures, to the entity via the electronic messaging system.

20 . The apparatus of claim 18 , wherein to cluster communication sequences within the historical conversation logs, the one or more processors are configured to:

execute natural language processing computer logic on the historical conversation logs to extract the features from the historical conversation logs, wherein the features comprise terms or phrases that reference tasks or issues being discussed in the historical conversation logs.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 19, 2022
From: DECHU, SAMPATH; GANTAYAT, NEELAMADHAV; SAHA, AVIRUP; ATLURI, DHARMA TEJA
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 062135/0483 →
Continuity (1)
Related Publication 20240202285A1 · Jun 20, 2024
References Cited (30)
US 11188548B2 · Taylor et al. · 2021 [cited by applicant]
US 20070226637A1 · Yaseen et al. · 2007 [cited by applicant]
US 20110191383A1 · Addala et al. · 2011 [cited by applicant]
US 20170097966A1 · Kozareva · 2017 [cited by examiner]
US 20170192949A1 · Gaither · 2017 [cited by examiner]
US 20180183735A1 · Naydonov · 2018 [cited by examiner]
US 20190043483A1 · Chakraborty · 2019 [cited by examiner]
US 20190182382A1 · Mazza · 2019 [cited by examiner]
US 20200218780A1 · Mei · 2020 [cited by examiner]
US 20200320978A1 · Chatterjee · 2020 [cited by examiner]
US 20200342462A1 · Todd · 2020 [cited by examiner]
US 20200396184A1 · Perazzo · 2020 [cited by examiner]
US 20210157618A1 · Moon · 2021 [cited by examiner]
US 20220101839A1 · George et al. · 2022 [cited by applicant]
US 20220308943A1 · Srinivasan · 2022 [cited by examiner]
US 20230281389A1 · Lee · 2023 [cited by examiner]
Mavaddat, Matin, “Business Process Discovery Through Conversation Log Analysis in Pluralist and Coercive Problem Contexts”, Dissertation, University of the West of England, Nov. 2013, 223 pages (split into 4 parts). [cited by applicant]
“Label Propagation”, Scikit-learn: Machine Learning in Python, accessed online Nov. 7, 2022, 3 pages. [cited by applicant]
“Label Spreading”, Scikit-learn: Machine Learning in Python, accessed online Nov. 7, 2022, 4 pages. [cited by applicant]
Ahmadvand, Ali, “User Intent Inference for Web Search and Conversational Agents”, Doctoral Consortium, 13th ACM International WSDM Conference (WSDM '20), Feb. 3-7, 2020, 2 pages. [cited by applicant]
Anonymous, “System and Method for Conformance Checking of Conversational Process Instance Against a Conversational Process Model”, IP.com Prior Art Database, May 11, 2020, 6 pages. [cited by applicant]
Boren, Rackley et al., “Deliver Modern UI for IBM BPM with the Coach Framework and Other Approaches”, IBM Corporation, Oct. 2016, 428 pages. (Split into 2 Parts). [cited by applicant]
Chakraborti, Tathagata et al., “D3BA: A Tool for Optimizing Business Processes Using Non-Deterministic Planning”, arXiv:2001.02619v2 [cs.AI], Feb. 4, 2020, 7 pages. [cited by applicant]
Chatterjee, Ajay et al., “Intent Mining from past conversations for Conversational Agent”, arXiv:2005.11014v3 [cs.CL], Nov. 12, 2020, 13 pages. [cited by applicant]
Han, Lei et al., “User Interface Derivation for Business Processes”, IEEE Transactions on Knowledge and Data Engineering, Jan. 9, 2019, 14 pages. [cited by applicant]
Muise, Christian et al., “Planning for Goal-Oriented Dialogue Systems”, arXiv:1910.08137v1 [cs.AI], Oct. 17, 2019, 42 pages. [cited by applicant]
Sheinin, Vadim et al., “Quest: A Natural Language Interface to Relational Databases”, Language Resources and Evaluation Conference (LREC 2018), May 7, 2018, 5 pages. [cited by applicant]
Taymouri, Farbod et al., “A Deep Adversarial Model for Suffix and Remaining Time Prediction of Event Sequences”, Proceedings of the 2021 SIAM International Conference on Data Mining (SDM). Society for Industrial and App… [cited by applicant]
Wang, Dong et al., “Understanding Computer-Directed Utterances in Multi-User Dialog Systems”, IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP 2013), May 26, 2013, 5 pages. [cited by applicant]
Wu, Min et al., “Adding Structured Data in Unstructured Web Chat Conversation”, Proceedings of the 25th Annual ACM Symposium on User Interface Software and Technology (UIST '12), Oct. 7-10, 2012, 8 pages. [cited by applicant]