מודלים

Mistral: Codestral 2508 (batch)

Markdown · JSON

Mistral: Codestral 2508 (batch)

Codestral 2508 הוא מודל הטקסט של Mistral AI ליצירת קוד ולהשלמה המתחשבת בהקשר. הוא מותאם למשימות תכופות בעורך, ובהן השלמת קוד באמצע ועריכות מרובות שורות, עם הקשר של 128k לפי היצרן ויכולות מתועדות של שיחה, פלט מובנה וכלים.

על המודל

התיאור הזה מציג את יכולות המודל. הקלט, הפלט והאפשרויות הזמינים ב-Ailoot מפורטים בהמשך לפי השיטה שנבחרה.

Codestral 2508 הוא מודל התכנות של Mistral AI למשימות השלמה ויצירה תכופות הרגישות לזמן תגובה. הוא מקבל קוד מקור ודרישות טקסטואליות ומחזיר טקסט שיכול להכיל מימוש, השלמה, תיקון או הסבר. מהדורת 2508 הנקובה בשם מתמקדת בהקשר העריכה הנוכחי של המפתח; היא אינה מודל הטמעות או סוכן מלא למאגר קוד בפני עצמה.

השלמת קוד ועדכון 2508

היצרן מייעד את Codestral להשלמה באמצע קוד ולעריכה מרובת שורות. תיאור הגרסה כולל שיפורים בהתנהגות ההשלמה, לרבות צמצום יצירה הנמשכת ללא שליטה, לצד שיפורים בהיצמדות להוראות ובמשימות קוד במצב שיחה. אלה שינויים במהדורה זו של Codestral; יכולות האחזור והסוכן האוטונומי במערך התכנות הסובב שייכות לרכיבים נפרדים בעלי שמות משלהם.

למשימת השלמה, שמרו את חתימת הפונקציה, את ההצהרות ואת הקשר הקריאה הרלוונטיים יחד עם מיקום הסמן. ציינו אם התוצאה הרצויה היא רק הקוד החסר או פונקציה מתוקנת שלמה. בקשה בסגנון עורך יכולה לבקש גוף לולאה השומר על טיפוס ההחזרה הקיים, משמר ערכים כפולים ואינו משנה את קלט הקוד הקורא. כך יש לתוצאה נקודת הוספה מוחשית והתנהגות מוגדרת.

הכנה להשלמה באמצע

בממשק FIM של היצרן, ההנחיה מספקת טקסט או קוד להשלמה, וסיומת אופציונלית מספקת את החומר שאחרי הפער. כאשר שניהם מסופקים, המודל ממלא את הרווח שביניהם. ללא סיומת, הוא ממשיך מההנחיה. הדבר שונה מבקשת שיחה רגילה המבקשת שינוי קוד והסבר; כל אופן הכנה מגדיר חוזה פלט אחר.

קלט שימושי להשלמת פער כולל את תחילת הפונקציה, את הקוד שחייב לבוא אחרי ההוספה ואת הגדרות הטיפוסים או פונקציות העזר הרלוונטיות. שמרו על הזחות ומפרידים כדי שהטקסט המוחזר יוכל להשתלב בקטע הקיים. אם המשימה דורשת רק את הגוף החסר, בקשו אותו במקום שכתוב של כל הקובץ. שאלת שיחה נפרדת יכולה להסביר מדוע הקטע שהושלם עומד בדרישה.

תיעוד FIM הרשמי מאפשר תקציב אסימוני פלט ומחייב שההנחיה יחד עם תקציב זה יישארו בתוך הקשר המודל. הוא מתעד גם רצפי עצירה והזרמת התוכן שנוצר. בחרו תהליך השלמה כאשר התוצאה חייבת להשתלב בפער בקוד, ותהליך שיחה כאשר המשימה מבקשת קוד יחד עם הסבר.

הקשר ויכולות תומכות

עמוד המודל מציין חלון הקשר של 128k. השתמשו בהקשר כדי לשמר את המקור ואת ההצהרות הקובעים את השינוי המיועד, תוך הגדרה מפורשת של משימת העריכה עצמה. לבקשת תיקון באג, ספקו את הפונקציה המושפעת, קלט מוחשי שנכשל, את התוצאה הצפויה ואת השגיאה או ההתנהגות שנצפתה. בקשו את התיקון המוצע בנפרד מההסבר ומהדוגמאות.

