วิธีใช้ DeepSeek V4 API

Ashley Innocent

Ashley Innocent

24 April 2026

วิธีใช้ DeepSeek V4 API

Apidog สำหรับองค์กร

ติดตั้งภายในองค์กร

SSO & RBAC

รองรับ SOC 2

สำรวจ Apidog Enterprise

DeepSeek V4 เปิดตัวพร้อม API ที่ใช้งานได้ทันทีในวันแรก รหัสโมเดลคือ deepseek-v4-pro และ deepseek-v4-flash ซึ่งเป็นปลายทางที่เข้ากันได้กับ OpenAI และ URL หลักคือ https://api.deepseek.com นั่นหมายความว่าไคลเอนต์ใดๆ ที่คุณใช้อยู่แล้วกับ GPT-5.5 หรือ API รูปแบบ OpenAI อื่นๆ สามารถทำงานร่วมกับ V4 ได้ด้วยการเปลี่ยน URL หลักเพียงครั้งเดียว

คู่มือนี้ครอบคลุมการยืนยันตัวตน, พารามิเตอร์สำคัญทุกตัว, ตัวอย่าง Python และ Node, การคำนวณในโหมดคิด (thinking-mode math), การเรียกใช้เครื่องมือ (tool calling), การสตรีม, และเวิร์กโฟลว์ที่ใช้ Apidog ซึ่งจะช่วยให้คุณเห็นค่าใช้จ่ายขณะที่คุณวนซ้ำการทำงาน

ปุ่ม

สำหรับภาพรวมระดับผลิตภัณฑ์ โปรดดู DeepSeek V4 คืออะไร สำหรับวิธีใช้งานแบบไม่มีค่าใช้จ่าย โปรดดู วิธีใช้ DeepSeek V4 ฟรี

สรุปโดยย่อ

ข้อกำหนดเบื้องต้น

ก่อนส่งคำขอครั้งแรก เตรียมสิ่งเหล่านี้สี่อย่างให้พร้อม

ส่งออกคีย์เพียงครั้งเดียว:

export DEEPSEEK_API_KEY="sk-..."

ปลายทางและการยืนยันตัวตน

URL หลักสองรายการครอบคลุมรูปแบบคำขอสองแบบ

POST https://api.deepseek.com/v1/chat/completions    # รูปแบบ OpenAI
POST https://api.deepseek.com/anthropic/v1/messages  # รูปแบบ Anthropic

เลือกที่เข้ากันได้กับ OpenAI เว้นแต่คุณมีโค้ดเบสที่มีอยู่แล้วซึ่งเป็นรูปแบบ Anthropic ส่วนที่เหลือของคู่มือนี้จะใช้รูปแบบ OpenAI

การยืนยันตัวตนคือโทเค็นผู้ถือ (bearer token) บนส่วนหัว Authorization มาตรฐาน คำขอขั้นต่ำที่ใช้งานได้:

curl https://api.deepseek.com/v1/chat/completions \
  -H "Authorization: Bearer $DEEPSEEK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "deepseek-v4-pro",
    "messages": [
      {"role": "user", "content": "Explain MoE routing in two sentences."}
    ]
  }'

การตอบกลับที่สำเร็จจะส่งคืน JSON body ที่มีอาร์เรย์ choices, บล็อก usage ที่แยกตามโทเค็นอินพุตและเอาต์พุต (และ reasoning_tokens หากเปิดโหมดการคิด), และ id ที่คุณสามารถใช้สำหรับการติดตาม ความล้มเหลวจะส่งคืนรูปแบบ OpenAI มาตรฐานพร้อม error.code และ error.message

พารามิเตอร์คำขอ

แต่ละฟิลด์สัมพันธ์กับค่าใช้จ่ายหรือพฤติกรรม นี่คือแผนผังสำหรับ deepseek-v4-pro และ deepseek-v4-flash

พารามิเตอร์ ประเภท ค่า หมายเหตุ
model สตริง deepseek-v4-pro, deepseek-v4-flash จำเป็นต้องระบุ
messages อาร์เรย์ คู่ role/content จำเป็นต้องระบุ ใช้ Schema เดียวกันกับ OpenAI
thinking_mode สตริง non-thinking, thinking, thinking_max ค่าเริ่มต้นคือ non-thinking
temperature โฟลต 0 ถึง 2 DeepSeek แนะนำ 1.0
top_p โฟลต 0 ถึง 1 DeepSeek แนะนำ 1.0
max_tokens จำนวนเต็ม 1 ถึง 131,072 จำกัดความยาวเอาต์พุต
stream บูลีน true หรือ false เปิดใช้งานการสตรีม SSE
tools อาร์เรย์ ข้อมูลจำเพาะเครื่องมือ OpenAI สำหรับการเรียกใช้ฟังก์ชัน
tool_choice สตริงหรือวัตถุ auto, required, none หรือเครื่องมือเฉพาะ ควบคุมการใช้เครื่องมือ
response_format วัตถุ {"type": "json_object"} เอาต์พุตในโหมด JSON
seed จำนวนเต็ม จำนวนเต็มใดๆ สำหรับความสามารถในการทำซ้ำ
presence_penalty โฟลต -2 ถึง 2 ลงโทษหัวข้อที่ซ้ำกัน
frequency_penalty โฟลต -2 ถึง 2 ลงโทษโทเค็นที่ซ้ำกัน

