AI API
Чат с AI
POST /api/client/ai/chat
Отправка сообщения AI-ассистенту.
Request:
{
"message": "Как оформить возврат товара?",
"conversation_id": "uuid",
"use_knowledge_base": true,
"model": "deepseek/deepseek-chat"
}
| Поле | Тип | Описание |
|---|---|---|
message | string | Сообщение пользователя |
conversation_id | string | ID диалога (опционально) |
use_knowledge_base | boolean | Искать в базе знаний |
model | string | Модель AI (опционально) |
Response (200):
{
"status": "success",
"response": "Для оформления возврата товара...",
"conversation_id": "uuid",
"sources": [
{
"title": "Возврат товара",
"chunk_id": 123,
"relevance": 0.85
}
]
}
Генерация изображений
POST /api/client/ai/generate_image
Генерация изображения по текстовому описанию.
Request:
{
"prompt": "Современный офис с панорамными окнами",
"negative_prompt": "blurry, low quality",
"model": "sdxl",
"width": 1024,
"height": 1024,
"num_images": 1
}
Response (200):
{
"status": "success",
"images": [
{
"url": "/files/org-id/generated/image-123.webp",
"seed": 12345
}
]
}
Доступные модели
| Модель | ID | Особенности |
|---|---|---|
| SDXL | sdxl | Высокое качество |
| Flux Schnell | flux-schnell | Быстрая генерация |
| Flux Dev | flux-dev | Лучшее качество |
Редактирование изображений
POST /api/client/ai/edit_image
Редактирование изображения.
Request (multipart/form-data):
| Поле | Тип | Описание |
|---|---|---|
image | File | Исходное изображение |
operation | string | Тип операции |
prompt | string | Описание изменений |
strength | float | Сила изменений (0.0-1.0) |
Операции:
| Операция | Описание |
|---|---|
upscale | Увеличение разрешения |
bg-removal | Удаление фона |
img2img | Редактирование по промпту |
Response (200):
{
"status": "success",
"result_url": "/files/org-id/edited/image-456.webp"
}
Face Swap
POST /api/client/ai/face_swap
Замена лица на изображении.
Request (multipart/form-data):
| Поле | Тип | Описание |
|---|---|---|
source_image | File | Изображение с лицом-источником |
target_image | File | Целевое изображение |
Response (200):
{
"status": "success",
"result_url": "/files/org-id/faceswap/result-789.webp"
}
PixelFlows
GET /api/client/ai/pixelflow_catalog
Получение каталога доступных PixelFlow шаблонов.
Response (200):
{
"status": "success",
"categories": [
{
"id": "fashion",
"name": "Fashion",
"templates": [
{
"id": "virtual-try-on",
"name": "Virtual Try-On",
"description": "Примерка одежды",
"inputs": ["garment_image", "model_image"],
"credits": 5
}
]
}
]
}
POST /api/client/ai/pixelflow
Запуск PixelFlow шаблона.
Request (multipart/form-data):
| Поле | Тип | Описание |
|---|---|---|
workflow_id | string | ID шаблона |
input_1 | File | Первое изображение |
input_2 | File | Второе изображение (если требуется) |
params | JSON | Дополнительные параметры |
Response (200):
{
"status": "success",
"result_url": "/files/org-id/pixelflow/result.webp",
"credits_used": 5
}
Диалоги AI
GET /api/client/ai/conversations
Получение списка диалогов с AI.
Response (200):
{
"status": "success",
"conversations": [
{
"id": "uuid",
"title": "Вопросы о возвратах",
"created_at": "2026-01-10T10:00:00Z",
"updated_at": "2026-01-10T15:30:00Z",
"messages_count": 5
}
]
}
POST /api/client/ai/conversations
Создание нового диалога.
Request:
{
"title": "Новый диалог"
}
Response (201):
{
"status": "success",
"conversation_id": "uuid"
}