Vendor lock-in w AI - jak nie uzależnić się od jednego dostawcy modeli (strategia multi-model i plan B)
POWRÓT_DO_BLOGA
AI & Bezpieczeństwo 13 min

Vendor lock-in w AI - jak nie uzależnić się od jednego dostawcy modeli (strategia multi-model i plan B)

Paweł Wiszniewski
Paweł Wiszniewski
Specjalista SEO & GEO · AI Engineer

Vendor lock-in w AI to sytuacja, w której zmiana modelu albo dostawcy wymaga przepisywania aplikacji, ponownego testowania wszystkiego od zera i negocjacji pod presją terminu. Całkowicie się od tego nie uwolnisz, bo każdy model ma datę ważności. Możesz jednak sprawić, że zmiana zajmie dzień zamiast kwartału: nazwa modelu w konfiguracji, jedna warstwa dostępu do wielu dostawców, własny zestaw testów, gotowy plan B i plan wyjścia zapisany w umowie. Nie pytaj, czy zmienisz model. Pytaj, kiedy - i czy będziesz na to gotowy.

Każdy model AI ma datę ważności: ostatnio wycofywane modele Anthropic żyły 12-16 miesięcy, a na migrację firmy dostawały ok. 60 dni. Pokazuję, gdzie siedzi uzależnienie od dostawcy, jak zbudować warstwę dostępu do wielu modeli, jak testy skracają zmianę modelu do jednego dnia oraz test 10 pytań.

/// WPIS W SKRÓCIE

Twój model AI ma datę ważności - najważniejsze wnioski z wpisu

W tym wpisie pokazuję, w jaki sposób dostawca AI może zmienić Ci plany, ile czasu realnie dostajesz na migrację (policzyłem to z oficjalnych list wycofań OpenAI, Anthropic i Google), gdzie naprawdę siedzi uzależnienie, jak zbudować warstwę dostępu do wielu modeli, jak testy skracają zmianę modelu do jednego dnia i jak sprawdzić, jak mocno jesteś uzależniony - z gotowym testem na końcu.

Pięć sposobów, w jakie dostawca AI może zmienić Ci plany

  • Wycofanie modelu. Claude Sonnet 4.5 trafił na rynek we wrześniu 2025 roku, a 30 listopada 2026 zostanie wyłączony. Po tej dacie zapytania do niego kończą się błędem.
  • Zmiana zachowania i API przy nowym modelu. Nowsze modele Claude zwracają błąd 400, gdy ustawisz parametr temperature na wartość inną niż domyślna, odrzucają też tzw. prefill, czyli dopisany początek odpowiedzi. Kod, który działał latami, po zmianie modelu przestaje działać.
  • Zmiana ceny. Gemini 3.8 Flash kosztuje do końca 2026 roku 0,75 USD za milion tokenów wejścia, a od 1 stycznia 2027 - 1,50 USD. Do tego nowsze modele Claude liczą ten sam tekst jako ok. 30% więcej tokenów, więc rachunek rośnie nawet przy tej samej cenie za token.
  • Limity i awarie. Limity zapytań (błąd 429) i przerwy w działaniu zdarzają się u każdego dostawcy. Bez drugiej drogi Twoja aplikacja stoi razem z nim.
  • Wycofanie funkcji platformy. To najmniej oczywiste ryzyko. OpenAI wyłączyło Assistants API (26 sierpnia 2026), a 30 listopada 2026 wyłącza Agent Buildera, platformę Evals i zapisane prompty. Videos API z modelami Sora wyłączono 24 września 2026 bez wskazanego następcy. Kto zbudował proces na takiej funkcji, musi przepisać nie tylko wywołanie modelu, ale cały kawałek systemu.

Uzależnienie działa też w drugą stronę: blokuje oszczędności. Claude Haiku 5.5 kosztuje 0,10 USD za milion tokenów wejścia (przy promptach do 100 tys. tokenów), dziesięć razy mniej niż poprzedni Haiku 4.5. Firma, która może zmienić model w jeden dzień, zbiera tę obniżkę od razu. Firma z modelem wpisanym w kilkunastu miejscach kodu - za kwartał.

Ile czasu dostajesz na migrację - analiza list wycofań

Przejrzałem oficjalne listy wycofań trzech największych dostawców (stan na 10 października 2026) i policzyłem, ile czasu mija od ogłoszenia do wyłączenia oraz jak długo żyje model:

