Azure OpenAI vs modele self-hosted. Koszty, latency i rezydencja danych dla organizacji w UE.

Jerzy Kopaczewski 28 lipca 2026 20 min czytania
Contents

Azure OpenAI vs modele self-hosted - koszty, latency i rezydencja danych w UE

Polskie firmy wdrażające AI w produkcji stają przed fundamentalnym wyborem: Azure OpenAI Service (zarządzana usługa Microsoftu z modelami GPT-4o, GPT-4.1 i o-series) czy self-hosting modeli open-weight (Llama 4, Mistral, Qwen) na własnej infrastrukturze GPU. To nie jest tylko kwestia kosztu na token. Kluczowe są trzy wymiary: ekonomika przy różnych wolumenach, opóźnienia wpływające na UX, oraz rezydencja danych - krytyczna dla firm podlegających RODO, KNF i regulacjom sektora publicznego. Ten artykuł pokazuje konkretne kalkulacje i scenariusze decyzyjne.

W 2026 roku rynek LLM dojrzał na tyle, że oba podejścia są produkcyjne. Azure OpenAI oferuje modele OpenAI z gwarancjami SLA i wdrożeniami Data Zone w Europie. Jednocześnie stos do samodzielnego hostowania (vLLM, SGLang, TensorRT-LLM) osiągnął poziom stabilności pozwalający obsługiwać tysiące zapytań na sekundę na klastrach GPU.

Pytanie nie brzmi „które jest lepsze” - brzmi „które jest lepsze dla Twojego scenariusza”. Firma przetwarzająca 500 zapytań dziennie ma zupełnie inną ekonomikę niż platforma obsługująca 2 miliony tokenów na godzinę.

 

Schemat decyzyjny - kiedy Azure OpenAI, kiedy self-hosting

Zanim zagłębimy się w cenniki i benchmarki, oto szybki schemat:

Wybierz Azure OpenAI, gdy:

  • Wolumen < 50 000 zapytań dziennie (koszt dedykowanego GPU jest nieuzasadniony)
  • Potrzebujesz modeli frontier (GPT-4o, GPT-4.1, o3) - niedostępnych jako open-weight
  • Organizacja wymaga SLA 99.9% bez budowania zespołu MLOps
  • Integracja z ekosystemem Microsoft (Entra ID, Azure AI Search, Cosmos DB)
  • Wydatki kapitałowe (CapEx) na infrastrukturę GPU nie są akceptowalne

Wybierz self-hosting, gdy:

  • Wolumen > 200 000 zapytań dziennie (ekonomia skali przechyla szalę)
  • Dane nie mogą opuszczać Twojej infrastruktury - nawet do sieci Microsoftu
  • Potrzebujesz modeli dostrojonych do własnych danych z pełną kontrolą wag
  • Opóźnienie < 100ms TTFT jest krytyczne (eliminacja narzutu sieciowego)
  • Masz zespół MLOps/Platform Engineering zdolny utrzymać klaster GPU

Strefa szara (50-200K zapytań/dzień): Tutaj decyzja zależy od proporcji kosztów GPU do kosztów zespołu. Jeśli masz już klaster Kubernetes z GPU (np. do trenowania modeli) - self-hosting jest naturalnym rozszerzeniem. Jeśli GPU byłoby nowym wydatkiem - Azure OpenAI prawdopodobnie wygra.

 

Azure OpenAI Service - architektura, cennik i Data Zones

Typy deploymentu i ich wpływ na rezydencję danych

Azure OpenAI oferuje trzy typy deploymentu, z których każdy ma inne gwarancje lokalizacji:

Typ deploymentuLokalizacja inferencjiDane at-restCena vs. GlobalDla kogo
Global StandardDowolny region Microsoft (optymalizacja latency)W ramach geografii (Europa)BazowaPrototypowanie, niski wolumen bez wymagań lokalizacyjnych
Data Zone StandardWyłącznie regiony EU (Sweden Central, France Central, Germany West Central)W EU Data Zone+5-10%Firmy podlegające RODO z wymogiem przetwarzania w UE
Regional StandardKonkretny region (np. Sweden Central)W wybranym regionie+10-15%Wymóg konkretnej jurysdykcji (np. KNF, dane medyczne)

