Пишем чат с ИИ девушкой на Python: LLM-роутинг, долгосрочная память и голос за выходные
sm1ck 8 минут назад Пишем чат с ИИ девушкой на Python: LLM-роутинг, долгосрочная память и голос за выходные Простой 11 мин 31 Искусственный интеллект Python * Туториал 19 июня 2026 Яндекс запустил ИИ-персонажей в Алисе...
Anthropic — What company has the best second artificial intelligence model at the end of June?
В сфере искусственного интеллекта произошло заметное событие. sm1ck 8 минут назад Пишем чат с ИИ девушкой на Python: LLM-роутинг, долгосрочная память и голос за выходные Простой 11 мин 31 Искусственный интеллект Python * Туториал 19 июня 2026 Яндекс запустил ИИ-персонажей в Алисе — больше 30 собеседников с характером, от блогеров до аниме-героинь; они запоминают контекст, а голоса и обсуждение новостей обещают позже. Жанр не новый: «чат с ИИ-персонажем» уже пару лет тянут Character. AI, Replika и десятки Telegram-ботов.
Удивляет другое — насколько мало нужно, чтобы собрать такое самому. Под капотом всего три кубика: языковая модель, память и синтез речи. Сделать чат с ИИ девушкой (или любым другим персонажем) поверх готовой модели — это грубо говоря вечер работы.
Технические детали
А вот заставить его не забывать вчерашний разговор, не отказывать на ровном месте, говорить голосом и при этом не разорить вас на счетах за API — на это уходит гораздо больше времени. Я полгода вожусь с таким ботом в проде; ниже — рабочий каркас на Python и четыре места, где мы спотыкались. Каркас: один запрос к моделиЛюбой чат с персонажем — это один и тот же цикл: системный промпт, история диалога, новая реплика — и ответ модели.
Системный промпт удобно собирать слоями: кто персонаж, с кем говорит, в каком формате отвечает. Ходить к моделям я предпочитаю через OpenAI-совместимый клиент — тот же OpenRouter даёт единый интерфейс к десяткам моделей, и менять их можно одной строкой. Заведите на openrouter.
ai/keys (вход через Google/GitHub → Create Key), положите пару долларов на баланс или возьмите модель с пометкой free. Ключ держим не в коде, а в переменной окружения OPENROUTER_API_KEY. from openai import AsyncOpenAI client = AsyncOpenAI(base_url=" api_key=API_KEY) def build_system_prompt(char, user): # системный промпт собираем слоями: персона -> кто собеседник -> формат ответа return "\n".
Отраслевые последствия
", f"Собеседник: {user}. ", "Отвечай 2–4 предложениями. Действия — в *звёздочках*, мысли — в ~тильдах~.
", ]) async def reply(char, user, history, user_msg, model): messages = messages += history # последние реплики диалога messages. append({"role": "user", "content": user_msg}) resp = await client. create(model=model, messages=messages) return resp.
content Это уже работающий чат. Всё интересное начинается дальше. Какую модель выбрать?
Событие, по словам экспертов, усилит конкуренцию в сфере ИИ.