DostawcaCzas od ogłoszenia do wyłączeniaIle żyje modelNa co uważać
AnthropicOstatnie pięć ogłoszeń: 60-62 dni (deklarowane minimum to 60 dni); wcześniej do ok. 6 miesięcyOstatnio wycofane modele: 12-16 miesięcy od premieryDla aktywnych modeli podaje datę, przed którą ich nie wyłączy (np. Sonnet 5.5 nie wcześniej niż 28 września 2027)
OpenAIOd 20 dni (model specjalistyczny) przez 3 miesiące (wersje preview i aliasy „latest”) do 6 miesięcy (większość modeli w 2026) i 12 miesięcy (Assistants API)Zależnie od rodziny, zwykle 1-2 lataWycofuje też całe funkcje platformy, nie tylko modele
Google (Gemini API)Wersje preview: często kilka tygodni lub miesięcy; modele stabilne: ok. 12 miesięcy od premieryGemini 2.0 Flash: ok. 16 miesięcyPodane daty to najwcześniejszy możliwy termin wyłączenia

Trzy wnioski z tej tabeli:

  1. 1.Licz się z co najmniej jedną migracją rocznie na każdy proces z AI. Model, który wdrażasz dziś, za 12-16 miesięcy najpewniej zniknie.
  2. 2.Dwa miesiące to mało, jeśli zmiana wymaga przepisania kodu. Jeśli jedyna wiedza o tym, jak działa integracja, siedzi w głowie jednej osoby, 60 dni potrafi minąć na samym ustalaniu, co trzeba zmienić.
  3. 3.Wersji preview nie używaj w procesach krytycznych. U Google preview potrafi żyć 12 tygodni (Gemini 3.1 Flash-Lite Preview: od 3 marca do 25 maja 2026).

Gdzie naprawdę siedzi uzależnienie

Najczęściej myśli się tylko o modelu. Tymczasem uzależnienie ma kilka warstw, a model jest zwykle najłatwiejszą do wymiany:

WarstwaPrzykład uzależnieniaJak trudno zmienićJak się zabezpieczyć
Nazwa modeluModel wpisany na sztywno w kilkunastu miejscach koduŁatwo, jeśli jest w konfiguracjiJedna zmienna konfiguracyjna i jedna warstwa dostępu
Format API i parametryParametry, których nowy model nie obsługuje; różne formaty narzędziŚrednioWarstwa abstrakcji i testy przed migracją
PromptyPrompty dopasowane do stylu jednego modeluŚrednioPrompty w repozytorium, testy na własnym zestawie przykładów
Funkcje platformyAssistants API, zapisane prompty, wbudowane evals, gotowe wektorowe bazy dostawcyTrudnoLogika i dane po Twojej stronie, funkcje platformy tylko jako wygoda
EmbeddingiBaza wektorowa zbudowana na jednym modelu embeddingówTrudno: zmiana wymaga przeliczenia całego indeksuPrzechowuj teksty źródłowe, zaplanuj czas na ponowne indeksowanie
Fine-tuningModel dostrojony u jednego dostawcyBardzo trudno: dostrojenia nie przeniesieszNajpierw prompt i RAG, dane treningowe po swojej stronie
Konta i umowyKlucze API na koncie wykonawcy, brak dokumentacjiBardzo trudnoKonta na firmę, zapis w umowie, dokumentacja

Przykład z embeddingami: Google wyłączył model text-embedding-004 14 stycznia 2026. Firma, która miała na nim bazę wiedzy z setkami tysięcy fragmentów, musiała przeliczyć cały indeks nowym modelem - a to czas i koszt, którego nikt nie zaplanował. Więcej o wyborze bazy w porównaniu baz wektorowych.

Warstwa abstrakcji - jeden interfejs, wielu dostawców

Podstawa niezależności to jedno miejsce w kodzie, przez które przechodzą wszystkie wywołania modeli. Masz trzy drogi:

  • Format zgodny z OpenAI. Anthropic i Google udostępniają końcówki zgodne z SDK OpenAI, więc ten sam kod może rozmawiać z różnymi dostawcami po zmianie adresu i klucza. Uwaga: warstwy zgodności nie obsługują wszystkich funkcji (np. części ustawień cache czy rozumowania), więc do pełni możliwości modelu i tak przyda się natywne SDK.
  • Biblioteka lub bramka. LiteLLM (open source) albo bramki takie jak OpenRouter czy Vercel AI Gateway dają jeden interfejs do wielu modeli, z automatycznym przełączaniem przy błędach.
  • Własna cienka warstwa. Kilkadziesiąt linijek kodu, które czytają z konfiguracji listę modeli i próbują kolejnych przy błędzie. Pełna kontrola, zero dodatkowych zależności.

Tak wygląda minimalna wersja trzeciej drogi:

llm_gateway.py
import os, time, loggingfrom openai import OpenAI

# kolejność z konfiguracji, np. LLM_CHAIN="openai:gpt-6.1-sol,anthropic:claude-sonnet-5-5" PROVIDERS = { "openai": OpenAI(), "anthropic": OpenAI(base_url="https://api.anthropic.com/v1/", api_key=os.environ["ANTHROPIC_API_KEY"]), } CHAIN = [p.split(":") for p in os.environ["LLM_CHAIN"].split(",")]