העמוד מציין גם פלטים מובנים, קריאה לפונקציות, פלטים חזויים, מענה לשאלות על מסמכים, קידומות תשובה ועיבוד באצוות לצד יכולות השיחה ו־FIM. לתוצאת סקירת קוד מובנית, הגדירו שדות כגון הסמל המושפע, חוסר ההתאמה שנצפה, השינוי המוצע וההנחה שעדיין דורשת הבהרה. הנחיות הפלט המובנה של Mistral מבחינות בין מצב JSON לסכימה מותאמת אישית, כאשר פורמט ה־JSON הרצוי מצוין בהנחיה.

פלטים חזויים מיועדים לתוכן שבו חלקים ניכרים מהתשובה כבר ידועים. אפשר להשתמש בהם ביצירה מחדש של מסמך או קובץ קוד עם עריכה מוגבלת, תוך שמירה על שאר התוכן. ציינו את השינוי המדויק ואת החומר שחייב להישאר. קידומת תשובה, לעומת זאת, מספקת התחלה ידועה שממנה היצירה נמשכת; היא נבדלת הן מגוף מלא ידוע והן מסיומת FIM.

שאלת תיעוד יכולה להשתמש בתהליך עיבוד המסמכים של היצרן כדי להכין טקסט ומבנה באמצעות OCR לפני ניתוח מודל השפה. לחומר תכנות שכבר זמין כטקסט, ספקו את קטעי התיעוד הרלוונטיים ושאלו איזה תנאי קובע את המימוש. שמרו כל דרישה שחולצה משויכת לסעיף המקור שלה, כדי שהקוד או ההסבר שנוצרו יישארו קשורים למפרט שסופק.

כלים ותוצאות מעשיות

קריאה לפונקציות מאפשרת ליישום לספק פעולות מתוארות ואת הפרמטרים שלהן. המודל מכין קריאה, היישום מבצע אותה והתוצאה המוחזרת נעשית הקשר לתשובה הבאה. עוזר קוד יכול לקבל תוצאת חיפוש או חישוב במחזור הזה, אך הידור, בדיקה או החלה של שינוי מוצע עדיין דורשים את סביבת הפיתוח הסובבת.

לתיקון מעשי, הגדירו את הממשק הציבורי שחייב לשמור על תאימות ובקשו את הקטע המתוקן, הסבר תמציתי ודוגמאות קלט עם פלטים צפויים. לפונקציה שנוצרת, ציינו את הטיפוסים המתקבלים ואת תנאי הקצה. להסבר, ספקו את הקלט שיש לעקוב אחריו, כדי שהתשובה תקשר בין מסלול ביצוע מוחשי לערך המוחזר.

Codestral מפיק טקסט. הוא אינו יורש וקטורים לחיפוש קוד מ־Codestral Embed, אוטומציה של מאגר קוד מ־Devstral או יצירת תמונות ממודל חזותי. עמוד המודל המדויק של 2508 אינו מפרסם מספר פרמטרים או אורך תשובה מרבי עצמאי שאפשר לשאול מגרסה אחרת. שמרו על המהדורה הנקובה בשם, על הקשר התכנות ועל התוצר הדרוש בהכנת תהליך חוזר בעורך או בשיחה.

Ailoot Ultra · Batch POST /v1/batches mistralai/codestral-2508:batch

mistralai/codestral-2508:batch

Mistral /mistralai/codestral-2508:batch

התחלה

Codestral 2508 הוא מודל הטקסט של Mistral AI ליצירת קוד ולהשלמה המתחשבת בהקשר. הוא מותאם למשימות תכופות בעורך, ובהן השלמת קוד באמצע ועריכות מרובות שורות, עם הקשר של 128k לפי היצרן ויכולות מתועדות של שיחה, פלט מובנה וכלים.

סוגי קלט נתמכים
טקסט
תוצאות
טקסט

זמין ב-Ailoot · קלט ושיטות

