modely

DeepSeek R1 Distill Qwen 7B

Markdown · JSON

DeepSeek R1 Distill Qwen 7B

DeepSeek-R1-Distill-Qwen-7B je kompaktní hustý model společnosti DeepSeek pro uvažování, dotrénovaný z Qwen2.5-Math-7B pomocí příkladů vygenerovaných modelem R1. Přijímá text a vytváří text pro matematické, programovací a logické úlohy, s pokyny k promptování specifickými pro tento checkpoint.

O modelu

Tento popis zahrnuje schopnosti modelu. Vstupy, výstupy a možnosti dostupné v Ailoot jsou uvedeny níže pro vybranou metodu.

Úvod: menší model pro uvažování odvozený z R1

DeepSeek-R1-Distill-Qwen-7B přenáší příklady uvažování z DeepSeek-R1 do hustého modelu založeného na Qwen2.5-Math-7B. Přijímá text a generuje text, včetně řešení s postupem, programovacích vysvětlení a odpovědí na logické problémy. Tato konkrétní destilace 7B je samostatným checkpointem odlišným od plného DeepSeek-R1, původního Qwen2.5-Math-7B i větších destilovaných edic. Název zaznamenává výrobce dat pro uvažování i základní rodinu modelu.

Co přináší destilace

Výzkum R1 společnosti DeepSeek rozlišuje trénování velkého učitelského modelu pro uvažování od dotrénování jeho menších žáků. Trénovací postup učitele používá posilované učení i fáze učení s učitelem; vydané destilované modely jsou dotrénovány na vzorcích vytvořených modelem R1. Výrobce pro tato vydání popisuje 800 000 pečlivě vybraných příkladů. Nepředpokládejte, že samotný žák 7B má architekturu mixture-of-experts plného modelu nebo prošel všemi trénovacími fázemi učitele. Destilace dává tomuto modelu naučený styl uvažování; nečiní jeho závěry rovnocennými závěrům učitele.

Přesný model a jeho konfigurace

Oficiální tabulka modelů určuje jako základ této edice Qwen2.5-Math-7B. DeepSeek mění konfiguraci a nastavení tokenizeru, takže záleží na přesném vydaném checkpointu a chatové šabloně. Publikovaná konfigurace používá architekturu kauzálního jazykového modelu Qwen2 s 28 vrstvami a vahami bfloat16. Maximální počet pozic nastavuje na 131 072. Tato konfigurační hodnota není samostatným ověřením přesnosti při práci s dlouhými dokumenty: tabulka kontextu 128K na společné kartě R1 popisuje plné modely R1, zatímco tabulka destilovaných modelů určuje jejich původ, aniž by publikovala tabulku ověřených kontextů pro jednotlivé žákovské modely.

Použijte jej pro úlohu s kontrolovatelným výsledkem. U matematiky dodejte úplné znění, definice a jednotky. U kódu připojte příslušnou funkci, vstup, pozorovaný výsledek a požadované chování. U logické otázky vypište fakta a rozlišujte požadovaný závěr od předpokladu. Požadujte konečný výsledek, který lze nezávisle zkontrolovat, například hodnotu v rámečku, stručnou osnovu důkazu nebo vysvětlený patch. Tyto příklady využívají dokumentovaný rozsah uvažování výrobce; netvrdí, že model automaticky spouští kód nebo ověřuje důkazy.

Jak připravit prompt

DeepSeek u tohoto vydání R1 doporučuje umístit všechny instrukce do uživatelského promptu a vyhnout se systémovému promptu. U matematického problému požadujte uvažování krok za krokem a jasně oddělenou závěrečnou odpověď. Ve stejném promptu uveďte i strukturu výstupu: například krátký závěr následovaný předpoklady a podpůrnými výpočty. Aplikace má používat vlastní tokenizer a formátování žákovského modelu, místo aby bez kontroly změn výrobce dosadila základní šablonu Qwen.

