Griptape, часть 2: Строим графы

В прошлом посте я провел разбор базовых концептов AI-фреймворка Griptape, и сейчас самое время применить их к делу. Попробуем их использовать для разработки небольшого приложения, которое помогает вести линк-блог в телеграме.

Приложение будет получать URL, скачивать его, прогонять через LLM для генерации сокращенного содержания, переводить это содержимое еще на несколько языков, собирать все вместе и публиковать в телеграме через бота. Общий флоу можно увидеть на схеме ниже:

  flowchart LR
	A["URL"]
	A --> Parser["Парсер"] --> LLM1["Суммаризатор"] 
	LLM1 --> Translator1["Перевод на язык 1"]
	LLM1 --> Translator2["Перевод на язык 2"]
	Translator1 --> Combiner["Сборщик"]
	Translator2 --> Combiner
	LLM1 --> Combiner
	Combiner --> Telegram["Телеграм-бот"]

Для простоты картины я опущу имплементацию телеграм-бота, а также оставлю в покое мой любимый Human-in-the-loop, который, по моему мнению, обязательно должен присутствовать как минимум где-то в районе сборщика .