APIMaster.ai

Samouczek API DeepSeek: V4 Flash / Pro z Pythonem i JavaScriptem

Wywołaj DeepSeek V4 Flash i Pro przez APIMaster za pomocą curl, Pythona i JavaScriptu. Skonfiguruj swój klucz API, strumieniuj odpowiedzi i rozwiązuj typowe błędy.

Czy możesz wywołać DeepSeek za pomocą SDK OpenAI? Tak. Przez APIMaster ustaw bazowy URL API na https://apimaster.ai/v1, użyj swojego klucza API APIMaster i wybierz deepseek-v4-flash lub deepseek-v4-pro. Ten przewodnik obejmuje tę konfigurację bramy; klucz wydany przez innego dostawcę nie jest zamienny.

Ostatnio testowano: 2026-09-07. Oba modele zwróciły HTTP 200 i oczekiwany tekst w naszym teście Chat Completions. Codex CLI 0.153.4 i Claude Code 2.1.239 również ukończyły testy narzędzi tekstowych i odczytu plików przez tę samą bramę. Są to krótkie testy funkcjonalne, a nie benchmark długiego kontekstu lub niezawodności. Przykłady w Pythonie, JavaScripcie i strumieniowaniu poniżej demonstrują odpowiednie użycie API; nie są to osobne wyniki benchmarków.

1. Uzyskaj klucz i wybierz model

Utwórz konto i uzyskaj klucz API. Upewnij się, że klucz ma dostęp do wybranego modelu i wystarczający limit. Sprawdź aktualne ceny w marketplace modeli; stawki mogą się różnić w zależności od trasy i czasu.

Ustawienie Wartość
Bazowy URL SDK https://apimaster.ai/v1
Endpoint HTTP POST https://apimaster.ai/v1/chat/completions
Autoryzacja Authorization: Bearer YOUR_APIMASTER_API_KEY
Model Flash deepseek-v4-flash
Model Pro deepseek-v4-pro

Oba modele używają tego samego kształtu żądania. Zacznij od dowolnego modelu, a następnie porównaj wyniki na własnym obciążeniu. Zastąp YOUR_APIMASTER_API_KEY poniżej swoim kluczem lokalnie; nie zatwierdzaj go w systemie kontroli wersji ani nie umieszczaj w kodzie przeglądarki.

macOS / Linux:

export APIMASTER_API_KEY='YOUR_APIMASTER_API_KEY'

Windows PowerShell:

$env:APIMASTER_API_KEY = 'YOUR_APIMASTER_API_KEY'

Te zmienne dotyczą bieżącego terminala. Uruchom poniższe przykłady z tego terminala.

2. Wykonaj pierwsze żądanie za pomocą curl

Poniższe polecenie używa składni powłoki macOS / Linux. Użytkownicy systemu Windows mogą skorzystać z poniższego przykładu w Pythonie, który jest wieloplatformowy.

curl --fail-with-body 'https://apimaster.ai/v1/chat/completions' \
  -H "Authorization: Bearer $APIMASTER_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
    "model": "deepseek-v4-flash",
    "messages": [{"role": "user", "content": "Reply with exactly: DEEPSEEK_TEST_OK"}],
    "max_tokens": 256,
    "stream": false
  }'

Oczekiwane: HTTP 200 i choices[0].message.content równe DEEPSEEK_TEST_OK. Zmień tylko model na deepseek-v4-pro, aby powtórzyć test. Odpowiedź może zawierać wersjonowaną nazwę modelu; nadal używaj publicznych identyfikatorów modeli powyżej w żądaniach.

3. Wywołaj DeepSeek z Pythona

Zainstaluj SDK:

python -m pip install openai

Zapisz jako deepseek_example.py, a następnie uruchom python deepseek_example.py:

import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["APIMASTER_API_KEY"],
    base_url="https://apimaster.ai/v1",
)
response = client.chat.completions.create(
    model="deepseek-v4-flash",
    messages=[{"role": "user", "content": "Reply with exactly: DEEPSEEK_TEST_OK"}],
    max_tokens=256,
)
print(response.choices[0].message.content)

