מודלים

NVIDIA: Nemotron 3 Ultra

Markdown · JSON

NVIDIA: Nemotron 3 Ultra

Nemotron 3 Ultra הוא מודל ההנמקה הטקסטואלית והתזמור של NVIDIA, עם 55B פרמטרים פעילים מתוך 550B בסך הכול. ארכיטקטורת Transformer–Mamba ההיברידית שלו מיועדת לעבודת סוכנים ממושכת, לתכנות ולמחקר, עם קריאות לכלים ותוצאות המותאמות לסכמה.

על המודל

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

Nemotron 3 Ultra הוא מודל ההנמקה והתזמור הפתוח של NVIDIA לעבודה ממושכת מרובת שלבים. הוא משלב ארכיטקטורת Transformer–Mamba היברידית עם תערובת מומחים ומפעיל 55 מיליארד פרמטרים מתוך 550 מיליארד בסך הכול. הקלט והפלט הם טקסט. תפקידו שפורסם כולל סוכני תכנות, מחקר, תכנון ותיאום משימות יישום ארוכות יותר.

תכננו לפי תוצאה מוגדרת

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

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

כלים ותוצאות מובנות

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

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

עבודה ארוכה ותוצרים הניתנים לבדיקה

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

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

משימה מעשית

משימה מעשית

דוגמה טכנית באנגלית

Choose the next step in an incomplete workflow

Plan the next step for this software-delivery state: the patch is drafted; unit tests passed; an integration test is blocked because its fixture is missing; no deployment occurred. The outcome requires an integration-verified export. List completed evidence, the single next action and its acceptance condition, then the remaining release gate. Do not report the feature complete.

התוצאה הצפויה

A state-aware workflow note with completed evidence, next action, its expected observation and the remaining gate.

בדיקת התוצאה

The next action addresses the missing integration fixture, and unit-test success is not treated as full completion.
Ailoot · Anthropic Messages POST /v1/messages nvidia/nemotron-3-ultra-550b-a55b

nvidia/nemotron-3-ultra-550b-a55b

NVIDIA /nvidia/nemotron-3-ultra-550b-a55b

התחלה

Nemotron 3 Ultra הוא מודל ההנמקה הטקסטואלית והתזמור של NVIDIA, עם 55B פרמטרים פעילים מתוך 550B בסך הכול. ארכיטקטורת Transformer–Mamba ההיברידית שלו מיועדת לעבודת סוכנים ממושכת, לתכנות ולמחקר, עם קריאות לכלים ותוצאות המותאמות לסכמה.

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

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

Ailoot · Anthropic Messages POST /v1/messages
סוגי קלט
text
סוגי פלט
text
הקשר
⁦262,144⁩ tokens
פלט מרבי
⁦32,768⁩ tokens
פורמט פלט
json או SSE
שדהסוגדרישהערכים ומגבלותברירת מחדל
שדהmodelסוגstringדרישהחובהערכים ומגבלות
nvidia/nemotron-3-ultra-550b-a55b
ברירת מחדל—
שדהmessagesסוגmessage[]דרישהחובהערכים ומגבלות
מספר פריטים מזערי: ⁦1⁩
ברירת מחדל—
שדהmessages[].roleסוגstringדרישהחובהערכים ומגבלות
user, assistant
ברירת מחדל—
שדהmessages[].contentסוגstring|content_block[]דרישהחובהערכים ומגבלותברירת מחדל—
שדהsystemסוגstring|content_block[]דרישהרשותערכים ומגבלותברירת מחדל—
שדהmax_tokensסוגintegerדרישהחובהערכים ומגבלות
מינימום: ⁦1⁩
המגבלה חלה על: התקרה המדויקת של המודל/הכרטיס שנבחר
ברירת מחדל—
שדהstreamסוגbooleanדרישהרשותערכים ומגבלותברירת מחדלfalse
שדהtemperatureסוגnumberדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהtop_pסוגnumberדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהstop_sequencesסוגstring[]דרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהtoolsסוגtool[]דרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהtools[].nameסוגstringדרישהרשותערכים ומגבלות
חל כאשר: סופק כלי
ברירת מחדל—
שדהtools[].descriptionסוגstringדרישהרשותערכים ומגבלותברירת מחדל—
שדהtools[].input_schemaסוגJSON_schemaדרישהרשותערכים ומגבלותברירת מחדל—
שדהtool_choiceסוגobjectדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהthinking.typeסוגstringדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהthinking.budget_tokensסוגintegerדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהoutput_config.effortסוגstringדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהmetadataסוגobjectדרישהרשותערכים ומגבלותברירת מחדל—
שדהcache_controlסוגobjectדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שילובים של חומרי קלט

טקסט · טקסט UTF8

messages[].content או בלוק type=text

