Kwestie open source dla sztucznej inteligencji należy przemyśleć ponownie

Jakie są prawa i ograniczenia licencyjne dla dużych modeli językowych? Czy obejmują one wagi i architektury głębokich sieci neuronowych?

iStock

Wciąż używamy terminu „open source” w kontekście dużych modeli językowych (LLM), takich jak Llama 2, ale nie jest jasne, co mamy na myśli. Nie odnoszę się do sporu o to, czy Meta powinna używać terminu „współdzielone źródło” do opisania swojej licencji na Llama 2 zamiast „open source”, jak argumentował Steve O'Grady z RedMonk i inni. Okazuje się, że nie jest to właściwe pytanie, ponieważ istnieje znacznie bardziej fundamentalna walka. Mianowicie, co w ogóle oznacza open source w świecie, w którym LLM (i modele fundamentów) są opracowywane, używane i dystrybuowane w sposób znacznie różniący się od oprogramowania?

Mehul Shah, założyciel i dyrektor generalny Aryn - startupu, którego celem jest ponowne wyobrażenie sobie wyszukiwania w przedsiębiorstwach za pomocą sztucznej inteligencji, po raz pierwszy nakreślił mi ten problem w wywiadzie. Shah, który stał na czele Amazon OpenSearch Service, stawia na AI, a także na open source. Czy te dwie rzeczy idą ze sobą w parze? Nie jest to tak proste, jak mogłoby się wydawać. Rzeczywiście, tak jak ruch open source musiał ponownie przemyśleć kluczowe terminy, takie jak „dystrybucja”, gdy oprogramowanie przeniosło się do chmury, prawdopodobnie będziemy musieli zmierzyć się z niespójnościami wprowadzonymi przez zastosowanie definicji open source do liczb zmiennoprzecinkowych.

Zobacz również:

  • Powstał jeden z najszybszych na świecie akceleratorów aplikacji AI
  • AI a DC - oto jest wyzwanie

Różne jedynki i zera

W długim poście na temat otwartego oprogramowania i sztucznej inteligencji Mike Linksvayer, szef polityki deweloperskiej w GitHub, napisał: „Nie ma ustalonej definicji tego, czym jest sztuczna inteligencja open source”. Ma rację. Nie tylko nie jest to ustalone, ale prawie nie jest omawiane. To musi się zmienić.

Jak podkreślił Shah w naszym wywiadzie, „modele sztucznej inteligencji są pozornie tylko programami, ale sposób, w jaki są rozwijane, używane i dystrybuowane, różni się od oprogramowania”. Pomimo tej niespójności, wciąż od niechcenia odnosimy się do rzeczy takich jak Llama 2 jako open source lub jako zdecydowanie nie open source. Co mamy na myśli?

Niektórzy chcą, aby oznaczało to, że oprogramowanie jest lub nie jest licencjonowane zgodnie z definicją Open Source. Ale to mija się z celem. Chodzi o liczby zmiennoprzecinkowe. Albo wagi. Lub coś, co nie jest oprogramowaniem w sposób, w jaki tradycyjnie o nim myślimy w odniesieniu do licencjonowania open source.

Zaglądając pod maskę tych LLM, wszystkie one są modelami głębokich sieci neuronowych, które pomimo różnic, wszystkie wykorzystują mniej więcej tę samą architekturę. Nazywa się ona architekturą transformatorową. W tych modelach znajdują się neurony, instrukcje dotyczące sposobu ich połączenia oraz specyfikacja liczby potrzebnych warstw neuronów. Różne modele wymagają tylko dekoderów lub tylko koderów, lub różnej liczby warstw, ale ostatecznie wszystkie są dość podobne architektonicznie.

Podstawową różnicą są liczby łączące neurony, zwane inaczej wagami. Liczby te informują o tym, kiedy przekazujesz modelowi dane wejściowe, które neurony są aktywowane i w jaki sposób są one propagowane. Choć nie jest to jasne, podejrzewam, że wiele osób myśli, że te wagi są kodem, który Meta i inni udostępniają na zasadach open sourcingu.

Być może. Ale tutaj sprawy się komplikują.