def complete(messages: list[dict], max_tokens: int = 1024) -> tuple[str, str]: errors = [] for provider, model in CHAIN: t0 = time.time() try: r = PROVIDERS[provider].chat.completions.create( model=model, messages=messages, max_tokens=max_tokens, timeout=30, ) logging.info("llm ok %s/%s %.1fs", provider, model, time.time() - t0) return r.choices[0].message.content, f"{provider}/{model}" except Exception as e: # 429, 5xx, timeout, wycofany model logging.warning("llm fail %s/%s: %s", provider, model, e) errors.append(f"{provider}/{model}: {e}") raise RuntimeError("wszyscy dostawcy zawiedli: " + "; ".join(errors))

Trzy zasady, które robią tu różnicę: żadnych parametrów, których nie obsługuje każdy model z łańcucha (stąd brak temperature), logowanie, który model faktycznie odpowiedział, i limit czasu na każde wywołanie. Zapasowy model nie musi być tak samo dobry - ma utrzymać proces przy życiu, aż główny wróci.

Testy jako polisa - jak zmienić model w jeden dzień

Warstwa abstrakcji mówi, jak przełączyć model. Testy mówią, czy wolno. Bez nich każda migracja to zgadywanie, a z nimi decyzja zajmuje godziny:

  1. 1.Zestaw przykładów z prawdziwego ruchu - 50-200 zapytań z oczekiwanym wynikiem lub kryterium oceny. Jak go zbudować, opisuję w tekście o ewaluacji LLM.
  2. 2.Uruchomienie na starym i nowym modelu - te same przykłady, porównanie jakości, czasu odpowiedzi i kosztu.
  3. 3.Przeliczenie kosztu na tokenach nowego modelu - inny tokenizer potrafi zmienić rachunek o kilkadziesiąt procent przy tych samych promptach.
  4. 4.Przegląd parametrów i promptów - co nowy model odrzuca, a co robi inaczej (dłuższe odpowiedzi, inny format).
  5. 5.Ruch w tle przez tydzień - nowy model odpowiada równolegle, ale wynik widzi tylko system testowy. Dopiero potem przełączenie.

Ten sam zestaw testów chroni też przed cichą zmianą zachowania. Naukowcy ze Stanforda i Berkeley pokazali w 2023 roku, że kolejne wersje tego samego modelu potrafiły wyraźnie zmienić wyniki w tych samych zadaniach w ciągu kilku miesięcy. Dlatego w produkcji przypinaj konkretną wersję modelu, a nie alias „latest”.

Kiedy własny model jako plan B

Modele otwarte to najmocniejsza polisa: nikt ich nie wyłączy i nie podniesie ceny. Qwen 3.5 i Gemma 4 są na licencji Apache 2.0, DeepSeek V4 na licencji MIT, Mistral Large 3 na Apache 2.0, a polski Bielik dobrze radzi sobie z językiem polskim. Mają sens jako zapas, gdy:

  • proces jest krytyczny i nie może stanąć nawet na godzinę,
  • dane nie mogą opuszczać firmy, więc i tak potrzebujesz infrastruktury lokalnej,
  • zapytań jest dużo i są proste, więc mały model na własnym serwerze wychodzi taniej niż API.

Przy kilkuset zapytaniach dziennie własny serwer zwykle się nie opłaca - wtedy rolę planu B lepiej pełni drugi dostawca API. Jak uruchomić model lokalnie, opisuję w tekście o Ollamie i vLLM.

Plan wyjścia w umowie z wykonawcą

Najtrudniejsze do odkręcenia uzależnienie nie dotyczy dostawcy modelu, tylko wykonawcy wdrożenia. Zanim podpiszesz umowę, sprawdź, czy:

  • konta u dostawców AI są na Twoją firmę, a wykonawca ma do nich tylko dostęp,
  • kod, prompty i zestaw testów należą do Ciebie i leżą w Twoim repozytorium,
  • nazwy modeli są w konfiguracji, a w dokumentacji jest opisane, jak je zmienić,
  • umowa opisuje przekazanie systemu przy zakończeniu współpracy: dokumentację, dostęp, czas wsparcia.

Pełną listę pytań do wykonawcy znajdziesz w tekście o wyborze wykonawcy wdrożenia AI.

Test uzależnienia od dostawcy - 10 pytań

Odpowiedz na każde pytanie: 0 - nie, 1 - częściowo, 2 - tak. Policz sumę.