פרמטרים ומחזור חיים של השיטה
פרמטרמפרט
פרמטרmaterial_typesמפרטtext
פרמטרrequiredמפרטmodel, messages, max_tokens
פרמטרoptional_controlsמפרטnull
פרמטרcontent_typeמפרטapplication/json
פרמטרtext_file_materialמפרטתוכן UTF-8 בפועל מוכנס כטקסט; מזהי קבצים/URLs דורשים תמיכה נפרדת ומדויקת

מחזור חיים: exact retained published method

מבני המתודות והמזהים מדויקים; יכולת הספק נפרדת מקבלת הבקשה לביצוע.

תעריפים

תעריפי שיטות Ailoot

Ailoot Anthropic MessagesPOST /v1/messages
קלט
⁦‏0.0005 ‏$⁩ / 1K
פלט
⁦‏0.0022 ‏$⁩ / 1K
קריאה מהמטמון
⁦‏0.0001 ‏$⁩ / 1K
כתיבה למטמון
⁦‏0.0005 ‏$⁩ / 1K
כתיבה למטמון, 5 דקות
⁦‏0.0005 ‏$⁩ / 1K tokens

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

פרטי תעריף הייחוס

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

טבלאות ייחוס של המודל

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

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

תצורהטבלת תעריפיםטוקנים בהקשר, יותר מ-טוקנים בהקשר, עד וכוללחיוב
תצורהOpenAI Chat · תעריפי טוקנים בסיסייםטבלת תעריפיםתעריף בסיסטוקנים בהקשר, יותר מ-—טוקנים בהקשר, עד וכוללללא גבול עליוןחיוב
קלט · טוקני קלט $0.0012 / 1K טוקנים
פלט · טוקני פלט $0.0048 / 1K טוקנים
קלט · קריאה מהמטמון $0.00024 / 1K טוקנים
קלט · כתיבה למטמון — / 1K טוקנים
קלט · כתיבה למטמון, 1 שעה — / 1K טוקנים
תצורהOpenAI Chat · מדרגה 1 לפי אורך הבקשהטבלת תעריפים—טוקנים בהקשר, יותר מ-⁦0⁩טוקנים בהקשר, עד וכוללללא גבול עליוןחיוב
קלט · טוקני קלט $0.0012 / 1K טוקנים
פלט · טוקני פלט $0.0048 / 1K טוקנים
קלט · קריאה מהמטמון $0.00024 / 1K טוקנים
קלט · כתיבה למטמון — / 1K טוקנים
קלט · כתיבה למטמון, 1 שעה — / 1K טוקנים
תצורהAnthropic Messages · תעריפי טוקנים בסיסייםטבלת תעריפיםתעריף בסיסטוקנים בהקשר, יותר מ-—טוקנים בהקשר, עד וכוללללא גבול עליוןחיוב
קלט · טוקני קלט $0.0012 / 1K טוקנים
פלט · טוקני פלט $0.0048 / 1K טוקנים
קלט · קריאה מהמטמון $0.00024 / 1K טוקנים
קלט · כתיבה למטמון — / 1K טוקנים
קלט · כתיבה למטמון, 1 שעה — / 1K טוקנים
תצורהAnthropic Messages · מדרגה 1 לפי אורך הבקשהטבלת תעריפים—טוקנים בהקשר, יותר מ-⁦0⁩טוקנים בהקשר, עד וכוללללא גבול עליוןחיוב
קלט · טוקני קלט $0.0012 / 1K טוקנים
פלט · טוקני פלט $0.0048 / 1K טוקנים
קלט · קריאה מהמטמון $0.00024 / 1K טוקנים
קלט · כתיבה למטמון — / 1K טוקנים
קלט · כתיבה למטמון, 1 שעה — / 1K טוקנים

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

Ailoot · Anthropic Messages

דוגמת טקסטPython SDKNode.js SDKהזרמה ב-Python
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 source-material file}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "nvidia/nemotron-3-ultra-550b-a55b", "max_tokens": 1024, "messages": []}')
f=Path(os.environ["AILOOT_TEXT_FILE"])
if not f.is_file():raise SystemExit("Choose your actual UTF-8 source material")
text=f.read_text(encoding="utf-8")
if not text.strip():raise SystemExit("Source material must contain text")
p["messages"]=[{"role":"user","content":"Summarize this material and quote supporting source passages.\n\n"+text}]
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/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
print(json.dumps(json.loads(Path("result.json").read_text()),ensure_ascii=False,indent=2))
PY_RESULT
import anthropic
import os

if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client = anthropic.Anthropic(base_url="https://api.ailoot.ai", api_key=os.environ["AILOOT_API_KEY"], max_retries=0)
msg = client.messages.create(
    model="nvidia/nemotron-3-ultra-550b-a55b",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Explain the difference between an observation and a hypothesis in three sentences."}],
)
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(msg.to_dict(mode="json"))
import Anthropic from "@anthropic-ai/sdk";

