Инструменты и действия ИИ

Инструменты и действия ИИ

В чате с Admin AI Assistant модель не угадывает — у неё набор инструментов для чтения данных и действий. Статья документирует инструменты, чтобы вы понимали, что ИИ делает за кулисами.

Инструменты доступны только для админ-чата. Участнический чат без инструментов, read-only.

Шесть админ-инструментов

# Tool What It Does Modifies Data?
1 create_announcement Черновик объявления Да — неактивный черновик после подтверждения
2 create_event Черновик мероприятия Да — неактивный черновик после подтверждения
3 search_events Поиск по дате/ключевому слову Нет — read-only
4 search_people Поиск по имени/статусу Нет — read-only
5 update_person_status Обновление membership/active у одного человека Да — после подтверждения
6 query_database Read-only counts, lists, averages, group-bys Нет — read-only

Гарантия подтверждения: каждый инструмент, пишущий в БД, сначала показывает предпросмотр и ждёт явного «Create» / «Confirm». ИИ не может тихо менять данные.

1. create_announcement

Черновик объявления с предпросмотром.

  • Inputs: title (required), content (required), category (optional: general, urgent, event, ministry)
  • Output: всегда is_active = false (черновик). Публикуете вручную из Announcements.

2. create_event

Черновик мероприятия с предпросмотром.

  • Inputs: title (required), starts_at (required, YYYY-MM-DD HH:MM), ends_at (optional), location (optional), description (optional)
  • Output: неактивное. Активируете в Events.

3. search_events

Поиск без изменений.

  • Inputs: start_date, end_date, keyword (all optional)
  • Output: title, date, time, location для каждого совпадения.

4. search_people

Поиск по имени или статусу членства.

  • Inputs: name, membership_status (member, regular_attender, visitor, inactive), is_active (boolean) — all optional
  • Output: имена и базовая информация в scope разрешений (team leaders — только назначенные группы).

5. update_person_status

Обновление статуса членства или active flag одного человека.

  • Inputs: person_id (required), membership_status, is_active, reason (optional, e.g. "Moved out of state")
  • Output: текущее vs предлагаемое, затем подтверждение. Требуется admin permission.

6. query_database — data DSL

Самый мощный инструмент. Принимает небольшой JSON DSL; ИИ переводит вопрос на естественном языке в вызов.

Schema

{
  "entity": "people | events | groups | announcements | attendance",
  "operation": "count | average | sum | list | min | max | group_by",
  "field": "age | birthdate | created_at | ...",
  "filters": { "...": "..." },
  "group_by": "membership_status | gender | age_group",
  "limit": 20
}

Entities

  • people — записи общины (с анонимизацией)
  • events — мероприятия календаря
  • groups — группы и классы
  • announcements — объявления
  • attendance — записи посещаемости

Operations

Operation What It Does Example Question
count Одно число «Сколько активных members?»
average Среднее числового поля «Средний возраст молодёжи?»
sum Сумма числового поля «Сколько записей посещаемости за прошлый месяц?»
list Строки (cap limit) «Все visitors»
min / max Минимум / максимум «Самый старший участник?»
group_by Подсчёт по полю «Членство по статусу»

Filter Examples

ИИ строит filters из вопроса:

  • {"membership_status": "member"}
  • {"is_active": true}
  • {"gender": "female"}
  • {"age_min": 18, "age_max": 30}
  • {"birth_month": 2} — февраль
  • {"birth_day": 14}
  • {"created_after": "2026-01-01"}

Sample Translations

You ask AI calls
"How many active members?" entity: people, operation: count, filters: {membership_status: member, is_active: true}
"Average age of women under 40" entity: people, operation: average, field: age, filters: {gender: female, age_max: 40}
"Birthday list for March" entity: people, operation: list, filters: {birth_month: 3}, limit: 50
"Group sizes" entity: groups, operation: list, field: member_count
"Membership status breakdown" entity: people, operation: group_by, group_by: membership_status

Audit Logging

Каждый вызов инструмента логируется:

  • имя инструмента и аргументы;
  • ID пользователя;
  • church ID;
  • timestamp.

Каждый запрос инструмента и каждое подтверждённое действие записываются в системный журнал.

Safety Recap

  • No deletes. Ни один инструмент не удаляет записи.
  • Drafts only. Все create_* — неактивные.
  • Preview + confirm. Каждая запись требует явного клика.
  • Permission-scoped. Team leaders не запрашивают вне своих групп.
  • Read-only by default. Четыре из шести — только чтение.

Связанные статьи

Мы используем файлы cookie для персонализации вашего опыта. Продолжая посещать этот сайт, вы соглашаетесь на использование нами файлов cookie

Ещё