thinking_mode เป็นตัวแปรค่าใช้จ่ายที่สำคัญที่สุด non-thinking ข้ามการติดตามการให้เหตุผลทั้งหมดและส่งคืนโทเค็นด้วยความเร็วประมาณ V3.2 thinking เปิดใช้งานบล็อกการให้เหตุผลที่ใช้โทเค็นเพิ่มเติมแต่ปรับปรุงความแม่นยำในการเขียนโค้ดและคณิตศาสตร์ thinking_max สร้างคะแนนตามตารางพาดหัวข่าวของ DeepSeek; โหมดนี้ยังใช้โทเค็นมากที่สุดและเป็นโหมดเดียวที่ต้องการงบประมาณบริบทอย่างน้อย 384K

ไคลเอนต์ Python

SDK openai อย่างเป็นทางการทำงานร่วมกับการแทนที่ URL หลักได้ แรปเปอร์ที่เข้ากันได้กับ OpenAI ที่มีอยู่ทั้งหมด รวมถึง LangChain, LlamaIndex และ DSPy ก็ใช้งานได้เช่นกัน

import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["DEEPSEEK_API_KEY"],
    base_url="https://api.deepseek.com/v1",
)

response = client.chat.completions.create(
    model="deepseek-v4-pro",
    messages=[
        {"role": "system", "content": "Reply in code only."},
        {"role": "user", "content": "Write a Rust function that debounces events."},
    ],
    extra_body={"thinking_mode": "thinking"},
    temperature=1.0,
    top_p=1.0,
    max_tokens=2048,
)

choice = response.choices[0]
print("Content:", choice.message.content)
print("Reasoning tokens:", response.usage.reasoning_tokens)
print("Total tokens:", response.usage.total_tokens)

เทคนิค extra_body เป็นวิธีที่คุณสามารถส่งพารามิเตอร์เฉพาะของ DeepSeek ผ่าน OpenAI SDK ได้โดยไม่ต้องแก้ไขไลบรารี

ไคลเอนต์ Node

โครงสร้างเดียวกันใน Node:

import OpenAI from "openai";

const client = new OpenAI({
  apiKey: process.env.DEEPSEEK_API_KEY,
  baseURL: "https://api.deepseek.com/v1",
});

const response = await client.chat.completions.create({
  model: "deepseek-v4-flash",
  messages: [
    { role: "user", content: "Explain the Muon optimizer in plain English." },
  ],
  thinking_mode: "thinking",
  temperature: 1.0,
  top_p: 1.0,
});

console.log(response.choices[0].message.content);
console.log("Usage:", response.usage);

Node SDK ยอมรับฟิลด์ที่ไม่รู้จักโดยไม่มีการแจ้งเตือน ดังนั้น thinking_mode จึงสามารถส่งผ่านไปในระดับบนสุดได้โดยไม่ต้องใช้ extra_body

การสตรีมการตอบกลับ

ตั้งค่า stream: true และวนซ้ำส่วนข้อมูล SSE รูปแบบจะตรงกับ OpenAI ทุกประการ

stream = client.chat.completions.create(
    model="deepseek-v4-pro",
    messages=[{"role": "user", "content": "Stream a 300-word essay on MoE."}],
    stream=True,
    extra_body={"thinking_mode": "non-thinking"},
)

for chunk in stream:
    delta = chunk.choices[0].delta.content or ""
    print(delta, end="", flush=True)

การติดตามการให้เหตุผลจะสตรีมแยกกันเมื่อเปิดโหมดการคิด; ฟิลด์ delta.reasoning_content จะบรรจุข้อมูลเหล่านี้ และคุณสามารถแสดงผลใน UI หรือละทิ้งไปได้

การเรียกใช้เครื่องมือ

V4 รองรับ Schema การเรียกใช้เครื่องมือมาตรฐานของ OpenAI ฟังก์ชันที่กำหนดในอาร์เรย์ tools จะสามารถเรียกใช้งานได้ และโมเดลจะตัดสินใจว่าจะเรียกใช้เมื่อใด

tools = [{
    "type": "function",
    "function": {
        "name": "get_weather",
        "description": "Return the current weather for a city.",
        "parameters": {
            "type": "object",
            "properties": {
                "city": {"type": "string"},
                "unit": {"type": "string", "enum": ["c", "f"]},
            },
            "required": ["city"],
        },
    },
}]