if (!process.env.AILOOT_API_KEY?.trim()) throw new Error("Set AILOOT_API_KEY before making a request");
const client = new Anthropic({ baseURL: "https://api.ailoot.ai", apiKey: process.env.AILOOT_API_KEY, maxRetries: 0 });
const msg = await client.messages.create({
  model: "nvidia/nemotron-3-ultra-550b-a55b",
  max_tokens: 1024,
  messages: [{ role: "user", content: "Explain the difference between an observation and a hypothesis in three sentences." }],
});
import { writeFileSync } from "node:fs";

function saveResult(data, stem = "result") {
  writeFileSync(stem + ".json", JSON.stringify(data, null, 2));
  console.log(JSON.stringify(data, null, 2));
  const saveBlob = (encoded, suffix, label) => {
    const raw = Buffer.from(encoded, "base64");
    const ext = raw.subarray(0,8).equals(Buffer.from([137,80,78,71,13,10,26,10])) ? "png" : raw[0]===255 && raw[1]===216 ? "jpg" : raw.subarray(0,4).toString()==="RIFF" && raw.subarray(8,12).toString()==="WEBP" ? "webp" : suffix;
    const file = `${stem}-${label}.${ext}`;
    writeFileSync(file, raw); console.log("Saved", file);
  };
  for (const [i, block] of (data.content || []).entries()) console.log("Content", i, JSON.stringify(block));
  for (const choice of data.choices || []) console.log("Choice", choice.index, JSON.stringify(choice.message || choice.delta || {}));
  for (const [i, item] of (data.output || []).entries()) {
    console.log("Output", i, JSON.stringify(item));
    if (item.type === "image_generation_call" && item.result) saveBlob(item.result, item.output_format || "bin", `output-${i}`);
  }
  for (const [ci, candidate] of (data.candidates || []).entries()) {
    for (const [pi, part] of (candidate.content?.parts || []).entries()) {
      console.log("Candidate/part", ci, pi, JSON.stringify(part));
      const blob = part.inlineData || part.inline_data;
      if (blob?.data) {
        const mime = blob.mimeType || blob.mime_type;
        const suffix = ({"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"})[mime] || "bin";
        saveBlob(blob.data, suffix, `candidate-${ci}-part-${pi}`);
      }
    }
  }
}

saveResult(msg);
import anthropic,os
from pathlib import Path

if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=anthropic.Anthropic(base_url="https://api.ailoot.ai",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
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))

with client.messages.stream(model='nvidia/nemotron-3-ultra-550b-a55b',max_tokens=1024,messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}]) as stream:
    with Path("stream-events.jsonl").open("w",encoding="utf-8") as log:
        for event in stream:
            payload=event.to_dict(mode="json")
            log.write(json.dumps(payload,ensure_ascii=False)+"\n"); log.flush()
            print(json.dumps(payload,ensure_ascii=False))
    final=stream.get_final_message()
    save_result(final.to_dict(mode="json"),"stream-result")

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

Ailoot · Anthropic Messages

json או SSE

שמירת כל התוצאות שהושלמו

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

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

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

שמרו מזהי בקשות/תגובות וכותרות. לא מסופק URL כללי לאחזור משימת טקסט.

שדות התגובה
שדהסוג
שדהidסוגstring
שדהmodelסוגstring
שדהcontent[]סוגtext|thinking|tool_use|other content block
שדהstop_reasonסוגstring|null
שדהusageסוגobject
שגיאות והשלבים הבאים
תגובהתנאיהשלב הבא
תגובה⁦400⁩ · invalid_request_errorתנאישדות נדרשים, ייצוג חומר או ערך פרמטר שאינם תקיניםהשלב הבאתקנו את השדות שצוינו לפני בקשת יצירה חדשה.

כינויים

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

Ailoot nvidia/nemotron-3-ultra-550b-a55b
Ailoot Ultra nvidia/nemotron-3-ultra-550b-a55b

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

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

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

nvidia/nemotron-3-ultra-550b-a55b, nvidia/nemotron-3-ultra-550b-a55b

Ailoot · OpenAI Chat POST /v1/chat/completions nvidia/nemotron-3-ultra-550b-a55b

nvidia/nemotron-3-ultra-550b-a55b

NVIDIA /nvidia/nemotron-3-ultra-550b-a55b

התחלה

Nemotron 3 Ultra הוא מודל ההנמקה הטקסטואלית והתזמור של NVIDIA, עם 55B פרמטרים פעילים מתוך 550B בסך הכול. ארכיטקטורת Transformer–Mamba ההיברידית שלו מיועדת לעבודת סוכנים ממושכת, לתכנות ולמחקר, עם קריאות לכלים ותוצאות המותאמות לסכמה.

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

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