Výrobce upozorňuje, že některé dotazy mohou vytvořit prázdný blok přemýšlení a obejít zamýšlený vzorec uvažování. Doporučenou nápravou je v kompatibilním postupu zahájit generování otevírací značkou přemýšlení a novým řádkem. Jde o dokumentované doporučení formátu generování, nikoli příslib, že každá aplikace takový ovládací prvek zpřístupňuje. Při prezentaci výsledku oddělujte závěrečnou odpověď od delšího textu uvažování.

Nastavení generování a dostupný prostor

DeepSeek doporučuje teplotu mezi 0,5 a 0,7, s 0,6 jako preferovaným výchozím bodem, aby se omezil opakovaný nebo nesouvislý výstup. Jeho hodnoticí sestava používá kapacitu generování 32 768 tokenů a top_p 0.95. Tato nastavení vyhodnocení nejsou univerzálním pevným maximem. Uvažování, zdrojový text i konečná odpověď potřebují prostor v nastaveném kontextu, takže i požadavek obsahující dlouhý důkaz nebo výpis kódu musí ponechat místo pro dokončení.

Omezení ovlivňující volbu modelu

Malý destilovaný model zůstává specifickým kompromisem pro uvažování. Materiály výrobce k vydání nedokládají pro tento checkpoint obrazový, zvukový ani video vstup ani vyhrazený protokol volání nástrojů. Spouštění nástrojů nebo přístup k aktuálním datům by vyžadovaly samostatně nakonfigurovaný postup aplikace. Vydání také pouhým názvem R1 nepřebírá pozdější změny pravidel promptování DeepSeek-R1-0528. Ověřujte číselné odpovědi, kontrolujte navržené změny kódu a posuzujte, zda konečný závěr plyne z dodaných faktů; samotný dlouhý záznam uvažování není důkazem správnosti.

Ailoot Ultra · OpenAI Chat POST /v1/chat/completions Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B

Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B

Ostatní /Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B

Úvod

DeepSeek-R1-Distill-Qwen-7B je kompaktní hustý model společnosti DeepSeek pro uvažování, dotrénovaný z Qwen2.5-Math-7B pomocí příkladů vygenerovaných modelem R1. Přijímá text a vytváří text pro matematické, programovací a logické úlohy, s pokyny k promptování specifickými pro tento checkpoint.

Přijímané vstupy
Text
Výsledky
Text

Dostupné v Ailoot · vstupy a metody

Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
Vstup
text
Výstup
text
Výstupní formát
json nebo SSE
PoleTypPožadavekHodnoty a limityVýchozí
PolemodelTypstringPožadavekPovinnéHodnoty a limity
Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B
Výchozí—
PolemessagesTypmessage[]PožadavekPovinnéHodnoty a limity
Minimální počet položek: 1
Výchozí—
Polemessages[].roleTypstringPožadavekPovinnéHodnoty a limity
Závisí na modelu
Výchozí—
Polemessages[].contentTypstringPožadavekVolitelnéHodnoty a limity
Platí, když: Textová konverzace
Výchozí—
PolestreamTypbooleanPožadavekVolitelnéHodnoty a limityVýchozífalse
Kombinace vstupních materiálů

Text · text UTF8

messages[].content

Parametry a životní cyklus metody
ParametrKontrakt
Parametrcontent_typeKontraktapplication/json
ParametrrequiredKontraktmodel, messages
Parametrmaterial_typesKontrakttext
ParametrmessagesKontraktpole zpráv se strukturou role/content
Parametrfile_materialKontraktskutečný dokument UTF-8 vložený jako doslovný text; ID souboru se neodvozuje
Parametroptional_controlsKontraktstream
Parametrcontrol_scopeKontraktTextová konverzace; stream je booleovská hodnota a ve výchozím nastavení je false.
Parametroutput_modalitiesKontrakttext
Parametrhosted_operationsKontraktfalse
Parametrmultimodal_input_bindingKontraktnull

Aliasy metody: /chat/completions

Životní cyklus: synchronous_or_streamed

Odešlete přesné ID modelu spolu s messages.

