Modele open-weight i hostowane samodzielnie dla agentów kodujących
Modele kodujące z otwartymi wagami (GLM-5.3, Qwen3.8, Kimi K3, DeepSeek V4 oraz Devstral 2 i Medium 3.5 od Mistrala) mogą napędzać Claude Code, Codex i CLI dostawców z serwera, który kontrolujesz. Pasują do sieci bez internetu, ścisłych reguł dotyczących danych i niskiego progu kosztów, ale kieruj do nich pracę dopiero wtedy, gdy własne ewaluacje pokażą akceptowalną lukę jakości.
Dział bezpieczeństwa decyduje, że kod jednej linii produktów nie może opuścić budynku. Zakupy chcą drugiego dostawcy modeli przed odnowieniem kontraktu wartego miliony. Finanse pytają, dlaczego nocne zadanie, które etykietuje 40 000 błędów testów, działa na najdroższym modelu. Ktoś proponuje „po prostu uruchommy Qwena na własnych GPU”, a nikt nie wie, o ile gorszy będzie agent, co nadal zadziała ani na co pozwala licencja.
Ta strona jest dla CTO, który decyduje, czy finansować model hostowany samodzielnie, i dla developera, który ma podłączyć go do agenta zespołu i udowodnić, że działa. Znajdziesz tu krótką listę modeli na wrzesień 2026 ze stanem licencji, macierz harnessów, zweryfikowaną konfigurację vLLM i Ollamy, protokół ewaluacji ze skryptem i regułą decyzji, wzór na koszt, listę kontrolną reguł dotyczących danych oraz pułapki, które po cichu wysyłają kod poza maszynę. Wersje modeli, ceny i okna kontekstu są w przeglądzie modeli.
Które modele kodujące z otwartymi wagami liczą się we wrześniu 2026?
Dział zatytułowany „Które modele kodujące z otwartymi wagami liczą się we wrześniu 2026?”Pięć rodzin obejmuje niemal każdą poważną ewaluację. Tabelę zweryfikowano 2026-09-26 w repozytorium GitHub lub rejestrze pakietów każdego dostawcy; „sprawdź kartę modelu” oznacza, że licencja wag jest w Hugging Face, którego ta strona nie mogła odczytać.
| Model | Dostawca | Rozmiar (łącznie / aktywne) | Licencja wag | Własny agent dostawcy | Dowody dla kodowania |
|---|---|---|---|---|---|
| GLM-5.3 (także GLM-5.3-Flash) | Z.ai | 744B / 40B (Flash: 320B / 18B) | Sprawdź kartę modelu; kod repozytorium to Apache-2.0 | brak; działa w Claude Code | Jedyny wpis z otwartymi wagami na oficjalnej tablicy Terminal-Bench 4.0 |
| Qwen3.8 (2.4T-A95B i 27B) | Alibaba | 2,4T / 95B oraz model 27B | Sprawdź kartę modelu | Qwen Code | Dostawca: „a Qwen-Max-class model to open release”; wyniki niezweryfikowane |
| Kimi K3 | Moonshot AI | 2,8T / 104B | Własna „Kimi K3 License”, nie open source w rozumieniu OSI | Kimi Code | Tylko wyniki raportowane przez dostawcę (Terminal-Bench 2.1) |
| DeepSeek V4 (Flash, Pro) | DeepSeek | Flash 284B / 13B, Pro 1,6T / 49B (źródło wtórne: SitePoint) | Sprawdź kartę modelu | DeepSeek Harness dsh (developer preview) | Brak źródła pierwotnego |
| Devstral 2 · Devstral Small 2 · Mistral Medium 3.5 | Mistral | Devstral 123B i 24B (źródło wtórne: VentureBeat) | Medium 3.5: Modified MIT; Devstral: sprawdź kartę modelu | Mistral Vibe | Devstral 2 deklaruje 72,2% w SWE-bench Verified (źródło wtórne: VentureBeat) |
- GLM-5.3 to jedyny model z niezależnymi dowodami. Na oficjalnej tablicy Terminal-Bench 4.0 (odczyt 2026-09-26) GLM-5.3 z wysiłkiem
maxw Claude Code ma 41,8% ± 3,2, a GPT-5.6 Sol w Codeksie 37,3% ± 3,8; przedziały 95% nachodzą na siebie, więc tablica ich nie rozróżnia. Claude Fable 5.1 w Claude Code ma 57,9% ± 3,8. - Liczby dostawców nie przenoszą się między wersjami benchmarku. Kimi K3 raportuje 88,3 w Terminal-Bench 2.1, starszej, prawie nasyconej wersji bez przelicznika na 4.0.
- Tablica SWE-bench Verified jest zamrożona (najnowszy wpis 2026-02-26), więc każda liczba z 2026 roku dla tych modeli to deklaracja dostawcy.
Nic z tego nie przewiduje wyników w twoim repozytorium; do tego służy sekcja o ewaluacjach poniżej. Zobacz też jak czytać benchmarki agentów kodujących.
Kiedy model z otwartymi wagami to dobry wybór?
Dział zatytułowany „Kiedy model z otwartymi wagami to dobry wybór?”Model open-weight odpowiada na ograniczenie, nie na potrzebę jakości. Reguła wyboru modelu z przeglądu modeli nadal obowiązuje: zacznij od domyślnego modelu narzędzia (Claude Opus 5.5 w Claude Code od v2.1.280, kanał latest; GPT-6 Astra w Codeksie), dostosuj poziom wysiłku, zanim zmienisz model, i zmieniaj model dopiero wtedy, gdy każą ci to własne ewaluacje.
| Twoja sytuacja | Model open-weight? | Dlaczego |
|---|---|---|
| Kod nie może opuścić twojej sieci (obronność, część banków, część sektora publicznego) | Tak, hostowany samodzielnie | Żadna strona trzecia nie przetwarza kodu. Najpierw sprawdź, czy regułę spełnia trasa chmurowa w ramach twojej umowy (gdzie działa model) |
| Reguły wymagają konkretnego regionu albo zerowej retencji, ale dostawca chmury jest dozwolony | Zwykle nie | Czołowy model hostowany w ramach umowy chmurowej jest prostszy |
| Duży wolumen wąskich zadań (etykietowanie błędów, generowanie fixture’ów, wstępny triage) | Może | Opłaca się przy dużej skali tylko wtedy, gdy odsetek sukcesów na tym zadaniu jest bliski modelowi hostowanemu |
| Trudna, otwarta praca nad funkcjami w dużej bazie kodu | Nie jako domyślny | Jedyny wpis z otwartymi wagami na tablicy jest wyraźnie poniżej najlepszych wpisów Claude |
| Drugi dostawca, żeby uniknąć uzależnienia | Tak, jako przetestowana alternatywa | Utrzymuj jeden zestaw open-weight, który przechodzi twoje ewaluacje (jak uniknąć uzależnienia) |
| Laptop bez sieci w samolocie | Może, do małych zadań | Model 24B–27B działa lokalnie, z wyraźnym spadkiem jakości przy pracy na wielu plikach |
Które harnessy przyjmują model hostowany samodzielnie?
Dział zatytułowany „Które harnessy przyjmują model hostowany samodzielnie?”Harness waży tyle samo co model: wpis na tablicy to GLM-5.3 w Claude Code. Każdy harness mówi jednym formatem API i stos serwujący musi do niego pasować.
| Harness | Jak dociera do twojego modelu | Wymagane API | Co tracisz |
|---|---|---|---|
| Claude Code 2.1.283 | ANTHROPIC_BASE_URL plus zmienna z tokenem; --model albo ANTHROPIC_MODEL | Anthropic Messages (/v1/messages) | Remote Control (wyłączone, gdy bazowy URL to nie api.anthropic.com); /voice (wymaga logowania do claude.ai); wyszukiwanie narzędzi MCP, domyślnie wyłączone (ustaw ENABLE_TOOL_SEARCH=true, jeśli twój serwer przekazuje bloki tool_reference) |
| Codex 0.157.1 | --oss z --local-provider ollama albo lmstudio lub blok [model_providers.<id>] w pliku konfiguracji | Tylko Responses API (wire_api = "responses"); "chat" jest odrzucane | Funkcje powiązane z logowaniem ChatGPT lub OpenAI, na przykład zadania codex cloud |
| Cursor | Niezweryfikowane (cursor.com niedostępny 2026-09-26) | — | Zobacz zakładkę Cursor poniżej |
Qwen Code, Kimi Code, Mistral Vibe, DeepSeek dsh | CLI każdego dostawcy, zbudowane pod jego modele | Specyficzne dla dostawcy | Przenośność twoich promptów, hooków i skilli |
| OpenCode, Cline, Aider, Goose, Crush | Ustawienia dostawcy w każdym narzędziu | Głównie zgodne z OpenAI | Konfigurację Claude Code lub Codeksa twojego zespołu |
Stosy serwujące, które implementują te API, zweryfikowane 2026-09-26:
- vLLM (PyPI
vllm0.30.0): serwer zgodny z OpenAI „plus Anthropic Messages API”, z wywołaniami narzędzi w obu. Wybór produkcyjny dla współdzielonego serwera GPU. - Ollama: „a subset of the Anthropic Messages API”;
ollama launch claudeiollama launch codexkonfigurują agentów za ciebie. - LM Studio: lokalny
POST /v1/messages; Codex dociera do niego przez--local-provider lmstudio. - llama.cpp
llama-server: zgodny z Anthropic Messages; wywołania narzędzi wymagają--jinja. - LiteLLM albo Claude Code Router: bramka z wirtualnymi kluczami i budżetami przed kilkoma backendami (bramki i modele lokalne).
Popularność na 2026-09-26: Ollama ma 181 740 gwiazdek na GitHubie (GitHub, ollama/ollama, odczyt 2026-09-26); gwiazdki mierzą uwagę, nie przydatność w regulowanej sieci.
Jak podłączyć Claude Code lub Codeksa do modelu hostowanego samodzielnie?
Dział zatytułowany „Jak podłączyć Claude Code lub Codeksa do modelu hostowanego samodzielnie?”Zacznij od próby z Ollamą na jednej maszynie, żeby poznać typowe awarie, a potem przejdź na vLLM na współdzielonym serwerze.
Próba na jednej maszynie z Ollamą. Domyślny kontekst Ollamy zależy od VRAM (4k poniżej 24 GiB), co po cichu obcina prompt systemowy agenta, więc najpierw go podnieś:
# Terminal 1: start Ollamy z kontekstem odpowiednim dla agentaOLLAMA_CONTEXT_LENGTH=64000 ollama serve
# Terminal 2: Ollama uruchamia Claude Code podłączone do lokalnego modelu (sesja interaktywna)ollama launch claude --model LOCAL_MODEL
# Terminal 3, w trakcie sesji: potwierdź załadowany kontekstollama ps # CONTEXT powinno pokazać 64000; PROCESSOR 100% GPUSerwer zespołu z vLLM. Zmapuj każdy alias modelu na serwowany model: Claude Code wywołuje też alias haiku do pracy w tle i bez mapowania te wywołania kończą się błędem „model not found”:
# Maszyna developera albo runner CI. VLLM_API_KEY pochodzi z magazynu sekretów, nigdy nie jest literałem.export ANTHROPIC_BASE_URL=http://gpu-01.internal:8000export ANTHROPIC_AUTH_TOKEN="$VLLM_API_KEY" # wysyłany jako "Authorization: Bearer ..."export ANTHROPIC_API_KEY="" # zapisany klucz nie nadpisze bramkiexport ANTHROPIC_MODEL=SERVED_MODELexport ANTHROPIC_DEFAULT_OPUS_MODEL=SERVED_MODELexport ANTHROPIC_DEFAULT_SONNET_MODEL=SERVED_MODELexport ANTHROPIC_DEFAULT_HAIKU_MODEL=SERVED_MODELexport CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1 # bez automatycznych aktualizacji, telemetrii i raportów błędówclaudeUruchom /status, żeby potwierdzić bazowy URL, i /context, żeby zobaczyć, ile okna zajmują prompt systemowy i narzędzia, zanim cokolwiek wpiszesz (koszt kontekstu). Dla zespołu umieść zmienne w bloku env zarządzanego pliku ustawień (bramka LLM).
Próba na jednej maszynie. Codex ma wbudowany przełącznik dla Ollamy i LM Studio:
OLLAMA_CONTEXT_LENGTH=64000 ollama serve # terminal 1codex --oss --local-provider ollama -m LOCAL_MODEL # terminal 2codex --oss --local-provider lmstudio -m LOCAL_MODEL # albo LM Studio po `lms server start`Serwer zespołu z vLLM. Umieść dostawcę w pliku profilu $CODEX_HOME/selfhosted.config.toml (domyślnie ~/.codex/selfhosted.config.toml). -p selfhosted nakłada go na bazową konfigurację (codex --help, 0.157.1), więc konfiguracja z modelem hostowanym zostaje domyślna. Klucze poniżej odczytano ze źródeł codex-cli 0.157.1:
model = "SERVED_MODEL"model_provider = "vllm"
[model_providers.vllm]name = "vLLM (internal)"base_url = "http://gpu-01.internal:8000/v1"env_key = "VLLM_API_KEY" # zmienna, z której Codex czyta klucz; nigdy nie wpisuj tu kluczawire_api = "responses" # "chat" kończy się błędem "no longer supported" w 0.157.1Potem uruchom test dymny, który wymusza wywołanie narzędzia:
codex -p selfhosted exec "List the three largest files under src/ and say which one has no tests."Nie udało się zweryfikować, czy agent Cursora może korzystać z modelu serwowanego w twojej sieci (cursor.com był niedostępny 2026-09-26). Nie planuj wdrożenia w sieci bez internetu na Cursorze, dopóki Cursor nie potwierdzi na piśmie, którędy płyną dane. Do tego czasu używaj Cursora do kodu, który może opuścić sieć, a do repozytoriów objętych ograniczeniami uruchamiaj Claude Code albo Codeksa w zintegrowanym terminalu Cursora.
Jak postawić serwer vLLM i sprawdzić, że agent działa?
Dział zatytułowany „Jak postawić serwer vLLM i sprawdzić, że agent działa?”Jeden serwer GPU, jeden agent, jeden test dymny z odpowiedzią „przeszło” albo „nie przeszło”. Zakłada host z Linuksem z wystarczającą pamięcią GPU (patrz reguła wymiarowania niżej) oraz Pythona z uv.
-
Sprawdź licencję, zanim cokolwiek pobierzesz. Zapisz w rejestrze modeli nazwę licencji i ograniczenia użycia z karty modelu w Hugging Face.
-
Serwuj model z włączonymi wywołaniami narzędzi, których agent kodujący potrzebuje. Użyj parsera wywołań narzędzi, który wskazuje karta modelu: vLLM wymienia parsery według rodzin (na przykład
glm47,kimi_k3,deepseek_v4,qwen3_xml/qwen3_coder,mistralw vLLM 0.30.0), a nowszy model może wymagać nowszego wydania vLLM.Okno terminala # Serwer GPU. VLLM_API_KEY pochodzi z magazynu sekretów.uv venv && uv pip install vllm==0.30.0vllm serve MODEL_REPO_OR_PATH \--served-model-name SERVED_MODEL \--enable-auto-tool-choice --tool-call-parser PARSER \--max-model-len 131072 \--api-key "$VLLM_API_KEY" \--port 8000MODEL_REPO_OR_PATHto repozytorium w Hugging Face albo, bez internetu, lokalny katalog z wagami. -
Skieruj agenta na serwer konfiguracją Claude Code albo Codeksa z zakładek powyżej.
-
Uruchom test dymny, który wymaga narzędzi, edycji i testów. Na jednorazowej gałęzi prawdziwego repozytorium:
Okno terminala claude -p "Add a failing unit test for parseDuration('90m') returning 5400 seconds, run it, then fix src/time.ts until it passes. Report the test command and its final output." \--permission-mode acceptEdits --allowedTools "Bash(npm *)" --output-format json -
Czytaj wynik, nie prozę. Uruchom test samodzielnie (
npm test -- time) i sprawdźgit diff --stat.
Co zobaczysz: pole result w JSON-ie podaje komendę testową, diff obejmuje src/time.ts i jeden plik testowy, a przebieg testów sam odtwarzasz na zielono. Proza bez edycji oznacza zepsute wywołania narzędzi; obcięty plan oznacza za mały kontekst.
Reguła wymiarowania. Pamięć na wagi ≈ łączna liczba parametrów × bajty na parametr: 744B w 8 bitach to ok. 744 GB, w 4 bitach ok. 372 GB, jeszcze przed KV cache. Mixture-of-experts pomaga szybkości, nie pamięci. Klasa 24B–27B (Devstral Small 2, Qwen3.8-27B) mieści się na jednej stacji roboczej.
Jak zmierzyć lukę na własnych ewaluacjach?
Dział zatytułowany „Jak zmierzyć lukę na własnych ewaluacjach?”Publiczne tablice porównują pary model–harness na cudzych zadaniach. Twoje pytanie brzmi, czy model jest wystarczająco dobry do twojej pracy w twoim harnessie, więc zbuduj mały zestaw ewaluacyjny z własnej historii. Pełna metoda jest na stronie ewaluacje agentów kodujących; poniżej wersja na potrzeby zmiany modelu.
-
Zbierz 20–30 zadań ze scalonych pull requestów. Wybierz pracę tego rodzaju, który chcesz kierować do modelu, z testami dodanymi w pull requeście. Zachowaj commit nadrzędny, treść zgłoszenia jako prompt i pliki testowe z pull requesta, w ich ścieżkach w repozytorium, jako ukryty sprawdzian.
-
Zamroź konfigurację. Ta sama wersja harnessu,
CLAUDE.mdalboAGENTS.md, serwery MCP, skille i poziom wysiłku. Zapisz to obok wyników. -
Uruchom każde zadanie w jednorazowym worktree, na punkcie odniesienia (domyślnym modelu narzędzia) i na kandydacie, trzy razy na zestaw, jeśli cię na to stać; jeden przebieg na 25 zadaniach nie rozróżni modeli dzielonych kilkoma punktami.
-
Oceniaj ukrytymi testami, nie raportem agenta. Zadanie przechodzi, gdy przechodzą ukryte testy, a sprawdzanie typów i linter są czyste.
-
Porównaj cztery liczby, a potem zastosuj regułę decyzji poniżej.
Minimalny skrypt dla repozytorium, w którym każde zadanie leży w evals/tasks/<id>/ z plikami prompt.md, base_commit i katalogiem hidden-tests/:
#!/usr/bin/env bash# evals/run.sh SETUP_NAME (uruchamiaj na odizolowanym runnerze bez produkcyjnych poświadczeń)set -euo pipefailsetup="$1"; mkdir -p "evals/results/$setup"for dir in evals/tasks/*/; do id=$(basename "$dir") wt="$(mktemp -d)/$id" git worktree add --detach "$wt" "$(cat "$dir/base_commit")" >/dev/null ( cd "$wt" # Świeży worktree nie ma node_modules. Bez internetu skieruj npm na wewnętrzny mirror rejestru. npm ci --silent || { echo "$id SETUP-FAIL"; exit 0; } claude -p "$(cat "$OLDPWD/$dir/prompt.md")" --permission-mode acceptEdits \ --allowedTools "Bash(npm *)" --output-format json > "$OLDPWD/evals/results/$setup/$id.json" || true cp -r "$OLDPWD/$dir/hidden-tests/." . # ukryte testy leżą w swoich ścieżkach z repozytorium if npm test --silent && npx tsc --noEmit && npm run lint --silent; then echo "$id PASS"; else echo "$id FAIL"; fi ) | tee -a "evals/results/$setup/summary.txt" git worktree remove --force "$wt"doneZamiast komend npm użyj komend instalacji, testów, sprawdzania typów i lintera z twojego repozytorium. Uruchom skrypt dwa razy: raz w domyślnym środowisku, raz po wyeksportowaniu zmiennych dla serwera własnego z zakładki Claude Code. Dla Codeksa zamień dwuwierszową komendę claude na poniższą linię; --json zapisuje zdarzenia JSONL, więc plik wyniku ma rozszerzenie .jsonl:
codex -a never exec -p selfhosted --sandbox workspace-write --json "$(cat "$OLDPWD/$dir/prompt.md")" > "$OLDPWD/evals/results/$setup/$id.jsonl" || true| Metryka | Definicja | Dlaczego się liczy |
|---|---|---|
| Odsetek sukcesów | Zadania, w których przechodzą ukryte testy, sprawdzanie typów i lint ÷ uruchomione zadania | Luka jakości wyrażona w twoich kategoriach |
| Koszt rozwiązanego zadania | (godziny GPU × koszt godziny albo wydatki na API) ÷ zadania zaliczone | Model, który zawodzi w połowie przypadków, nie jest tani |
| Odsetek interwencji | Przebiegi, które zadały pytanie, zapętliły się albo wyczerpały limit tur ÷ przebiegi | Ktoś musi wkroczyć |
| Odsetek błędnych wywołań narzędzi | Zniekształcone albo odrzucone wywołania ÷ wywołania narzędzi (transkrypty JSON) | Pierwszy sygnał złego parsera |
Reguła decyzji. Kieruj dany typ zadań do modelu open-weight, gdy jego odsetek sukcesów mieści się w uzgodnionym marginesie od punktu odniesienia (na przykład pięć punktów przy 25 zadaniach × 3 przebiegi), koszt rozwiązanego zadania jest niższy, a odsetek interwencji nie wyższy. W przeciwnym razie zostań przy modelu hostowanym i powtórz ewaluację przy kolejnym wydaniu (plan oceny nowego modelu).
Jaki jest próg kosztów modelu hostowanego samodzielnie?
Dział zatytułowany „Jaki jest próg kosztów modelu hostowanego samodzielnie?”Hosting własny zamienia cenę za token na koszt stały, który płacisz niezależnie od tego, czy GPU pracują. Pokaż finansom dwie liczby zamiast porównania cen za token:
- Koszt rozwiązanego zadania, hosting własny = (amortyzacja GPU albo zarezerwowany wynajem + energia + czas inżynierów na utrzymanie serwera) ÷ (zadania miesięcznie × odsetek sukcesów z ewaluacji).
- Koszt rozwiązanego zadania, model hostowany = wydatki na API lub plan dla tego samego zadania ÷ zadania rozwiązane na punkcie odniesienia. Próg rentowności to miesięczny wolumen, przy którym oba koszty są równe.
Poniżej progu wygrywa model hostowany (tańsze modele są w przeglądzie modeli); powyżej hosting własny wygrywa tylko wtedy, gdy odsetek sukcesów się utrzymuje. Łatwo przeoczyć ponowne ewaluacje przy każdym wydaniu i dodatkowy czas recenzentów przy niższym odsetku sukcesów. Zobacz też ekonomię inżynierii agentowej.
Jakie reguły dotyczące danych obowiązują przy modelach open-weight?
Dział zatytułowany „Jakie reguły dotyczące danych obowiązują przy modelach open-weight?”„Otwarte wagi” odpowiadają na pytanie, gdzie działa model, a nie na to, na co pozwala licencja. Przejdź tę listę, zanim model dotknie kodu produkcyjnego.
- Licencja wpisana do rejestru. Zapisz licencję wag z karty modelu, a nie licencję kodu z repozytorium GitHub (kod GLM jest na Apache-2.0; licencja wag jest na karcie).
- Hosting własny, nie API dostawcy. Hostowane API albo plan kodowania dostawcy wysyła twój kod do tego dostawcy, na jego warunkach i w jego jurysdykcji.
- Tylko lokalne tagi. Tagi Ollamy kończące się na
:clouddziałają w chmurze Ollamy, nie na twojej maszynie. - Ruch wychodzący zablokowany, a nie „zaufany”. Blokuj ruch wychodzący z runnerów agentów na poziomie sieci i ustaw
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1. - Hostowany model open-weight to nadal model hostowany. Kimi K3 w GitHub Copilot to nie hosting własny.
Rezydencja danych i zerowa retencja dla czołowych modeli hostowanych: gdzie działa model.
Jak utrzymać dowodliwą jakość na słabszym modelu?
Dział zatytułowany „Jak utrzymać dowodliwą jakość na słabszym modelu?”Zachowaj wszystkie bramki, które masz dla modelu hostowanego, i dodaj zestaw ewaluacyjny jako bramkę. Wynik weryfikujesz tak samo, niezależnie od tego, który model go napisał; zmienia się tylko to, jak często bramki coś wyłapują.
| Bramka | Co udowadnia | Właściciel |
|---|---|---|
| Odsetek sukcesów na zestawie ewaluacyjnym, powtarzany przy każdej aktualizacji modelu lub harnessu | Model nadal rozwiązuje zadania twojego typu | Zespół platformowy |
| Testy, sprawdzanie typów i lint w CI przy każdym pull requeście | Ta zmiana działa | CI, wymagane statusy |
| Reguła „najpierw test, który nie przechodzi” w instrukcjach agenta | Test wyłapałby regresję | Developer, który zlecił zadanie |
| Agent-recenzent na hostowanym modelu odniesienia, jeśli reguły danych na to pozwalają | Drugi model sprawdza każdy diff | Tech lead wybiera ścieżki |
| Odsetek rewertów i incydentów na model, co miesiąc | Słabsze wyniki nie trafiają na produkcję | CTO z zespołem platformowym |
Zatwierdzanie zostaje przy ludziach: developer odpowiada za każde scalenie, a właściciel platformy na podstawie liczb z ewaluacji przydziela typy zadań do modeli. Gdy odsetek sukcesów spada po aktualizacji, najpierw cofnij zmianę, a dopiero potem szukaj przyczyny. Ograniczenia dla serwera własnego: uprawnienia i sandboxing.
Co się psuje, gdy agent działa na modelu open-weight?
Dział zatytułowany „Co się psuje, gdy agent działa na modelu open-weight?”Agent odpowiada prozą i nigdy nie edytuje pliku. Wywołania narzędzi są wyłączone albo parser jest zły. Naprawa: uruchom vLLM ponownie z --enable-auto-tool-choice i parserem z karty modelu (w llama.cpp dodaj --jinja), a potem powtórz test dymny.
Claude Code nadal łączy się z Anthropic. Zapisane logowanie, klucz API albo plik ustawień nadpisuje zmienne powłoki. Naprawa: ustaw ANTHROPIC_API_KEY="" i ANTHROPIC_AUTH_TOKEN, uruchom /status i przenieś zmienne do bloku env pliku ustawień.
Długie zadania rozpadają się w połowie. --max-model-len jest za małe albo KV cache się nie mieści. Naprawa: sprawdź /context, podnieś --max-model-len, jeśli pamięć na to pozwala, i podziel zadanie za pomocą pliku planu.
Ewaluacja wygląda świetnie, a produkcja nie. Zestaw zawiera publiczny kod, na którym model się uczył, albo same łatwe zadania. Naprawa: używaj prywatnego kodu, sprawdzaj, czy ukryte testy najpierw nie przechodzą, i dodaj trudniejsze zadania z niedawnych incydentów.
Serwer odrzuca żądania z komunikatem „Unexpected value(s) for the anthropic-beta header” albo „Extra inputs are not permitted”. Nie implementuje nagłówków beta Anthropic i pól schematów narzędzi. Naprawa: ustaw CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1, co je usuwa (dokumentacja zmiennych środowiskowych, sprawdzona dla v2.1.283), i powtórz test dymny.
Licencja blokuje zaplanowane użycie. Najdroższa awaria. Naprawa: przełącz ten typ zadań z powrotem na punkt odniesienia i wybierz model zatwierdzony przez dział prawny. Zapobiegaj temu krokiem 1 konfiguracji serwera.
Dokąd dalej z modelami open-weight
Dział zatytułowany „Dokąd dalej z modelami open-weight”Najczęstsze pytania
Czy Claude Code może działać na modelu open-weight?
Tak. Zadziała każdy serwer, który implementuje Anthropic Messages API (vLLM, Ollama, LM Studio, llama.cpp albo bramka LiteLLM), podłączony przez ANTHROPIC_BASE_URL.
Czy Codex może działać na modelu open-weight?
Tak. codex-cli 0.157.1 ma --oss z --local-provider ollama albo lmstudio oraz własnych dostawców obsługujących Responses API (wire_api = "chat" nie jest już obsługiwane).
Który model open-weight ocenić najpierw?
GLM-5.3, jedyny wpis z otwartymi wagami na oficjalnej tablicy Terminal-Bench 4.0 (41,8% ± 3,2 w Claude Code). Przed użyciem sprawdź licencję wag na karcie modelu.
Jak duża jest luka jakości względem Claude Opus 5.5 albo GPT-6 Astra?
Żadne źródło pierwotne nie mierzy jej na twoim kodzie. Przepuść 20–30 zadań z własnych scalonych pull requestów przez oba zestawy i porównaj odsetek sukcesów, koszt rozwiązanego zadania i odsetek interwencji.