Rozwój LLM powoli zaczyna przynosić działające rozwiązania. Pierwsze, które pokazały wartość dwa lata temu były copiloty wspierające programowanie.
Copilot działa w ten sposób, że w trakcie pisania tekstu przez człowieka analizuje treść i co jakiś czas podpowiada, co jeszcze człowiek mógłby chcieć napisać. W przypadku programowania ich efektywność jest olbrzymia i sam korzystam z produktu oferowanego przez Github.
Pomyślałem, że mając bazę wiedzy z plikami firmowymi we Wroolo (wroolo.com), mając model RAG, czyli taki, który semantycznie wyszukuje treści i generuje z nich nowe teksty, mogę uzupełnić go o funkcję copilot. Testowałem copilot, stosując „goły” model GPT-4, ale podpowiedzi były bardzo słabe, oderwane od mojego kontekstu.
Wszystko uległo zmianie rewolucyjnej, gdy podstawą do generowania podpowiedzi były moje własne pliki.
Poniżej wrzuciłem przykład, w którym dokumentami wejściowymi były SIWZ z urzędu miasta. Zadanie natomiast polegało na napisaniu kolejnych fragmentów nowego SIWZ. Jak widać w przypadku formułek prawnych, adresów, typowych paragrafów działa to naprawdę nieźle.
Tutaj można sobie zobaczyć przykład dla generowania oferty na szkolenie. Na wejściu wrzuciłem trzy pliki z ofertami na Massawę i zacząłem chwilę później pisać ofertę. Jak widać w wielu fragmentach algorytm trafnie wybierał treści ze źródłowych dokumentów i mi je podpowiadał. Przyjrzyjcie się, jak komponuje akapit na temat mojej osoby i mojego wspólnika Pawła.
Niesamowite jest to, że wystarczyły mi 3-5 plików źródłowych, aby podpowiedzi stały się naprawdę wartościowe. Problemów jest kilka:
- Wydajność – na każdą podpowiedź trzeba czekać około 2-5 sekund. Rozwiązanie tutaj może być postawienie LLM lokalnie, albo poczekanie aż GPT stanie się szybszy.
- Koszt – to jest chyba największy problem. Za każdym razem, gdy generowana jest podpowiedź, do GPT wysyłany jest bardzo długi prompt. Przygotowanie powyższych tekstów kosztowało około 1 dolara. To dużo, gdyby chcieć to wykorzystywać na codzień. Ale… ceny LLM spadają drastycznie, albo może postawić go lokalnie i mieć za darmo.
- Poufność – wpisywane treści, jak i dokumenty wysyłane są do GPT i do chmury Google. To niekiedy może być przeszkodą, jednak rozwiązaniem znowu może być postawienie takiego rozwiązania lokalnie.
- Jakość – około 10-20% podpowiedzi jest bez sensu. Ewidentnie wydłużenie prompta poprawia jakość, ale wpływa to na koszty i wydajność. Rozwiązaniem może być tutaj poczekanie na lepsze modele lub postawienie LLM lokalnie.
Podsumowując, moim zdaniem, gdziekolwiek w pracy pojawia się potrzeba pisania tekstów podobnych do już kiedyś napisanych tekstów, copiloty zawojują rynek. Przy programowaniu przyśpiesza mi to pracę już dzisiaj o około 20%. A pomyślmy, jak może to pomóc przy pisaniu pism do klientów, umów, prezentacji, notatek ze spotkań, dokumentacji wymagań, specyfikacji stanowisk, instrukcji, odpowiedzi na reklamacje itd.
Mam też wizję stworzenia copilota do rysowania diagramów procesowych. Gdyby to dobrze działało, byłoby niesamowitym wsparcie dla analityków. Wyobraźcie sobie, że człowiek wgrywa dostępną dokumentację, zaczyna rysować i system sam proponuje mu co wstawić w kolejnym kroku, i robi to poprawnie na chociaż 80%.
Ps.
Ze względu na koszty copilot we Wroolo jest dostępny tylko dla niektórych użytkowników.