IP Library › Granted Patent US 12,748,925
Granted Patent B2
US 12,748,925 · App. 18/320,250 · Granted Sep 29, 2026

Systems and methods of detecting chatbots

Inventors: Florin M. Brad (Campina, RO); Andrei M. Manolache (Bucharest, RO); Elena Burceanu (Bucharest, RO)
Assignee: Bitdefender IPR Management Ltd.
G06F40/35G06N3/0475
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,748,925
App. No.
18/320,250
Granted
Sep 29, 2026
Kind
B2
Abstract

Some embodiments determine whether an entity engaging in online conversations comprises a chatbot. A challenge message is constructed according to a current context of an ongoing conversation, by employing a generative language model to determine a plausible conversation sequel and subsequently distorting the respective sequel. The challenge is added as a new message to the respective conversation. The chatbot detector may then determine whether a conversation partner is a chatbot according to a similarity between a response to the challenge received from the respective conversation partner and an artificially generated, plausible response to the undistorted conversation sequel. Distortions applied to construct the challenge are deliberately crafted to send a chatbot on a markedly different trajectory.

Claims (43)

1 . A computer system comprising at least one hardware processor configured to:

apply a generative language model to generate a surrogate conversation sequel and a surrogate response, wherein:

the surrogate conversation sequel comprises a predicted continuation of an ongoing online conversation comprising a sequence of electronic messages, and

the surrogate response comprises a predicted response from a conversation partner to the surrogate conversation sequel;

in response, distort the surrogate conversation sequel to produce a challenge message;

add the challenge message to the ongoing online conversation; and

in response to receiving a partner response from the conversation partner, the partner response comprising a response to the challenge message, determine whether the conversation partner comprises a robot according to a similarity between the partner response and the surrogate response.

2 . The computer system of claim 1 , wherein the at least one hardware processor is configured to determine whether the conversation partner comprises the robot according to a result of comparing a similarity measure and a pre-determined threshold, wherein the similarity measure quantifies the similarity between the partner response and surrogate response.

3 . The computer system of claim 1 , wherein the at least one hardware processor is configured to determine whether the conversation partner comprises the robot further according to a similarity between the partner response and another surrogate response comprising a predicted response from the conversation partner to the challenge message.

4 . The computer system of claim 3 , wherein the at least one hardware processor is configured to determine whether the conversation partner comprises the robot according to a result of comparing a first similarity measure to a second similarity measure, wherein the first similarity measure quantifies the similarity between the partner response and the surrogate response and the second similarity measure quantifies the similarity between the partner response and the other surrogate response.

5 . The computer system of claim 1 , wherein distorting the surrogate conversation sequel comprises an item selected from a set consisting of replacing a selected token of the surrogate conversation sequel with a substitute token, adding a token to the surrogate conversation sequel, rephrasing the surrogate conversation sequel as a question, and rephrasing the surrogate conversation sequel to change a sentiment of the surrogate conversation sequel.

6 . The computer system of claim 1 , wherein the at least one hardware processor is further configured to:

in response to producing the challenge message, determine whether the challenge message satisfies a quality condition according to a similarity between the challenge message and the surrogate conversation sequel, and

in response, add the challenge message to the ongoing online conversation only if the challenge message satisfies the quality condition.

7 . The computer system of claim 6 , wherein the at least one hardware processor is configured to determine whether the challenge message satisfies the quality condition according to a result of comparing a similarity measure to a pre-determined threshold, wherein the similarity measure quantifies the similarity between the challenge message and the surrogate conversation sequel.

8 . The computer system of claim 6 , wherein the at least one hardware processor is configured to determine whether the challenge message satisfies the quality condition further according to a similarity between the surrogate response and another surrogate response comprising another predicted response from the conversation partner to the challenge message.

9 . The computer system of claim 1 , wherein the ongoing online conversation comprises an item selected from a group consisting of an exchange of messages carried out via an instant messaging application executing on the computer system, a sequence of messages posted to an online forum, and a sequence of messages posted to a social media page.