Ailoot Ultra · Batch POST /v1/batches
סוגי קלט
text
סוגי פלט
text
פורמט פלט
JSON מוטמע מתוך results[].response.body
שדהסוגדרישהערכים ומגבלותברירת מחדל
שדהendpointסוגstringדרישהחובהערכים ומגבלות
/v1/chat/completions
ברירת מחדל—
שדהmodelסוגstringדרישהחובהערכים ומגבלות
mistralai/codestral-2508:batch
ברירת מחדל—
שדהrequestsסוגbatch_item[]דרישהחובהערכים ומגבלות
מספר פריטים מזערי: ⁦1⁩
ברירת מחדל—
שדהrequests[].custom_idסוגstringדרישהחובהערכים ומגבלותברירת מחדל—
שדהrequests[].body.messagesסוגmessage[]דרישהחובהערכים ומגבלותברירת מחדל—
שדהcompletion_windowסוגstringדרישהרשותערכים ומגבלות
24h
ברירת מחדל—
שדהproviderסוגobject|nullדרישהרשותערכים ומגבלותברירת מחדל—
שדהrequests[].body.modelסוגstringדרישהרשותערכים ומגבלות
mistralai/codestral-2508:batch, mistralai/codestral-2508
ברירת מחדל—
שדהprovider.onlyסוגstring[]דרישהרשותערכים ומגבלות
mistral
ברירת מחדל—
שדהprovider.allow_fallbacksסוגboolean|nullדרישהרשותערכים ומגבלות
false, null
ברירת מחדל—
פרמטרים ומחזור חיים של השיטה
פרמטרמפרט
פרמטרcontent_typeמפרטapplication/json
פרמטרrequiredמפרטendpoint, model, requests
פרמטרmaterial_typesמפרטtext
פרמטרrepresentationמפרטrequests[] מוטמעים; לכל פריט יש custom_id ו־body
פרמטרrequest_endpoint_profileמפרט/v1/chat/completions
פרמטרfile_materialמפרטהגורם הקורא רשאי לקרוא מקומית תוכן JSONL אמיתי בקידוד UTF-8 לתוך requests[]. לא נעשה שימוש בשדה purpose להעלאה, ב־input_file_id או בהפניה לקובץ. חומר לקוח חסר או ריק עוצר את ההכנה לפני POST.
פרמטרserialization_orderמפרטendpoint, model, provider (אם צוין), completion_window (אם צוין), requests בסוף
פרמטרoptional_controlsמפרטprovider.only, provider.allow_fallbacks, completion_window
פרמטרschema_scopeמפרטגופי בקשות טקסט של Chat Completions במעטפת Batch המוטמעת המתועדת.

מחזור חיים: asynchronous

GET /v1/batches/{operation_id} · ערך response.id מבקשת היצירה המקורית שהוחזר בפועל; אותם משתמש/מפתח/קבוצה

תעריפים

מידע תעריפים אינו מוסיף אפשרויות לבקשה. הפרמטרים הנתמכים מפורטים בשיטה שנבחרה.

מצב מהיר
לא צוין כאשר נבחר מצב מהיר
מצב Flex
לא צוין כאשר נבחר מצב flex
מאמץ חשיבה מרבי
לא צוין כאשר מאמץ החשיבה המרבי משתמש בהתאמת ברירת המחדל (default)
תמחור מטמון מפורש
לא מופעל כאשר מתבקש מטמון מפורש

תעריפי Ailoot

מחירים לפי תצורה

התאימו כל חיוב לתנאים המוצגים. השתמשו בתעריף אחד לכל קבוצה של תצורות חלופיות.

תצורהטבלת תעריפיםטוקנים בהקשר, יותר מ-טוקנים בהקשר, עד וכוללחיוב
תצורהתעריפי הבסיס לטוקניםטבלת תעריפיםתעריף בסיסטוקנים בהקשר, יותר מ-—טוקנים בהקשר, עד וכוללללא גבול עליוןחיוב
קלט · טוקני קלט $0.0003 / 1K טוקנים
פלט · טוקני פלט $0.0009 / 1K טוקנים
קלט · קריאה מהמטמון $0.00003 / 1K טוקנים
קלט · כתיבה למטמון — / 1K טוקנים
קלט · כתיבה למטמון, 1 שעה — / 1K טוקנים
תצורהרמת אורך בקשה 1טבלת תעריפים—טוקנים בהקשר, יותר מ-⁦0⁩טוקנים בהקשר, עד וכוללללא גבול עליוןחיוב
קלט · טוקני קלט $0.0003 / 1K טוקנים
פלט · טוקני פלט $0.0009 / 1K טוקנים
קלט · קריאה מהמטמון $0.00003 / 1K טוקנים
קלט · כתיבה למטמון — / 1K טוקנים
קלט · כתיבה למטמון, 1 שעה — / 1K טוקנים

לפני הבקשה Ailoot משריינת סכום משוער. לאחר קבלת התוצאה היא מסדירה את החיוב הסופי לפי השימוש המדוד. הסדרת חיוב בהזרמה משתמשת ברשומת השימוש הסופית. איך פועלים שריון הסכום והסדרת החיוב →

דוגמאות לבקשות

Ailoot Ultra · Batch

curl · דוגמת הבדיקה שנשמרהPython HTTP · JSONL אמיתי של הלקוחPython · שמרו כל תוצאה שהושלמה
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json
from pathlib import Path
body=json.loads('{"endpoint":"/v1/chat/completions","model":"mistralai/codestral-2508:batch","requests":[{"custom_id":"req-0001","body":{"messages":[{"role":"user","content":"Hello!"}],"max_tokens":16}}]}')
Path("batch-request.json").write_text(json.dumps(body,ensure_ascii=False),encoding="utf-8")
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/batches \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @batch-request.json -D batch-response-headers.txt -o batch-create-response.json
import json, os
from pathlib import Path
from urllib.request import Request, urlopen