Kluczowe dla polskich firm: Data Zone Standard gwarantuje, że zarówno inferencja (przetwarzanie promptu), jak i dane at-rest pozostają w europejskich regionach Azure. To spełnia wymogi RODO Art. 44-49 bez konieczności dodatkowych zabezpieczeń transferu danych.

Dla sektora finansowego podlegającego KNF - Regional Standard z deployment w Sweden Central lub Germany West Central daje najsilniejsze gwarancje. Microsoft opublikował dokumentację compliance specyficzną dla tego regionu.

Cennik Azure OpenAI - modele produkcyjne (Pay-As-You-Go)

Ceny za milion tokenów, deployment Data Zone Standard (EU):

ModelInput (za 1M tokenów)Output (za 1M tokenów)Context windowZastosowanie
GPT-4o$2.50$10.00128KOgólne zastosowanie, multimodalny
GPT-4.1$2.00$8.001MKodowanie, długi kontekst
GPT-4.1 mini$0.40$1.601MKlasyfikacja, ekstrakcja, routing
GPT-4.1 nano$0.10$0.401MMasowe przetwarzanie, niski koszt
o3$10.00$40.00200KRozumowanie, analiza, planowanie
o4-mini$1.10$4.40200KRozumowanie przy niższym koszcie

Provisioned Throughput Units (PTU) - stały koszt, gwarantowana wydajność

Dla przewidywalnych obciążeń Azure oferuje model PTU - rezerwacja dedykowanej przepustowości rozliczanej za godzinę, niezależnie od liczby tokenów:

  • PTU zapewnia gwarantowany throughput bez throttlingu
  • Opłacalny od ~50M tokenów/miesiąc (punkt przełamania vs. Pay-As-You-Go)
  • Wymaga zobowiązania: minimum 1 miesiąc (Monthly Reserved) lub 1 rok (Annual Reserved z rabatem)
  • Cena zależy od modelu: GPT-4o = ok. $6/PTU/godzinę, GPT-4.1 mini = ok. $3.50/PTU/godzinę

Kalkulacja przykładowa: Platforma e-commerce z asystentem AI obsługującym 30 000 konwersacji/dzień (średnio 800 tokenów input + 300 output na turę, 4 tury na konwersację):

  • Dzienne zużycie: 30 000 × 4 × (800 + 300) = 132M tokenów/dzień
  • Pay-As-You-Go (GPT-4.1 mini): input 96M × $0.40/M + output 36M × $1.60/M = $96/dzień = ~$2 880/miesiąc
  • PTU (szacunkowo 3 jednostki GPT-4.1 mini): 3 × $3.50 × 24h × 30 = ~$7 560/miesiąc

W tym scenariuszu Pay-As-You-Go wygrywa. PTU ma sens dopiero przy znacznie wyższym wolumenie lub gdy gwarancja niskiego opóźnienia jest krytyczna (eliminacja zimnych startów i opóźnień w kolejce).

 

Self-hosting LLM - stos technologiczny i koszty

Architektura referencyjna na Azure (AKS + GPU)

Self-hosting na Azure oznacza uruchomienie modeli open-weight na Azure Kubernetes Service z node poolami GPU:

┌───────────────────────────────────────────────────────┐
│  Azure Kubernetes Service (AKS)                       │
│                                                       │
│  ┌──────────────┐  ┌──────────────┐  ┌─────────────┐ │
│  │ Node Pool    │  │ Node Pool    │  │ Node Pool   │ │
│  │ CPU (system) │  │ GPU (infer)  │  │ CPU (tools) │ │
│  │ Standard_D4s │  │ NC A100 v4   │  │ Standard_D8s│ │
│  │ 3 nodes      │  │ 2-4 nodes    │  │ 2 nodes     │ │
│  └──────────────┘  └──────────────┘  └─────────────┘ │
│                                                       │
│  Inference engine: vLLM 0.8+ / SGLang                 │
│  Model store: Azure Blob Storage (Premium)            │
│  Monitoring: Prometheus + GPU metrics exporter        │
│  Load balancer: Azure Application Gateway             │
└───────────────────────────────────────────────────────┘

Koszty GPU na Azure - instancje produkcyjne