10 . The computer system of claim 1 , wherein applying the generative language model comprises transmitting an encoding of a fragment of the ongoing online conversation to a remote chatbot, and in response, receiving the surrogate conversation sequel or the surrogate response from the remote chatbot.

11 . A chatbot detection method comprising employing at least one hardware processor of a computer system to:

apply a generative language model to generate a surrogate conversation sequel and a surrogate response, wherein:

the surrogate conversation sequel comprises a predicted continuation of an ongoing online conversation comprising a sequence of messages, and

the surrogate response comprises a predicted response from a conversation partner to the surrogate conversation sequel;

in response, distort the surrogate conversation sequel to produce a challenge message;

add the challenge message to the ongoing online conversation; and

in response to receiving a partner response from the conversation partner, the partner response comprising a response to the challenge message, determine whether the conversation partner comprises a robot according to a similarity between the partner response and the surrogate response.

12 . The method of claim 11 , comprising determining whether the conversation partner comprises the robot according to a result of comparing a similarity measure and a pre-determined threshold, wherein the similarity measure quantifies the similarity between the partner response and surrogate response.

13 . The method of claim 11 , comprising determining whether the conversation partner comprises the robot further according to a similarity between the partner response and another surrogate response comprising a predicted response from the conversation partner to the challenge message.

14 . The method of claim 13 , comprising determining whether the conversation partner comprises the robot according to a result of comparing a first similarity measure to a second similarity measure, wherein the first similarity measure quantifies the similarity between the partner response and the surrogate response and the second similarity measure quantifies the similarity between the partner response and the other surrogate response.

15 . The method of claim 11 , wherein distorting the surrogate conversation sequel comprises an item selected from a set consisting of replacing a selected token of the surrogate conversation sequel with a substitute token, adding a token to the surrogate conversation sequel, rephrasing the surrogate conversation sequel as a question, and rephrasing the surrogate conversation sequel to change a sentiment of the surrogate conversation sequel.

16 . The method of claim 11 , further comprising employing the at least one hardware processor to:

in response to producing the challenge message, determine whether the challenge message satisfies a quality condition according to a similarity between the challenge message and the surrogate conversation sequel, and

in response, add the challenge message to the ongoing online conversation only if the challenge message satisfies the quality condition.

17 . The method of claim 16 , comprising determining whether the challenge message satisfies the quality condition according to a result of comparing a similarity measure to a pre-determined threshold, wherein the similarity measure quantifies the similarity between the challenge message and the surrogate conversation sequel.

18 . The method of claim 16 , comprising determining whether the challenge message satisfies the quality condition further according to a similarity between the surrogate response and another surrogate response comprising another predicted response from the conversation partner to the challenge message.

19 . The method of claim 11 , wherein the ongoing online conversation comprises an item selected from a group consisting of an exchange of messages carried out via an instant messaging application executing on the computer system, a sequence of messages posted to an online forum, and a sequence of messages posted to a social media page.

20 . The method of claim 11 , wherein applying the generative language model comprises employing the at least one hardware processor to transmit an encoding of a fragment of the ongoing online conversation to a remote chatbot, and in response, receive the surrogate conversation sequel or the surrogate response from the remote chatbot.

21 . A non-transitory computer-readable medium storing instructions which, when executed by at least one hardware processor of a computer system, cause the computer system to:

apply a generative language model to generate a surrogate conversation sequel and a surrogate response, wherein:

the surrogate conversation sequel comprises a predicted continuation of an ongoing online conversation comprising a sequence of messages, and

the surrogate response comprises a predicted response from a conversation partner to the surrogate conversation sequel;

in response, distort the surrogate conversation sequel to produce a challenge message;

add the challenge message to the ongoing online conversation; and

