Аз съм голям фен на Notion и го използвам за всичко – от моите лични списъци със задачи и дневник до управление на професионалните ми проекти. Мислех, че ще бъде забавно да създам инструмент, който да ми помогне да рационализирам моя работен процес на Notion, като създам слой за „улавяне на всички“ за Notion. Реших, че това би било чудесна възможност да използвам LLMs на OpenAI и така се роди този проект!

https://www.notionpersonalassistant.com/

Гледайте демонстрацията тук.

Вижте репото на GitHub тук.

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

Едно предизвикателство, пред което се изправих, беше да накарам модела да осигури предвидим изход, с който мога да работя последователно програмно. Бих набрал подкана, която получаваше предвидим изход, а след това на следващия ден внезапно LLM щеше да върне нещо ново! Вместо да се опитвам да накарам модела да върне JSON (имаше затруднения с това), реших да го накарам да раздели данните с канали | и след това да разделя низа, за да създаде масив. Можете да видите моето решение около този ред от код. Също така трябваше да проверя и дезинфекцирам изхода на LLM с JavaScript.

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

Научих много, докато изграждах този проект и имам много идеи как мога да го разширя. Ако имате някакви идеи или предложения, моля не се колебайте да се свържете с мен в LinkedIn.

Надявам се да ви хареса да използвате този инструмент толкова, колкото на мен ми беше приятно да го създавам!