Instancja AzureGPUVRAMCena/godz. (PAYG)Cena/godz. (1Y RI)Obsługuje model
Standard_NC24ads_A100_v41× A100 80GB80 GB~$3.67~$2.34Llama 3 70B (4-bit), Mistral Large
Standard_NC48ads_A100_v42× A100 80GB160 GB~$7.35~$4.68Llama 4 Maverick, Qwen 72B (FP16)
Standard_ND96isr_H100_v58× H100 80GB640 GB~$32.77~$20.33Dowolny model do 400B+ params
Standard_NC4as_T4_v31× T4 16GB16 GB~$0.53~$0.33Llama 3 8B (4-bit), Phi-3 mini

Uwaga o dostępności: W regionach europejskich (North Europe, West Europe, Sweden Central) instancje A100 i H100 wymagają wcześniejszego złożenia quota request. Czas oczekiwania: 1-4 tygodnie. Planuj z wyprzedzeniem.

Koszt na token - self-hosting vs Azure OpenAI

Kluczowa kalkulacja: ile kosztuje wygenerowanie 1M tokenów na własnej infrastrukturze?

Scenariusz: Llama 4 Scout 17B na 1× A100 80GB (vLLM, FP16)

  • Throughput vLLM: ~3 500 tokenów/sekundę (output, continuous batching)
  • Tokenów na godzinę: 3 500 × 3 600 = 12.6M tokenów
  • Koszt instancji: $3.67/godz. (PAYG) lub $2.34/godz. (1Y RI)
  • Koszt per 1M tokenów: $0.29 (PAYG) / $0.19 (RI)

Scenariusz: Llama 3 70B na 2× A100 80GB (vLLM, 4-bit AWQ)

  • Throughput vLLM: ~1 800 tokenów/sekundę (output, continuous batching)
  • Tokenów na godzinę: 6.48M tokenów
  • Koszt instancji: $7.35/godz. (PAYG)
  • Koszt per 1M tokenów: $1.13 (PAYG) / $0.72 (RI)

Porównanie z Azure OpenAI GPT-4.1 mini ($1.60/M output): self-hosted Llama 3 70B daje porównywalną jakość w wielu zadaniach przy koszcie $0.72-1.13/M - oszczędność 30-55%. Ale to nie uwzględnia kosztów operacyjnych.

 

Ukryte koszty self-hostingu - co składa się na TCO

Sam koszt GPU to nie cały obraz. Pełne TCO self-hostingu obejmuje:

Kategoria kosztuSzacunek miesięczny (klaster 2× A100)Uwagi
GPU compute$5 290 (PAYG) / $3 370 (RI)24/7 dla dwóch A100
Magazyn (wagi modelu)~$50-100Azure Blob Premium, ~200GB na model
Sieć (egress)~$50-200Zależy od ruchu klient→inference
Monitoring/logi~$100-200Log Analytics, Prometheus, metryki GPU
Zespół MLOps (ułamek FTE)$2 000-5 0000.2-0.5 FTE inżyniera platformy (dyżury, aktualizacje, diagnostyka)
Koszt przestojówZmiennyBrak SLA - awaria GPU/OOM = brak usługi
Suma TCO: $7 500-11 000/miesiącDla klastra obsługującego ~190M tokenów/dzień

Przy 190M tokenów/dzień (5.7B/miesiąc) na Azure OpenAI GPT-4.1 mini:

  • Input (60%): 3.42B × $0.40/M = $1 368
  • Output (40%): 2.28B × $1.60/M = $3 648
  • Suma Azure OpenAI: ~$5 016/miesiąc

Wniosek: Przy tym wolumenie i modelu GPT-4.1 mini, Azure OpenAI jest tańszy lub porównywalny z self-hostingiem, gdy uwzględnimy TCO. Self-hosting wygrywa dopiero gdy:

  1. Wolumen rośnie 3-5× (GPU amortyzuje się lepiej)
  2. Używamy modeli open-weight, które w konkretnym zadaniu dorównują GPT-4.1 mini
  3. Zespół MLOps już istnieje (koszt krańcowy obsługi LLM jest niski)

 

Opóźnienia - porównanie w scenariuszach produkcyjnych

Składniki opóźnienia

Opóźnienie od końca do końca (od wysłania zapytania do pierwszego tokenu - TTFT) składa się z:

