TV LLM Search UC
Global use case developed by Aura Platform Team that allows users to search specific TV content in Aura
Introduction
The video LLM Search use case is a global experience designed and developed by Aura Global Team that allows Telefónica customers to ask Aura for TV content (live content and catalog items) using a voice interface.
Find additional information in the following documents:
- Discover the TV LLM Search specifications and the particularities of the use case development.
- Learn how to configure the generic-dialog for TV LLM Search use case.
- Access the TV Retrieve plugin for LLM Search UC.
- Discover the resources used by the TV LLM Search use case.
- Find the AI configuration for each OB for the TV LLM Search use case.
Specifications
Kernel API
To resolve the user’s request, Aura uses the normalized Video Contents Kernel API.
Request-response model
The TV LLM Search UC is adapted to the normalized request-response model v3.
Available channels
The TV LLM Search UC can be enabled in any channel implementing the normalized v3 request-response model and TV-related payloads.
TV LLM Search features
The normalized TV LLM Search UC includes basic retrieval features for entertainment content:
- Search by channel (including live channels and third-party streaming platforms).
- Search by person (e.g., presenters/actors).
- Search by free-form query strings. (e.g., TV content titles, genres, subgenres, …).
- Support for multiple values per entity.
When a single live content is unambiguously found, the plugin can trigger a channel tune action (REMOTEON.ZAPTO) to start playback on the STB.
Current limitations
Currently, the TV LLM Search UC does not include:
- Contingency/fallback search mode (no secondary search if zero results).
- Temporal filters (time intervals).
- Third-party catalogs outside Aura/Kernel scope.
Use case development
The TV LLM Search UC includes the following components:
Understanding features
-
Intent:
intent.tv.retrieve -
Entities consumed by the plugin:
| Entity | Example (utterance) | Notes |
|---|---|---|
ent.audiovisual_channel |
“Pon #0” / “Abrir Movistar LaLiga” | Multiple channels allowed via canon with ` |
ent.audiovisual_person |
“Lo de Broncano” | Multiple persons allowed via canon with ` |
ent.audiovisual_query |
“noticias Oviedo” | Multiple tokens allowed via canon with ` |
⚠️ NLP should provide the canon field concatenated with || (double pipe) when multiple values are recognized (see NLP configuration)
⚠️ Other entities (e.g., time, devices, etc.) are not used by this plugin and should be omitted for this UC.
Use case logic
Once Aura recognizes the user’s utterance, the UC is resolved via:
-
Aura Bot dialog
TV LLM Search UC is built over generic-dialog-v3.
See the Dialog configuration for the required settings.
Response
The response follows the standard video plugin response schema.
Where:
-
intent: input intent. -
entities: input entities as received. -
result_intent: usuallyMEDIA.SEARCH;CHANNEL.PLAYis used when returning a single live channel. -
resources: List of response resources that includes three main parameters:type: Type of the response resource.name: Name of the response resource. Example:tv:video.retrieve.multiple-results,tv:video.retrieve.by-default.simple-result,tv:video.retrieve.display.single-result,tv:video.retrieve.no-results.params: This field returns any required parameter in the resource. Example:queryDisplayed.
-
payload: Information provided by the Kernel API, when we make the content get info request. If we receive a response, this field includes the following parameters:type: The value of this field depends on the type of data included in the fielddata(info returned by the API):- If it is a value:
details - If it is a list:
content_list
- If it is a value:
data: It returns the information provided by the Kernel API.
-
status: Final status request. This field includes the following parameters:code: Status code.message: Status message, which describes the status code.params: Parameter that sends details of status. This field does not appear if it is empty.
-
actions: Actions to follow with the result of request. This plugin could include the following actions:REMOTEON.ZAPTO: Used to tune a live channel on STB.
-
conditions: conditions for actions to be applied.