Ailoot · OpenAI Chat POST /v1/chat/completions
סוגי קלט
text
סוגי פלט
text
הקשר
⁦4,096⁩ tokens
פלט מרבי
⁦1,024⁩ tokens
פורמט פלט
json או SSE
שדהסוגדרישהערכים ומגבלותברירת מחדל
שדהmodelסוגstringדרישהחובהערכים ומגבלות
nvidia/nemotron-3-ultra-550b-a55b
ברירת מחדל—
שדהmessagesסוגmessage[]דרישהחובהערכים ומגבלות
מספר פריטים מזערי: ⁦1⁩
ברירת מחדל—
שדהmessages[].roleסוגstringדרישהחובהערכים ומגבלות
דוגמאות: system, user, assistant, tool, function
תנאים: התפקידים האלה מיוצגים במפורש בטיפוסי התאימות בקוד המקור; מערך התפקידים המדויק נשאר ייחודי לכל מודל.
תלוי במודל
ברירת מחדל—
שדהmessages[].contentסוגstring|content_part[]|nullדרישהרשותערכים ומגבלותברירת מחדל—
שדהmessages[].tool_callsסוגtool_call[]דרישהרשותערכים ומגבלותברירת מחדל—
שדהmessages[].tool_call_idסוגstringדרישהרשותערכים ומגבלות
חל כאשר: role=tool; השתמשו במזהה שהוחזר בפועל
ברירת מחדל—
שדהmessages[].nameסוגstringדרישהרשותערכים ומגבלותברירת מחדל—
שדהmessages[].reasoning_contentסוגstringדרישהרשותערכים ומגבלות
חל כאשר: החזירו בהמשך את ההנמקה שהתקבלה בפועל כאשר המודל הזה משתמש בה
ברירת מחדל—
שדהmessages[].reasoning_detailsסוגobject|arrayדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהmax_tokensסוגintegerדרישהרשותערכים ומגבלות
מינימום: ⁦1⁩
תלוי במודל
ברירת מחדל—
שדהmax_completion_tokensסוגintegerדרישהרשותערכים ומגבלות
מינימום: ⁦1⁩
תלוי במודל
ברירת מחדל—
שדהstreamסוגbooleanדרישהרשותערכים ומגבלותברירת מחדלfalse
שדהstream_options.include_usageסוגbooleanדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהtemperatureסוגnumberדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהtop_pסוגnumberדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהstopסוגstring|string[]דרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהtoolsסוגfunction_tool[]דרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהtools[].typeסוגstringדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהtools[].function.nameסוגstringדרישהחובהערכים ומגבלות
חל כאשר: סופק כלי פונקציה
ברירת מחדל—
שדהtools[].function.descriptionסוגstringדרישהרשותערכים ומגבלותברירת מחדל—
שדהtools[].function.parametersסוגJSON_schemaדרישהרשותערכים ומגבלותברירת מחדל—
שדהtool_choiceסוגstring|objectדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהparallel_tool_callsסוגbooleanדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהresponse_formatסוגobjectדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהreasoning_effortסוגstringדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהreasoningסוגobjectדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהservice_tierסוגstringדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהinstructionsסוגstringדרישהרשותערכים ומגבלות
שדה תאימות
ברירת מחדל—
שדהfunctionsסוגfunction[]דרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהfunction_callסוגstring|objectדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהprompt_cache_optionsסוגobjectדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שילובים של חומרי קלט

טקסט · טקסט UTF8

messages[].content

פרמטרים ומחזור חיים של השיטה
פרמטרמפרט
פרמטרmaterial_typesמפרטtext
פרמטרrequiredמפרטmodel, messages
פרמטרoptional_controlsמפרטnull
פרמטרcontent_typeמפרטapplication/json
פרמטרtext_file_materialמפרטתוכן UTF-8 בפועל מוכנס כטקסט; מזהי קבצים/URLs דורשים תמיכה נפרדת ומדויקת

מחזור חיים: exact retained published method

מבני המתודות והמזהים מדויקים; יכולת הספק נפרדת מקבלת הבקשה לביצוע.

תעריפים

תעריפי שיטות Ailoot

Ailoot OpenAI ChatPOST /v1/chat/completions
קלט
⁦‏0.0005 ‏$⁩ / 1K
פלט
⁦‏0.0022 ‏$⁩ / 1K
קריאה מהמטמון
⁦‏0.0001 ‏$⁩ / 1K
כתיבה למטמון
⁦‏0.0005 ‏$⁩ / 1K
כתיבה למטמון, 5 דקות
⁦‏0.0005 ‏$⁩ / 1K tokens

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

פרטי תעריף הייחוס

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

טבלאות ייחוס של המודל

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

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