KomponentAzure OpenAI (Data Zone EU)Self-hosted (AKS, ten sam region)
Opóźnienie sieciowe RTT (klient → endpoint)5-15 ms (klient w EU)1-5 ms (klient w tym samym VNet)
Opóźnienie kolejki/schedulera0-500 ms (zależy od obciążenia)0-50 ms (własny scheduler)
Prefill (przetwarzanie promptu)50-200 ms (zależy od modelu/promptu)30-150 ms (optymalizacja pod model)
TTFT (czas do pierwszego tokenu)100-700 ms (P50-P99)50-250 ms (P50-P99)
Prędkość generowania tokenów50-80 tok./s (GPT-4o)80-150 tok./s (Llama 70B na A100)

Kiedy opóźnienie jest czynnikiem decydującym

  • Chatboty klienckie (TTFT < 500ms): Oba rozwiązania spełniają wymagania w większości przypadków. Azure OpenAI w P95 może przekraczać 500ms pod obciążeniem - rozważ PTU.
  • Autouzupełnianie kodu (TTFT < 200ms): Self-hosting wygrywa zdecydowanie. Azure OpenAI Pay-As-You-Go nie gwarantuje tego poziomu.
  • Przetwarzanie wsadowe (opóźnienie nieistotne): Azure OpenAI Batch API z 50% rabatem - najtańsza opcja.
  • Głos w czasie rzeczywistym / streaming (TTFT < 100ms): Tylko self-hosting z dedykowanym GPU bez współdzielenia zasobów.

 

Rezydencja danych - wymogi prawne dla polskich organizacji

RODO i przetwarzanie danych osobowych w LLM

Gdy prompt zawiera dane osobowe (imiona, numery PESEL, dane medyczne, korespondencja), zastosowanie mają przepisy RODO dotyczące transferu danych:

Azure OpenAI - gwarancje Microsoft:

  • Data Zone Standard: inferencja i dane at-rest w regionach EU
  • Microsoft jako procesor danych (Data Processing Agreement wbudowany w umowę Enterprise)
  • Prompty nie są używane do trenowania modeli (Zero Data Retention dla wybranych modeli)
  • Audit logs dostępne w Azure Monitor / Diagnostic Settings
  • Certyfikaty: ISO 27001, SOC 2 Type II, C5 (BSI), ENS High

Self-hosting - pełna kontrola:

  • Dane nie opuszczają Twojej infrastruktury (VNet/Private Endpoint)
  • Ty jesteś administratorem danych - nie ma procesora zewnętrznego
  • Brak zależności od warunków umowy z dostawcą cloud dla warstwy AI
  • Wymagana własna dokumentacja compliance (DPIA, RoPA)

Sektor finansowy (KNF) - dodatkowe wymagania

Dla instytucji regulowanych przez KNF (banki, ubezpieczyciele, TFI) kluczowe są:

  1. Outsourcing do chmury - wymaga notyfikacji KNF zgodnie z Rekomendacją D i wytycznymi EBA
  2. Łańcuch podwykonawców - Azure OpenAI wprowadza Microsoft jako procesora i potencjalnie sub-procesorów (datacenter operators)
  3. Prawo do audytu - Microsoft Enterprise Agreements zawierają klauzulę audytu, ale praktyczna realizacja jest ograniczona
  4. Exit strategy - wymagane przez KNF, łatwiejsze przy self-hostingu (model open-weight = brak vendor lock-in)

Rekomendacja dla sektora finansowego: Architektura hybrydowa - Azure OpenAI do zadań bez danych osobowych (generowanie dokumentacji, analiza publicznie dostępnych danych), self-hosting do przetwarzania danych klientów (klasyfikacja reklamacji, analiza korespondencji).

Sektor publiczny i administracja

Jednostki podlegające Ustawie o krajowym systemie cyberbezpieczeństwa i rozporządzeniom KPRM o chmurze obliczeniowej dla podmiotów publicznych:

  • Azure jest na liście dostawców chmury obliczeniowej dopuszczonych przez KPRM
  • Self-hosting na infrastrukturze Azure w regionie EU spełnia wymogi lokalizacji
  • Wymóg klasyfikacji danych: dane „zwykłe” mogą iść do Azure OpenAI (Data Zone EU), dane „wrażliwe” wymagają self-hostingu lub przetwarzania on-premise

 

Scenariusze wdrożenia - trzy architektury referencyjne

