Solar Open 2 250B: Frontier Agent osiąga wyniki, ale nie ma gdzie ich uruchomić.
Engineering & Research

Solar Open 2 250B: Frontier Agent osiąga wyniki, ale nie ma gdzie ich uruchomić.

Autor

Rowan Sterling

Data publikacji

Najnowsze modele · 20Zobacz wszystkie modele →
Benchmarki: Artificial Analysis · aktualizowane codziennie
Powrót do wszystkich wpisów

Karta Hugging Face dla Solar Open 2 250B 250B podaje ci polecenie serwowania, a to polecenie nie działa. Prosi vLLM o parser rozumowania o nazwie solar_open2, parser wywołań narzędzi o nazwie solar_open2 oraz procesor logitów o nazwie SolarOpen2TemplateLogitsProcessor — trzy rzeczy, które nie istnieją w żadnej wydanej wersji vLLM. Wsparcie dla tej architektury pojawiło się w głównej gałęzi jako niescalony pull request 5 sierpnia, dwa tygodnie po tym, jak Upstage opublikował wagi 22 lipca. Ta luka jest nadal najciekawszym faktem dotyczącym Solar Open 2, i to właśnie tę część pominął każdy artykuł o premierze na rzecz tabeli benchmarków. Oto więc ta druga wersja: co Upstage faktycznie dostarczył, co jego własne liczby dowodzą, a czego nie dowodzą, co zmienia jedyny zewnętrzny wynik, który obecnie jest odnotowany, i co trzeba zrobić, aby uzyskać z niej pojedynczy token — w porównaniu z DeepSeek V4 Flash, modelem, który Upstage wybrał jako swój główny punkt odniesienia.

Co Upstage tak naprawdę wydał

Wszystko poniżej pochodzi z własnego pliku config.json repozytorium oraz raportu technicznego Solar Open 2 (arXiv 2607.20062) — źródeł pierwotnych, ale pierwotnych źródeł dostawcy. Żadne niezależne laboratorium nie opublikowało własnych pomiarów tego modelu. Pojawiła się jedna zewnętrzna wartość — podawany w prasie wynik Artificial Analysis Intelligence Index równy 37 z drugiej rundy oceny rządowej — i otrzymuje ona własny akapit w sekcji benchmarków poniżej, ponieważ jest relacjonowana, a nie odtworzona.

• Rozmiar — łącznie 250 287 794 944 parametry, około 15 mld aktywnych na token

• Sparsity — 320 routowanych ekspertów plus 1 wspólny ekspert, top-8 routowanych na token, a parametr first_k_dense_replace ustawiony na 0, co oznacza, że mieszanina (mixture) zaczyna się od warstwy zerowej, bez żadnych gęstych warstw rozgrzewkowych (warm-up), które porównywalne architektury MoE zwykle zachowują.

• Kształt — 48 warstw, rozmiar ukryty 4096, wymiar głowy 128, 64 głowy zapytań przy 8 głowach klucz/wartość

Attention — 12 warstw softmax (GQA), o indeksach 0, 4, 8 i tak dalej, aż do 44; pozostałe 36 warstw to attention liniowa. Trzy czwarte stosu nie zawiera softmax.

• Pozycje — use_rope ma wartość false. Nie stosuje się żadnego kodowania pozycyjnego.

• Kontekst — max_position_embeddings o wartości 1 048 576

• Słownictwo — 196 608 tokenów, obejmujące angielski, koreański i japoński

• Wagi — bfloat16, co daje 500,6 GB. To po prostu 250,29 miliarda parametrów razy dwa bajty, i zgadza się z zajętością, jaką Nota AI podaje dla modelu nieskwantyzowanego.

• Trening — około 11,9 bln tokenów według raportu: 10 bln ogólnego pretreningu, 1 bln na wyselekcjonowanym podzbiorze wysokiej jakości, 0,9 bln na rozszerzenie długości, przy deklarowanym stosunku danych rzeczywistych do syntetycznych 4:6, z angielskim powyżej 80% oraz matematyką i kodem po co najmniej 15%.

