Intentizer LLM

General description

Intentizer LLM is a machine learning service that classifies user utterances into predefined intents using Large Language Models. Unlike traditional intent classifier that rely on embeddings and nerual networks, this service uses LLMs to generate semantic descriptions of each intent during training, enabling more accurate and contextual classification. The service supports both single-intent and multi-intent detection, allowing it to identify one or multiple intentions within a single user input. It leverages Azure OpenAI, OpenAI, or local models for classification and includes features like exact phrase matching for known utterances, Redis-based model storage, and asynchronous training jobs.

API

Default port: 5002

The application has got HTTP API which is not secured by any mechanism, therefore should NOT be visible from outside the Kubernetes cluster.

There are default endpoints for monitoring purposes. They are described in Components monitoring section.

Databases

Redis

The component uses internal RedisAI cluster to store trained models and use training sets as cache.

Communication

This service communicates with the following services:

ApplicationENVsAuth
RedisAIREDISAI_SERVER_HOST, REDISAI_SERVER_PORT, REDISAI_ENABLE_CLUSTER (preconfigured by default)None

Apart from that this component connects to public hosts serving LLMs. Depending on settings of AI credentials in admin UI those include but are not limited to:

  • api.openai.com
  • Azure Open AI services: *.openai.azure.com
  • openrouter.ai

Config

There is no config file for this application. LLM endpoints and API keys are passed in API request so there is no need to configure this component.

Job execution

None