PytaniePunkty
Czy nazwa modelu jest w jednym miejscu konfiguracji, a nie w wielu miejscach kodu?0-2
Czy wszystkie wywołania modeli przechodzą przez jedną warstwę lub bramkę?0-2
Czy masz zestaw testów na własnych przykładach i uruchamiasz go przed zmianą modelu?0-2
Czy wiesz, kiedy Twój obecny model zostanie wyłączony, i masz to w kalendarzu?0-2
Czy masz drugiego dostawcę, sprawdzonego na Twoich testach?0-2
Czy proces przetrwa godzinną awarię głównego dostawcy?0-2
Czy Twoje dane, prompty i logika leżą po Twojej stronie, a nie w funkcjach platformy?0-2
Czy przechowujesz teksty źródłowe, żeby przeliczyć embeddingi innym modelem?0-2
Czy konta i klucze API są na Twoją firmę?0-2
Czy umowa z wykonawcą opisuje przekazanie systemu i dokumentację?0-2

16-20 punktów: zmiana modelu to dzień pracy. 10-15: zmiana zajmie tydzień lub dwa - zacznij od testów i warstwy abstrakcji. 0-9: każde wycofanie modelu będzie dla Ciebie małym kryzysem - zacznij od pierwszych trzech pytań.

Najczęstsze błędy

  • Model wpisany na sztywno w kodzie. Zmiana wymaga przeszukania całego projektu i ponownego wdrożenia.
  • Alias „latest” w produkcji. Model zmienia się bez Twojej wiedzy, a wraz z nim wyniki.
  • Proces zbudowany na funkcji w wersji beta lub preview. Takie funkcje znikają najszybciej.
  • Brak testów przed migracją. Bez nich nie wiesz, czy nowy model jest lepszy, gorszy, czy tylko inny.
  • Multi-model dla zasady. Trzech dostawców w każdym procesie to potrójne testy i koszty utrzymania. Na start wystarczy jeden główny model i jeden sprawdzony zapas.

---

Pomagam firmom budować systemy AI, które przeżyją zmianę modelu i dostawcy - od warstwy dostępu i zestawu testów po plan wyjścia w umowie. Robię to w ramach doradztwa AI i budowy aplikacji AI. Napisz do mnie - zacznę od przeglądu, gdzie w Twoim systemie siedzi największe uzależnienie.

Warto przeczytać:

/// RELATED_RECORDS

AI & Bezpieczeństwo

Bezpieczeństwo agentów AI - uprawnienia, sandboxing i dziennik działań, zanim agent coś zepsuje

53% firm przyznaje, że ich agenci AI przekroczyli zakładane uprawnienia. Czego uczą incydenty z Replit, GitHub MCP i EchoLeak, czym jest zabójcze trio i zasada dwóch oraz pięć warstw ochrony: uprawnienia, sandbox, limity, akceptacja człowieka i dziennik działań.

11 min
AI & Bezpieczeństwo

Deepfake i oszustwa „na prezesa” - jak firmy tracą pieniądze przez AI i jak się bronić

Pracownik NASK sprawdził: 66% Polaków nie odróżni sklonowanego głosu prezesa od prawdziwego. W 2025 roku FBI po raz pierwszy w historii wydzieliło AI jako osobną kategorię oszustw - 22 364 zgłoszenia i 893 mln dolarów strat. Największy pojedynczy przypadek to 25,6 mln dolarów przelanych po jednej rozmowie wideo z deepfake'iem fałszywego CFO. To już nie science fiction z konferencji o cyberbezpieczeństwie - to realne ryzyko dla każdej firmy z działem finansów i telefonem. Pokazuję anatomię ataku, procedury, które go zatrzymują, i dlaczego samo „rozpoznawanie” fałszywki to strategia skazana na porażkę.

14 min
AI & Bezpieczeństwo

Obowiązkowe szkolenia z AI (art. 4 AI Act) - kogo, z czego i jak przeszkolić

Jeśli ktokolwiek w Twojej firmie używa ChatGPT do pisania maili, jesteś „podmiotem stosującym” w rozumieniu AI Act - i od 2 sierpnia 2026 krajowe organy nadzoru rynku mogą sprawdzić, czy podejmujesz środki wspierające jego kompetencje w zakresie AI. Po AI Omnibus przepis nie wymaga konkretnego poziomu ani certyfikatu - jest za to konkretna metodyka: kogo dotyczy obowiązek, jak zaprojektować program per rola (zarząd, operacje, IT), i jak udokumentować efekt, żeby przetrwał kontrolę.

13 min
/// AUTHOR
Paweł Wiszniewski – AI & Web Engineer

Paweł Wiszniewski

SEO & GEO Specialist & AI Engineer

Specjalista SEO/GEO (10 lat) i AI engineer (3 lata). Buduję widoczność w wyszukiwarkach, systemy AI i automatyzacje, które redukują koszty i zwiększają efektywność operacyjną firm.

Signal received?

Przerwij
Ciszę

Zainicjuj protokół. Nawiąż połączenie. Zbudujmy coś głośnego.

> OCZEKIWANIE_NA_SYGNAŁ...