• Licencja — licencja Upstage Solar, która ma pewne warunki (poniżej)

Poprzednik, Solar Open 1, był modelem 100B wydanym w styczniu. Solar Open 2 to nie tyle odświeżenie poprzednika, co zupełnie inne zwierzę.

Architektura jest właściwą historią.

Wzorzec warstw to jedna warstwa softmax, po której następują trzy warstwy z liniową atencją, powtórzone dwanaście razy. To zostało już opisane. Czego nie opisano, to która liniowa atencja została użyta i dlaczego to ma znaczenie.

Warstwy liniowe to {{1}}KDA — Kimi Delta Attention{{/1}}, mechanizm wprowadzony przez Moonshot AI dla Kimi Linear. Upstage nie wymyślił nowej liniowej uwagi; przyjął cudzą i zmienił jedną rzecz. Zmiana jest widoczna w konfiguracji jako {{2}}kda_allow_neg_eigval{{/2}} ustawione na true, a raport wyjaśnia, co to daje: standardowe KDA ogranicza wartości własne przejścia stanu do zakresu [0,1], więc każdy krok może jedynie dodawać do stanu rekurencyjnego lub go osłabiać. Ustawienie tej flagi rozszerza siłę zapisu do {{3}}beta = 2·sigmoid(·){{/3}}, zakresu (0,2), co przesuwa wartości własne do [-1,1]. Krok może teraz odwrócić znak tego, co już jest zapisane. Mówiąc wprost: stan może się korygować, zamiast tylko się kumulować, co jest deklarowanym przez Upstage mechanizmem utrzymywania długiej trajektorii agenta w całości przez wiele wywołań narzędzi.

Dwanaście warstw softmax to GQA z elementową sigmoidalną bramką wyjściową — use_gqa_gate ma wartość true w konfiguracji — której to bramce raport przypisuje dodanie nieliniowości i tłumienie studni uwagi.

I dlatego brak RoPE wynika z warstw liniowych. Ponieważ {{1}}stan rekurencyjny koduje kolejność tokenów w sposób wewnętrzny{{/1}}, raport argumentuje, że można {{2}}całkowicie usunąć kodowanie pozycyjne{{/2}} i przestać być zależnym od rozkładu długości, na którym model był trenowany. W tym ujęciu to właśnie RoPE {{3}}ogranicza ekstrapolację{{/3}}; usuń je, a sufit przestanie być funkcją Twoich danych treningowych.

Liczba 1M jest deklaracją projektową, a nie pomiarem.

Ten argument jest elegancki i stanowi całą podstawę nagłówka o 1M tokenów. Raport techniczny nie publikuje żadnego RULER, żadnego testu igła w stogu siana, żadnego zestawu testów długiego kontekstu jakiegokolwiek rodzaju. Okno kontekstowe jest argumentowane architekturą, a nie wykazane na benchmarku. Tymczasem jedyny publiczny opis wdrożenia, jaki udało nam się znaleźć — Backend.AI, obsługujący skwantowany model na dwóch systemach DGX Spark — ustawia max-model-len na 200 000, a nie 1 048 576. Architektoniczny sufit może być jak najbardziej realny. Jaka jakość przetrwa przy 500K lub 1M tokenów, po prostu nie zostało wykazane w artykule.

Twierdzenie o wydajności opatrzone jest tym samym zastrzeżeniem: raport stwierdza, że stos hybrydowy potrzebuje mniej więcej jednej czwartej pamięci i mocy obliczeniowej stosu w pełni softmaxowego przy kontekście 1M, a osobno, że konstrukcja hybrydowa osiągnęła docelową stratę przy około 3,2× mniejszej liczbie tokenów treningowych niż w pełni softmaxowy na MMLU. Obie to dane Upstage'a. Nie opublikowano w ogóle żadnych liczb dotyczących przepustowości ani opóźnień.

