solver-sdk 2.0.3 → 2.1.0
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/dist/cjs/api/chat-api/index.js +205 -171
- package/dist/cjs/api/chat-api/index.js.map +1 -1
- package/dist/cjs/api/chat-api/models.js +1 -1
- package/dist/cjs/api/chat-api/stream-utils.js +139 -151
- package/dist/cjs/api/chat-api/stream-utils.js.map +1 -1
- package/dist/cjs/api/projects-api.js +2 -7
- package/dist/cjs/api/projects-api.js.map +1 -1
- package/dist/cjs/code-solver-sdk.js +2 -48
- package/dist/cjs/code-solver-sdk.js.map +1 -1
- package/dist/cjs/index.js +2 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/utils/message-helpers.js +212 -0
- package/dist/cjs/utils/message-helpers.js.map +1 -0
- package/dist/cjs/ws/filesystem-ws-client.js +6 -16
- package/dist/cjs/ws/filesystem-ws-client.js.map +1 -1
- package/dist/esm/api/chat-api/index.js +207 -151
- package/dist/esm/api/chat-api/index.js.map +1 -1
- package/dist/esm/api/chat-api/models.js +1 -1
- package/dist/esm/api/chat-api/stream-utils.js +139 -151
- package/dist/esm/api/chat-api/stream-utils.js.map +1 -1
- package/dist/esm/api/projects-api.js +2 -7
- package/dist/esm/api/projects-api.js.map +1 -1
- package/dist/esm/code-solver-sdk.js +2 -48
- package/dist/esm/code-solver-sdk.js.map +1 -1
- package/dist/esm/index.js +2 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/utils/message-helpers.js +199 -0
- package/dist/esm/utils/message-helpers.js.map +1 -0
- package/dist/esm/ws/filesystem-ws-client.js +6 -16
- package/dist/esm/ws/filesystem-ws-client.js.map +1 -1
- package/dist/types/api/chat-api/index.d.ts +23 -8
- package/dist/types/api/chat-api/index.d.ts.map +1 -1
- package/dist/types/api/chat-api/interfaces.d.ts +125 -8
- package/dist/types/api/chat-api/interfaces.d.ts.map +1 -1
- package/dist/types/api/chat-api/models.d.ts +163 -43
- package/dist/types/api/chat-api/models.d.ts.map +1 -1
- package/dist/types/api/chat-api/stream-utils.d.ts +19 -16
- package/dist/types/api/chat-api/stream-utils.d.ts.map +1 -1
- package/dist/types/api/projects-api.d.ts +1 -2
- package/dist/types/api/projects-api.d.ts.map +1 -1
- package/dist/types/code-solver-sdk.d.ts +1 -22
- package/dist/types/code-solver-sdk.d.ts.map +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/utils/message-helpers.d.ts +84 -0
- package/dist/types/utils/message-helpers.d.ts.map +1 -0
- package/dist/types/ws/filesystem-ws-client.d.ts +2 -2
- package/dist/types/ws/filesystem-ws-client.d.ts.map +1 -1
- package/docs/README.md +3 -3
- package/docs/WEBSOCKET.md +16 -133
- package/package.json +7 -2
- package/dist/cjs/api/filesystem-api.js +0 -123
- package/dist/cjs/api/filesystem-api.js.map +0 -1
- package/dist/esm/api/filesystem-api.js +0 -119
- package/dist/esm/api/filesystem-api.js.map +0 -1
- package/dist/types/api/filesystem-api.d.ts +0 -64
- package/dist/types/api/filesystem-api.d.ts.map +0 -1
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAE9D,aAAa;AACb,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC;AAE/B,4CAA4C;AAC5C,OAAO,EAAE,aAAa,EAAE,CAAC;AAEzB,OAAO,EAAE,eAAe,EAAE,CAAC;AAC3B,OAAO,EAAE,UAAU,EAAE,CAAC;AACtB,OAAO,EAAE,eAAe,EAAE,CAAC;AAE3B,0CAA0C;AAC1C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gDAAgD,CAAC;AAC/D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,2CAA2C,CAAC;AAE1D,uCAAuC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAE/C,2BAA2B;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAE9D,aAAa;AACb,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC;AAE/B,4CAA4C;AAC5C,OAAO,EAAE,aAAa,EAAE,CAAC;AAEzB,OAAO,EAAE,eAAe,EAAE,CAAC;AAC3B,OAAO,EAAE,UAAU,EAAE,CAAC;AACtB,OAAO,EAAE,eAAe,EAAE,CAAC;AAE3B,0CAA0C;AAC1C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gDAAgD,CAAC;AAC/D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,2CAA2C,CAAC;AAE1D,uCAAuC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAE/C,2BAA2B;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAE1C,kDAAkD;AAClD,cAAc,4BAA4B,CAAC;AAE3C,uBAAuB;AACvB,eAAe,aAAa,CAAC"}
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Помощники для создания complex content сообщений согласно Anthropic API
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Создает сообщение assistant с thinking и tool_use блоками
|
|
6
|
+
* @param thinkingContent Содержимое мышления
|
|
7
|
+
* @param signature Криптографическая подпись
|
|
8
|
+
* @param toolCall Вызов инструмента
|
|
9
|
+
* @returns Сообщение assistant с complex content
|
|
10
|
+
*/
|
|
11
|
+
export function createAssistantMessageWithThinking(thinkingContent, signature, toolCall) {
|
|
12
|
+
const content = [
|
|
13
|
+
{
|
|
14
|
+
type: 'thinking',
|
|
15
|
+
thinking: thinkingContent,
|
|
16
|
+
signature: signature
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
type: 'tool_use',
|
|
20
|
+
id: toolCall.id,
|
|
21
|
+
name: toolCall.name,
|
|
22
|
+
input: toolCall.input
|
|
23
|
+
}
|
|
24
|
+
];
|
|
25
|
+
return {
|
|
26
|
+
role: 'assistant',
|
|
27
|
+
content: content
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Создает сообщение user с результатом инструмента
|
|
32
|
+
* @param toolUseId ID вызова инструмента
|
|
33
|
+
* @param result Результат выполнения
|
|
34
|
+
* @param isError Флаг ошибки
|
|
35
|
+
* @returns Сообщение user с tool_result
|
|
36
|
+
*/
|
|
37
|
+
export function createToolResultMessage(toolUseId, result, isError = false) {
|
|
38
|
+
const content = [
|
|
39
|
+
{
|
|
40
|
+
type: 'tool_result',
|
|
41
|
+
tool_use_id: toolUseId,
|
|
42
|
+
content: typeof result === 'string' ? result : JSON.stringify(result),
|
|
43
|
+
is_error: isError
|
|
44
|
+
}
|
|
45
|
+
];
|
|
46
|
+
return {
|
|
47
|
+
role: 'user',
|
|
48
|
+
content: content
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Создает простое текстовое сообщение
|
|
53
|
+
* @param role Роль отправителя
|
|
54
|
+
* @param text Текст сообщения
|
|
55
|
+
* @returns Простое сообщение
|
|
56
|
+
*/
|
|
57
|
+
export function createTextMessage(role, text) {
|
|
58
|
+
return {
|
|
59
|
+
role: role,
|
|
60
|
+
content: text
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Создает сообщение assistant с текстом и мышлением
|
|
65
|
+
* @param text Основной текст ответа
|
|
66
|
+
* @param thinkingContent Содержимое мышления (опционально)
|
|
67
|
+
* @param signature Подпись мышления (опционально)
|
|
68
|
+
* @returns Сообщение assistant с complex content
|
|
69
|
+
*/
|
|
70
|
+
export function createAssistantMessage(text, thinkingContent, signature) {
|
|
71
|
+
const content = [];
|
|
72
|
+
// Добавляем thinking блок если есть
|
|
73
|
+
if (thinkingContent && signature) {
|
|
74
|
+
content.push({
|
|
75
|
+
type: 'thinking',
|
|
76
|
+
thinking: thinkingContent,
|
|
77
|
+
signature: signature
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
// Добавляем текстовый блок
|
|
81
|
+
content.push({
|
|
82
|
+
type: 'text',
|
|
83
|
+
text: text
|
|
84
|
+
});
|
|
85
|
+
return {
|
|
86
|
+
role: 'assistant',
|
|
87
|
+
content: content
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Извлекает thinking блоки из сообщения
|
|
92
|
+
* @param message Сообщение с complex content
|
|
93
|
+
* @returns Массив thinking блоков
|
|
94
|
+
*/
|
|
95
|
+
export function extractThinkingBlocks(message) {
|
|
96
|
+
if (typeof message.content === 'string') {
|
|
97
|
+
return [];
|
|
98
|
+
}
|
|
99
|
+
return message.content.filter(block => block.type === 'thinking' || block.type === 'redacted_thinking');
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Извлекает tool_use блоки из сообщения
|
|
103
|
+
* @param message Сообщение с complex content
|
|
104
|
+
* @returns Массив tool_use блоков
|
|
105
|
+
*/
|
|
106
|
+
export function extractToolUseBlocks(message) {
|
|
107
|
+
if (typeof message.content === 'string') {
|
|
108
|
+
return [];
|
|
109
|
+
}
|
|
110
|
+
return message.content.filter(block => block.type === 'tool_use');
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Извлекает текстовое содержимое из сообщения
|
|
114
|
+
* @param message Сообщение
|
|
115
|
+
* @returns Текстовое содержимое
|
|
116
|
+
*/
|
|
117
|
+
export function extractTextContent(message) {
|
|
118
|
+
if (typeof message.content === 'string') {
|
|
119
|
+
return message.content;
|
|
120
|
+
}
|
|
121
|
+
const textBlocks = message.content.filter(block => block.type === 'text');
|
|
122
|
+
return textBlocks.map(block => block.text).join('');
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Проверяет, содержит ли сообщение thinking блоки
|
|
126
|
+
* @param message Сообщение для проверки
|
|
127
|
+
* @returns true если содержит thinking блоки
|
|
128
|
+
*/
|
|
129
|
+
export function hasThinkingBlocks(message) {
|
|
130
|
+
if (typeof message.content === 'string') {
|
|
131
|
+
return false;
|
|
132
|
+
}
|
|
133
|
+
return message.content.some(block => block.type === 'thinking' || block.type === 'redacted_thinking');
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Проверяет, содержит ли сообщение tool_use блоки
|
|
137
|
+
* @param message Сообщение для проверки
|
|
138
|
+
* @returns true если содержит tool_use блоки
|
|
139
|
+
*/
|
|
140
|
+
export function hasToolUseBlocks(message) {
|
|
141
|
+
if (typeof message.content === 'string') {
|
|
142
|
+
return false;
|
|
143
|
+
}
|
|
144
|
+
return message.content.some(block => block.type === 'tool_use');
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Создает определение инструмента для Anthropic API
|
|
148
|
+
* @param name Название инструмента
|
|
149
|
+
* @param description Описание функциональности
|
|
150
|
+
* @param properties Свойства входных параметров
|
|
151
|
+
* @param required Обязательные поля
|
|
152
|
+
* @returns Определение инструмента
|
|
153
|
+
*/
|
|
154
|
+
export function createToolDefinition(name, description, properties, required = []) {
|
|
155
|
+
return {
|
|
156
|
+
name: name,
|
|
157
|
+
description: description,
|
|
158
|
+
input_schema: {
|
|
159
|
+
type: 'object',
|
|
160
|
+
properties: properties,
|
|
161
|
+
required: required
|
|
162
|
+
}
|
|
163
|
+
};
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* Создает стандартные инструменты для разработки (как в Cursor)
|
|
167
|
+
* @returns Массив стандартных инструментов
|
|
168
|
+
*/
|
|
169
|
+
export function createStandardDevelopmentTools() {
|
|
170
|
+
return [
|
|
171
|
+
createToolDefinition('edit_file', 'Редактирует содержимое файла', {
|
|
172
|
+
file_path: { type: 'string', description: 'Путь к файлу для редактирования' },
|
|
173
|
+
content: { type: 'string', description: 'Новое содержимое файла' },
|
|
174
|
+
start_line: { type: 'integer', description: 'Начальная строка для частичного редактирования' },
|
|
175
|
+
end_line: { type: 'integer', description: 'Конечная строка для частичного редактирования' }
|
|
176
|
+
}, ['file_path', 'content']),
|
|
177
|
+
createToolDefinition('read_file', 'Читает содержимое файла', {
|
|
178
|
+
file_path: { type: 'string', description: 'Путь к файлу для чтения' }
|
|
179
|
+
}, ['file_path']),
|
|
180
|
+
createToolDefinition('create_file', 'Создает новый файл', {
|
|
181
|
+
file_path: { type: 'string', description: 'Путь к новому файлу' },
|
|
182
|
+
content: { type: 'string', description: 'Содержимое файла' }
|
|
183
|
+
}, ['file_path', 'content']),
|
|
184
|
+
createToolDefinition('list_files', 'Получает список файлов в директории', {
|
|
185
|
+
directory_path: { type: 'string', description: 'Путь к директории' },
|
|
186
|
+
include_hidden: { type: 'boolean', description: 'Включать скрытые файлы' }
|
|
187
|
+
}, ['directory_path']),
|
|
188
|
+
createToolDefinition('search_files', 'Поиск в файлах по содержимому', {
|
|
189
|
+
query: { type: 'string', description: 'Поисковый запрос' },
|
|
190
|
+
file_pattern: { type: 'string', description: 'Паттерн имен файлов' },
|
|
191
|
+
case_sensitive: { type: 'boolean', description: 'Учитывать регистр' }
|
|
192
|
+
}, ['query']),
|
|
193
|
+
createToolDefinition('run_command', 'Выполняет команду в терминале', {
|
|
194
|
+
command: { type: 'string', description: 'Команда для выполнения' },
|
|
195
|
+
working_directory: { type: 'string', description: 'Рабочая директория' }
|
|
196
|
+
}, ['command'])
|
|
197
|
+
];
|
|
198
|
+
}
|
|
199
|
+
//# sourceMappingURL=message-helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message-helpers.js","sourceRoot":"","sources":["../../../src/utils/message-helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -29,27 +29,17 @@ export class FileSystemWsClient extends BaseWebSocketClient {
|
|
|
29
29
|
}
|
|
30
30
|
/**
|
|
31
31
|
* Подключение к серверу и инициализация сессии
|
|
32
|
-
* @param
|
|
32
|
+
* @param params Параметры подключения (может содержать projectId или другие параметры)
|
|
33
33
|
* @returns Promise<boolean> Успешность подключения
|
|
34
34
|
*/
|
|
35
|
-
async connect(
|
|
36
|
-
//
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
this.projectId = projectIdOrParams;
|
|
40
|
-
params.projectId = projectIdOrParams;
|
|
41
|
-
}
|
|
42
|
-
else {
|
|
43
|
-
// Если передан объект с параметрами
|
|
44
|
-
params = projectIdOrParams;
|
|
45
|
-
// Если передан projectId, сохраняем его
|
|
46
|
-
if (params.projectId) {
|
|
47
|
-
this.projectId = params.projectId;
|
|
48
|
-
}
|
|
35
|
+
async connect(params = {}) {
|
|
36
|
+
// Если передан projectId, сохраняем его
|
|
37
|
+
if (params.projectId) {
|
|
38
|
+
this.projectId = params.projectId;
|
|
49
39
|
}
|
|
50
40
|
// Проверяем, есть ли у нас projectId
|
|
51
41
|
if (!this.projectId) {
|
|
52
|
-
this.logger.error('Не указан projectId для подключения
|
|
42
|
+
this.logger.error('Не указан projectId для подключения');
|
|
53
43
|
return false;
|
|
54
44
|
}
|
|
55
45
|
// Подключаемся с базовыми параметрами
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filesystem-ws-client.js","sourceRoot":"","sources":["../../../src/ws/filesystem-ws-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AAuCpC;;GAEG;AACH,MAAM,OAAO,kBAAmB,SAAQ,mBAAmB;IAazD;;;;OAIG;IACH,YACE,OAAe,EACf,UAAqC,EAAE;QAEvC,KAAK,CAAC,kBAAkB,CAAC,UAAU,EAAE,OAAO,EAAE;YAC5C,cAAc,EAAE,IAAI;YACpB,YAAY,EAAE,KAAK;YACnB,iBAAiB,EAAE,aAAa;YAChC,UAAU,EAAE,IAAI;YAChB,aAAa,EAAE,KAAK;SACrB,CAAC,CAAC;QA3BG,cAAS,GAAkB,IAAI,CAAC;QAChC,cAAS,GAAkB,IAAI,CAAC;QACvB,gBAAW,GAAG,OAAO,CAAC;QA2BrC,4BAA4B;QAC5B,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,8BAA8B,CAAC,CAAC,CAAC;QAC/F,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,wCAAwC,CAAC,CAAC,CAAC;QAC3G,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,oCAAoC,CAAC,CAAC,CAAC;IAC3G,CAAC;IAED;;;;OAIG;IACa,KAAK,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"filesystem-ws-client.js","sourceRoot":"","sources":["../../../src/ws/filesystem-ws-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* API для работы с чатом
|
|
2
|
+
* API для работы с чатом с поддержкой Anthropic Extended Thinking
|
|
3
3
|
*/
|
|
4
4
|
import { IHttpClient } from '../../interfaces/http-client';
|
|
5
5
|
import { ChatService } from './interfaces';
|
|
@@ -7,7 +7,7 @@ import { ChatMessage, ChatOptions, ChatResponse, ChatStreamChunk, ChatStreamOpti
|
|
|
7
7
|
export * from './models';
|
|
8
8
|
export * from './interfaces';
|
|
9
9
|
/**
|
|
10
|
-
* API для работы с чатом
|
|
10
|
+
* API для работы с чатом с поддержкой Anthropic Extended Thinking
|
|
11
11
|
*/
|
|
12
12
|
export declare class ChatApi implements ChatService {
|
|
13
13
|
private readonly httpClient;
|
|
@@ -58,24 +58,39 @@ export declare class ChatApi implements ChatService {
|
|
|
58
58
|
*/
|
|
59
59
|
streamChat(messages: ChatMessage[], options?: ChatStreamOptions): AsyncGenerator<ChatStreamChunk>;
|
|
60
60
|
/**
|
|
61
|
-
* Отправляет запрос
|
|
61
|
+
* Отправляет одиночный запрос в потоковом режиме
|
|
62
62
|
* @param {string} prompt Запрос к модели
|
|
63
63
|
* @param {ChatStreamOptions} [options] Дополнительные параметры
|
|
64
64
|
* @returns {AsyncGenerator<ChatStreamChunk>} Асинхронный генератор чанков ответа
|
|
65
65
|
*/
|
|
66
66
|
streamPrompt(prompt: string, options?: ChatStreamOptions): AsyncGenerator<ChatStreamChunk>;
|
|
67
67
|
/**
|
|
68
|
-
*
|
|
69
|
-
* @returns {Promise<WebSocketConnectResponse>} Информация о
|
|
68
|
+
* Подключается к WebSocket для потоковой обработки
|
|
69
|
+
* @returns {Promise<WebSocketConnectResponse>} Информация о подключении
|
|
70
70
|
*/
|
|
71
71
|
connectWebSocket(): Promise<WebSocketConnectResponse>;
|
|
72
72
|
/**
|
|
73
|
-
* Отправляет сообщение в чат
|
|
73
|
+
* Отправляет сообщение в чат с поддержкой thinking через WebSocket
|
|
74
74
|
* @param {ChatMessage[]} messages Массив сообщений для отправки
|
|
75
75
|
* @param {ChatStreamOptions} [options] Дополнительные параметры
|
|
76
|
-
* @param {EventHandler} [onEvent] Обработчик событий
|
|
77
|
-
* @returns {Promise<ThinkingStreamResponse>} Информация о
|
|
76
|
+
* @param {EventHandler} [onEvent] Обработчик событий
|
|
77
|
+
* @returns {Promise<ThinkingStreamResponse>} Информация о запуске потоковой передачи
|
|
78
78
|
*/
|
|
79
79
|
streamChatWithThinking(messages: ChatMessage[], options?: ChatStreamOptions, onEvent?: EventHandler): Promise<ThinkingStreamResponse>;
|
|
80
|
+
/**
|
|
81
|
+
* Валидирует опции чата согласно документации Anthropic
|
|
82
|
+
* @private
|
|
83
|
+
*/
|
|
84
|
+
private validateChatOptions;
|
|
85
|
+
/**
|
|
86
|
+
* Строит параметры запроса для API
|
|
87
|
+
* @private
|
|
88
|
+
*/
|
|
89
|
+
private buildRequestParams;
|
|
90
|
+
/**
|
|
91
|
+
* Конвертирует ответ API в ChatStreamChunk
|
|
92
|
+
* @private
|
|
93
|
+
*/
|
|
94
|
+
private convertToStreamChunk;
|
|
80
95
|
}
|
|
81
96
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/api/chat-api/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EACL,WAAW,EACX,WAAW,EACX,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,wBAAwB,EACxB,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/api/chat-api/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EACL,WAAW,EACX,WAAW,EACX,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,wBAAwB,EACxB,YAAY,EAKb,MAAM,UAAU,CAAC;AAKlB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAE7B;;GAEG;AACH,qBAAa,OAAQ,YAAW,WAAW;IAK7B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAJvC;;;OAGG;gBAC0B,UAAU,EAAE,WAAW;IAEpD;;;;;OAKG;IACU,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAqBxF;;;;;OAKG;IACU,cAAc,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAMlG;;;OAGG;IACU,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC;IAalD;;;;;;OAMG;IACU,sBAAsB,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IA+D1G;;;;;OAKG;IACU,4BAA4B,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAkBjG;;;;;OAKG;IACW,UAAU,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,cAAc,CAAC,eAAe,CAAC;IAkF/G;;;;;OAKG;IACW,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,cAAc,CAAC,eAAe,CAAC;IAQxG;;;OAGG;IACU,gBAAgB,IAAI,OAAO,CAAC,wBAAwB,CAAC;IAMlE;;;;;;OAMG;IACU,sBAAsB,CACjC,QAAQ,EAAE,WAAW,EAAE,EACvB,OAAO,GAAE,iBAAsB,EAC/B,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,sBAAsB,CAAC;IAsClC;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAsC3B;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAmE1B;;;OAGG;IACH,OAAO,CAAC,oBAAoB;CA0B7B"}
|
|
@@ -1,47 +1,164 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Интерфейсы сервисов для модуля чат-API
|
|
3
3
|
*/
|
|
4
|
-
import { ChatMessage, ChatOptions, ChatResponse, ChatStreamChunk, ChatStreamOptions, ThinkingStreamResponse, WebSocketConnectResponse, EventHandler } from './models';
|
|
4
|
+
import { ChatMessage, ChatOptions, ChatResponse, ChatStreamChunk, ChatStreamOptions, ThinkingStreamResponse, WebSocketConnectResponse, EventHandler, Tool, ThinkingConfig } from './models';
|
|
5
5
|
/**
|
|
6
|
-
*
|
|
6
|
+
* Интерфейсы для работы с чатом с поддержкой Anthropic Extended Thinking
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* Интерфейс сервиса для работы с чатом
|
|
7
10
|
*/
|
|
8
11
|
export interface ChatService {
|
|
9
12
|
/**
|
|
10
13
|
* Отправляет сообщение в чат и получает ответ от модели
|
|
14
|
+
* @param messages Массив сообщений для отправки
|
|
15
|
+
* @param options Дополнительные параметры
|
|
16
|
+
* @returns Ответ модели
|
|
11
17
|
*/
|
|
12
18
|
chat(messages: ChatMessage[], options?: ChatOptions): Promise<ChatResponse>;
|
|
13
19
|
/**
|
|
14
20
|
* Алиас для метода chat для совместимости с другими SDK
|
|
21
|
+
* @param messages Массив сообщений для отправки
|
|
22
|
+
* @param options Дополнительные параметры
|
|
23
|
+
* @returns Ответ модели
|
|
15
24
|
*/
|
|
16
25
|
chatCompletion(messages: ChatMessage[], options?: ChatOptions): Promise<ChatResponse>;
|
|
17
26
|
/**
|
|
18
27
|
* Проверяет доступность API чата
|
|
28
|
+
* @returns Результат проверки
|
|
19
29
|
*/
|
|
20
30
|
checkAvailability(): Promise<boolean>;
|
|
21
31
|
/**
|
|
22
|
-
* Отправляет сообщение в чат
|
|
23
|
-
*
|
|
32
|
+
* Отправляет сообщение в чат с автоматическим переключением регионов
|
|
33
|
+
* @param messages Массив сообщений для отправки
|
|
34
|
+
* @param options Дополнительные параметры
|
|
35
|
+
* @returns Ответ модели
|
|
24
36
|
*/
|
|
25
37
|
chatWithRegionFailover(messages: ChatMessage[], options?: ChatOptions): Promise<ChatResponse>;
|
|
26
38
|
/**
|
|
27
|
-
* Отправляет одиночный запрос
|
|
39
|
+
* Отправляет одиночный запрос с автоматическим переключением регионов
|
|
40
|
+
* @param prompt Запрос к модели
|
|
41
|
+
* @param options Дополнительные параметры
|
|
42
|
+
* @returns Текстовый ответ модели
|
|
28
43
|
*/
|
|
29
44
|
sendPromptWithRegionFailover(prompt: string, options?: ChatOptions): Promise<string>;
|
|
30
45
|
/**
|
|
31
46
|
* Отправляет сообщение в чат в потоковом режиме
|
|
47
|
+
* @param messages Массив сообщений для отправки
|
|
48
|
+
* @param options Дополнительные параметры для потоковой передачи
|
|
49
|
+
* @returns Асинхронный генератор чанков ответа
|
|
32
50
|
*/
|
|
33
51
|
streamChat(messages: ChatMessage[], options?: ChatStreamOptions): AsyncGenerator<ChatStreamChunk>;
|
|
34
52
|
/**
|
|
35
|
-
* Отправляет запрос
|
|
53
|
+
* Отправляет одиночный запрос в потоковом режиме
|
|
54
|
+
* @param prompt Запрос к модели
|
|
55
|
+
* @param options Дополнительные параметры для потоковой передачи
|
|
56
|
+
* @returns Асинхронный генератор чанков ответа
|
|
36
57
|
*/
|
|
37
58
|
streamPrompt(prompt: string, options?: ChatStreamOptions): AsyncGenerator<ChatStreamChunk>;
|
|
38
59
|
/**
|
|
39
|
-
*
|
|
60
|
+
* Подключается к WebSocket для потоковой обработки
|
|
61
|
+
* @returns Информация о подключении
|
|
40
62
|
*/
|
|
41
63
|
connectWebSocket(): Promise<WebSocketConnectResponse>;
|
|
42
64
|
/**
|
|
43
|
-
* Отправляет сообщение в чат
|
|
65
|
+
* Отправляет сообщение в чат с поддержкой thinking через WebSocket
|
|
66
|
+
* @param messages Массив сообщений для отправки
|
|
67
|
+
* @param options Дополнительные параметры для потоковой передачи
|
|
68
|
+
* @param onEvent Обработчик событий WebSocket
|
|
69
|
+
* @returns Информация о запуске потоковой передачи
|
|
44
70
|
*/
|
|
45
71
|
streamChatWithThinking(messages: ChatMessage[], options?: ChatStreamOptions, onEvent?: EventHandler): Promise<ThinkingStreamResponse>;
|
|
46
72
|
}
|
|
73
|
+
/**
|
|
74
|
+
* Интерфейс для работы с инструментами
|
|
75
|
+
*/
|
|
76
|
+
export interface ToolsService {
|
|
77
|
+
/**
|
|
78
|
+
* Создает инструмент для использования с моделью
|
|
79
|
+
* @param name Название инструмента
|
|
80
|
+
* @param description Описание функциональности
|
|
81
|
+
* @param inputSchema Схема входных параметров
|
|
82
|
+
* @returns Объект инструмента
|
|
83
|
+
*/
|
|
84
|
+
createTool(name: string, description: string, inputSchema: object): Tool;
|
|
85
|
+
/**
|
|
86
|
+
* Валидирует конфигурацию инструментов
|
|
87
|
+
* @param tools Массив инструментов
|
|
88
|
+
* @param toolChoice Настройки выбора инструментов
|
|
89
|
+
* @param thinking Конфигурация мышления
|
|
90
|
+
* @returns Результат валидации
|
|
91
|
+
*/
|
|
92
|
+
validateToolsConfig(tools: Tool[], toolChoice?: string, thinking?: ThinkingConfig | boolean): boolean;
|
|
93
|
+
/**
|
|
94
|
+
* Обрабатывает результат выполнения инструмента
|
|
95
|
+
* @param toolUseId ID вызова инструмента
|
|
96
|
+
* @param result Результат выполнения
|
|
97
|
+
* @param isError Флаг ошибки
|
|
98
|
+
* @returns Объект результата для API
|
|
99
|
+
*/
|
|
100
|
+
formatToolResult(toolUseId: string, result: any, isError?: boolean): object;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Интерфейс для управления конфигурацией мышления
|
|
104
|
+
*/
|
|
105
|
+
export interface ThinkingConfigService {
|
|
106
|
+
/**
|
|
107
|
+
* Создает стандартную конфигурацию мышления
|
|
108
|
+
* @param budgetTokens Бюджет токенов (по умолчанию 4000)
|
|
109
|
+
* @returns Конфигурация мышления
|
|
110
|
+
*/
|
|
111
|
+
createStandardConfig(budgetTokens?: number): ThinkingConfig;
|
|
112
|
+
/**
|
|
113
|
+
* Создает конфигурацию мышления для разных уровней детализации
|
|
114
|
+
* @param level Уровень детализации ('concise' | 'standard' | 'detailed' | 'verbose')
|
|
115
|
+
* @returns Конфигурация мышления
|
|
116
|
+
*/
|
|
117
|
+
createConfigByLevel(level: 'concise' | 'standard' | 'detailed' | 'verbose'): ThinkingConfig;
|
|
118
|
+
/**
|
|
119
|
+
* Валидирует конфигурацию мышления
|
|
120
|
+
* @param config Конфигурация для валидации
|
|
121
|
+
* @returns Результат валидации
|
|
122
|
+
*/
|
|
123
|
+
validateConfig(config: ThinkingConfig | boolean): boolean;
|
|
124
|
+
/**
|
|
125
|
+
* Преобразует legacy формат thinking в новый
|
|
126
|
+
* @param thinking Legacy формат thinking
|
|
127
|
+
* @returns Новая конфигурация мышления
|
|
128
|
+
*/
|
|
129
|
+
convertLegacyThinking(thinking: boolean): ThinkingConfig | undefined;
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Интерфейс для управления WebSocket соединениями
|
|
133
|
+
*/
|
|
134
|
+
export interface WebSocketService {
|
|
135
|
+
/**
|
|
136
|
+
* Подключается к WebSocket серверу
|
|
137
|
+
* @param namespace Пространство имен
|
|
138
|
+
* @param options Опции подключения
|
|
139
|
+
* @returns Информация о подключении
|
|
140
|
+
*/
|
|
141
|
+
connect(namespace: string, options?: {
|
|
142
|
+
socketId?: string;
|
|
143
|
+
authToken?: string;
|
|
144
|
+
}): Promise<WebSocketConnectResponse>;
|
|
145
|
+
/**
|
|
146
|
+
* Отключается от WebSocket сервера
|
|
147
|
+
* @param socketId ID сокета для отключения
|
|
148
|
+
*/
|
|
149
|
+
disconnect(socketId: string): Promise<void>;
|
|
150
|
+
/**
|
|
151
|
+
* Настраивает обработчики событий
|
|
152
|
+
* @param socketId ID сокета
|
|
153
|
+
* @param eventHandler Обработчик событий
|
|
154
|
+
*/
|
|
155
|
+
setupEventHandlers(socketId: string, eventHandler: EventHandler): void;
|
|
156
|
+
/**
|
|
157
|
+
* Отправляет событие через WebSocket
|
|
158
|
+
* @param socketId ID сокета
|
|
159
|
+
* @param event Название события
|
|
160
|
+
* @param data Данные события
|
|
161
|
+
*/
|
|
162
|
+
emit(socketId: string, event: string, data: any): void;
|
|
163
|
+
}
|
|
47
164
|
//# sourceMappingURL=interfaces.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../../src/api/chat-api/interfaces.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EACL,WAAW,EACX,WAAW,EACX,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,wBAAwB,EACxB,YAAY,
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../../src/api/chat-api/interfaces.ts"],"names":[],"mappings":"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"}
|