response = client.chat.completions.create(
    model="deepseek-v4-pro",
    messages=[{"role": "user", "content": "Weather in Lagos in Celsius?"}],
    tools=tools,
    tool_choice="auto",
    extra_body={"thinking_mode": "thinking"},
)

tool_call = response.choices[0].message.tool_calls[0]
print(tool_call.function.name, tool_call.function.arguments)

จากนั้น เรียกใช้ฟังก์ชัน, เพิ่มผลลัพธ์เป็นข้อความ role: "tool" และเรียก API อีกครั้งเพื่อดำเนินการต่อในวงจร รูปแบบนี้เหมือนกันกับวงจรการใช้เครื่องมือของ OpenAI และ Anthropic

โหมด JSON

สำหรับเอาต์พุตที่มีโครงสร้าง ให้ระบุ JSON อย่างชัดเจนและตั้งค่ารูปแบบการตอบกลับ

response = client.chat.completions.create(
    model="deepseek-v4-flash",
    messages=[
        {"role": "system", "content": "Reply with a single JSON object."},
        {"role": "user", "content": "Summarize this release note as {title, date, bullets}: ..."},
    ],
    response_format={"type": "json_object"},
    extra_body={"thinking_mode": "non-thinking"},
)

โหมด JSON บังคับให้เป็น JSON ที่ถูกต้อง แต่ไม่ได้บังคับใช้ Schema ที่เฉพาะเจาะจง สำหรับการตรวจสอบ Schema ให้จับคู่กับ Pydantic หรือ Zod ที่ฝั่งไคลเอนต์

สร้างคอลเลกชันใน Apidog

การเล่นคำขอซ้ำจากเทอร์มินัลจะใช้เครดิตและซ่อนความแตกต่างระหว่างการรัน เวิร์กโฟลว์ที่ใช้งานได้จริง:

  1. ดาวน์โหลด Apidog และสร้างโปรเจกต์
  2. เพิ่มสภาพแวดล้อมโดยมี {{DEEPSEEK_API_KEY}} จัดเก็บเป็นตัวแปรลับ
  3. บันทึกคำขอ POST ไปยัง {{BASE_URL}}/chat/completions พร้อมส่วนหัว Authorization: Bearer {{DEEPSEEK_API_KEY}}
  4. กำหนดพารามิเตอร์ model และ thinking_mode เพื่อให้คุณสามารถทำ A/B Test ระหว่างรุ่นต่างๆ ได้โดยไม่ต้องทำซ้ำคำขอ
  5. ใช้โปรแกรมดูการตอบกลับเพื่อตรวจสอบ usage.reasoning_tokens ในทุกการรัน นั่นคือสัญญาณที่ชัดเจนที่สุดว่าคุณกำลังจ่ายเงินสำหรับโหมดการคิดที่คุณไม่จำเป็นต้องใช้หรือไม่

ทีมที่ใช้ คอลเลกชัน API GPT-5.5 ที่เข้ากันได้ใน Apidog อยู่แล้ว สามารถคัดลอก, สลับ URL หลักเป็น https://api.deepseek.com/v1, สลับรหัสโมเดล, และรันคำสั่งเปรียบเทียบระหว่างผู้ให้บริการทั้งสองได้ภายในไม่กี่นาที

การจัดการข้อผิดพลาด

รูปแบบการตอบกลับเหมือนกับ OpenAI ทุกประการ ข้อผิดพลาดที่คุณจะพบบ่อยครั้งแรก:

รหัส ความหมาย วิธีแก้ไข
400 คำขอไม่ถูกต้อง ตรวจสอบ Schema JSON โดยเฉพาะ messages และ tools
401 คีย์ไม่ถูกต้อง สร้างใหม่ที่ platform.deepseek.com
402 ยอดเงินไม่เพียงพอ เติมเงินในบัญชี
403 ไม่อนุญาตโมเดล ตรวจสอบขอบเขตของคีย์และการสะกดรหัสโมเดล
422 พารามิเตอร์อยู่นอกช่วง max_tokens หรือ thinking_mode อาจไม่ตรงกัน
429 เกินขีดจำกัดอัตรา รอสักครู่แล้วลองใหม่ด้วย exponential jitter
500 ข้อผิดพลาดเซิร์ฟเวอร์ ลองใหม่หนึ่งครั้ง; หากซ้ำ ให้ตรวจสอบหน้าสถานะ
503 โอเวอร์โหลด กลับไปใช้ V4-Flash หรือลองใหม่ใน 30 วินาที