Karta benchmarkowa, odczytana uczciwie.

W zestawie angielskim, przeciwko DeepSeek V4 Flash, Solar Open 2 250B notuje 86,2 w MMLU-Pro wobec 85,9 oraz 92,4 w LiveCodeBench v6 wobec 92,3 — różnice na tyle małe, że można je uznać za szum pomiarowy. Następnie notuje 16,6 w APEX-Agents wobec 13,2, co jest jedyną realną różnicą i, co nie zaskakuje, liczbą, którą chlubi się Upstage.

Straty znajdują się w tym samym raporcie i dostają mniej czasu antenowego. SWE-Bench Verified: 70,4 wobec 73,8. GDPval-AA v2, w ELO: 1128 wobec 1187. Terminal Bench Hard: 28,3 wobec 41,7 dla MiMo-V2.5. ArtifactsBench: 55,9, w tyle za obiema czołowymi liniami bazowymi. Na korzyść Upstage'a trzeba przyznać, że raport wymienia te luki i wskazuje, gdzie one celują — inżynierię oprogramowania na poziomie repozytoriów i terminali oraz precyzję numeryczną w dokumentach biurowych — zamiast je ukrywać.

Porównanie, które naprawdę robi wrażenie, ma charakter wewnętrzny. W zestawieniu z Solar Open 1: LiveCodeBench v6 wzrasta z 56,5 do 92,4, SWE-Bench Verified z 15,4 do 70,4, APEX-Agents z 2,4 do 16,6. Jakkolwiek oceniasz bezpośrednie porównania, to jest autentyczny skok pokoleniowy w ciągu sześciu miesięcy.

W przypadku języka koreańskiego średnia w całym zestawie wynosi 85,4 wobec 84,9 dla DeepSeek V4 Flash — ale to średnia robi całą robotę. Solar Open 2 250B przegrywa w KMMLU-Pro (78,4 do 78,9) i Ko-AIME'25 (97,7 do 98,0), a wygrywa w Ko-GDPval (86,8 do 85,0). Przewaga pochodzi z benchmarku deliverable, a nie z wiedzy czy matematyki.

Co prowadzi nas do tezy, która zaszła najdalej: że Solar Open 2 250B dorównuje modelowi ponad sześciokrotnie większemu. Podstawą jest Ko-GDPval, na którym osiąga 86,8 wobec 86,9 DeepSeek-V4-Pro. To jeden koreański benchmark i raczej remis niż wygrana w bezpośrednim starciu — podczas gdy w zestawie angielskim mniejszy brat V4-Pro już pokonuje Solar Open 2 250B na SWE-Bench Verified. Jeden benchmark nie przekłada się na prawo efektywności rozmiaru. Z tym wiąże się ostrzeżenie: wartości bazowe dla APEX-Agents nieznacznie różnią się między publikacją a relacjami wtórnymi (13,2 wobec 13,4 dla tych samych modeli), więc traktujcie tę kolejność jako kierunkową, a nie ścisłą.

W kwestii preferencji, ślepy test parami na 835 koreańskich rozmowach uplasował Solar Open 2 250B na prowadzeniu 44,1% do 26,6%, a raport przypisuje jego zwycięstwo w zakresie dopasowania i uczciwości ugruntowaniu kulturowemu, a nie dodatkowemu szkoleniu w zakresie bezpieczeństwa. Warto zauważyć, czego w raporcie brakuje: nie zawiera on żadnych ilościowych ocen szkodliwości, odmowy ani jailbreaku.

Karta Hugging Face od tego czasu zyskała kilka kolejnych liczb w sekcji wyników ewaluacji — GPQA Diamond 86,3, HLE 28,8 i MathArena AIME 2026 95,7 — ale pochodzą one z samej karty modelu, a nie z niezależnego uruchomienia, więc niosą tę samą etykietę co wszystko powyżej: dane Upstage, niezreprodukowane.