Délka kontextu není limitem výstupu.

Textový soubor může dodat doslovný text; obrazové/zvukové vstupy a vstupy v podobě souborových objektů vyžadují přesnou vazbu.

Tarify

Údaje o tarifech nepřidávají možnosti požadavku. Podporované parametry jsou uvedeny u vybrané metody.

Rychlý režim
Neuvedeno Při výběru rychlého režimu
Režim flex
Neuvedeno Při výběru režimu flex
Maximální intenzita uvažování
Neuvedeno Když se při maximální intenzitě uvažování použije výchozí úprava (default)

Sazby Ailoot

Ceny podle konfigurace

KonfiguraceTabulka sazebPoplatek
KonfiguraceZákladní sazby za tokenyTabulka sazebZákladní sazbaPoplatek
Vstup · Vstupní tokeny $0.0001 / 1K tokenů
Výstup · Výstupní tokeny $0.0001 / 1K tokenů
Vstup · Čtení z mezipaměti $0 / 1K tokenů
Vstup · Zápis do mezipaměti $0 / 1K tokenů
Vstup · Zápis do mezipaměti, 1 hodina — / 1K tokenů

Ailoot před požadavkem rezervuje odhadovanou částku. Po výsledku vyúčtuje konečný poplatek podle naměřeného využití. Při streamování se účtování řídí konečným záznamem využití. Jak funguje rezervace a vyúčtování →

Příklady požadavků

Ailoot Ultra · OpenAI Chat

curlPython SDK
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model":"Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B","messages":[{"role":"user","content":"hello"}],"stream":false}')

Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/chat/completions \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("choices",[]):
    if x.get("message",{}).get("content"): print(x["message"]["content"])
PY_RESULT
from openai import OpenAI
import os

if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.chat.completions.create(model="Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B", messages=[{"role":"user","content":"hello"}], stream=False)
import base64, json
from pathlib import Path

def save_result(data, stem="result"):
    # Keep every field, including usage, IDs, reasoning and tool requests.
    Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
    print(json.dumps(data, ensure_ascii=False, indent=2))
    def save_blob(encoded, suffix, label):
        raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
        ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
        file = Path(stem + "-" + label + "." + ext)
        file.write_bytes(raw)
        print("Saved", file)
    for index, block in enumerate(data.get("content") or []):
        print("Content", index, json.dumps(block, ensure_ascii=False))
    for choice in data.get("choices") or []:
        print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
    for index, item in enumerate(data.get("output") or []):
        print("Output", index, json.dumps(item, ensure_ascii=False))
        if item.get("type") == "image_generation_call" and item.get("result"):
            save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
    for ci, candidate in enumerate(data.get("candidates") or []):
        for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
            print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
            blob = part.get("inlineData") or part.get("inline_data")
            if blob and blob.get("data"):
                mime = blob.get("mimeType") or blob.get("mime_type")
                suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
                save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))

save_result(result.to_dict(mode="json"))

Přijímání a ukládání výsledků

Ailoot Ultra · OpenAI Chat

json nebo SSE

Uchovejte všechny dokončené výsledky

Uchovejte každou úplnou vrácenou odpověď, soubor i část obsahu.

Zachovejte každou volbu a její obsah/volání nástrojů/uvažování. V SSE sestavujte přírůstky podle indexu volby/nástroje a zachovejte konečný důvod ukončení i údaje o využití.

Pokud je nutné ověřit původní odpověď

Zachovejte ID požadavků/odpovědí a hlavičky. Není dodána obecná URL pro načtení textové úlohy.

Pole odpovědi
PoleTyp
Polechoices[].indexTypinteger
Polechoices[].message.contentTypstring|null
Polechoices[].message.tool_callsTyptool_call[]
Polechoices[].message.reasoning_contentTypstring
Polechoices[].message.reasoning_detailsTypobject|array
Polechoices[].finish_reasonTypstring|null
PoleusageTypobject
Chyby a další kroky
OdpověďPodmínkaDalší krok
Odpověď400 · invalid_request_errorPodmínkaNeplatná povinná pole, reprezentace podkladů nebo hodnota parametruDalší krokPřed novým požadavkem na vytvoření opravte uvedená pole.