תצורהטבלת תעריפיםטוקנים בהקשר, יותר מ-טוקנים בהקשר, עד וכוללחיוב
תצורהOpenAI Chat · תעריפי טוקנים בסיסייםטבלת תעריפיםתעריף בסיסטוקנים בהקשר, יותר מ-—טוקנים בהקשר, עד וכוללללא גבול עליוןחיוב
קלט · טוקני קלט $0.0012 / 1K טוקנים
פלט · טוקני פלט $0.0048 / 1K טוקנים
קלט · קריאה מהמטמון $0.00024 / 1K טוקנים
קלט · כתיבה למטמון — / 1K טוקנים
קלט · כתיבה למטמון, 1 שעה — / 1K טוקנים
תצורהOpenAI Chat · מדרגה 1 לפי אורך הבקשהטבלת תעריפים—טוקנים בהקשר, יותר מ-⁦0⁩טוקנים בהקשר, עד וכוללללא גבול עליוןחיוב
קלט · טוקני קלט $0.0012 / 1K טוקנים
פלט · טוקני פלט $0.0048 / 1K טוקנים
קלט · קריאה מהמטמון $0.00024 / 1K טוקנים
קלט · כתיבה למטמון — / 1K טוקנים
קלט · כתיבה למטמון, 1 שעה — / 1K טוקנים
תצורהAnthropic Messages · תעריפי טוקנים בסיסייםטבלת תעריפיםתעריף בסיסטוקנים בהקשר, יותר מ-—טוקנים בהקשר, עד וכוללללא גבול עליוןחיוב
קלט · טוקני קלט $0.0012 / 1K טוקנים
פלט · טוקני פלט $0.0048 / 1K טוקנים
קלט · קריאה מהמטמון $0.00024 / 1K טוקנים
קלט · כתיבה למטמון — / 1K טוקנים
קלט · כתיבה למטמון, 1 שעה — / 1K טוקנים
תצורהAnthropic Messages · מדרגה 1 לפי אורך הבקשהטבלת תעריפים—טוקנים בהקשר, יותר מ-⁦0⁩טוקנים בהקשר, עד וכוללללא גבול עליוןחיוב
קלט · טוקני קלט $0.0012 / 1K טוקנים
פלט · טוקני פלט $0.0048 / 1K טוקנים
קלט · קריאה מהמטמון $0.00024 / 1K טוקנים
קלט · כתיבה למטמון — / 1K טוקנים
קלט · כתיבה למטמון, 1 שעה — / 1K טוקנים

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

Ailoot · OpenAI Chat

דוגמת טקסטPython SDKNode.js SDKהזרמה ב-Python
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 source-material file}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "nvidia/nemotron-3-ultra-550b-a55b", "messages": []}')
f=Path(os.environ["AILOOT_TEXT_FILE"])
if not f.is_file():raise SystemExit("Choose your actual UTF-8 source material")
text=f.read_text(encoding="utf-8")
if not text.strip():raise SystemExit("Source material must contain text")
p["messages"]=[{"role":"user","content":"Summarize this material and quote supporting source passages.\n\n"+text}]
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
print(json.dumps(json.loads(Path("result.json").read_text()),ensure_ascii=False,indent=2))
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)
resp = client.chat.completions.create(
    model="nvidia/nemotron-3-ultra-550b-a55b",
    messages=[{"role": "user", "content": "Explain the difference between an observation and a hypothesis in three sentences."}],
)
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(resp.to_dict(mode="json"))
import OpenAI from "openai";

if (!process.env.AILOOT_API_KEY?.trim()) throw new Error("Set AILOOT_API_KEY before making a request");
const client = new OpenAI({ baseURL: "https://api.ailoot.ai/v1", apiKey: process.env.AILOOT_API_KEY, maxRetries: 0 });
const resp = await client.chat.completions.create({
  model: "nvidia/nemotron-3-ultra-550b-a55b",
  messages: [{ role: "user", content: "Explain the difference between an observation and a hypothesis in three sentences." }],
});
import { writeFileSync } from "node:fs";

function saveResult(data, stem = "result") {
  writeFileSync(stem + ".json", JSON.stringify(data, null, 2));
  console.log(JSON.stringify(data, null, 2));
  const saveBlob = (encoded, suffix, label) => {
    const raw = Buffer.from(encoded, "base64");
    const ext = raw.subarray(0,8).equals(Buffer.from([137,80,78,71,13,10,26,10])) ? "png" : raw[0]===255 && raw[1]===216 ? "jpg" : raw.subarray(0,4).toString()==="RIFF" && raw.subarray(8,12).toString()==="WEBP" ? "webp" : suffix;
    const file = `${stem}-${label}.${ext}`;
    writeFileSync(file, raw); console.log("Saved", file);
  };
  for (const [i, block] of (data.content || []).entries()) console.log("Content", i, JSON.stringify(block));
  for (const choice of data.choices || []) console.log("Choice", choice.index, JSON.stringify(choice.message || choice.delta || {}));
  for (const [i, item] of (data.output || []).entries()) {
    console.log("Output", i, JSON.stringify(item));
    if (item.type === "image_generation_call" && item.result) saveBlob(item.result, item.output_format || "bin", `output-${i}`);
  }
  for (const [ci, candidate] of (data.candidates || []).entries()) {
    for (const [pi, part] of (candidate.content?.parts || []).entries()) {
      console.log("Candidate/part", ci, pi, JSON.stringify(part));
      const blob = part.inlineData || part.inline_data;
      if (blob?.data) {
        const mime = blob.mimeType || blob.mime_type;
        const suffix = ({"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"})[mime] || "bin";
        saveBlob(blob.data, suffix, `candidate-${ci}-part-${pi}`);
      }
    }
  }
}

