Перейти к основному содержимому

AI API

Чат с AI

POST /api/client/ai/chat

Отправка сообщения AI-ассистенту.

Request:

{
"message": "Как оформить возврат товара?",
"conversation_id": "uuid",
"use_knowledge_base": true,
"model": "deepseek/deepseek-chat"
}
ПолеТипОписание
messagestringСообщение пользователя
conversation_idstringID диалога (опционально)
use_knowledge_basebooleanИскать в базе знаний
modelstringМодель 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Особенности
SDXLsdxlВысокое качество
Flux Schnellflux-schnellБыстрая генерация
Flux Devflux-devЛучшее качество

Редактирование изображений

POST /api/client/ai/edit_image

Редактирование изображения.

Request (multipart/form-data):

ПолеТипОписание
imageFileИсходное изображение
operationstringТип операции
promptstringОписание изменений
strengthfloatСила изменений (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_imageFileИзображение с лицом-источником
target_imageFileЦелевое изображение

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_idstringID шаблона
input_1FileПервое изображение
input_2FileВторое изображение (если требуется)
paramsJSONДополнительные параметры

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"
}