Я большой поклонник Notion и использую его для всего: от личных списков дел и журнала до управления своими профессиональными проектами. Я подумал, что было бы забавно создать инструмент, который помог бы мне оптимизировать рабочий процесс Notion, создав для Notion всеобъемлющий слой мозгового дампа. Я подумал, что это будет отличная возможность использовать LLM OpenAI, и так родился этот проект!

https://www.notionpersonalassistant.com/

Посмотреть демо здесь.

Посмотреть репозиторий GitHub здесь.

Моя цель при создании этого проекта заключалась в том, чтобы получить опыт работы с LLM. Приложение использует LangChain для создания подсказки и выполнения вызова API к LLM OpenAI. LangChain упрощает разработку с помощью OpenAI LLM. Мне особенно понравилось работать с некоторыми инструментами подсказок в библиотеке, хотя я обнаружил, что написание самой подсказки сложно и требует много настроек.

Одна из проблем, с которой я столкнулся, заключалась в том, чтобы заставить модель обеспечивать предсказуемый результат, с которым я мог бы последовательно работать программно. Я набирал подсказку, которая получала предсказуемый результат, а на следующий день внезапно LLM возвращал что-то новое! Вместо того, чтобы пытаться заставить модель возвращать JSON (у нее были проблемы с этим), я решил разделить данные с помощью каналов |, а затем разделить строку для создания массива. Вы можете увидеть мое решение вокруг этой строки кода. Мне также пришлось проверять и очищать вывод LLM с помощью JavaScript.

Это простое приложение React + ExpressJS, развернутое в AWS EC2, CloudFront, s3, Route53 и API Gateway.

Я многому научился, создавая этот проект, и у меня есть много идей о том, как я могу его расширить. Если у вас есть какие-либо идеи или предложения, пожалуйста, не стесняйтесь обращаться ко мне в LinkedIn.

Надеюсь, вам понравится использовать этот инструмент так же, как мне понравилось его создавать!