DeepSeek: DeepSeek V3.1
DeepSeek V3.1 הוא מודל טקסט היברידי עם מצבי חשיבה ותשובה ישירה במהדורה אחת. הקשר של 128K ופרופיל שימוש משופר בכלים תומכים בתכנות, בניתוח מסמכים ובחיפוש שמספק היישום, כאשר התוצאה היא טקסט או קריאות מוצעות לכלים.
על המודל
התיאור הזה מציג את יכולות המודל. הקלט, הפלט והאפשרויות הזמינים ב-Ailoot מפורטים בהמשך לפי השיטה שנבחרה.
DeepSeek V3.1 הוא מודל הטקסט ההיברידי של DeepSeek: אותה מהדורה בעלת שם תומכת בתשובות עם חשיבה וללא חשיבה באמצעות הגדרות שונות של תבנית השיחה. היצרן מדגיש שימוש משופר בכלים, משימות סוכנים ויעילות הסקה ביחס למודל הקודם שלו. הוא מקבל הוראות כתובות והקשר טקסטואלי ומייצר תשובה, קוד או תוכן קריאה לכלי. זהותו של V3.1 המקורי נפרדת מ-Terminus, מ-V3.2 וממשפחת V4.
כרטיס המודל מציין 671 מיליארד פרמטרים בסך הכול, 37 מיליארד פרמטרים פעילים והקשר של 128K הן למהדורת הבסיס והן למהדורה שאחרי האימון המשלים. V3.1 מבוסס על בסיס V3 המקורי עם אימון מורחב על מסמכים ארוכים לפני האימון המשלים. מבנה תערובת המומחים והקשב הסמוי שלו ממשיך את ארכיטקטורת V3. עובדות תכנון אלה מסבירות את פרופיל הטקסט בעל ההקשר הארוך, בלי להפוך את נתון ההקשר למפרט נפרד של פלט מרבי.
מצב ללא חשיבה מכין תשובה ישירה, ואילו מצב חשיבה מתחיל שלב הסקה לפני התשובה. תבנית היצרן משתמשת בסמן סגירת חשיבה לתשובות ישירות ובסמן פתיחת חשיבה לסבב ההסקה הנוכחי. בשיחה מרובת סבבים, תוכן הסקה קודם מושמט בעוד שהתשובות הסופיות וסמן הסגירה נשארים בהקשר. זהו כלל ההיסטוריה של V3.1 המקורי, הנבדל מהכלל המאוחר של V3.2 המשמר הסקה לאורך הודעות הקשורות לכלים.
קריאה רגילה לכלים מתועדת במצב ללא חשיבה. היישום מספק שמות פונקציות, תיאורים וסכמות פרמטרים; המודל מחזיר שם כלי שנבחר וארגומנטים ב-JSON בייצוג הקריאה לכלי של היצרן. היישום מבצע את הפעולה ומחזיר את תוצאתה. הגדירו לכלים מטרות מסוימות ושמרו את התצפית שהוחזרה מקושרת לקריאה, כדי שלשלב הבא של המודל תהיה ראיה במקום הנחה שפעולה התרחשה.
חיפוש במצב חשיבה משתמש בפורמט נפרד וייעודי של סוכן חיפוש. DeepSeek מתעדת כלי חיפוש שמספק המשתמש לשאלות הדורשות מידע חיצוני או עדכני, עם קריאות ותצפיות חוזרות לאורך כמה סבבים. לכן חיפוש הוא חלק מתהליך העבודה הסובב, ולא טענה שתשובת טקסט גלשה ברשת באופן עצמאי. הגדירו את השאלה, את הקריטריונים למקורות ואת התשובה הסופית הדרושה לכם לפני תחילת משימת החיפוש.
בתכנות, ספקו את הקטע או הקבצים הרלוונטיים, את ההתנהגות שנצפתה, את ההתנהגות הצפויה ואת האילוצים שיש לשמר. תדריך לדוגמה הוא: ״זהו את הגורם לכשל הזה עבור הקלט שסופק, הציעו תיקון ממוקד והסבירו את התנאי שבו השינוי מטפל.״ במשימת מסמכים, סמנו חלקי מקור ובקשו השוואה לדרישות מפורשות. דרשו שהתשובה הסופית תבחין בין מסקנה הנתמכת במקור לבין פעולת המשך מוצעת.
היצרן מאמן את V3.1 באמצעות פורמט סולם UE8M0 FP8 למשקולות ולאקטיבציות. המלצותיו לשימוש מקומי מזהות גם פרמטרים הרגישים לדיוק שיש לטפל בהם כראוי. אלה מאפייני מימוש הייחוס שפרסם היצרן, ולא טענה לגבי הדיוק או המימוש שנבחרו בכל יישום. נגזרת, גרסה מכומתת וגרסת המודל השמורה המאוחרת Terminus נשארות אפשרויות נפרדות מהמהדורה המקורית בעלת השם V3.1.
הכינו עבודה ארוכה יותר עם שאלה ברורה, סימוני מקורות ותוצר סופי מוגדר. תקצבו שיחה, טקסט מקור, הסקה ופלט בתוך ההקשר המתועד ושמרו רק ראיות רלוונטיות כשהמשימה גדלה. לסוכן, הגדירו את הפעולות המותרות ואת הקריטריון המסמן שהתוצאה הושלמה. התוצר המועיל הוא תשובה טקסטואלית שניתנת לבדיקה, הצעת קוד או ניתוח הנתמך במקורות, המקושרים לקלט ולתצפיות שהיישום החזיר בפועל.
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions deepseek-v3.1-thinking
deepseek-v3.1-thinkingהתחלה
DeepSeek V3.1 הוא מודל טקסט היברידי עם מצבי חשיבה ותשובה ישירה במהדורה אחת. הקשר של 128K ופרופיל שימוש משופר בכלים תומכים בתכנות, בניתוח מסמכים ובחיפוש שמספק היישום, כאשר התוצאה היא טקסט או קריאות מוצעות לכלים.
- סוגי קלט נתמכים
- טקסט
- תוצאות
- טקסט
זמין ב-Ailoot · קלט ושיטות
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
- סוגי קלט
text- סוגי פלט
text- פורמט פלט
- json או SSE
| שדה | סוג | דרישה | ערכים ומגבלות | ברירת מחדל |
|---|---|---|---|---|
שדהmodel | סוגstring | דרישהחובה | ערכים ומגבלות deepseek-v3.1-thinking | ברירת מחדל— |
שדהmessages | סוגmessage[] | דרישהחובה | ערכים ומגבלות מספר פריטים מזערי: 1 | ברירת מחדל— |
שדהmessages[].role | סוגstring | דרישהחובה | ערכים ומגבלות תלוי במודל | ברירת מחדל— |
שדהmessages[].content | סוגstring | דרישהרשות | ערכים ומגבלות חל כאשר: שיחת טקסט | ברירת מחדל— |
שדהstream | סוגboolean | דרישהרשות | ערכים ומגבלות | ברירת מחדלfalse |
שילובים של חומרי קלט
טקסט · טקסט UTF8
messages[].content
פרמטרים ומחזור חיים של השיטה
| פרמטר | מפרט |
|---|---|
פרמטרcontent_type | מפרטapplication/json |
פרמטרrequired | מפרטmodel, messages |
פרמטרmaterial_types | מפרטtext |
פרמטרmessages | מפרטמערך הודעות במבנה role/content |
פרמטרfile_material | מפרטמסמך UTF-8 בפועל מוכנס כטקסט מילולי; לא מוסק מזהה קובץ |
פרמטרoptional_controls | מפרטstream |
פרמטרcontrol_scope | מפרטשיחת טקסט; stream הוא ערך בוליאני וברירת המחדל שלו היא false. |
פרמטרoutput_modalities | מפרטtext |
פרמטרhosted_operations | מפרטfalse |
פרמטרmultimodal_input_binding | מפרטnull |
כינויים לשיטה: /chat/completions
מחזור חיים: synchronous_or_streamed
שלחו את מזהה המודל המדויק עם messages.
אורך ההקשר אינו תקרת פלט.
קובץ טקסט יכול לספק טקסט מילולי; קלטי תמונה/אודיו/אובייקט קובץ דורשים קישור מדויק.
תעריפים
מידע תעריפים אינו מוסיף אפשרויות לבקשה. הפרמטרים הנתמכים מפורטים בשיטה שנבחרה.
- מצב מהיר
- לא צוין כאשר נבחר מצב מהיר
- מצב Flex
- לא צוין כאשר נבחר מצב flex
- מאמץ חשיבה מרבי
- לא צוין כאשר מאמץ החשיבה המרבי משתמש בהתאמת ברירת המחדל (default)
תעריפי Ailoot
מחירים לפי תצורה
| תצורה | טבלת תעריפים | חיוב |
|---|---|---|
| תצורהתעריפי הבסיס לטוקנים | טבלת תעריפיםתעריף בסיס | חיוב קלט · טוקני קלט $0.000572 / 1K טוקנים פלט · טוקני פלט $0.0023 / 1K טוקנים קלט · קריאה מהמטמון $0 / 1K טוקנים קלט · כתיבה למטמון $0 / 1K טוקנים קלט · כתיבה למטמון, 1 שעה — / 1K טוקנים |
לפני הבקשה Ailoot משריינת סכום משוער. לאחר קבלת התוצאה היא מסדירה את החיוב הסופי לפי השימוש המדוד. הסדרת חיוב בהזרמה משתמשת ברשומת השימוש הסופית. איך פועלים שריון הסכום והסדרת החיוב →
דוגמאות לבקשות
Ailoot Ultra · OpenAI Chat
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model":"deepseek-v3.1-thinking","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="deepseek-v3.1-thinking", 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"))
קבלה ושמירה של תוצאות
Ailoot Ultra · OpenAI Chat
json או SSE
שמירת כל התוצאות שהושלמו
שמרו כל תגובה מלאה, קובץ ומקטע תוכן שהוחזרו.
שמרו כל בחירה ואת התוכן, קריאות הכלים וההנמקה שלה. ב-SSE הרכיבו עדכונים לפי אינדקס הבחירה/הכלי ושמרו את סיבת הסיום הסופית ואת השימוש.
כשצריך לבדוק את התגובה המקורית
שמרו מזהי בקשות/תגובות וכותרות. לא מסופק URL כללי לאחזור משימת טקסט.
שדות התגובה
| שדה | סוג |
|---|---|
שדהchoices[].index | סוגinteger |
שדהchoices[].message.content | סוגstring|null |
שדהchoices[].message.tool_calls | סוגtool_call[] |
שדהchoices[].message.reasoning_content | סוגstring |
שדהchoices[].message.reasoning_details | סוגobject|array |
שדהchoices[].finish_reason | סוגstring|null |
שדהusage | סוגobject |
שגיאות והשלבים הבאים
| תגובה | תנאי | השלב הבא |
|---|---|---|
תגובה400 · invalid_request_error | תנאישדות נדרשים, ייצוג חומר או ערך פרמטר שאינם תקינים | השלב הבאתקנו את השדות שצוינו לפני בקשת יצירה חדשה. |
כינויים
כינויים למודל
Ailoot Ultra deepseek-v3.1-thinking
כינויים לנתיבי שיטות
/chat/completions
מזהי מודלים קשורים IDs
FAQ · DeepSeek: DeepSeek V3.1
- אילו קלטים ותוצאות זמינים?
POST /v1/chat/completions·deepseek-v3.1-thinking:text→text- באילו שדות הבקשה משתמשת?
POST /v1/chat/completions·deepseek-v3.1-thinking:model,messages,stream- אילו מגבלות חלות?
POST /v1/chat/completions·deepseek-v3.1-thinking:messages.min_items:1