# US 12,764,087 B2 · System and method for electronic chat production

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,764,087 B2
- Document ID: US12764087B2
- Status: Granted
- Kind: B2
- Application number: 18/921,997
- Filed: 2024-10-21
- Published: 2025-02-13
- Granted: 2026-10-13
- Earliest claimed: 2021-07-09
- Assignees: Open Text Corporation
- Applicants: Open Text Inc.
- Inventors: Jan Stadermann
- Web page: https://patentgrep.com/patent/US12764087B2

## CPC

- H04L 51/216: Handling conversation history, e.g. grouping of messages in sessions or threads
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Systems, methods, and computer program products for adaptively splitting electronic chats are provided. An e-discovery system comprises a computer processor and a non-transitory, computer-readable medium embodying thereon a set of computer instructions executable by the computer processor. The set of computer instructions includes instructions for: sending a chat query to a remote electronic chat service; receiving an electronic chat responsive to the chat query, the electronic chat embodying a set of electronic chat messages; adaptively splitting the set of electronic chat messages into a set of conversations, each conversation in the set of conversations comprising a subset of electronic chat messages from the set of electronic chat messages; and storing each conversation from the set of conversations as a separate document.

## Claims

### Claim 1

A computer program product comprising a non-transitory, computer-readable medium embodying thereon a set of computer instructions, the set of computer instructions comprising instructions for:
accessing an electronic chat, the electronic chat embodying a set of electronic chat messages;
generating a set of models that model time gaps between adjacent messages from the set of electronic chat messages, wherein the set of models includes at least a first model corresponding to a single conversation and one or more second models that each correspond to two or more conversations, and wherein generating the set of models is performed without regard to the content of any of the electronic chat messages; and
in response to selecting one of the one or more second models as a best model based on one or more criteria, adaptively splitting the set of electronic chat messages into a set of conversations without regard to the content of any of the electronic chat messages, each conversation in the set of conversations comprising a subset of electronic chat messages from the set of electronic chat messages, wherein adaptively splitting the set of electronic chat messages into a set of conversations further comprises:
identifying a plurality of split points based on the time gaps between the adjacent messages from the set of electronic chat messages, wherein the identifying is performed based on providing information relating to the time gaps to a machine learning model trained to determine which of the time gaps correspond to a given split point between respective conversations based on distributions of time gaps associated with a plurality of electronic messages within the respective conversations; and
storing each conversation from the set of conversations as a separate document.

### Claim 2 (depends on 1)

The computer program product of claim 1, wherein each electronic chat message embodied in the electronic chat has associated metadata and wherein adaptively splitting the set of electronic chat messages into the set of conversations comprises clustering the set of electronic chat messages into clusters based on the associated metadata of the electronic chat messages from the set of electronic chat messages.

### Claim 3 (depends on 1)

The computer program product of claim 1, wherein each electronic chat message embodied in the electronic chat has a timestamp and wherein adaptively splitting the set of electronic chat messages into the set of conversations comprises clustering the set of electronic chat messages into clusters based on the timestamps of the electronic chat messages from the set of electronic chat messages.

### Claim 4 (depends on 1)

The computer program product of claim 1, wherein
the first model comprises a single Gaussian distribution of the set of time gaps and
each of the one or more second models comprises a Gaussian mixture model.

### Claim 5 (depends on 4)

The computer program product of claim 4, wherein selecting the best model from the set of models comprises determining, for each model in the set of models, a Bayesian information criterion and selecting the best model from the set of models based on the Bayesian information criteria for the set of models.

### Claim 6 (depends on 4)

The computer program product of claim 4, the computer program product further comprising adaptively splitting of the set of electronic chat messages into the set of conversations based on the Gaussian mixture model comprising:
selecting a time gap from the set of time gaps:
determining a probability of the selected time gap for each Gaussian distribution in the mixture of Gaussian distributions to produce a set of probabilities for the selected time gap; and
based on a determination that a highest probability from the set of probabilities for the selected time gap is for the highest mean value distribution, splitting the electronic chat into new conversation at the selected time gap.

### Claim 7 (depends on 6)

The computer program product of claim 6, wherein the set of computer instructions comprises instructions for not splitting the electronic chat at the selected time gap based on a determination that the highest probability from the set of probabilities for the selected time gap is not for the highest mean value distribution.

### Claim 8

A computer-implemented method comprising:
receiving, by a computer processor, an electronic chat, the electronic chat embodying a set of electronic chat messages;
generating a set of models that model time gaps between adjacent messages from the set of electronic chat messages, wherein the set of models includes at least a first model corresponding to a single conversation and one or more second models that each correspond to two or more conversations, and wherein generating the set of models is performed without regard to the content of any of the electronic chat messages; and
in response to selecting one of the one or more second models as a best model based on one or more criteria, adaptively splitting, by the computer processor, the set of electronic chat messages into a set of conversations without regard to the content of any of the electronic chat messages, each conversation in the set of conversations comprising a subset of electronic chat messages from the set of electronic chat messages, wherein adaptively splitting the set of electronic chat messages into a set of conversations further comprises:
identifying a plurality of split points based on the time gaps between the adjacent messages from the set of electronic chat messages, wherein the identifying is performed based on providing information relating to the time gaps to a machine learning model trained to determine which of the time gaps correspond to a given split point between respective conversations based on distributions of time gaps associated with a plurality of electronic messages within the respective conversations; and
storing, by the computer processor, each conversation from the set of conversations as a separate document.