Jedna zewnętrzna liczba właśnie wypłynęła, która nie pochodzi z laboratorium Upstage. 13 sierpnia koreańskie media finansowe — Edaily, Seoul Economic Daily, ITDaily i iNews24, wszystkie publikujące te same dane — podały wyniki oceny drugiej rundy rządowego programu suwerennej AI, mierzonej wskaźnikiem inteligencji Artificial Analysis (AAII v4.1.1): Motif 3 – 47, Solar Open 2 250B – 37, A.X-K2 SK Telecom – 35, a K-EXAONE 2.0 0803 LG AI Research – 31. Wynik 37 plasuje Solar Open 2 250B na drugim miejscu wśród czterech koreańskich finalistów, dziesięć punktów za Motif 3. Nazwijmy to precyzyjnie: jest to wynik podany przez prasę — nie pojawił się on na oficjalnej liście rankingowej Artificial Analysis, która nadal nie zwraca niczego dla tego modelu — a te same doniesienia zauważają, że AAII nie zawiera żadnych testów porównawczych w języku koreańskim, co jest prawdziwym ślepym punktem dla modelu, którego krajowe wyniki są kluczowe dla jego oferty. Jest to jednak pierwszy odczyt dotyczący Solar Open 2 250B, który nie prowadzi do Upstage, i jest spójny z resztą tego artykułu: wysokie wyniki w zakresie agentów i dostarczanych rozwiązań, podczas gdy wiele innych aspektów wciąż pozostaje niepotwierdzonych przez nikogo spoza dostawcy.

Dlaczego nikt nie może serwować tego na standardowym oprogramowaniu.

Karta modelu opowiada historię lepiej niż jakikolwiek komentarz. Pobrania w zeszłym miesiącu przekroczyły już 26 000, przy 743 polubieniach, szesnastu kwantyzacjach społecznościowych i trzech finetune'ach — a w polu Inference Providers wciąż widnieje linia „Ten model nie jest wdrożony przez żadnego dostawcę wnioskowania”, z tuzinem osób obecnie wymienionych jako proszące kartę o wsparcie dostawcy. Realne zainteresowanie, zero hostowanych endpointów.

Podążając za działającymi wdrożeniami, wszystkie prowadzą do forka. Build NVFP4 od Nota AI przypina swoją instalację do git+https://github.com/UpstageAI/vllm.git w tagu v0.22.0-solar-open2 — własnego vLLM Upstage. Opis DGX Spark od Backend.AI wymagał tego forka oraz załatanego FlashInfer, ponieważ upstream FlashInfer nie miał wsparcia dla expert-parallel i nie przyjmował formatu compressed-tensors.

Wsparcie mainline to pull request 51129 w vllm-project/vllm, otwarty 5 sierpnia przez kontrybutora o pseudonimie oesni. Nadal jest otwarty: 10 sierpnia mergify oznaczył konflikty scalania, więc PR ma teraz etykietę needs-rebase i nadal czeka na przegląd. To, co ten PR musiał zbudować, jest najbardziej uczciwym opisem trudności tego modelu, jaki istnieje publicznie:

• Warstwa KimiGatedDeltaAttention specyficzna dla Solar w nowym pliku solar_open2.py, przenosząca beta 2·sigmoid(b) ze zmiany o ujemnej wartości własnej

Operacja vllm::solar_open2_kda_attention zarejestrowana jako op dzielenia grafu CUDA

• Rozgrzewka prefill KDA w czasie profilowania, ograniczona do 2048 tokenów, dodana specjalnie, ponieważ rzeczywiste prefill działały o około 23% wolniej bez niej.

• Parsery wyjścia rozumowania i wywołań narzędzi dla trybów strumieniowych oraz niestrumieniowych

Walidacja serwowania na 8×B200 wykazująca 107.02 GiB na rangę pamięci podręcznej KV, wraz z 463 przechodzącymi testami jednostkowymi.