def prepare_requests(customer_path):
    path = Path(customer_path)
    if not path.is_file(): raise ValueError("Customer JSONL file is missing")
    items = [json.loads(line) for line in path.read_text(encoding="utf-8").splitlines() if line.strip()]
    if not items: raise ValueError("Customer JSONL contains no requests")
    ids = set()
    for item in items:
        if set(item) != {"custom_id", "body"}: raise ValueError("Each item needs custom_id and body")
        cid = item["custom_id"]
        if not isinstance(cid, str) or not cid.strip() or cid in ids: raise ValueError("custom_id must be nonempty and unique")
        ids.add(cid)
        if not isinstance(item["body"], dict) or not item["body"].get("messages"): raise ValueError("Supply actual text messages")
        supplied_model = item["body"].get("model")
        if supplied_model is not None and supplied_model not in ['mistralai/codestral-2508:batch', 'mistralai/codestral-2508']: raise ValueError("body.model must be an exact documented caller or wire ID")
    return {"endpoint":"/v1/chat/completions", "model":"mistralai/codestral-2508:batch", "requests":items}

if __name__ == "__main__":
    material = os.environ.get("AILOOT_BATCH_REQUESTS_JSONL", "")
    if not material: raise SystemExit("Set AILOOT_BATCH_REQUESTS_JSONL to your actual customer file")
    body = prepare_requests(material)
    key = os.environ.get("AILOOT_API_KEY", "")
    if not key: raise SystemExit("Set AILOOT_API_KEY")
    request = Request("https://api.ailoot.ai/v1/batches", data=json.dumps(body, ensure_ascii=False).encode("utf-8"), headers={"Authorization":"Bearer " + key, "Content-Type":"application/json"}, method="POST")
    with urlopen(request) as response:
        raw = response.read()
        Path("batch-create-response.json").write_bytes(raw)
        print(raw.decode("utf-8"))
import json
from pathlib import Path
raw = Path("batch-status-response.json").read_bytes()
response = json.loads(raw)
if response.get("status") != "completed":
    raise SystemExit("Keep the original operation; read its status without resubmitting")
results = response.get("results")
if not isinstance(results, list) or not results:
    raise SystemExit("Preserve the original response; completed results are missing")
Path("batch-results.jsonl").write_text("".join(json.dumps(item, ensure_ascii=False) + "\n" for item in results), encoding="utf-8")
# Preserve batch-status-response.json with aggregate usage and every result/error.

קבלה ושמירה של תוצאות

Ailoot Ultra · Batch

JSON מוטמע מתוך results[].response.body

  • GET /v1/batches/{operation_id}
בדיקת מצב המשימה
curl · מצב הפעולה המקורית
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
BATCH_OPERATION_ID="$(python3 - <<'PY_ID'
import json
from pathlib import Path
from urllib.parse import quote
response = json.loads(Path("batch-create-response.json").read_text(encoding="utf-8"))
operation = response.get("id")
if not isinstance(operation, str) or not operation: raise SystemExit("No actual original operation ID; preserve the response and do not resubmit")
print(quote(operation, safe=""))
PY_ID
)"
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/batches/$BATCH_OPERATION_ID" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o batch-status-response.json
שמירת כל התוצאות שהושלמו

שמרו כל תגובה מלאה, קובץ ומקטע תוכן שהוחזרו.

שמרו את JSON הסטטוס המקורי במלואו, כל תוצאה/custom_id ואת גוף התשובה או השגיאה המלא. שמרו את results[] שהושלמו כ־JSONL ללא סינון.

כשצריך לבדוק את התגובה המקורית

שמרו את מזהה הפעולה המקורי. לתשובת 503 result_pending_check יש X-Should-Retry:false; לעולם אל תשלחו מחדש אצווה מקורית שתוצאתה אינה ידועה.

