AIVision
Этот класс серверного API содержит методы для транскрибирования документов с участием ИИ через нексусы OCR типа в AIService.
AIVision(nexus, connectName)
Инициализирует экземпляр класса AIVision для указанного нексуса и коннекта.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
nexus | String | Нет | Принимает значение, указанное в свойстве ain.api.vision.default_nexus. |
connectName | String | Нет | Принимает значение, указанное в свойстве ain.ai_connect.default. |
recognition(file, messageOptions, eventOptions, eventRejectOptions)
Используйте метод для отправки сообщения в AI-сервис для работы с документами для транскрибирования исходного файла в текст.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
file | Array или Object | Да | Нет |
messageOptions | Object | Нет | {} |
eventOptions | Object | Нет | {} |
eventRejectOptions | Object | Нет | {} |
- Параметр file является либо объектом либо массивом объектов, которые содержат ключи, указанные ниже. В случае наличия base64 и url одновременно, приоритет отдается base64.
Ключи, которые могут быть обработаны:
Поле | Тип | Обязательно | Значение |
---|---|---|---|
file_name | String | Да | Имя файла и расширение |
mime_type | String | Да | mime_type файла |
base64 | String | Нет | Cтрока base64 |
url | String | Нет | URL файла |
-
Параметр messageOptions позволяет переопределить дефолтные и дополнить отсутствующие опции нексуса при отправке запроса к сервису.
-
Параметр eventOptions позволяет создать событие в случае положительного ответа сервиса.
- Ключ param_1 зарезервирован и всегда содержит sys_id созданного ain_ai_message.
- Вы можете добавить местозаполнитель для подстановки атрибутов соответствующего ain_ai_message.
Пример: param_1:
"${message.completion}"
Ключи, которые могут быть обработаны:
Поле | Тип | Обязательное | Значение по умолчанию |
---|---|---|---|
event_name | String | Да | Нет |
table_name | String | Нет | ain_ai_message |
record_sys_id | String | Нет | sys_id созданного ain_ai_message |
process_started_at | String | Нет | Нет |
param_2 | String | Нет | Нет |
param_3 | String | Нет | Нет |
param_4 | String | Нет | Нет |
param_5 | String | Нет | Нет |
- Определите параметр eventRejectOptions, чтобы в случае отрицательного ответа сервиса было инициировано событие с указанными параметрами.
- Ключ param_1 зарезервирован и всегда содержит sys_id созданного ain_ai_message.
- Вы можете добавлять местозаполнители для подстановки атрибутов соответствующего ain_ai_message.
Пример: param_1:
"${message.completion}"
Условия для инициирования события:
- сервис сообщил об ошибке.
- не удалось обработать ответ сервиса.
- не удалось обработать eventOptions.
- при превышении времени ожидания ответа от сервиса, если оно было задано с помощью метода (setTimeout).
Ключи, которые могут быть обработаны:
Поле | Тип | Обязательное | Значение по умолчанию |
---|---|---|---|
event_name | String | Да | Нет |
table_name | String | Нет | ain_ai_message |
record_sys_id | String | Нет | sys_id созданного ain_ai_message |
process_started_at | String | Нет | Нет |
param_2 | String | Нет | Нет |
param_3 | String | Нет | Нет |
param_4 | String | Нет | Нет |
param_5 | String | Нет | Нет |
Возвращаемое значение:
Тип | Описание |
---|---|
String | Метод возвращает sys_id созданного AI Message. Если AI Message создать не удалось, метод возвращает 0. |
Пример:
const attach = new SimpleRecord('sys_attachment');
attach.get(id); // sys_id файла в системе
const read = new SimpleAttachment();
const prompt = {
"file_name": attach.file_name,
"mime_type": attach.mime_content_type,
"sys_created_at": attach.sys_created_at,
"url": read.getAttachmentUrlById(attach.sys_id)
};
ss.importIncludeScript('AIVision');
const vision = new AIVision();
ss.info(vision.recognition(prompt, {}))
processDocument(file, messageOptions, eventOptoins, eventRejectOptions)
Используйте этот метод отправки сообщения в AI сервис для транскрибирования документа и получения результата в формате JSON. Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
file | Array или Object | Да | Нет |
messageOptions | Object | Нет | {} |
eventOptions | Object | Нет | {} |
eventRejectOptions | Object | Нет | {} |
- Параметр file является либо объектом либо массивом объектов, которые содержат ключи, указанные ниже. В случае наличия base64 и url одновременно, приоритет отдается base64.
Ключи, которые могут быть обработаны:
Поле | Тип | Обязательно | Значение |
---|---|---|---|
file_name | String | Да | Имя файла и расширение |
mime_type | String | Да | mime_type файла |
base64 | String | Нет | строка base64 |
url | String | Нет | URL файла |
-
Параметр messageOptions позволяет переопределить дефолтные и дополнить отсутствующие опции нексуса при отправке запроса к сервису.
-
Параметр eventOptions позволяет создать событие в случае положительного ответа сервиса.
- Ключ param_1 зарезервирован и всегда содержит sys_id созданного ain_ai_message.
- Вы можете добавить местозаполнитель для подстановки атрибутов соответствующего ain_ai_message.
Пример: param_1:
"${message.completion}"
Ключи, которые могут быть обработаны:
Поле | Тип | Обязательное | Значение |
---|---|---|---|
event_name | String | Да | Нет |
table_name | String | Нет | ain_ai_message |
record_sys_id | String | Нет | sys_id созданного ain_ai_message |
process_started_at | String | Нет | Нет |
param_2 | String | Нет | Нет |
param_3 | String | Нет | Нет |
param_4 | String | Нет | Нет |
param_5 | String | Нет | Нет |
- Определите параметр eventRejectOptions, чтобы в случае отрицательного ответа сервиса было инициировано событие с указанными параметрами.
- Ключ param_1 зарезервирован и всегда содержит sys_id созданного ain_ai_message.
- Вы можете добавлять местозаполнители для подстановки атрибутов соответствующего ain_ai_message.
Пример: param_1:
"${message.completion}"
Условия для инициирования события:
- сервис сообщил об ошибке.
- не удалось обработать ответ сервиса.
- не удалось обработать eventOptions.
- при превышении времени ожидания ответа от сервиса, если оно было задано с помощью метода (setTimeout).
Ключи, которые могут быть обработаны:
Поле | Тип | Обязательное | Значение |
---|---|---|---|
event_name | String | Да | Нет |
table_name | String | Нет | ain_ai_message |
record_sys_id | String | Нет | sys_id созданного ain_ai_message |
process_started_at | String | Нет | Нет |
param_2 | String | Нет | Нет |
param_3 | String | Нет | Нет |
param_4 | String | Нет | Нет |
param_5 | String | Нет | Нет |
Возвращаемое значение:
Тип | Описание |
---|---|
String | Метод возвращает sys_id созданного AI Message. Если AI Message создать не удалось, метод возвращает 0. |
Пример:
const attach = new SimpleRecord('sys_attachment');
attach.get(id); // sys_id файла в системе
const read = new SimpleAttachment();
const prompt = {
"file_name": attach.file_name,
"mime_type": attach.mime_content_type,
"sys_created_at": attach.sys_created_at,
"url": read.getAttachmentUrlById(attach.sys_id)
};
ss.importIncludeScript('AIVision');
const vision = new AIVision();
ss.info(vision.processDocument(prompt, {}))
getErrors()
Используйте этот метод, чтобы получать информацию об ошибках, если при отправке сообщения произошел сбой.
Возвращаемое значение:
Тип | Описание |
---|---|
Array of Strings | Метод возвращает список ошибок. |
Пример:
const attach = new SimpleRecord('sys_attachment');
attach.get(id); // sys_id файла в системе
const read = new SimpleAttachment();
const prompt = {
"file_name": attach.file_name,
"mime_type": attach.mime_content_type,
"sys_created_at": attach.sys_created_at,
"url": read.getAttachmentUrlById(attach.sys_id)
};
ss.importIncludeScript('AIVision');
const vision = new AIVision();
vision.recognition(prompt, {});
ss.info(vision.getErrors());
setTimeout(duration)
Используйте метод для того, чтобы установить максимальное время ожидания ответа от сервиса в секундах. Если установленное время будет превышено, сообщение будет переведено в статус Ошибка, а также будет инициировано reject событие, если оно было задано в eventRejectOptions.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
duration | Integer | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|---|
undefined | Метод не возвращает значения. |
Пример:
const attach = new SimpleRecord('sys_attachment');
attach.get(id); // sys_id файла в системе
const read = new SimpleAttachment();
const prompt = {
"file_name": attach.file_name,
"mime_type": attach.mime_content_type,
"sys_created_at": attach.sys_created_at,
"url": read.getAttachmentUrlById(attach.sys_id)
};
ss.importIncludeScript('AIVision');
const vision = new AIVision();
vision.setTimeout(3600);
ss.info(vision.recognition(prompt, {}));