Scenariusz 1: Startup / SME (< 10K zapytań/dzień)

Rekomendacja: Azure OpenAI (Pay-As-You-Go)

┌──────────────┐     ┌──────────────────┐     ┌──────────────────┐
│ Aplikacja    │────▶│ Azure API Mgmt   │────▶│ Azure OpenAI     │
│ (App Service)│     │ (rate limiting)  │     │ GPT-4.1 mini     │
└──────────────┘     └──────────────────┘     │ Data Zone EU     │
                                               └──────────────────┘
  • Model: GPT-4.1 mini (najlepszy stosunek jakości do kosztu dla większości zadań)
  • Koszt szacunkowy: $50-200/miesiąc
  • Czas wdrożenia: 1-2 dni (wdrożenie modelu + integracja API)
  • Zespół wymagany: 0 FTE dedykowanego (programista integruje API)

Scenariusz 2: Średnia firma / regulowany sektor (10-100K zapytań/dzień)

Rekomendacja: Azure OpenAI z PTU + gateway do routingu

┌──────────────┐     ┌──────────────────┐     ┌──────────────────────┐
│ Aplikacje    │────▶│ AI Gateway       │──┬─▶│ Azure OpenAI PTU     │
│ (wielu       │     │ (routing,        │  │  │ GPT-4o (złożone)     │
│  konsumentów)│     │  caching,        │  │  └──────────────────────┘
└──────────────┘     │  rate limiting)  │  │  ┌──────────────────────┐
                      └──────────────────┘  └─▶│ Azure OpenAI PAYG    │
                                               │ GPT-4.1 nano (proste)│
                                               └──────────────────────┘
  • Model: Mix - GPT-4o/4.1 dla złożonych zadań, GPT-4.1 nano dla klasyfikacji/routingu
  • Koszt szacunkowy: $1 500-5 000/miesiąc
  • AI Gateway: Azure API Management z politykami LLM lub rozwiązanie open-source (LiteLLM, Portkey)
  • Cache semantyczny: Zmniejsza koszty o 20-40% przy powtarzalnych zapytaniach

Scenariusz 3: Duża organizacja / wysoki wolumen (>100K zapytań/dzień)

Rekomendacja: Architektura hybrydowa - self-hosting + Azure OpenAI jako zapas

┌──────────────┐     ┌──────────────────┐     ┌──────────────────────┐
│ Aplikacje    │────▶│ AI Gateway       │──┬─▶│ Self-hosted (AKS)    │
│              │     │ (LiteLLM /       │  │  │ Llama 4 Scout 17B    │
└──────────────┘     │  custom router)  │  │  │ vLLM na 2×A100       │
                      └──────────────────┘  │  └──────────────────────┘
                                            │  ┌──────────────────────┐
                                            └─▶│ Azure OpenAI         │
                                               │ GPT-4o (rezerwowy    │
                                               │ + złożone zadania)   │
                                               └──────────────────────┘
  • Główny: Self-hosted Llama 4 / Qwen 72B do 80% ruchu (proste zadania, dane wrażliwe)
  • Zapasowy: Azure OpenAI GPT-4o do złożonych zadań wymagających głębokiego rozumowania
  • Logika routingu: Klasyfikator (GPT-4.1 nano lub oparty na regułach) decyduje o kierowaniu
  • Koszt szacunkowy: $8 000-15 000/miesiąc (hybryda) vs. $15 000-30 000 (wyłącznie Azure OpenAI)
  • Zespół wymagany: 0.5-1 FTE inżyniera MLOps/Platform

 

Porównanie bezpośrednie - tabela decyzyjna