שדות התגובה
שדהסוג
שדהresults[].custom_idסוגstring
שדהresults[].response.body.choices[].message.contentסוגstring|null
שדהresults[].errorסוגobject|null
שדהusageסוגobject|null
שדהidסוגstring
שדהmodelסוגstring
שדהendpointסוגstring
שדהstatusסוגstring
שדהrequest_countsסוגobject
שדהresults[].idסוגstring
שדהresults[].response.status_codeסוגinteger
שדהresults[].response.request_idסוגstring
שגיאות והשלבים הבאים
תגובהתנאיהשלב הבא
תגובה⁦400⁩ · invalid_request_errorתנאימעטפת מוטמעת מתועדת לא תקינה, מפתחות כפולים, זהות פריט לא תקינה או סתירה ביכולות המודל שהוגדרו.השלב הבאתקנו את השדות שצוינו לפני כל שליחה חדשה.
תגובה⁦401⁩ · authentication_errorתנאימפתח API לא תקין.השלב הבאהשתמשו במפתח Ailoot המורשה.
תגובה⁦403⁩ · permission_errorתנאיקבוצת Batch אינה זמינה.השלב הבאבדקו את הרשאות המפתח/הקבוצה.
תגובה⁦422⁩ · invalid_request_errorתנאיBatch מחויב מהיתרה; יצירה בחיוב מנוי נדחית.השלב הבאהשתמשו בקבוצה המורשית שהחיוב שלה מנוכה מהיתרה.
תגובה⁦422⁩ · price_unavailableתנאילא ניתן לחשב הצעת מחיר לקלט Batch.השלב הבאשמרו את התשובה; השתמשו בקלט המתועד למשפחת ה־API.
תגובה⁦402⁩ · billing_errorתנאיהסכום לשריון עבור Batch אינו זמין.השלב הבאפתרו את הבעיה המונעת את קבלת הבקשה לפני שליחת בקשה חדשה.
תגובה⁦503⁩ · price_unavailableתנאיהמחיר לשיטת Batch או התעריפים המקוריים אינם זמינים.השלב הבאשמרו את התשובה; אל תחליפו את המחירים.
תגובה⁦503⁩ · api_errorתנאינתיב הספק המדויק אינו זמין.השלב הבאשמרו את התשובה לצורך תיקון נתיב הניתוב.
תגובה⁦503⁩ · result_pending_checkתנאיהתוצאה המקורית דורשת בדיקה; X-Should-Retry:false.השלב הבאשמרו את operation_id/id המקורי וקראו את הסטטוס שלו; לעולם אל תחזרו על ה־POST המקורי.
תגובה⁦404⁩ · not_foundתנאיהפעולה לבדיקת סטטוס Batch אינה קיימת או שייכת לזהות אחרת.השלב הבאהשתמשו בערך id המקורי המדויק ובאותם משתמש/מפתח/קבוצה.

כינויים

כינויים למודל

Ailoot Ultra mistralai/codestral-2508:batch

כינויים לנתיבי שיטות

השתמשו בנתיבי השיטות המוצגים למעלה.

מזהי מודלים קשורים IDs

mistralai/codestral-2508:batch

FAQ · Mistral: Codestral 2508 (batch)
אילו קלטים ותוצאות זמינים?

POST /v1/batches · mistralai/codestral-2508:batch: text → text

באילו שדות הבקשה משתמשת?

POST /v1/batches · mistralai/codestral-2508:batch: endpoint, model, requests, completion_window, provider

אילו מגבלות חלות?

POST /v1/batches · mistralai/codestral-2508:batch: requests.min_items: 1

פרטים נוספים

חברו Ailoot ל- Claude Code, OpenCode, Hermes או ליישום שלכם.

החברה ופורטפוליו הפרויקטים שלה

החברה ופורטפוליו הפרויקטים שלה: מיליוני לקוחות; מכירות בהיקף של מיליארדים מדי חודש.

קנו אסימונים בהנחה.

הנחת מנוי לעבודה קבועה. קודי הנחה עד 50% על רכישת אסימונים.

מנוי
בחרו מסלול עם הנחה לבקשות הקבועות שלכם.
קוד הנחה עד 50%
הזינו קוד ברכישה. המחיר יחושב מחדש לפי המבצע הפעיל.
הוצאות בהיסטוריה
המודל, האסימונים והסכום נשמרים לכל בקשה.

בחירת מנוי · מחירי מודלים

חברו API למוצר שאתם מוכרים.

SaaS, יישומים ובוטים לפי ההצעה והסכם הרישוי של Ailoot. למכירה מחדש בקשו רישיון משווק.

יישום מסחרי
שלבו יצירת טקסט, תמונות, וידאו ושמע בתכונות בתשלום של השירות שלכם.
רישיון למכירה מחדש
שלחו תיאור פרויקט ואופן מתן גישה. בקשו תנאי שימוש ומכירה מחדש בכתב.
מסמכים באתר
ההצעה, הסכם הרישוי ומדיניות עיבוד הנתונים זמינים לפני החיבור.

בקשת רישיון למכירה מחדש · ההצעה והסכם הרישוי