To figury autora PR, których nikt inny nie odtworzył, a kod wciąż może się zmienić, zanim zostanie scalony. Ale przeczytaj tę listę obok sekcji architektury i kształt problemu staje się oczywisty: dwa wybory, które sprawiają, że Solar Open 2 250B jest tani w uruchamianiu przy długim kontekście — KDA w trzech czwartych warstw i brak RoPE — to właśnie te wybory, dla których uniwersalne stosy inferencyjne nie mają istniejącej ścieżki w kodzie. Otwartość wag i otwartość ścieżki do ich uruchamiania to dwie różne rzeczy, a tylko jedna z nich trafiła do wydania 22 lipca.

Ile kosztuje wstanie

Zacznijmy od progu pamięci. 500,6 GB wag w formacie bfloat16 przy 141 GB pamięci H200 oznacza, że cztery GPU dają 564 GB — pozostaje około 63 GB w całym węźle na pamięć podręczną KV i aktywacje, zanim trafi pojedyncze żądanie. Dlatego karta produktu podaje cztery H200 jako minimum, a zaleca osiem, i dlaczego FlexAI oferuje to jako dedykowany endpoint 8×H100 z wyceną na zapytanie, a nie przez współdzielone API rozliczane za token.

{{1}}Kwantyzacja potrafi przesunąć ten próg bardzo daleko w dół. Build NVFP4 firmy Nota AI (4-bitowe wagi i aktywacje, rozmiar grupy 16, w formacie compressed-tensors) zmniejsza model z 500,6 GB do 153,3 GB, a ich własna ewaluacja określa koszt dokładności na 0,22 punktu średnio w czterech benchmarkach — z 81,57 do 81,35, przy czym Tau2-Bench z 75,20 do 75,08, GPQA-Diamond z 86,26 do 85,45, MMLU-Pro z 86,19 do 86,15, a LiveCodeBench przesuwa się w drugą stronę, z 87,03 do 88,55, co jest raczej szumem kwantyzacji niż poprawą.{{/1}} Haczyk tkwi w sprzęcie: NVFP4 wymaga rdzeni tensorowych FP4 wprowadzonych wraz z Blackwell, więc tylko B200 lub GB200, nic na Hopperze. Jeśli pracujesz na H100, wariantem dla Ciebie jest ich build INT4 z globalnym przycinaniem — 117,8 GB po przycięciu, zaprojektowany tak, aby mieścić się na dwóch z nich.

Teraz arytmetyka, która o tym decyduje. DeepSeek V4 Flash — ponownie model, z którym Upstage wybrał być porównywany — kosztuje 0,15 USD za milion tokenów wejściowych i 0,29 USD za milion tokenów wyjściowych na OrcaRouter, co jest ceną listową DeepSeek przekazaną bezpośrednio przy 0% marży. Przy miksie wejścia do wyjścia 3:1 daje to około 0,185 USD za milion. Przyjmując ilustracyjne 2 USD za godzinę GPU na węźle z ośmioma GPU, wychodzi około 11 700 USD miesięcznie, zanim ktokolwiek wyśle żądanie — co odpowiada mniej więcej 63 miliardom tokenów ruchu API w miksie, czyli 2,1 miliarda tokenów dziennie, każdego dnia, tylko po to, by osiągnąć próg rentowności. Przy zmniejszeniu do węzła z dwoma GPU próg rentowności spada do około 16 miliardów tokenów miesięcznie. Podstaw własną stawkę za GPU; kształt się nie zmienia. Samodzielne hostowanie modelu 250B to decyzja o wykorzystaniu i kontroli, a nie zniżka.