Aliasy

Aliasy modelu

Ailoot Ultra Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B

Aliasy cest metod

/chat/completions

Související ID modelů

Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B

Ailoot Ultra · Anthropic Messages POST /v1/messages Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B

Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B

Ostatní /Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B

Úvod

DeepSeek-R1-Distill-Qwen-7B je kompaktní hustý model společnosti DeepSeek pro uvažování, dotrénovaný z Qwen2.5-Math-7B pomocí příkladů vygenerovaných modelem R1. Přijímá text a vytváří text pro matematické, programovací a logické úlohy, s pokyny k promptování specifickými pro tento checkpoint.

Přijímané vstupy
Text
Výsledky
json · sse

Dostupné v Ailoot · vstupy a metody

Ailoot Ultra · Anthropic Messages POST /v1/messages
Vstup
text
Výstup
json, sse
Výstupní formát
JSON nebo SSE
PoleTypPožadavekHodnoty a limityVýchozí
PolemodelTypstringPožadavekPovinnéHodnoty a limity
Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B
Výchozí—
PolemessagesTypmessage[]PožadavekPovinnéHodnoty a limityVýchozí—
Polemessages[].roleTypstringPožadavekPovinnéHodnoty a limity
user, assistant
Výchozí—
Polemessages[].contentTypstringPožadavekPovinnéHodnoty a limityVýchozí—
Polemax_tokensTypintegerPožadavekPovinnéHodnoty a limityVýchozí—
PolestreamTypbooleanPožadavekVolitelnéHodnoty a limityVýchozífalse
Kombinace vstupních materiálů

Text · text UTF-8

řetězec messages[].content

Parametry a životní cyklus metody
ParametrKontrakt
Parametrcontent_typeKontraktapplication/json
ParametrrequiredKontraktmodel, messages, max_tokens
Parametroptional_controlsKontraktstream
Parametrmaterial_typesKontrakttext
Parametrtext_file_materialKontraktPřečtěte skutečný dokument UTF-8 a vložte jeho text do uvedeného pole input nebo do řetězce obsahu zprávy.

Životní cyklus: synchronous_or_streamed

Tarify

Údaje o tarifech nepřidávají možnosti požadavku. Podporované parametry jsou uvedeny u vybrané metody.

Rychlý režim
Neuvedeno Při výběru rychlého režimu
Režim flex
Neuvedeno Při výběru režimu flex
Maximální intenzita uvažování
Neuvedeno Když se při maximální intenzitě uvažování použije výchozí úprava (default)

Sazby Ailoot

Ceny podle konfigurace

KonfiguraceTabulka sazebPoplatek
KonfiguraceZákladní sazby za tokenyTabulka sazebZákladní sazbaPoplatek
Vstup · Vstupní tokeny $0.0001 / 1K tokenů
Výstup · Výstupní tokeny $0.0001 / 1K tokenů
Vstup · Čtení z mezipaměti $0 / 1K tokenů
Vstup · Zápis do mezipaměti $0 / 1K tokenů
Vstup · Zápis do mezipaměti, 1 hodina — / 1K tokenů

Ailoot před požadavkem rezervuje odhadovanou částku. Po výsledku vyúčtuje konečný poplatek podle naměřeného využití. Při streamování se účtování řídí konečným záznamem využití. Jak funguje rezervace a vyúčtování →

Příklady požadavků

Ailoot Ultra · Anthropic Messages

Úplné minimální tělo požadavku JSONcurl · použijte svůj dokument UTF-8Python · uložte úplný výsledek
{
  "model": "Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B",
  "max_tokens": 128,
  "messages": [
    {
      "role": "user",
      "content": "Summarize the incident report."
    }
  ],
  "stream": false
}
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 document}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/messages \
  -H "x-api-key: $AILOOT_API_KEY" -H 'anthropic-version: 2023-06-01' -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