saveResult(resp);
from openai import OpenAI
import os
from pathlib import Path

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)
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))

with client.chat.completions.stream(model='nvidia/nemotron-3-ultra-550b-a55b',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}]) as stream:
    with Path("stream-events.jsonl").open("w",encoding="utf-8") as log:
        for event in stream:
            payload=event.to_dict(mode="json")
            log.write(json.dumps(payload,ensure_ascii=False)+"\n"); log.flush()
            print(json.dumps(payload,ensure_ascii=False))
    final=stream.get_final_completion()
    save_result(final.to_dict(mode="json"),"stream-result")

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

Ailoot · 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 nvidia/nemotron-3-ultra-550b-a55b
Ailoot Ultra nvidia/nemotron-3-ultra-550b-a55b

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

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

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

nvidia/nemotron-3-ultra-550b-a55b, nvidia/nemotron-3-ultra-550b-a55b

Ailoot Ultra · OpenAI Chat POST /v1/chat/completions nvidia/nemotron-3-ultra-550b-a55b

nvidia/nemotron-3-ultra-550b-a55b

NVIDIA /nvidia/nemotron-3-ultra-550b-a55b

התחלה

Nemotron 3 Ultra הוא מודל ההנמקה הטקסטואלית והתזמור של NVIDIA, עם 55B פרמטרים פעילים מתוך 550B בסך הכול. ארכיטקטורת Transformer–Mamba ההיברידית שלו מיועדת לעבודת סוכנים ממושכת, לתכנות ולמחקר, עם קריאות לכלים ותוצאות המותאמות לסכמה.

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

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

Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
סוגי קלט
text
סוגי פלט
text
פורמט פלט
json או SSE
שדהסוגדרישהערכים ומגבלותברירת מחדל
שדהmodelסוגstringדרישהחובהערכים ומגבלות
nvidia/nemotron-3-ultra-550b-a55b
ברירת מחדל—
שדהmessagesסוגmessage[]דרישהחובהערכים ומגבלות
מספר פריטים מזערי: ⁦1⁩
ברירת מחדל—
שדהmessages[].roleסוגstringדרישהחובהערכים ומגבלות
דוגמאות: system, user, assistant, tool, function
תנאים: התפקידים האלה מיוצגים במפורש בטיפוסי התאימות בקוד המקור; מערך התפקידים המדויק נשאר ייחודי לכל מודל.
תלוי במודל
ברירת מחדל—
שדהmessages[].contentסוגstring|content_part[]|nullדרישהרשותערכים ומגבלותברירת מחדל—
שדהmessages[].tool_callsסוגtool_call[]דרישהרשותערכים ומגבלותברירת מחדל—
שדהmessages[].tool_call_idסוגstringדרישהרשותערכים ומגבלות
חל כאשר: role=tool; השתמשו במזהה שהוחזר בפועל
ברירת מחדל—
שדהmessages[].nameסוגstringדרישהרשותערכים ומגבלותברירת מחדל—
שדהmessages[].reasoning_contentסוגstringדרישהרשותערכים ומגבלות
חל כאשר: החזירו בהמשך את ההנמקה שהתקבלה בפועל כאשר המודל הזה משתמש בה
ברירת מחדל—
שדהmessages[].reasoning_detailsסוגobject|arrayדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהmax_tokensסוגintegerדרישהרשותערכים ומגבלות
מינימום: ⁦1⁩
תלוי במודל
ברירת מחדל—
שדהmax_completion_tokensסוגintegerדרישהרשותערכים ומגבלות
מינימום: ⁦1⁩
תלוי במודל
ברירת מחדל—
שדהstreamסוגbooleanדרישהרשותערכים ומגבלותברירת מחדלfalse
שדהstream_options.include_usageסוגbooleanדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהtemperatureסוגnumberדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהtop_pסוגnumberדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהstopסוגstring|string[]דרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהtoolsסוגfunction_tool[]דרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהtools[].typeסוגstringדרישהרשותערכים ומגבלות
function
תלוי במודל
ברירת מחדל—
שדהtools[].function.nameסוגstringדרישהחובהערכים ומגבלות
חל כאשר: סופק כלי פונקציה
ברירת מחדל—
שדהtools[].function.descriptionסוגstringדרישהרשותערכים ומגבלותברירת מחדל—
שדהtools[].function.parametersסוגJSON_schemaדרישהרשותערכים ומגבלותברירת מחדל—
שדהtool_choiceסוגstring|objectדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהparallel_tool_callsסוגbooleanדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהresponse_formatסוגobjectדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהreasoning_effortסוגstringדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהreasoningסוגobjectדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהservice_tierסוגstringדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהinstructionsסוגstringדרישהרשותערכים ומגבלות
שדה תאימות
ברירת מחדל—
שדהfunctionsסוגfunction[]דרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהfunction_callסוגstring|objectדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהprompt_cache_optionsסוגobjectדרישהרשותערכים ומגבלות
תלוי במודל
ברירת מחדל—
שדהmodalitiesסוגstring[]דרישהרשותערכים ומגבלות
text
ברירת מחדל—
שדהproviderסוגobjectדרישהרשותערכים ומגבלות
תנאים: provider.options נדחה במסלול הטקסט הזה של Ultra
ברירת מחדל—
שדהcache_control.ttlסוגstringדרישהרשותערכים ומגבלות
תנאים: 1h נדחה במיקומים המשמשים בפועל למטמון הנחיות
ברירת מחדל—
שילובים של חומרי קלט