Żeby być precyzyjnym co do tego, co jest dostępne, a co nie: Solar Open 2 250B nie ma na OrcaRouter, a według własnej karty modelu nie ma go u żadnego dostawcy inferencji. To, co jest na OrcaRouter, to konkurencja, z którą jest porównywany — {{1}}DeepSeek V4 Flash{{/1}}, {{2}}Qwen3.8-Max{{/2}} i kilkaset innych za jednym kluczem po cenie z cennika dostawcy, z przełączaniem awaryjnym między dostawcami, gdy jeden padnie. Ma to tu znaczenie z wąskiego, praktycznego względu: jeśli pytanie, na które naprawdę chcesz znać odpowiedź, brzmi „{{3}}czy model dostrojony pod agentów bije to, co już wywołujemy w produkcji{{/3}}”, możesz uruchomić tę połowę porównania, zmieniając string modelu jeszcze dziś po południu, podczas gdy wycena {{4}}GPU{{/4}} na drugą połowę wciąż jest w procesie zakupowym.

Dwa ciągi znaków na licencji

Licencja Upstage Solar zezwala na komercyjne wykorzystanie, fine-tuning i destylację, a Upstage opisuje ją jako opartą na Apache-2.0 z dodanymi warunkami dotyczącymi marki. Należy dokładnie przeczytać dwa dodatkowe obowiązki: model pochodny musi nosić w nazwie prefiks „Solar”, a Ty musisz wyświetlić atrybucję „Built with Solar”.

W przypadku wdrożenia wewnętrznego to nie stanowi żadnego problemu. Jeśli planujesz zdestyliować to do czegoś, co wypuścisz pod własną marką produktu, klauzula dotycząca nazewnictwa to decyzja brandingowa przebrana za warunek licencyjny — warto poświęcić na nią dwadzieścia minut prawnika, zanim rozpoczniesz trening. Przeczytaj klauzulę w repozytorium, zamiast ufać relacjom na jej temat — doniesienia o tej licencji były nieścisłe, w tym co najmniej jeden artykuł opisuje ją wprost jako Apache 2.0.

Kto powinien działać teraz, a kto powinien czekać

Przejdź, jeśli jakość wyników w języku koreańskim lub japońskim jest twoim produktem i możesz umieścić wagi na sprzęcie, który już posiadasz — to połączenie jest dokładnie tym, do czego służy "open weights, no endpoint", a Upstage wprost stwierdza, że suwerenność oznacza możliwość samodzielnego wdrożenia i zweryfikowania modelu, a nie tylko to, że trenowano go w kraju. Przejdź, jeśli masz nieużywane GPU i obciążenie agentowe o wystarczającej objętości, aby je zapełnić, bo przy realnym wykorzystaniu rachunek za token się odwraca. Przejdź, jeśli wymogi audytu lub rezydencji danych oznaczają, że API nigdy nie wchodziło w grę.

Czekaj, jeśli chcesz endpoint per-token. Upstage zapowiedział, że zamierza udostępnić Solar Open 2 250B na platformie zewnętrznej; w chwili pisania jeszcze to nie nastąpiło — wersja próbna Playground działała tylko do 31 lipca, a karta modelu nadal nie wskazuje żadnego dostawcy. Czekaj, jeśli jesteś na Hopperze i liczyłeś na wersję 4-bitową, ponieważ wersja NVFP4 wymaga Blackwell. I czekaj, zanim zaprojektujesz cokolwiek w oparciu o liczbę 1M kontekstu, która obecnie jest właściwością architektury, a nie zmierzonym wynikiem.

Rzeczą, na którą warto zwrócić uwagę, jest pull request 51129, który 10 sierpnia otrzymał etykietę needs-rebase po tym, jak mergify oznaczył konflikty scalania. Dzień, w którym Solar Open 2 250B pojawi się w otagowanym wydaniu vLLM, będzie dniem, w którym przestanie być projektem infrastrukturalnym, a stanie się modelem, którego każdy może po prostu wypróbować. Podawane przez prasę AAII wynoszące 37 to początek — pierwszy zewnętrzny odczyt, jakkolwiek wstępny, który wciąż nie pojawia się na własnej liście rankingowej Artificial Analysis. Prawdziwy test to ten, który działa na standardowym oprogramowaniu, i nie ma on jeszcze daty.

Porównane w tym artykule2

Wykryto na podstawie tego artykułu · Benchmarki: Artificial Analysis · aktualizowane codziennie