Jak zauważa Shah, „jeśli spojrzysz na wszystkie rzeczy, które są w definicji wolnego i otwartego oprogramowania, niektóre z tych rzeczy mają zastosowanie, a inne nie”. Po pierwsze, nie można bezpośrednio modyfikować wag. Nie można wejść i zmienić liczby zmiennoprzecinkowej. Trzeba je przekompilować z innego miejsca. „Chcę mieć licencję na same wagi, która pozwoli mi tworzyć produkty i dalsze modele na ich podstawie z jak najmniejszymi ograniczeniami”, podkreśla twórca Datasette, Simon Willison. To przynajmniej wyjaśnia, gdzie licencja powinna mieć zastosowanie, ale nie rozwiązuje bardziej fundamentalnego pytania Shaha, czy otwarte pozyskiwanie wag ma sens.

Gdzie zastosować licencję?

W naszej rozmowie Shah przedstawił kilka różnych sposobów myślenia o „kodzie” w kontekście LLM. Pierwszym z nich jest myślenie o wyselekcjonowanych danych treningowych jak o kodzie źródłowym programów komputerowych. Jeśli zaczniemy od tego, to trening (zejście gradientowe) jest jak kompilacja kodu źródłowego, a architektura głębokiej sieci neuronowej modeli transformatorowych lub LLM jest jak wirtualny sprzęt lub fizyczny sprzęt, na którym działa skompilowany program. W tym ujęciu wagi są skompilowanym programem.

Wydaje się to rozsądne, ale natychmiast rodzi kluczowe pytania. Po pierwsze, kuratorowane dane są często własnością kogoś innego. Po drugie, chociaż licencje są obecnie na wagach, może to nie działać dobrze, ponieważ te wagi są tylko liczbami zmiennoprzecinkowymi. Czy różni się to od licencjonowania kodu, który jest tylko zbiorem jedynek i zer? Czy licencja powinna dotyczyć architektury? Prawdopodobnie nie, ponieważ ta sama architektura z różnymi wagami może dać zupełnie inną sztuczną inteligencję. Czy zatem licencja powinna dotyczyć wag i architektury? Być może, ale możliwe jest modyfikowanie zachowania programu bez dostępu do kodu źródłowego poprzez dostrajanie i dostrajanie instrukcji. Do tego dochodzi fakt, że deweloperzy często dystrybuują delty lub różnice w stosunku do oryginalnych wag. Czy delty podlegają tej samej licencji, co oryginalny model? Czy mogą mieć zupełnie inne licencje?

Wszystkie te problemy można rozwiązać, ale nie jest to proste. Nie jest to tak jasne, jak stwierdzenie, że LLM jest open source lub nie.

Być może lepszym sposobem myślenia o open source w kontekście wag jest myślenie o wagach jako o kodzie źródłowym oprogramowania, co wydaje się być interpretacją Willisona. W tym świecie kompilacja oprogramowania sprowadza się do jego interpretacji na różnym sprzęcie (CPU i GPU). Ale czy licencja na wagi obejmuje architekturę sieci neuronowej? Co robimy z różnicami i wariantami modelu po dostrojeniu?

Co robimy z danymi treningowymi, które są prawdopodobnie tak samo ważne, jeśli nie ważniejsze, jak wagi? A co z otwartym pozyskiwaniem procesu wyboru odpowiedniego zestawu danych? Jest to niezwykle ważne, ale obecnie nie przewiduje się, w jaki sposób wykorzystujemy open source do opisania LLM.

To nie są kwestie akademickie. Biorąc pod uwagę eksplozję adopcji sztucznej inteligencji, ważne jest, aby programiści, startupy i wszyscy mogli korzystać z LLM typu open source i wiedzieć, co to oznacza. Willison, na przykład, powiedział mi, że chciałby lepiej zrozumieć swoje prawa wynikające z licencjonowanego LLM, takiego jak Llama 2. Jakie są jego ograniczenia? Co tak naprawdę oznaczają ograniczenia „dotyczące używania go do trenowania konkurencyjnych modeli - zwłaszcza [w odniesieniu do] dostrajania”? Willison wyprzedza większość z nas, jeśli chodzi o przyjęcie i wykorzystanie LLM do rozwoju oprogramowania. Jeśli on ma pytania, wszyscy powinniśmy.

„Jesteśmy w erze programowania danych”, deklaruje Shah. Ale aby ta era miała maksymalny wpływ, musimy dowiedzieć się, co mamy na myśli, kiedy nazywamy ją open source.

Źródło: Infoworld

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200