טקסט · טקסט UTF8

messages[].content

פרמטרים ומחזור חיים של השיטה
פרמטרמפרט
פרמטרcontent_typeמפרטapplication/json
פרמטרrequiredמפרטmodel, messages
פרמטרmaterial_typesמפרטtext
פרמטרmessagesמפרטמערך הודעות במבנה role/content
פרמטרfile_materialמפרטמסמך UTF-8 בפועל מוכנס כטקסט מילולי; לא מוסק מזהה קובץ
פרמטרoptional_controlsמפרטstream, temperature, top_p, stop, max_tokens, max_completion_tokens, reasoning, response_format, tools, tool_choice
פרמטרcontrol_scopeמפרטייחודי למודל; כלי פונקציות של המשתמש שונים מכלים מתארחים
פרמטרoutput_modalitiesמפרטtext
פרמטרhosted_operationsמפרטfalse
פרמטרmultimodal_input_bindingמפרטnull

מחזור חיים: synchronous_or_streamed

שלחו את מזהה המודל המדויק עם messages.

אורך ההקשר אינו תקרת פלט.

קובץ טקסט יכול לספק טקסט מילולי; קלטי תמונה/אודיו/אובייקט קובץ דורשים קישור מדויק.

תעריפים

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

מצב מהיר
תעריף רגיל כאשר נבחר מצב מהיר
מצב Flex
תעריף רגיל כאשר נבחר מצב flex
מאמץ חשיבה מרבי
תעריף רגיל כאשר מאמץ החשיבה המרבי משתמש בהתאמת ברירת המחדל (default)
מאמץ חשיבה · high
תעריף רגיל כאשר מאמץ החשיבה מוגדר ל־high
מאמץ חשיבה · medium
תעריף רגיל כאשר מאמץ החשיבה מוגדר ל־medium

תעריפי Ailoot

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

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

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

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

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

Ailoot Ultra · OpenAI Chat

curlPython SDKהזרמה ב-Python
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "nvidia/nemotron-3-ultra-550b-a55b", "messages": [{"role": "user", "content": "Explain the difference between an observation and a hypothesis in three sentences."}]}')

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='nvidia/nemotron-3-ultra-550b-a55b',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}])
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"))
from openai import OpenAI
import os
from pathlib import Path

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)
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))

with client.chat.completions.stream(model='nvidia/nemotron-3-ultra-550b-a55b',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}]) as stream:
    with Path("stream-events.jsonl").open("w",encoding="utf-8") as log:
        for event in stream:
            payload=event.to_dict(mode="json")
            log.write(json.dumps(payload,ensure_ascii=False)+"\n"); log.flush()
            print(json.dumps(payload,ensure_ascii=False))
    final=stream.get_final_completion()
    save_result(final.to_dict(mode="json"),"stream-result")

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

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 nvidia/nemotron-3-ultra-550b-a55b
Ailoot Ultra nvidia/nemotron-3-ultra-550b-a55b

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

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

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

nvidia/nemotron-3-ultra-550b-a55b, nvidia/nemotron-3-ultra-550b-a55b

Ailoot Ultra · Anthropic Messages POST /v1/messages nvidia/nemotron-3-ultra-550b-a55b

nvidia/nemotron-3-ultra-550b-a55b

NVIDIA /nvidia/nemotron-3-ultra-550b-a55b

התחלה

Nemotron 3 Ultra הוא מודל ההנמקה הטקסטואלית והתזמור של NVIDIA, עם 55B פרמטרים פעילים מתוך 550B בסך הכול. ארכיטקטורת Transformer–Mamba ההיברידית שלו מיועדת לעבודת סוכנים ממושכת, לתכנות ולמחקר, עם קריאות לכלים ותוצאות המותאמות לסכמה.

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

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