WymiarAzure OpenAI ServiceSelf-hosted (AKS + vLLM)Werdykt
Koszt przy niskim wolumenie (<1M tok/dzień)$1-50/miesiąc$2 500+/miesiąc (GPU idle)🏆 Azure OpenAI
Koszt przy wysokim wolumenie (>100M tok/dzień)$5 000-15 000/miesiąc$3 500-8 000/miesiąc🏆 Self-hosted
TTFT (P50)200-400 ms50-150 ms🏆 Self-hosted
TTFT (P99, pod obciążeniem)500-2000 ms150-500 ms🏆 Self-hosted
Jakość modeli (frontier)GPT-4o, o3 - najlepszaLlama 4, Qwen - dobra, ale niższa🏆 Azure OpenAI
Rezydencja danych (RODO)Data Zone EU - wystarczającePełna kontrola - dane nie opuszczają VNet🏆 Self-hosted
Compliance (KNF/sektor publiczny)Wymaga DPA + notyfikacja outsourcinguBrak outsourcingu AI - uproszczona dokumentacja🏆 Self-hosted
Czas do uruchomieniaGodziny (API key + deployment)Tygodnie (quota, setup, testowanie)🏆 Azure OpenAI
SkalowalnośćAutomatyczna (limit = quota)Manualna (dodawanie GPU nodes)🏆 Azure OpenAI
Vendor lock-inWysoki (API specyficzne dla OpenAI)Niski (model open-weight, standardowe API)🏆 Self-hosted
Narzut operacyjnyZerowy0.3-1 FTE🏆 Azure OpenAI
Dostrajanie modeliOgraniczone (fine-tuning wybranych modeli)Pełne (LoRA, QLoRA, RLHF, DPO)🏆 Self-hosted

 

Migracja między podejściami - jak uniknąć pułapki vendor lock-in

Od Azure OpenAI do self-hostingu

Typowa ścieżka gdy wolumen rośnie:

  1. Faza 1 (0-6 mies.): Azure OpenAI Pay-As-You-Go - walidacja przypadku użycia, zbieranie danych o wzorcach zapytań
  2. Faza 2 (6-12 mies.): Azure OpenAI PTU + ewaluacja modeli open-weight na Twoich danych
  3. Faza 3 (12+ mies.): Hybryda - self-hosted do 70-80% ruchu, Azure OpenAI do zadań wymagających modeli frontier

Kluczowa rada: Od dnia pierwszego używaj abstrakcji API (LiteLLM, OpenRouter SDK lub własny wrapper). Format OpenAI Chat Completions jest de facto standardem - vLLM go implementuje natywnie. Migracja z Azure OpenAI na self-hosted vLLM to zmiana jednego adresu URL w konfiguracji.

Abstrakcja API - przykład z LiteLLM

# config.yaml - routing między Azure OpenAI a self-hosted vLLM
model_list:
  - model_name: "production-chat"
    litellm_params:
      model: "azure/gpt-4.1-mini"
      api_base: "https://my-resource.openai.azure.com/"
      api_key: "os.environ/AZURE_API_KEY"
    model_info:
      id: "azure-primary"

  - model_name: "production-chat"
    litellm_params:
      model: "openai/llama-4-scout"
      api_base: "http://vllm-inference.internal:8000/v1"
      api_key: "dummy"  # self-hosted, no auth needed internally
    model_info:
      id: "self-hosted-primary"

router_settings:
  routing_strategy: "cost-based"  # kieruj do tańszego, przełącz na droższy w razie awarii
  num_retries: 2
  timeout: 30

Taka konfiguracja pozwala:

  • Kierować ruch do self-hosted jako domyślnego (tańszego)
  • Automatycznie przełączać na Azure OpenAI gdy self-hosted jest niedostępny
  • Zmieniać proporcje ruchu bez zmian w kodzie aplikacji

 

Optymalizacja kosztów Azure OpenAI - praktyczne techniki

Jeśli wybrałeś Azure OpenAI, te techniki redukują rachunek o 30-60%:

1. Cache semantyczny

Wiele zapytań w aplikacjach biznesowych powtarza się (FAQ, onboarding, standardowe procedury). Cache na poziomie embeddingów + cosine similarity eliminuje powtórne wywołania:

# Azure Redis Enterprise z wyszukiwaniem wektorowym
# lub Azure AI Search jako cache layer
SIMILARITY_THRESHOLD = 0.95  # > 95% podobieństwo = cache hit

async def get_completion_with_cache(prompt: str):
    embedding = await get_embedding(prompt)
    cached = await redis.ft_search(embedding, threshold=SIMILARITY_THRESHOLD)
    if cached:
        return cached.response  # 0 tokenów, 0 kosztów
    response = await azure_openai.chat.completions.create(...)
    await redis.set(embedding, response)
    return response

Typowy efekt: 20-40% mniej wywołań API w aplikacjach z powtarzalnym ruchem.

2. Kompresja promptów i warstwowa architektura modeli