PY_RESULT
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
from urllib.request import Request, urlopen
from urllib.error import HTTPError

api_key = os.environ['AILOOT_API_KEY']
if not api_key.strip():
    raise SystemExit('Set AILOOT_API_KEY before making a request')
headers = {'x-api-key': 'PLACEHOLDER_KEY', 'anthropic-version': '2023-06-01', 'Content-Type': 'application/json'}
headers['x-api-key'] = api_key
request = Request('https://api.ailoot.ai/v1/messages', data=json.dumps(payload, ensure_ascii=False).encode('utf-8'), headers=headers, method='POST')
try:
    with urlopen(request, timeout=120) as response:
        raw = response.read()
        Path('response-headers.txt').write_text(str(response.headers), encoding='utf-8')
except HTTPError as error:
    Path('result.json').write_bytes(error.read())
    Path('response-headers.txt').write_text(str(error.headers), encoding='utf-8')
    raise
Path('result.json').write_bytes(raw)
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))

Přijímání a ukládání výsledků

Ailoot Ultra · Anthropic Messages

JSON nebo SSE

Uchovejte všechny dokončené výsledky

Uchovejte každou úplnou vrácenou odpověď, soubor i část obsahu.

Zachovejte všechny bloky obsahu, podpisy uvažování a skutečná ID použití nástrojů. Sestavte všechny přírůstky bloků SSE; první textový blok není úplný výstup.

Pokud je nutné ověřit původní odpověď

Zachovejte ID požadavků/odpovědí a hlavičky. Není dodána obecná URL pro načtení textové úlohy.

Pole odpovědi
PoleTyp
PoleidTypstring
PolemodelTypstring
Polecontent[]Typtext|thinking|tool_use|other content block
Polestop_reasonTypstring|null
PoleusageTypobject
Chyby a další kroky
OdpověďPodmínkaDalší krok
Odpověď400 · invalid_request_errorPodmínkaNeplatná povinná pole, reprezentace podkladů nebo hodnota parametruDalší krokPřed novým požadavkem na vytvoření opravte uvedená pole.

Aliasy

Aliasy modelu

Ailoot Ultra Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B

Aliasy cest metod

/chat/completions

Související ID modelů

Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B

FAQ · Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B
Jaké vstupy a výsledky jsou dostupné?

POST /v1/chat/completions · Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B: text → text

POST /v1/messages · Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B: text → json, sse

Jaká pole požadavek používá?

POST /v1/chat/completions · Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B: model, messages, stream

POST /v1/messages · Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B: model, messages, max_tokens, stream

Jaké limity platí?

POST /v1/chat/completions · Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B: messages.min_items: 1

Další podrobnosti

Připojte Ailoot k Claude Code, OpenCode, Hermes nebo vlastní aplikaci.

Společnost a její portfolio projektů

Společnost a její portfolio projektů: miliony zákazníků; měsíční tržby v miliardách.

Nakupujte tokeny se slevou.

Sleva předplatného pro pravidelnou práci. Promo kódy až 50% na nákup tokenů.

Předplatné
Pro pravidelné požadavky vyberte tarif se slevou.
Promo kód až 50%
Při nákupu zadejte kód. Cena se přepočítá podle probíhající akce.
Výdaje v historii
U každého požadavku se uloží model, tokeny a částka.

Vybrat předplatné · Zobrazit ceny modelů

Připojte API k produktu, který prodáváte.

SaaS, aplikace a boti podle nabídky a licenční smlouvy Ailoot. Pro přeprodej požádejte o licenci přeprodejce.

Komerční aplikace
Začleňte generování textu, obrázků, videa a zvuku do placených funkcí své služby.
Licence pro přeprodejce
Pošlete popis projektu a způsob poskytování přístupu. Vyžádejte písemné podmínky použití a přeprodeje.
Dokumenty na webu
Nabídka, licenční smlouva a zásady zpracování dat jsou dostupné před připojením.

Požádat o licenci přeprodejce · Nabídka a licenční smlouva