AI-функции: обзор
FileDB — не просто SQL-движок со встроенным HTTP API: поверх него есть набор AI-функций, использующих любой чат-совместимый LLM-провайдер (OpenAI и OpenAI-совместимые прокси, плюс отдельно — Voyage/Gemini/Yandex для эмбеддингов). Всё — обычные JSON HTTP-эндпоинты, без SDK и без внешних зависимостей в самом движке.
| Функция | Эндпоинт | Что делает |
|---|---|---|
| AI-чат | POST /api/ai/chat |
Диалоговый SQL-ассистент: отвечает текстом и предлагает SQL-блоки, ничего не выполняет сама |
| AI-чат (стрим) | POST /api/ai/chat/stream |
То же самое, но потоково |
| AI-агент | POST /api/ai/agent |
Многошаговый read-only агент с tool calling — сам исследует схему и данные |
| Умный экспорт | POST /api/ai/sql-suggest |
Текст на естественном языке → готовый SELECT для экспорта |
| AI-маппинг импорта | POST /api/import/ai-suggest |
Предлагает сопоставление колонок файла и таблицы при импорте |
| Эмбеддинги | /api/embed/* |
Векторизация строк таблицы, семантический поиск по смыслу |
| Гибридный поиск | POST /api/vector/search |
Семантический поиск + SQL-фильтр (WHERE) в одном запросе |
Один провайдер на разговорные функции
AI-чат, AI-агент и умный экспорт используют один и тот же глобальный именованный пресет подключения к /chat/completions — настраивается один раз в веб-интерфейсе и переиспользуется всеми тремя. Подробности — на странице «Настройка AI: провайдеры и пресеты».
Эмбеддинги — конфиг на каждую БД
В отличие от чата, конфигурация эмбеддингов (провайдер, модель, ключ) хранится отдельно для каждого .fdb-файла — вектора жёстко привязаны к тому, чем они посчитаны, так что у разных баз на одном сервере может быть разный провайдер эмбеддингов.
Безопасность по умолчанию
Ни одна из AI-функций не может молча испортить данные:
- AI-агент read-only — доступны только
list_tables,describe_table,run_select; инструментов для DML/DDL просто не существует, лимит итераций (по умолчанию 6) не даёт агенту зациклиться. - AI-чат и умный экспорт никогда не выполняют SQL сами — модель предлагает код, оператор явно нажимает «Выполнить» после просмотра/правки.
- AI-маппинг импорта при недоступности LLM (нет ключа, сеть упала, невалидный ответ) тихо откатывается на эвристику совпадения имён колонок — импорт не ломается из-за AI.
Подробнее — на страницах «AI-чат и AI-агент», «Умный экспорт и AI-маппинг импорта», «Эмбеддинги и гибридный поиск» и «Настройка AI: провайдеры и пресеты».