ServiceNow i StarCoder
StarCoder to otwarty, duży model językowy kodu, zbudowany przez ServiceNow Research i Hugging Face w ramach projektu BigCode.
Przegląd
It matters because it brought a permissively licensed, transparently trained coding assistant to a field dominated by closed models.
Głębokie nurkowanie
StarCoder to rodzina modeli generowania kodu wydana w maju 2023 r. przez BigCode we współpracy prowadzonej przez ServiceNow Research i Hugging Face. Flagowy StarCoderBase to model zawierający 15,5 miliarda parametrów wytrenowany na około bilionie tokenów pobranych z The Stack – dużego zbioru danych zawierającego licencjonowany kod źródłowy obejmujący ponad 80 języków programowania. Kluczową cechą wyróżniającą jest okno kontekstowe zawierające 8000 tokenów i szkolenie typu Fill-in-the-Middle, umożliwiające uzupełnienie kodu z uwzględnieniem zarówno poprzedzających, jak i kolejnych wierszy, a nie tylko przewidywanie przyszłości. BigCode położył nacisk na zarządzanie danymi: opublikował dane szkoleniowe, zaoferował programistom narzędzie rezygnacji i udostępnił model na odpowiedzialnej licencji OpenRAIL-M. Wydany w 2024 r. StarCoder2 rozszerzył zasięg na ponad 600 języków.
Wgląd techniczny
StarCoder wykorzystuje transformator przeznaczony wyłącznie do dekodera z obsługą wielu zapytań, który dzieli projekcje kluczy i wartości między głowami uwagi, aby zmniejszyć zużycie pamięci i przyspieszyć wnioskowanie przy długich kontekstach. Został przeszkolony przy użyciu funkcji Fill-in-the-Middle, w której dokumenty są losowo dzielone i zmieniane w kolejności, dzięki czemu model uczy się generować brakujący zakres uwarunkowany otaczającym kodem. Dzięki temu dobrze nadaje się do autouzupełniania IDE, gdzie kontekst istnieje po obu stronach kursora.
Wpływ strategiczny
Strategia dostawcy
Plany dostawców wpływają na to, jakie funkcje Twój zespół będzie mógł dalej tworzyć.
Koszt i budżet
Warunki handlowe i opcje wdrożenia wpływają na długoterminowe koszty i ryzyko.
Ryzyko i bezpieczeństwo
Zachęty firmowe kształtują wady produktów, postawę bezpieczeństwa i otwartość.
Przyszłość ServiceNow i StarCoder
Modele kodu zmierzają w stronę agentycznych przepływów pracy, w których nie tylko autouzupełniają, ale planują, uruchamiają testy i naprawiają własne wyniki. StarCoder2, przeszkolony na większym zestawie danych Stack v2 zbudowanym w ramach Software Heritage, wskazuje na szerszy zakres języków i lepsze pochodzenie danych. Należy spodziewać się ciągłego nacisku na przejrzyste dane szkoleniowe, mechanizmy rezygnacji i przejrzystość licencji w miarę wzrostu kontroli prawnej modeli wytrenowanych na podstawie kodu, a także ściślejszej integracji z platformami programistów dla przedsiębiorstw.
Implementacja w świecie rzeczywistym
Zasilanie sugestiami autouzupełniania i uzupełniania kodu we wtyczkach IDE i rozszerzeniach edytora
Generowanie standardowych funkcji, testów jednostkowych i dokumentów na podstawie komentarza w języku naturalnym
Tłumaczenie lub refaktoryzacja kodu pomiędzy językami programowania w ramach bazy kodu przedsiębiorstwa
Pełnienie funkcji samodzielnego asystenta kodowania dla organizacji, które nie mogą wysyłać zastrzeżonego kodu do interfejsów API w zamkniętej chmurze
Zagrożenia i poręcze
Ogłoszenia o wprowadzeniu na rynek mogą przekroczyć stabilność w rzeczywistych przepływach pracy.
Ceny interfejsów API lub zmiany zasad mogą z dnia na dzień złamać założenia.
Zależność od jednego dostawcy zwiększa koszty uzależnienia i migracji.
Plan wdrożenia
Oceniaj dostawców, korzystając z własnych zadań i zbiorów danych.
Przed integracją przejrzyj warunki dotyczące prywatności, bezpieczeństwa i prawa.
Utrzymuj plan awaryjny dla różnych modeli i dostawców.
Monitoruj informacje o wersji, aby zmiany w planie działania nie zaskoczyły zespołów.
Odkrywaj dalej
Free newsletter
Get the daily AI briefing
Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.
One email each weekday. Unsubscribe in one click. We never sell or share your address.
Test yourself
Take the ServiceNow and StarCoder quiz
Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.
Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation
Następny poradnik
LAION i otwarte zbiory danych
Często zadawane pytania
What is ServiceNow and StarCoder?
StarCoder to otwarty, duży model językowy kodu, zbudowany przez ServiceNow Research i Hugging Face w ramach projektu BigCode. Ma to znaczenie, ponieważ sprowadziło licencjonowanego, przejrzyście przeszkolonego asystenta kodowania na dziedzinę zdominowaną przez modele zamknięte.
Które dwie organizacje współkierowały projektem BigCode, w wyniku którego powstał StarCoder?
BigCode to wspólny projekt ServiceNow Research i Hugging Face, którego celem było zbudowanie otwartych, odpowiedzialnie opracowanych modeli kodu.
Jaka jest nazwa zbioru danych licencjonowanego kodu źródłowego używanego do szkolenia StarCoder?
StarCoder został przeszkolony w The Stack, dużym zbiorze licencjonowanego kodu w ponad 80 językach.
Jaka technika uczenia pozwala StarCoderowi uzupełniać kod przy użyciu kontekstu po obu stronach kursora?
Szkolenie typu „wypełnij środek” zmienia kolejność dokumentów, dzięki czemu model uczy się generować brakujący zakres, biorąc pod uwagę poprzedzający i następujący kontekst.
Mniej więcej, jak duży jest flagowy model StarCoderBase?
StarCoderBase ma około 15,5 miliarda parametrów, skromnych jak na standardy pionierskie, ale silnych jak na swój rozmiar w zadaniach kodowych.
Jakiej optymalizacji uwagi używa StarCoder, aby zmniejszyć pamięć i przyspieszyć wnioskowanie?
StarCoder wykorzystuje uwagę wielu zapytań, dzieląc się projekcjami kluczy i wartości między głowami, aby ograniczyć pamięć i przyspieszyć wnioskowanie w długim kontekście.