dochub-sdk 0.1.382 → 0.1.385
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/interfaces/ai.ts +78 -2
- package/package.json +1 -1
package/interfaces/ai.ts
CHANGED
|
@@ -3,6 +3,20 @@ import { DocHubJSONSchema } from '../schemas/basetypes';
|
|
|
3
3
|
import { DataLakePath } from './datalake';
|
|
4
4
|
import { DocHubEditorContext } from './editors';
|
|
5
5
|
|
|
6
|
+
/**
|
|
7
|
+
* События AI
|
|
8
|
+
*/
|
|
9
|
+
export enum DocHubAIEvents {
|
|
10
|
+
/**
|
|
11
|
+
* Глобальные события
|
|
12
|
+
*/
|
|
13
|
+
setDefaultDriver = '$ai-change-default-driver', // Драйвер AI по умолчанию изменился
|
|
14
|
+
/**
|
|
15
|
+
* Локальные события
|
|
16
|
+
*/
|
|
17
|
+
registeredDriver = '#ai-registered-driver', // Зарегистрирован драйвер AI
|
|
18
|
+
};
|
|
19
|
+
|
|
6
20
|
/**
|
|
7
21
|
* Фрагмент контекста
|
|
8
22
|
*/
|
|
@@ -50,6 +64,24 @@ export interface IDocHubAIRequest {
|
|
|
50
64
|
next(question: string): Promise<void>;
|
|
51
65
|
}
|
|
52
66
|
|
|
67
|
+
export type DocHubAIAskAttachmentFileContent = string;
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* Метаданные файла
|
|
72
|
+
*/
|
|
73
|
+
export interface DocHubAIAskAttachmentFile {
|
|
74
|
+
url: URL; // Ссылка на файл, либо base64 кодированный файл
|
|
75
|
+
source?: URL; // Источник информации для задач AI при указании ссылок на источники
|
|
76
|
+
description?: string; // Контекстное описание файла
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* Структура прикрепляемых файлов к запросу
|
|
81
|
+
*/
|
|
82
|
+
|
|
83
|
+
export type DocHubAIAskAttachment = DocHubAIAskAttachmentFile[];
|
|
84
|
+
|
|
53
85
|
/**
|
|
54
86
|
* Опции выполнения AI запроса
|
|
55
87
|
*/
|
|
@@ -66,6 +98,10 @@ export interface IDocHubAIAskOptions {
|
|
|
66
98
|
* Признак отображения внутреннего диалога IDE и AI-агента
|
|
67
99
|
*/
|
|
68
100
|
trace?: boolean;
|
|
101
|
+
/**
|
|
102
|
+
* Файлы прикрепляемые к запросу
|
|
103
|
+
*/
|
|
104
|
+
attachment?: DocHubAIAskAttachment;
|
|
69
105
|
}
|
|
70
106
|
|
|
71
107
|
/**
|
|
@@ -88,6 +124,10 @@ export interface IDocHubAIDriver {
|
|
|
88
124
|
* @returns - Запрос к AI
|
|
89
125
|
*/
|
|
90
126
|
ask: DocHubAskFunction;
|
|
127
|
+
/**
|
|
128
|
+
* Возвращает информацию о способностях AI
|
|
129
|
+
*/
|
|
130
|
+
getCapabilities(): Promise<IDocHubAICapabilities>;
|
|
91
131
|
}
|
|
92
132
|
|
|
93
133
|
export interface IDocHubAITextPartition {
|
|
@@ -187,6 +227,37 @@ export interface IDocHubComposerProvider {
|
|
|
187
227
|
fetchCommands(): Promise<IDocHubAIComposerCommand[]>;
|
|
188
228
|
}
|
|
189
229
|
|
|
230
|
+
export enum IDocHubAICapabilityID {
|
|
231
|
+
text = 'text',
|
|
232
|
+
attachment = 'attachment',
|
|
233
|
+
contextWindow = 'context-window'
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
export type DocHubAIAttachmentFileContentType = string;
|
|
237
|
+
|
|
238
|
+
/**
|
|
239
|
+
* Метаинформация о возможностях AI-агента
|
|
240
|
+
*/
|
|
241
|
+
export interface IDocHubAICapabilities {
|
|
242
|
+
/**
|
|
243
|
+
* Текстовое резюме от AI
|
|
244
|
+
*/
|
|
245
|
+
description?: string;
|
|
246
|
+
/**
|
|
247
|
+
* Способность обрабатывать прикрепленные файлы к сообщению
|
|
248
|
+
*/
|
|
249
|
+
[IDocHubAICapabilityID.attachment]?: DocHubAIAttachmentFileContentType[];
|
|
250
|
+
/**
|
|
251
|
+
* Способность воспринимать текс в запросе
|
|
252
|
+
*/
|
|
253
|
+
[IDocHubAICapabilityID.text]?: boolean;
|
|
254
|
+
/**
|
|
255
|
+
* Размер контекстного окна
|
|
256
|
+
*/
|
|
257
|
+
[IDocHubAICapabilityID.contextWindow]?: number;
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
|
|
190
261
|
/**
|
|
191
262
|
* Интерфейс AI ассистента
|
|
192
263
|
*/
|
|
@@ -254,9 +325,14 @@ export interface IDocHubAI {
|
|
|
254
325
|
*/
|
|
255
326
|
registerComposerProvider(alias: string, provider: IDocHubComposerProvider): void;
|
|
256
327
|
/**
|
|
257
|
-
* Возвращает список доступных
|
|
328
|
+
* Возвращает список доступных AI драйверов
|
|
329
|
+
*/
|
|
330
|
+
fetchDrivers(): string[];
|
|
331
|
+
/**
|
|
332
|
+
* Возвращает интерфейс драйвера по указанному идентификатору.
|
|
333
|
+
* Если alias пусто, то вернет интерфейс к драйверу по умолчанию.
|
|
258
334
|
*/
|
|
259
|
-
|
|
335
|
+
getDriver(alias?: string): IDocHubAIDriver;
|
|
260
336
|
/**
|
|
261
337
|
* Возвращает дефолтный драйвер AI
|
|
262
338
|
*/
|