### Claim 9 (depends on 8)

The computer-implemented method of claim 8, wherein each electronic chat message embodied in the electronic chat has associated metadata and wherein adaptively splitting the set of electronic chat messages into the set of conversations comprises clustering the set of electronic chat messages into clusters based on the associated metadata of the electronic chat messages from the set of electronic chat messages.

### Claim 10 (depends on 8)

The computer-implemented method of claim 8, wherein each electronic chat message embodied in the electronic chat has a timestamp and wherein adaptively splitting the set of electronic chat messages into the set of conversations comprises clustering the set of electronic chat messages into clusters based on the timestamps of the electronic chat messages from the set of electronic chat messages.

### Claim 11 (depends on 8)

The computer-implemented method of claim 8, wherein
the first model comprises a single Gaussian distribution of the set of time gaps and
each of the one or more second models comprises a Gaussian mixture model.

### Claim 12 (depends on 8)

The computer-implemented method of claim 8, wherein selecting the best model from the set of models comprises determining a Bayesian information criterion for each model in the set of models and selecting the best model from the set of models based on the Bayesian information criteria for the set of models.

### Claim 13 (depends on 11)

The computer-implemented method of claim 11, further comprising splitting of the set of electronic chat messages into the set of conversations based on a Gaussian mixture model comprising:
selecting a time gap from the set of time gaps:
determining a probability of the selected time gap for each Gaussian distribution in the mixture of Gaussian distributions to produce a set of probabilities for the selected time gap; and
based on a determination that a highest probability from the set of probabilities for the selected time gap is for the highest mean value distribution, splitting the electronic chat into new conversation at the selected time gap.

### Claim 14

An e-discovery system comprising:
a computer processor;
a non-transitory, computer-readable medium embodying thereon a set of computer instructions executable by the computer processor, the set of computer instructions comprising instructions for:
sending a chat query to a remote electronic chat service;
receiving an electronic chat responsive to the chat query, the electronic chat embodying a set of electronic chat messages;
generating a set of models that model time gaps between adjacent messages from the set of electronic chat messages, wherein the set of models includes at least a first model corresponding to a single conversation and one or more second models that each correspond to two or more conversations, and wherein generating the set of models is performed without regard to the content of any of the electronic chat messages; and
in response to selecting one of the one or more second models as a best model based on one or more criteria, adaptively splitting the set of electronic chat messages into a set of conversations without regard to the content of any of the electronic chat messages, each conversation in the set of conversations comprising a subset of electronic chat messages from the set of electronic chat messages, wherein adaptively splitting the set of electronic chat messages into a set of conversations further comprises:
identifying a plurality of split points based on the time gaps between the adjacent messages from the set of electronic chat messages, wherein the identifying is performed based on providing information relating to the time gaps to a machine learning model trained to determine which of the time gaps correspond to a given split point between respective conversations based on time distributions of time gaps associated with a plurality of electronic messages within the respective conversations; and
storing each conversation from the set of conversations as a separate document.

### Claim 15 (depends on 14)

The e-discovery system of claim 14, wherein each electronic chat message embodied in the electronic chat has associated metadata and wherein adaptively splitting the set of electronic chat messages into the set of conversations comprises clustering the set of electronic chat messages into clusters based on the associated metadata of the electronic chat messages from the set of electronic chat messages.

### Claim 16 (depends on 14)

The e-discovery system of claim 14, wherein each electronic chat message embodied in the electronic chat has a timestamp and wherein adaptively splitting the set of electronic chat messages into the set of conversations comprises clustering the set of electronic chat messages into clusters based on the timestamps of the electronic chat messages from the set of electronic chat messages.

### Claim 17 (depends on 14)

The e-discovery system of claim 14, wherein
the first model comprises a single Gaussian distribution of the set of time gaps and
each of the one or more second models comprises a Gaussian mixture model.

### Claim 18 (depends on 17)

The e-discovery system of claim 17, wherein selecting the best model from the set of models comprises determining, for each model in the set of models, a Bayesian information criterion and selecting the best model from the set of models based on the Bayesian information criteria for the set of models.

### Claim 19 (depends on 17)

The e-discovery system of claim 17, further comprising adaptively splitting of the set of electronic chat messages into the set of conversations based on a Gaussian mixture model comprising:
selecting a time gap from the set of time gaps:
determining a probability of the selected time gap for each Gaussian distribution in the mixture of Gaussian distributions to produce a set of probabilities for the selected time gap; and
based on a determination that a highest probability from the set of probabilities for the selected time gap is for the highest mean value distribution, splitting the electronic chat into new conversation at the selected time gap.

### Claim 20 (depends on 19)

The e-discovery system of claim 19, wherein the set of computer instructions comprises instructions for not splitting the electronic chat at the selected time gap based on a determination that the highest probability from the set of probabilities for the selected time gap is not for the highest mean value distribution.
