Skip to main content

$rag.chat.cancelRecordProcessing

The method cancels the response generation in a knowledge base chat.

caution

The method is available only in the ECMAScript 6 runtime and is asynchronous.

Syntax

The method accepts the following arguments:

ArgumentTypeDescriptionRequired
secretNameStringName of the knowledge base secret.Yes
chatIdNumber

Chat identifier.

Use the identifier returned by the $rag.chat.create method.
Yes
queryIdNumber

Identifier of the request for response generation.

Use the identifier returned by the $rag.chat.processQueryAsync method.
Yes
timeoutNumber

Timeout in milliseconds for the method execution. If the timeout is exceeded, an error will occur.

By default, the timeout is not set.
No

You can pass arguments to the method in different ways.

Specify the arguments in order:

await $rag.chat.cancelRecordProcessing("MyKnowledgeHub", 12345, 11111, 5000);

Return value

The method returns an object with information about the response generation request. If the request is canceled successfully, the status is CANCELED.

{
"id": 11111,
"chatId": 12345,
"request": "What does the Example service do?",
"status": "CANCELED",
"createdAt": "2024-12-04T07:44:48.401037Z",
"response": null,
"updatedAt": "2024-12-04T07:44:48.401039Z",
"comment": null
}

The object has the same format as the response to the POST /api/knowledge-hub/chat/{chatId}/query/{queryId}/cancel request in the Tovie Data Agent API.

How to use

state: Answer
intent!: /question
scriptEs6:
$client.chat = $client.chat || await $rag.chat.create("MyKnowledgeHub");
const ragRequest = await $rag.chat.processQueryAsync("MyKnowledgeHub", $client.chat.id, $request.query);

var cancelRequest = await $rag.chat.cancelRecordProcessing("MyKnowledgeHub", $client.chat.id, ragRequest.id)
$reactions.answer("Request status: " + cancelRequest.status)
  1. If there is no chat yet, the bot creates a chat.
  2. The bot creates a request and saves its identifier.
  3. The bot cancels the request by this identifier and sends the status to the user.