ห่อหุ้มการเรียกใช้ด้วยตัวช่วยการลองใหม่ที่จัดการรหัส 429 และ 5xx ด้วย exponential backoff อย่าลองใหม่ข้อผิดพลาด 4xx โดยอัตโนมัติ; ข้อผิดพลาดเหล่านี้เป็นข้อผิดพลาดทางตรรกะ ไม่ใช่ความล้มเหลวชั่วคราว

รูปแบบการควบคุมค่าใช้จ่าย

สี่รูปแบบนี้ช่วยให้ค่าใช้จ่ายคาดเดาได้

  1. ตั้งค่าเริ่มต้นเป็น V4-Flash. เปลี่ยนไปใช้ V4-Pro เฉพาะกับคำสั่งที่คุณวัดได้ว่าคุณภาพดีขึ้น
  2. กำหนด thinking_max ด้วยแฟล็ก. เป็นโหมดที่มีค่าใช้จ่ายสูงที่สุดอย่างมาก; ให้ใช้เฉพาะเมื่อความถูกต้องสำคัญกว่าความหน่วงเวลา
  3. จำกัด max_tokens. คำตอบส่วนใหญ่จะอยู่ใน 2,000 โทเค็นเอาต์พุต บริบท 1M มีไว้สำหรับอินพุต ไม่ใช่เอาต์พุต
  4. บันทึก usage ทุกครั้งที่เรียกใช้. ส่งจำนวนโทเค็นอินพุต, เอาต์พุต และการให้เหตุผลไปยังระบบตรวจสอบของคุณ; การแจ้งเตือนเมื่อจำนวนโทเค็นการให้เหตุผลพุ่งสูงขึ้นอย่างกะทันหันจะช่วยตรวจจับคำสั่งที่ผิดปกติได้

การย้ายข้อมูลจากโมเดล DeepSeek รุ่นเก่า

รหัสเก่า deepseek-chat และ deepseek-reasoner จะเลิกใช้งานในวันที่ 24 กรกฎาคม 2026 การย้ายข้อมูลใช้การแก้ไขเพียงหนึ่งบรรทัดต่อจุดที่เรียกใช้; รูปแบบคำขอและการตอบกลับไม่เปลี่ยนแปลง

-  model="deepseek-chat"
+  model="deepseek-v4-pro"

ก่อนที่จะนำไปใช้งานจริง ให้ทำการเปรียบเทียบ A/B แบบคู่ขนานใน Apidog คุณภาพการตอบกลับที่ดีขึ้นมักจะเป็นรางวัลของการเปลี่ยน; ไม่ว่าจะอย่างไร กำหนดเส้นตายการเลิกใช้งานก็บังคับให้ต้องเปลี่ยนอยู่ดี

คำถามที่พบบ่อย

API ของ DeepSeek V4 พร้อมใช้งานในระดับ Production หรือไม่? พร้อมแล้ว API เปิดใช้งานในวันที่ 23 เมษายน 2026 พร้อมกับน้ำหนักโมเดล DeepSeek V3 และ V3.2 ทำงานบนโครงสร้างพื้นฐานเดียวกันในระดับใหญ่มานานกว่าหนึ่งปี ดังนั้นพื้นผิว API จึงมีความสมบูรณ์

V4 รองรับรูปแบบข้อความของ Anthropic หรือไม่? รองรับได้ ชี้ไปที่ https://api.deepseek.com/anthropic/v1/messages และส่งข้อมูลในรูปแบบ Anthropic ทั้งสองรูปแบบจะเรียกใช้โมเดลพื้นฐานเดียวกัน

บริบท (context window) คืออะไร? 1 ล้านโทเค็นสำหรับทั้ง V4-Pro และ V4-Flash โปรดทราบว่าโหมด Think Max แนะนำให้ใช้บริบทการทำงานขั้นต่ำ 384K

ฉันจะนับโทเค็นอินพุตก่อนส่งได้อย่างไร? ใช้ OpenAI tokenizer มาตรฐานสำหรับการประมาณค่า; DeepSeek จะเผยแพร่จำนวนที่แน่นอนในบล็อก usage ของทุกการตอบกลับ สำหรับการกำหนดงบประมาณในการใช้งานจริง ให้เชื่อถือจำนวนที่ได้รับจากการตอบกลับ

ฉันสามารถ Fine-tune ผ่าน API ได้หรือไม่? ยังไม่ได้ในตอนเปิดตัว การ Fine-tune ปัจจุบันดำเนินการผ่าน Base checkpoints ที่โฮสต์ด้วยตนเองบน Hugging Face

API มีให้ทดลองใช้ฟรีหรือไม่? ไม่มีแพ็คเกจฟรีในระดับบัญชี แต่ผู้สมัครใหม่บางครั้งอาจได้รับเครดิตทดลองใช้

ฝึกการออกแบบ API แบบ Design-first ใน Apidog

ค้นพบวิธีที่ง่ายขึ้นในการสร้างและใช้ API