W przypadku zadania kodowania zastąp prompt swoimi wymaganiami. Zwiększ budżet wyjściowy dla dłuższych odpowiedzi; krótki budżet testowy nie jest odpowiedni do generowania kompletnej aplikacji.

4. Wywołaj DeepSeek z JavaScriptu

Użyj środowiska Node.js po stronie serwera:

npm install openai

Zapisz jako deepseek_example.mjs, a następnie uruchom node deepseek_example.mjs:

import OpenAI from "openai";

const client = new OpenAI({
  apiKey: process.env.APIMASTER_API_KEY,
  baseURL: "https://apimaster.ai/v1",
});
const response = await client.chat.completions.create({
  model: "deepseek-v4-pro",
  messages: [{ role: "user", content: "Reply with exactly: DEEPSEEK_TEST_OK" }],
  max_tokens: 256,
});
console.log(response.choices[0].message.content);

5. Strumieniuj odpowiedź końcową

Używając powyższego client w Pythonie:

stream = client.chat.completions.create(
    model="deepseek-v4-flash",
    messages=[{"role": "user", "content": "Explain a Python dictionary in three sentences."}],
    max_tokens=1024,
    stream=True,
)
for chunk in stream:
    if not chunk.choices:
        continue
    text = chunk.choices[0].delta.content
    if text:
        print(text, end="", flush=True)
print()

To wypisuje tekst odpowiedzi końcowej z content. Niektóre odpowiedzi udostępniają również reasoning_content; jest ono oddzielone od odpowiedzi końcowej. Nie zakładaj, że każdy fragment strumienia zawiera tekst lub wpis choices.

Rozwiązywanie problemów

Objaw Co sprawdzić
401 Użyj klucza APIMaster, sprawdź białe znaki i nagłówek Bearer oraz potwierdź, że zmienna środowiskowa jest ustawiona w tym terminalu.
403 lub błąd dostępu do modelu Sprawdź uprawnienia modelu klucza i ograniczenia konta.
404 Użyj /v1/chat/completions; nie duplikuj /v1 ani nie dołączaj endpointu do bazowego URL SDK.
429 lub niewystarczający limit Przeczytaj treść błędu, aby odróżnić limit szybkości od wyczerpania limitu. Ponów próbę z backoffem w przypadku limitów szybkości; sprawdź saldo w przypadku błędów limitu.
Pusta lub obcięta odpowiedź Sprawdź finish_reason, zwiększ budżet tokenów i odróżnij content od pól rozumowania.
Limit czasu lub 5xx Zapisz znacznik czasu i identyfikator żądania, ponów próbę z backoffem i skontaktuj się z pomocą techniczną, jeśli problem będzie się powtarzał. Nigdy nie wysyłaj pełnego klucza w raporcie o błędzie.

Często zadawane pytania

Czy klucz API jest taki sam jak oficjalny klucz DeepSeek?

Nie. Ten samouczek używa klucza wydanego przez APIMaster z endpointem APIMaster. Trzymaj klucz i endpoint jego dostawcy w parze.

Czy mogę przełączać się między Flash i Pro bez przepisywania integracji?

Tak, zmień pole model między deepseek-v4-flash a deepseek-v4-pro, pod warunkiem że twój klucz ma dostęp do obu. Sprawdź wyniki każdego modelu i aktualne ceny dla swojego obciążenia.

Czy udane żądanie dowodzi tożsamości bazowego modelu?

Nie. Sukces HTTP i zwrócona nazwa modelu potwierdzają, że żądanie zostało ukończone; nie weryfikują niezależnie tożsamości modelu.

Czy mogę używać tych modeli w Codex i Claude Code?

Nasze przetestowane konfiguracje ukończyły żądania tekstowe i narzędzi odczytu plików w obu CLI. Protokoły się różnią: Codex używa /v1/responses, podczas gdy Claude Code używa /v1/messages. Postępuj zgodnie z dedykowanymi przewodnikami, zamiast podstawiać endpoint Chat Completions do konfiguracji CLI.

Kontynuuj z DeepSeek