Ailoot Ultra · Anthropic Messages POST /v1/messages
סוגי קלט
text
סוגי פלט
json, sse
פורמט פלט
JSON או SSE
שדהסוגדרישהערכים ומגבלותברירת מחדל
שדהmodelסוגstringדרישהחובהערכים ומגבלות
nvidia/nemotron-3-ultra-550b-a55b
ברירת מחדל—
שדהmessagesסוגmessage[]דרישהחובהערכים ומגבלותברירת מחדל—
שדהmessages[].roleסוגstringדרישהחובהערכים ומגבלות
user, assistant
ברירת מחדל—
שדהmessages[].contentסוגstringדרישהחובהערכים ומגבלותברירת מחדל—
שדהmax_tokensסוגintegerדרישהחובהערכים ומגבלותברירת מחדל—
שדהstreamסוגbooleanדרישהרשותערכים ומגבלותברירת מחדלfalse
שילובים של חומרי קלט

טקסט · טקסט UTF-8

מחרוזת messages[].content

פרמטרים ומחזור חיים של השיטה
פרמטרמפרט
פרמטרcontent_typeמפרטapplication/json
פרמטרrequiredמפרטmodel, messages, max_tokens
פרמטרoptional_controlsמפרטstream
פרמטרmaterial_typesמפרטtext
פרמטרtext_file_materialמפרטקראו את מסמך UTF-8 בפועל והכניסו את הטקסט שלו לקלט שצוין או למחרוזת תוכן ההודעה.

מחזור חיים: synchronous_or_streamed

תעריפים

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

מצב מהיר
תעריף רגיל כאשר נבחר מצב מהיר
מצב Flex
תעריף רגיל כאשר נבחר מצב flex
מאמץ חשיבה מרבי
תעריף רגיל כאשר מאמץ החשיבה המרבי משתמש בהתאמת ברירת המחדל (default)
מאמץ חשיבה · high
תעריף רגיל כאשר מאמץ החשיבה מוגדר ל־high
מאמץ חשיבה · medium
תעריף רגיל כאשר מאמץ החשיבה מוגדר ל־medium

תעריפי Ailoot

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

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

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

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

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

Ailoot Ultra · Anthropic Messages

גוף JSON מינימלי ושלםcurl · השתמשו במסמך UTF-8 שלכםPython · שמרו את התוצאה המלאה
{
  "model": "nvidia/nemotron-3-ultra-550b-a55b",
  "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': 'nvidia/nemotron-3-ultra-550b-a55b', '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': 'nvidia/nemotron-3-ultra-550b-a55b', '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))

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

Ailoot Ultra · Anthropic Messages

JSON או SSE

שמירת כל התוצאות שהושלמו

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

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

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

שמרו מזהי בקשות/תגובות וכותרות. לא מסופק URL כללי לאחזור משימת טקסט.

שדות התגובה
שדהסוג
שדהidסוגstring
שדהmodelסוגstring
שדהcontent[]סוגtext|thinking|tool_use|other content block
שדהstop_reasonסוגstring|null
שדהusageסוגobject
שגיאות והשלבים הבאים
תגובהתנאיהשלב הבא
תגובה⁦400⁩ · invalid_request_errorתנאישדות נדרשים, ייצוג חומר או ערך פרמטר שאינם תקיניםהשלב הבאתקנו את השדות שצוינו לפני בקשת יצירה חדשה.

כינויים

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

Ailoot nvidia/nemotron-3-ultra-550b-a55b
Ailoot Ultra nvidia/nemotron-3-ultra-550b-a55b

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

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

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

nvidia/nemotron-3-ultra-550b-a55b, nvidia/nemotron-3-ultra-550b-a55b

FAQ · nvidia/nemotron-3-ultra-550b-a55b
אילו קלטים ותוצאות זמינים?

POST /v1/messages · nvidia/nemotron-3-ultra-550b-a55b: text → text

POST /v1/chat/completions · nvidia/nemotron-3-ultra-550b-a55b: text → text

POST /v1/chat/completions · nvidia/nemotron-3-ultra-550b-a55b: text → text

POST /v1/messages · nvidia/nemotron-3-ultra-550b-a55b: text → json, sse

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

POST /v1/messages · nvidia/nemotron-3-ultra-550b-a55b: model, messages, system, max_tokens, stream, metadata

POST /v1/chat/completions · nvidia/nemotron-3-ultra-550b-a55b: model, messages, stream

POST /v1/chat/completions · nvidia/nemotron-3-ultra-550b-a55b: model, messages, stream, modalities, provider

POST /v1/messages · nvidia/nemotron-3-ultra-550b-a55b: model, messages, max_tokens, stream

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

POST /v1/messages · nvidia/nemotron-3-ultra-550b-a55b: ctx: 262144; max_out: 32768; messages.min_items: 1; max_tokens.minimum: 1

POST /v1/chat/completions · nvidia/nemotron-3-ultra-550b-a55b: ctx: 4096; max_out: 1024; messages.min_items: 1

POST /v1/chat/completions · nvidia/nemotron-3-ultra-550b-a55b: messages.min_items: 1

פרטים נוספים

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

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

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

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

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

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

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

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

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

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

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