Собираем AI-ассистента

Характер задан — собираем продукт. AI-ассистент объединяет всё, что ты освоил: интерфейс (Telegram или веб, как в П1), Claude API (как в П3/П5), базу для истории (как в П4). Claude Code соберёт это по одному заданию.

🎯 После урока сможешь: собрать AI-ассистента с интерфейсом, Claude API и историей диалога.

Как устроен ассистент

  Пользователь ─▶ [ Telegram / веб ] ─▶ [ FastAPI ]
                                            │
                        системный промпт + история ─▶ [ Claude API ]
                                            │                 │
                                   [ PostgreSQL: диалоги ]  ответ ─▶ пользователю

Что делает Claude API в продукте

  • Системный промпт — характер и база знаний (из прошлого урока).
  • История диалога — ассистент помнит предыдущие сообщения (передаём последние 10).
  • Температура низкая (0.1–0.3) — чтобы отвечал точно, а не фантазировал.
msg = client.messages.create(
    model="claude-haiku-4-5",
    system=SISTEMNYY_PROMPT,        # характер + база знаний
    messages=istoriya + [{"role": "user", "content": vopros}],
    max_tokens=500,
    temperature=0.2,
)
print(msg.content[0].text)

Системный промпт длинный (роль + вся база знаний) и повторяется в каждом запросе. Чтобы повторная часть промпта стоила заметно дешевле, включают prompt caching; на повторном чтении кэша экономия может доходить до 90%. Об этом подробнее в следующем уроке.

Задание для Claude Code

«Собери AI-ассистента для онлайн-школы: Telegram-бот + FastAPI + Claude API. Системный промпт с базой знаний, история диалога в PostgreSQL, температура 0.2, prompt caching. Отвечает по базе, при незнании — зовёт куратора».

Чат в Telegram: ученик спрашивает про курс, AI-ассистент отвечает по базе знаний школы.

Контрольный вопрос. Зачем ассистенту передавать историю диалога?

АЧтобы он помнил предыдущие сообщения и отвечал в контексте
БЧтобы запрос был длиннее
ВИсторию передавать не нужно

Подсказка: Без истории ассистент забывает, о чём говорили секунду назад.

Онлайн-проверка ответа появится позже

Контрольный вопрос. Почему температуру ставят низкой (0.1–0.3)?

АЧтобы ассистент отвечал точно по базе, а не фантазировал
БЧтобы отвечал быстрее
ВЧтобы было дешевле

Подсказка: Температура — про точность против креатива. Для консультанта нужна точность.

Онлайн-проверка ответа появится позже

Контрольный вопрос. Как называется техника, которая экономит до 90% на повторяющемся системном промпте? Впиши два слова по-английски.

Подсказка: Ты уже встречал её в фундаменте и дашбордах: кэширование промпта.

Онлайн-проверка ответа появится позже

Что дальше

Ассистent отвечает по базе знаний. Но продукт с ИИ и деньгами клиентов требует защиты. В следующем уроке — безопасность и оптимизация расходов.

Назад  ·  ↑ В начало урока  ·  ⌂ В начало курса  ·  Вперёд →

Школа Виктора Комлева