Nie każde zapytanie wymaga GPT-4o. Architektura wielowarstwowa:

  • Tier 1 (GPT-4.1 nano, $0.10/M input): Klasyfikacja intencji, routing, proste ekstrakcje
  • Tier 2 (GPT-4.1 mini, $0.40/M input): Generowanie odpowiedzi, podsumowania, tłumaczenia
  • Tier 3 (GPT-4o / o3, $2.50-10/M input): Złożone rozumowanie, analiza dokumentów, planowanie

Router na Tier 1 kosztuje grosze, a pozwala kierować 60-70% ruchu do tańszych modeli.

3. Azure OpenAI Batch API

Dla zadań nieinteraktywnych (przetwarzanie dokumentów, generowanie raportów, analizy nocne):

  • 50% rabatu względem standardowego cennika
  • Wyniki dostępne w ciągu 24h
  • Idealny do: indeksowania dokumentów, generowania embeddingów, klasyfikacji wsadowej

4. Inżynieria promptów pod kątem kosztów

  • Zmniejsz system prompt (każdy token kosztuje przy każdym wywołaniu)
  • Używaj ustrukturyzowanego wyjścia (JSON mode) - model generuje mniej zbędnych tokenów
  • Ogranicz max_tokens do realnie potrzebnej długości odpowiedzi
  • Ustawiaj temperature: 0 gdy nie potrzebujesz kreatywności (szybsza generacja)

 

Monitoring i FinOps dla wdrożeń LLM

Niezależnie od wybranego podejścia, kontrola kosztów jest krytyczna:

Metryki do śledzenia

MetrykaAzure OpenAISelf-hostedPróg alertu
Koszt na zapytanieAzure Cost ManagementWłasne obliczenie (tokeny × koszt/token)> 2× średnia z ostatnich 7 dni
Tokenów na zapytanie (śr.)Azure Monitor Diagnostic LogsvLLM metrics endpoint> 3× oczekiwana długość
TTFT (P95)Application InsightsPrometheus histogram> 1000 ms
Wskaźnik błędów (429/500)Azure MonitorPrometheus counter> 1%
GPU utilizationNie dotyczyDCGM exporter< 30% (przepłacasz) lub > 90% (ryzyko throttlingu)
Cache hit ratioMetryka własnaMetryka własna< 15% (cache nie działa)

Dashboard kosztów - co powinien zawierać

┌──────────────────────────────────────────────────────┐
│  LLM Cost Dashboard (Azure Workbook / Grafana)       │
│                                                      │
│  ┌─────────────┐  ┌─────────────┐  ┌──────────────┐ │
│  │ Daily cost  │  │ Tokens/day  │  │ Cost/1K req  │ │
│  │ $147 ▲12%   │  │ 45M ▲8%    │  │ $0.032 ▼3%   │ │
│  └─────────────┘  └─────────────┘  └──────────────┘ │
│                                                      │
│  ┌─────────────────────────────────────────────────┐ │
│  │ Cost breakdown by model (stacked area chart)    │ │
│  │ [GPT-4o: 45%] [GPT-4.1 mini: 35%] [nano: 20%] │ │
│  └─────────────────────────────────────────────────┘ │
│                                                      │
│  ┌─────────────────────────────────────────────────┐ │
│  │ Top consumers by application/team               │ │
│  │ 1. Customer Support Bot: $89/day                │ │
│  │ 2. Document Processing: $34/day                 │ │
│  │ 3. Internal Copilot: $24/day                    │ │
│  └─────────────────────────────────────────────────┘ │
└──────────────────────────────────────────────────────┘

 

Podsumowanie - matryca decyzyjna

Twoja sytuacjaRekomendacjaUzasadnienie
Startup, MVP, <10K zapytań/dzieńAzure OpenAI PAYGZero infra, szybki start, koszt < $200/mies.
Firma regulowana (KNF), dane osobowe w promptachSelf-hosted na AKS (dane wrażliwe) + Azure OpenAI (reszta)Pełna kontrola danych + compliance bez kompromisów
Średni wolumen, wymagane SLAAzure OpenAI PTUGwarantowany throughput, przewidywalny koszt
Wysoki wolumen (>100M tok/dzień), zespół MLOps istniejeSelf-hosted (główny) + Azure OpenAI (zapasowy)50-70% oszczędności na compute, brak vendor lock-in
Potrzebujesz modeli dostrojonych na własnych danychSelf-hostedPełna kontrola wag, LoRA/QLoRA, iteracyjne dostrajanie
Sektor publiczny, wymóg KPRMAzure OpenAI Data Zone EUAzure na liście KPRM, Data Zone = dane w EU, minimalna dokumentacja

