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.
Files changed (2) hide show
  1. package/interfaces/ai.ts +78 -2
  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
- * Возвращает список доступных моделей AI
328
+ * Возвращает список доступных AI драйверов
329
+ */
330
+ fetchDrivers(): string[];
331
+ /**
332
+ * Возвращает интерфейс драйвера по указанному идентификатору.
333
+ * Если alias пусто, то вернет интерфейс к драйверу по умолчанию.
258
334
  */
259
- getDrivers(): string[];
335
+ getDriver(alias?: string): IDocHubAIDriver;
260
336
  /**
261
337
  * Возвращает дефолтный драйвер AI
262
338
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dochub-sdk",
3
- "version": "0.1.382",
3
+ "version": "0.1.385",
4
4
  "description": "The DocHub System Development Kit.",
5
5
  "private": false,
6
6
  "main": "index.ts",