in response to receiving a partner response from the conversation partner, the partner response comprising a response to the challenge message, determine whether the conversation partner comprises a robot according to a similarity between the partner response and the surrogate response.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 24, 2023
From: BRAD, FLORIN M.; MANOLACHE, ANDREI M.; BURCEANU, ELENA
To: BITDEFENDER IPR MANAGEMENT LTD.
Reel/Frame 063740/0459 →
Continuity (1)
Related Publication 20240386212A1 · Nov 21, 2024
References Cited (32)
US 7945952B1 · Behforooz · 2011 [cited by examiner]
US 9519766B1 · Bhosale · 2016 [cited by examiner]
US 10735401B2 · Lonas · 2020 [cited by examiner]
US 10810725B1 · Dolhansky · 2020 [cited by examiner]
US 11087092B2 · Zheng · 2021 [cited by examiner]
US 11790251B1 · Powers · 2023 [cited by examiner]
US 12058288B1 · Koneru · 2024 [cited by examiner]
US 20080004107A1 · Nguyen · 2008 [cited by examiner]
US 20180367488A1 · Chasse · 2018 [cited by examiner]
US 20200204505A1 · Patil · 2020 [cited by examiner]
US 20200218780A1 · Mei · 2020 [cited by examiner]
US 20200342879A1 · Carbune · 2020 [cited by examiner]
US 20220164643A1 · Charnock · 2022 [cited by examiner]
US 20220284194A1 · Galitsky · 2022 [cited by examiner]
US 20220327108A1 · Manolache · 2022 [cited by examiner]
US 20230179628A1 · Porras · 2023 [cited by examiner]
US 20230288990A1 · Prasad · 2023 [cited by examiner]
US 20240363107A1 · Odiorne · 2024 [cited by examiner]
US 20240386188A1 · Bandel · 2024 [cited by examiner]
US 20250022473A1 · Eilam Tzoreff · 2025 [cited by examiner]
European Patent Office (EPO), International Search Report (ISR) and Written Opinion (WO) mailed Sep. 5, 2024 for PCT International Application No. PCT/EP2024/063640, international filing date May 17, 2024. [cited by applicant]
Dukic et al., “Are You Human? Detecting Bots on Twitter Using BERT,” 2020 IEEE 7th International Conference on Data Science and Advanced Analytics (DSAA), Oct. 2020. [cited by applicant]
Garcia-Silva et al., “Understanding Transformers for Bot Detection in Twitter,” arXiv:2104.06182v1, Apr. 2021. [cited by applicant]
Heidari et al., “Bert Model for Social Media Bot Detection,” Working paper, Volgenau School of Engineering Graduate Research, George Mason University, http://jbox.gmu.edu/bitstream/handle/1920/12756/bertf.pdf, Mar. 2022. [cited by applicant]
Iliou et al., “Web Bot Detection Evasion Using Generative Adversarial Networks,” 2021 IEEE International Conference on Cyber Security and Resilience (CSR), Jul. 2021. [cited by applicant]
Kumar et al., “Content Based Bot Detection using Bot Language Model and BERT Embeddings,” 5th International Conference on Computer, Communication and Signal Processing (ICCCSP—2021), May 2021. [cited by applicant]
McIntire et al., “Methods for chatbot detection in distributed text-based communications,” 2010 International Symposium on Collaborative Technologies and Systems, May 2010. [cited by applicant]
Kudugunta et al., “Deep Neural Networks for Bot Detection,” arXiv:1802.04289v2, Feb. 2018. [cited by applicant]
Stanton et al., “GANs for Semi-Supervised Opinion Spam Detection,” arXiv:1903.08289v2, May 2019. [cited by applicant]
Boucher et al., “Bad Characters: Imperceptible NLP Attacks,” arXiv:2106.09898v2, Dec. 2021. [cited by applicant]
Perez et al., “Red Teaming Language Models with Language Models,” arXiv:2202.03286v1, Feb. 2022. [cited by applicant]
Morris et al., “TextAttack: A Framework for Adversarial Attacks, Data Augmentation, and Adversarial Training in NLP,” arXiv:2005.05909v4, Oct. 2020. [cited by applicant]