Nie ma jednej poprawnej odpowiedzi. Najlepsze organizacje zaczynają od Azure OpenAI (szybki czas do wartości biznesowej), mierzą wolumen i wzorce użycia, a po 3-6 miesiącach podejmują świadomą decyzję o self-hostingu tam, gdzie ekonomika to uzasadnia.

Kluczowe: od pierwszego dnia używaj abstrakcji API (LiteLLM, standardowy format OpenAI). Dzięki temu migracja między podejściami to zmiana konfiguracji, nie przepisywanie aplikacji.

 

Jak możemy pomóc

W Devopsity projektujemy architektury LLM na Azure, AWS i GCP - od pierwszej wyceny po produkcyjne wdrożenie. Typowe zaangażowanie:

  • Assessment (1-2 dni) - analiza przypadku użycia, dobór modelu, kalkulacja kosztów Azure OpenAI vs self-hosting
  • Proof of Concept (1-2 tygodnie) - wdrożenie pilotażowe z pomiarem latency i kosztów na rzeczywistych danych
  • Produkcja (2-4 tygodnie) - pełna architektura: AI Gateway, monitoring, FinOps, compliance
  • Optymalizacja (ongoing) - semantic caching, tiered models, migracja do self-hostingu gdy wolumen uzasadnia
Jerzy Kopaczewski

Planujesz wdrożenie LLM w produkcji?

Umów się na bezpłatną 30-minutową konsultację techniczną. Omówimy Twoją architekturę AI i optymalny model kosztowy.

 

Najczęściej zadawane pytania

Czy Azure OpenAI Service przetwarza moje dane w Europie?

Tak, przy wyborze deploymentu Data Zone Standard lub Regional Standard. Data Zone EU gwarantuje, że zarówno inferencja (przetwarzanie promptu), jak i dane at-rest pozostają w europejskich regionach Azure (Sweden Central, France Central, Germany West Central). Spełnia to wymogi RODO Art. 44-49.

Ile kosztuje Azure OpenAI miesięcznie dla typowej firmy?

Zależy od wolumenu i modelu. Typowe scenariusze: chatbot kliencki (10K konwersacji/dzień, GPT-4.1 mini) to ok. $300-500/miesiąc. Platforma z masowym przetwarzaniem dokumentów (100K+ zapytań/dzień) to $3 000-10 000/miesiąc. Self-hosting na 2× A100 GPU kosztuje $5 000-11 000/miesiąc (z TCO).

Kiedy self-hosting LLM jest tańszy niż Azure OpenAI?

Punkt przełamania zależy od modelu i wolumenu. Orientacyjnie: powyżej 100-200M tokenów dziennie self-hosting staje się opłacalny, pod warunkiem że masz zespół MLOps (0.3-0.5 FTE) i akceptujesz brak SLA zarządzanej usługi. Przy niższym wolumenie Azure OpenAI wygrywa dzięki modelowi pay-per-use.

Czy mogę używać Azure OpenAI w sektorze finansowym (KNF)?

Tak, pod warunkiem spełnienia wymogów outsourcingu chmurowego (notyfikacja KNF, DPA, dokumentacja łańcucha podwykonawców). Rekomendujemy architekturę hybrydową: Azure OpenAI do zadań bez danych osobowych, self-hosting do przetwarzania danych klientów.

Jak szybko mogę przejść z Azure OpenAI na self-hosting?

Jeśli od początku używasz abstrakcji API (LiteLLM, format OpenAI Chat Completions) - migracja to zmiana jednego adresu URL w konfiguracji. vLLM implementuje API kompatybilne z OpenAI natywnie. Główny koszt to czas na uzyskanie quota GPU w Azure (1-4 tygodnie) i konfigurację klastra AKS.

Azure Azure OpenAI LLM GenAI FinOps vLLM self-hosting GDPR rezydencja danych

Przeczytaj również:

Poprzedni post