UNPKG

solver-sdk

Version:

SDK для интеграции с Code Solver Backend API (совместимо с браузером и Node.js), с поддержкой функциональности мышления (Thinking Mode)

169 lines (111 loc) 4 kB
# API Reference В этом документе описаны основные классы и методы SDK. ## Содержание - [CodeSolverSDK](#codesolversdk) - [ChatApi](#chatapi) - [ReasoningApi](#reasoningapi) - [ProjectsApi](#projectsapi) - [SearchApi](#searchapi) ## CodeSolverSDK Основной класс SDK, предоставляющий доступ ко всем API. ### Конструктор ```javascript const sdk = new CodeSolverSDK(options); ``` ### Параметры | Параметр | Тип | Описание | Обязательно | |----------|-----|----------|-------------| | `baseURL` | string | Базовый URL API | Да | | `apiKey` | string | API ключ для авторизации | Нет | | `timeout` | number | Таймаут для HTTP запросов (мс) | Нет | | `websocket` | object | Настройки WebSocket | Нет | ### Методы #### `getWebSocketClient()` Возвращает экземпляр WebSocket клиента для работы с соединениями. ```javascript const wsClient = sdk.getWebSocketClient(); ``` #### `checkHealth()` Проверяет доступность API сервера. ```javascript const isHealthy = await sdk.checkHealth(); ``` ## ChatApi API для работы с чатом и потоковой передачей мышления. ### Методы #### `streamChatWithThinking(messages, options, callback)` Отправляет запрос чата с потоковой передачей мышления через WebSocket. ```javascript const response = await sdk.chat.streamChatWithThinking( messages, options, callback ); ``` ##### Параметры | Параметр | Тип | Описание | Обязательно | |----------|-----|----------|-------------| | `messages` | Array | Массив сообщений для отправки модели | Да | | `options` | Object | Параметры запроса (модель, thinking: true) | Да | | `callback` | Function | Обработчик событий | Да | #### `chat(messages, options)` Отправляет запрос чата и возвращает полный ответ. ```javascript const response = await sdk.chat.chat( messages, options ); ``` #### `getModels()` Получает список доступных моделей. ```javascript const models = await sdk.chat.getModels(); ``` ## ReasoningApi API для работы с рассуждениями. ### Методы #### `createReasoning(options)` Создаёт новое рассуждение. ```javascript const reasoning = await sdk.reasoning.createReasoning({ projectId: 'project-id', query: 'Объясни этот проект' }); ``` #### `getReasoning(reasoningId)` Получает информацию о рассуждении. ```javascript const reasoning = await sdk.reasoning.getReasoning('reasoning-id'); ``` ## ProjectsApi API для работы с проектами. ### Методы #### `createProject(name, path)` Создаёт новый проект. ```javascript const project = await sdk.projects.createProject('Мой проект', '/path/to/project'); ``` #### `indexProject(projectId)` Запускает индексацию проекта. ```javascript await sdk.projects.indexProject('project-id'); ``` ## SearchApi API для поиска кода. ### Методы #### `searchCode(projectId, options)` Выполняет поиск кода в проекте. ```javascript const results = await sdk.search.searchCode('project-id', { query: 'function example', limit: 10 }); ``` #### `semanticSearch(projectId, options)` Выполняет семантический поиск в проекте. ```javascript const results = await sdk.search.semanticSearch('project-id', { query: 'функция для обработки HTTP запросов', limit: 10 }); ```