Topic Modeling basics

Stay organized with collections Save and categorize content based on your preferences.

This document describes the basic concepts for understanding the Contact Center AI Insights Topic Modeling feature.


Topic Modeling analyzes conversations. Each conversation is an interaction between a contact center agent and an end-user. Topic Modeling uses chat or call transcripts that have been created using the CCAI Insights API.

For more information, see the Conversations reference documentation.


A topic is created from the data by first modeling the language and then clustering conversations such that conversations about similar subjects are near each other. Topic Modeling then identifies as many distinct groups as it determines exist. Lastly Topic Modeling attempts to generate a name for each grouping or topic, which will then represent the topic. The topic is represented by an Issue resource.

Once Topic Modeling creates a set of topic names, you can review the names and the conversations it has labeled with that name. Topic Modeling can also show you the most representative conversation for a topic to help you have a concrete representation of the topic. You can rename detected topics in the console or API to fine tune the name for your use case.

For example, a credit card support center could run Topic Modeling on their archived support call logs. The modeling could then potentially create a topic from a cluster of conversations and name them "Credit card over the limit inquiries". The business might want to rename the topic to be more succinct, for example "Credit limit inquiries".

Topics and conversations have a one-to-many relationship. Each conversation maps to one topic, while a topic may have many conversations mapping to it.

For more information, see the issues reference documentation.

Topic models

When you use Topic Modeling to analyze conversations, CCAI Insights creates a topic model. Topic models contain discovered topics and can be used to infer topics for any conversation. From a topic model, you can generate a report identifying the topics within the model and the names of each topic. You can also deploy a topic model to your project, which will enable you to infer topics in real-time during a conversation with an end-user. Topic models are represented by issueModels resources.

For more information, see the issueModels reference documentation.