# חשיבה

> לבקש מהמודל לחשוב לפני שהוא עונה, ולקרוא את החשיבה שהוא מחזיר.


כל מודל מפרט את רמות המאמץ שהוא מקבל בשדה `capabilities.reasoning_efforts` (הפירוט בעמוד [מודלים](/he/getting-started/models)). יותר מאמץ צורך יותר טוקני פלט, והם מחויבים לפי תעריף הפלט. בלי השדה, המודל משתמש בברירת המחדל שלו.

| API | שדה |
|---|---|
| Chat completions | `reasoning_effort` |
| Responses | `reasoning.effort` |
| Messages | `thinking: {"type": "enabled", "budget_tokens": N}` או `{"type": "adaptive"}` עם `output_config.effort` |

```python test
import os
from openai import OpenAI

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

r = client.chat.completions.create(
    model="notholy-specter",
    reasoning_effort="high",
    messages=[{"role": "user", "content": "Is a JWT signed with alg none ever acceptable? Answer in one line."}],
)
print(r.choices[0].message.content)
```

ב-chat completions וב-Responses, רמה שהמודל לא מפרט מחזירה `400 invalid_request`. Messages ממפה את `thinking` ואת `output_config.effort` לרמה הקרובה ביותר שיש למודל: תקציב של 16000 טוקנים ומעלה הוא high, של 4000 ומעלה הוא medium, פחות מזה הוא low, והערך `adaptive` הוא medium.

טקסט החשיבה חוזר בשדה `reasoning_content` ב-chat completions, כפריטי `reasoning` ב-Responses וכבלוקים של `thinking` ב-Messages. כששולחים את השיחה בחזרה, החשיבה מתורות קודמים נשמטת.

## הבא

- [חיסכון בעלויות](/he/guides/cost)
