קובצי PDF ב-Claude Code: המרה, טוקנים ושימור המבנה
MarkdownMarkItDown, PyMuPDF4LLM, MCP, סקריפטים מלאים להמרה, מגבלות PDF ומקרים שבהם ניתוח חזותי חשוב יותר מחיסכון בטוקנים.
קריאת המאמר המלא
הנקודה המרכזית
כל עמוד PDF ב-Claude Code עולה 1,500–3,000 טוקנים עוד לפני השאלה הראשונה — ו-Anthropic מציינת זאת במפורש בתיעוד שלה. בחישוב ההמחשה שלהלן, דוח בן 15 עמודים בארבע שיחות שונות משתמש ב-135,000 טוקני קלט PDF בעלות של כ-$0.40, לעומת 18,000 טוקני קלט Markdown בעלות $0.054 — בערך 87% פחות. החישוב מניח 2,250 טוקני PDF או 300 טוקני Markdown לעמוד בתעריף הקלט שבדוגמה; מסמכים בפועל משתנים. המדריך הזה סוקר שלוש שיטות להמרה (MarkItDown, PyMuPDF4LLM ושרת MCP) וסקריפט bash מוכן לשימוש עבור תיקיית מסמכים.
הוראות מעשיות לשימוש ב-Ailoot נמצאות בתיעוד.
מה קורה לקובץ PDF ב-Claude, ולמה כל עמוד עולה 1,500–3,000 טוקנים?
הנקודה המרכזית
כשמעלים קובץ PDF ל-Claude Code, הוא לא קורא אותו כקובץ טקסט. תחילה כל עמוד מומר לתמונה, אחר כך מחולץ ממנו טקסט, ושתי השכבות — התמונה והטקסט — מתווספות יחד להקשר. לכן עמוד אחד תופס 1,500–3,000 טוקנים, ומסמך בן 50 עמודים יכול לצרוך 75,000–150,000 טוקנים עוד לפני ששואלים את השאלה הראשונה.
בתיעוד הרשמי של Anthropic מתואר התהליך בשלושה שלבים פשוטים:
המערכת ממירה כל עמוד במסמך לתמונה. הטקסט מכל עמוד מחולץ ומסופק לצד תמונת העמוד. Claude מנתח את הטקסט ואת התמונות כדי להבין טוב יותר את המסמך.
זה נשמע הגיוני, אבל עלויות העיבוד גדלות ביחס ישר למספר העמודים. והנה הנתון שמסביר למה מגבלת המנוי שלכם נגמרת בגלל קובץ PDF אחד:
כל עמוד צורך בדרך כלל 1,500–3,000 טוקנים, בהתאם לצפיפות התוכן. מכיוון שכל עמוד מומר לתמונה, חלה אותה עלות כמו בעיבוד תמונות רגילות.
כדי להבין כמה זה, Anthropic מדדה את אותו קובץ PDF בן 3 עמודים ב-Bedrock בשני מצבים. במצב טקסט (Converse Document Chat), הוא צרך ~1,000 טוקנים. בניתוח חזותי (Claude PDF Chat), הוא צרך ~7,000 טוקנים. הוספת תמונות מייקרת את העיבוד פי 7.
צילומי מסך של עמודים גרועים אפילו יותר. צילום מסך ברזולוציה של 1000×1000 פיקסלים עולה כ-1,300 טוקנים.
המנגנון פשוט: קובצי PDF יקרים כי Claude לא סומך על ה-OCR שלו. הוא משתמש גם בטקסט וגם בתמונה כדי להשוות ביניהם — ואתם משלמים על שתי השכבות בבת אחת. במסמכים גדולים אפשר לפעול אחרת: לשמור את הקובץ כ-Markdown בתיקיית הפרויקט ולומר ל-Claude: „הנה מסמך עם מידע — חלק אותו לחלקים”. הוא יפזר את התוכן בין הקבצים שלו וימשיך לעבוד עם טקסט מאורגן במקום לצרוך הכול בבת אחת.
כמה טוקנים צורך קובץ PDF במשימה טיפוסית?
הנקודה המרכזית
נבחן דוח ציבורי בן 15 עמודים שמשמש בארבעה הקשרים — ניתוח, ציטוטים, תרגום וסיכום. נניח 2,250 טוקני קלט לעמוד PDF, 300 לעמוד Markdown שהומר ואותו תעריף קלט לשניהם. העלאת PDF מחדש נותנת 135,000 טוקני קלט, כ-$0.40; Markdown נותן 18,000, או $0.054. חיסכון של כ-87% נובע מההנחות האלה, ולא ממדידה של כל PDF.
המספרים המדויקים (מודל Sonnet 4.x, קלט במחיר של $3 למיליון טוקנים):
| גישה | טוקנים (15 עמודים, 4 שיחות) | עלות |
|---|---|---|
| העלאה ישירה של PDF, 4 פעמים | 15 × 2250 × 4 = 135,000 | ~$0.40 |
| PDF → Markdown + 4 שיחות | 15 × 300 × 4 = 18,000 | ~$0.054 |
| חיסכון | −87% | −$0.35 |
וזה רק עבור מחזור אחד של 4 בקשות. אחר כך נכנס לתמונה מטמון הנחיות (TTL של 5 דקות כברירת מחדל, עד שעה ברמת שירות מורחבת, עם הנחה של עד 90% על בקשות חוזרות בתוך חלון הזמן) — והחיסכון מצטבר.
בכל פעם שאתם מעלים את אותו קובץ PDF בצ'אט חדש, Claude קורא אותו שוב; המטמון לא עובר בין צ'אטים.
אם תמירו פעם אחת את אותו PDF בן 15 עמודים ל-Markdown ותצרפו אותו לכל אחד מארבעה צ׳אטים חדשים כקובץ .md, הדוגמה משתמשת ב-15 × 300 × 4 = 18,000 טוקני קלט במקום 135,000. 300 טוקנים לעמוד שהומר ו-2,250 לעמוד PDF הם הנחות בחישוב, ולא קבועים שנמדדו לכל PDF. ספרו את המסמך בפועל ואמתו איכות המרה לפני הערכת חיסכון.
החישוב הזה משמעותי עוד יותר במנוי Claude Pro. דוח אחד בן 100 עמודים עלול לכלות את כל המכסה של 5 שעות. אחרי המרה ל-Markdown, יותר מ-10 מסמכים כאלה נכנסים באותה מסגרת שימוש.
מהן מגבלות ה-API של Anthropic לקובצי PDF ב-2026?
הנקודה המרכזית
ל-Anthropic יש מגבלות מחמירות: לכל היותר 32 MB לבקשה (כולל כל התוכן, ולא רק קובץ ה-PDF) ולכל היותר 600 עמודים לבקשה. אבל המגבלה נמוכה יותר במודלים הנוכחיים Sonnet 4.x ו-Opus 4.x עם הקשר של 200K: 100 עמודים. אפשר לשלוח קובץ PDF בשלוש דרכים: באמצעות URL, ב-Base64 או דרך Files API לשימוש חוזר באמצעות file_id. משתמשים ב-Files API ובחלוקה לחלקים עבור מסמכים ארוכים.
בתיעוד של Anthropic מופיעות המגבלות בראש העמוד (נכון ל-31 במאי 2026):
| דרישה | מגבלה |
|---|---|
| גודל בקשה מרבי | 32 MB (משתנה לפי הפלטפורמה) |
| מספר עמודים מרבי לבקשה | 600 (100 למודלים עם הקשר של 200K טוקנים) |
| פורמט | PDF רגיל ללא סיסמה או הצפנה |
שתי המגבלות חלות על כל גוף הבקשה, כולל תוכן שנשלח לצד קובץ ה-PDF. עבור קובצי PDF גדולים, השתמשו ב-Files API והפנו אליהם באמצעות `file_id` כדי לשמור על גוף בקשה קטן.
ל-Claude.ai (אפליקציית האינטרנט לצרכנים) יש מגבלות אחרות: לכל היותר 500 MB לקובץ ועד 20 קבצים בצ'אט. אבל ניתוח חזותי פועל רק בקובצי PDF של עד 100 עמודים — מעבר לכך Claude רואה טקסט בלבד, ללא תרשימים ודיאגרמות.
שלוש דרכים לשלוח קובץ PDF דרך ה-API:
- באמצעות URL -
"source": {"type": "url", "url": "..."}- הדרך הפשוטה ביותר כשהמסמך נמצא באינטרנט. - ב-Base64 -
"source": {"type": "base64", "media_type": "application/pdf", "data": "..."}- עבור קבצים מקומיים. - דרך Files API -
"source": {"type": "file", "file_id": "file_abc123"}- לבקשות חוזרות; נדרשת כותרת הבטאanthropic-beta: files-api-2025-04-14.
Files API היא הדרך העיקרית לחסוך כשעובדים עם אותו קובץ PDF בכמה צ'אטים. מעלים אותו פעם אחת, מקבלים file_id, ואז משתמשים בו בכל האינטראקציות. עם cache_control: ephemeral, בקשות חוזרות עולות 10% מהמחיר הרגיל.
Anthropic מספקת גם המלצות רשמיות לצמצום השימוש:
קובצי PDF צפופים (עם הרבה טקסט קטן, טבלאות מורכבות או גרפיקה כבדה) עשויים למלא את חלון ההקשר לפני שמגיעים למגבלת העמודים. נסו לחלק את המסמך למקטעים; בקבצים גדולים, הפחיתו את הרזולוציה של התמונות המוטמעות לפני ההעלאה.
שיטה 1: איך מגדירים את MarkItDown ב-5 דקות?
הנקודה המרכזית
MarkItDown הוא כלי Python של צוות Microsoft AutoGen, שממיר קובצי PDF, DOCX, PPTX, XLSX, HTML, אודיו, תמונות ואפילו סרטוני YouTube ל-Markdown נקי. יש לו 134 אלף כוכבים ב-GitHub, רישיון MIT, ומתקינים אותו בפקודה אחת: pip install 'markitdown[all]'. השימוש פשוט לא פחות: markitdown document.pdf > document.md. זהו הכלי הרב-תכליתי ביותר להמרת קבצים לפני שימוש ב-Claude Code.
MarkItDown הוא פרויקט רשמי של Microsoft ומתוחזק בידי צוות AutoGen. יש לו 134 אלף כוכבים ו-9.2 אלף forks ב-GitHub (נכון לסוף מאי 2026). מטרת הפרויקט מנוסחת ישירות בקובץ README:
כלי Python קל משקל להמרת קבצים ל-Markdown לשימוש עם LLMs וצינורות עיבוד טקסט.
פורמטים נתמכים:
- מסמכים: PDF, DOCX, PPTX, XLSX
- אינטרנט: HTML, JSON, XML, CSV
- מדיה: אודיו עם תמלול, תמונות עם EXIF ו-OCR, סרטוני YouTube (באמצעות כתוביות)
- ארכיונים: ZIP, EPub
- אחר: כל הקבצים המצורפים בקובצי Outlook MSG
התקנה
דרישה: Python 3.10+ (בדרך כלל כבר מותקן ב-macOS; ב-Windows צריך להתקין אותו בנפרד).
pip install 'markitdown[all]'
אם אין צורך בכל הפורמטים, אפשר להתקין רק את אלה שבוחרים:
pip install 'markitdown[pdf, docx, pptx]'
המרת קובץ יחיד
המקרה הפשוט ביותר:
markitdown document.pdf > document.md
לאחר מכן, הקובץ document.md יופיע בתיקייה הנוכחית. צרפו אותו ל-Claude Code באמצעות @document.md או פשוט הניחו אותו לצד הפרויקט.
API של Python
אם תרצו לשלב אותו בסקריפט שלכם:
from markitdown import MarkItDown
md = MarkItDown()
result = md.convert("research-paper.pdf")
print(result.text_content)
# אפשר לשמור אותו מיד:
with open("research-paper.md", "w") as f:
f.write(result.text_content)
מה MarkItDown לא יכול לעשות
- OCR לקובצי PDF סרוקים - לא מחזיר דבר. לסריקות דרושים PyMuPDF4LLM או Docling.
- פריסות מורכבות עם כמה עמודות - סדר הקריאה עלול להשתבש.
- כתובות URL מוטמעות מקובצי PDF - הוא לא משמר אותן.
לקובצי PDF פשוטים (דוחות, מאמרים, תיעוד), MarkItDown הוא הבחירה הטובה ביותר: כלי רב-תכליתי שמתקינים בתוך דקה, ללא צורך בידע ב-Python. ביצועיו במסמכים עם טקסט קירילי ובסריקות מוצגים במדידות בניתוח של המרת PDF לטקסט עבור AI.
שיטה 2: מה PyMuPDF4LLM מציע, ומתי הוא עדיף?
הנקודה המרכזית
PyMuPDF4LLM הוא פרויקט של Artifex Software המבוסס על מנוע MuPDF מקורי ב-C. זהו ממיר ה-PDF המהיר ביותר (אין צורך ב-GPU); OCR חכם מופעל רק באזורים שאינם קריאים ומפחית את זמן העיבוד ב-50%. זהו הכלי הפופולרי היחיד שמשמר כתובות URL מוטמעות ותמונות מקובצי PDF. החיסרון הוא רישיון AGPL v3 / Artifex מסחרי כפול: בפרויקטי SaaS, AGPL פירושו שעליכם לפרסם את הקוד שלכם.
MarkItDown מציע מגוון רחב של פורמטים; PyMuPDF4LLM מציע עיבוד PDF מעמיק.
הרחבה קלת משקל של PyMuPDF שממירה קובצי PDF לנתונים נקיים ומובְנים, בהגדרה מינימלית.
הגרסה נכון ל-31 במאי 2026 היא 1.27.2.3 (שוחררה ב-24 באפריל 2026).
מה כלול
- עמודים מרובי עמודות עם סדר קריאה נכון
- המרת טבלאות ל-Markdown בטעם GitHub
- הסרה אוטומטית של כותרות עליונות ותחתונות
- חילוץ תמונות באמצעות קישורים יחסיים לתיקייה נפרדת
- OCR חכם: מופעל רק באזורים שאינם קריאים, וחוסך ~50% מזמן העיבוד
- מנוע C מקורי, אין צורך ב-GPU
התקנה
pip install pymupdf4llm
שימוש
import pymupdf4llm
# שימוש בסיסי - ישר ל-Markdown:
md_text = pymupdf4llm.to_markdown("document.pdf")
# שמירה:
with open("document.md", "w") as f:
f.write(md_text)
בשורה אחת, כפי שהובטח:
python3 -c "import pymupdf4llm; \
open('document.md','w').write(pymupdf4llm.to_markdown('document.pdf'))"
מתי לבחור ב-PyMuPDF4LLM במקום ב-MarkItDown
- כשיש בקובץ ה-PDF קישורים רבים שצריך לשמר (MarkItDown מאבד אותם).
- כשהמסמך סרוק ונדרש OCR.
- כשצריך מהירות בעיבוד אלפי קבצים מקומיים — מנוע C מקורי מהיר יותר ממעטפות Python.
- כשצריך את התמונות מקובץ ה-PDF בתיקייה נפרדת לעיבוד נוסף.
פרטי הרישוי (חשוב לעסקים)
ל-PyMuPDF4LLM רישיון כפול: AGPL v3 או Artifex מסחרי.
המשמעות של AGPL: אם משתמשים בספרייה ב-SaaS ציבורי, חובה לפרסם את קוד המקור של השירות כולו תחת אותו רישיון AGPL. לשימוש פנימי (הסקריפט שלכם במחשב הנייד), אין הגבלות.
לפיתוח מסחרי ללא חשיפת הקוד, רכשו רישיון מ-Artifex (artifex.com). המחירים אינם מפורסמים; יש לבקש אותם ממחלקת המכירות.
אם אתם בונים מוצר ללקוחות, בדקו את הרישיון כבר בתחילת הדרך. MarkItDown (MIT) ו-Docling (MIT) בטוחים יותר לשימוש ב-SaaS.
שיטה 3: איך מחברים את שרת MarkItDown MCP ל-Claude Code?
הנקודה המרכזית
שרת MarkItDown MCP הוא אותו MarkItDown, עטוף בפרוטוקול MCP, כך ש-Claude Code יכול להמיר קובצי PDF תוך כדי עבודה בלי לטעון את הקובץ המקורי להקשר. מתחברים אליו בפקודה אחת באמצעות uv, עם גרסה מקובעת: markitdown-mcp@0.0.1a7. הכלי ש-Claude מקבל הוא convert_to_markdown(uri). עלות הסרק היא ~110 טוקנים עבור תיאור המיומנות, ואפס כשהוא אינו נחוץ.
MarkItDown במצב CLI פירושו „אני ממיר קבצים ידנית מראש”; שרת MCP פירושו „Claude Code מחליט מתי להמיר”.
התקנה
דרוש מנהל החבילות uv. אין צורך להתקין את השרת בנפרד; uv מוריד אותו בפעם הראשונה שהוא מופעל.
הגדרה ב-Claude Code
פקודה אחת מחברת את השרת לכל הפרויקטים שלכם, עם גרסה מקובעת:
claude mcp add --scope user --env 'ORT_DISABLE_TELEMETRY=1' --env 'UV_PYTHON=3.12' --transport stdio markitdown -- uvx markitdown-mcp@0.0.1a7
claude mcp list
בכניסה markitdown אמור להופיע הכיתוב “Connected.” בהפעלה הראשונה יורדות כ-70 חבילות וההתקנה נמשכת עד דקה; לאחר מכן השרת עולה בתוך שנייה או שתיים.
הנה הסיבה לכך שהפקודה זקוקה לשני המשתנים. ORT_DISABLE_TELEMETRY=1 מכבה נתונים סטטיסטיים שמנוע onnxruntime שבתוך השרת שולח כברירת מחדל ל-Microsoft ב-Mac וב-Linux. UV_PYTHON=3.12 מפעיל את השרת ב-Python 3.12, שעבורו יש חבילות מוכנות ב-Windows, Linux ובמחשבי Mac עם Apple Silicon. במחשבי Mac עם Intel וב-macOS 13 ומטה, השרת לא מותקן תחת Python 3.14. יש הסתייגות לגבי Intel ו-3.12: uv יבנה את ספריית cryptography מקוד המקור, מכיוון שלא הייתה חבילה מוכנה ל-Intel מאז יוני 2026. ההתקנה נמשכת זמן רב יותר ועלולה להיכשל. אם אין לכם Python 3.12, uv יוריד אותו עבורכם.
השרת פועל ישירות במחשב שלכם ויכול לפתוח כל קובץ שיש לכם גישה אליו. אם Claude Code היה פתוח, הפעילו אותו מחדש, ו-markitdown יופיע ברשימת שרתי MCP.
איך משתמשים בו
ב-Claude Code פשוט אומרים:
המר את /Users/your-user/Documents/report.pdf ל-Markdown ונתח את הנקודות העיקריות.
Claude קורא בעצמו ל-convert_to_markdown(uri), מקבל את ה-Markdown ועובד איתו — קובץ ה-PDF כלל אינו נטען להקשר.
כתובות URI נתמכות
file://- קבצים מקומייםhttp://,https://- מסמכים מקווניםdata:- נתונים מוטבעים (Base64)
אבטחה
מתוך קובץ README הרשמי:
השרת אינו תומך בהרשאות גישה ופועל בהרשאות של המשתמש שהפעיל אותו.
כברירת מחדל, הוא מקושר ל-localhost. אם מפעילים אותו דרך HTTP/SSE (האפשרות --http --host 127.0.0.1 --port 3001), אל תחשפו את הפורט לרשת חיצונית ללא reverse proxy מאומת.
באיזו שיטה כדאי לבחור למשימה שלכם?
הנקודה המרכזית
MarkItDown הוא כלי רב-תכליתי אם אתם עובדים עם פורמטים שונים (PDF + DOCX + PPTX + YouTube) וזקוקים לפקודת CLI מהירה. PyMuPDF4LLM הוא מומחה PDF: מהיר יותר, עם OCR ושימור קישורים, אך עם מלכודת AGPL ל-SaaS. Docling מתאים לשימוש בייצור ומטפל בצורה הטובה ביותר בטבלאות ובנוסחאות. Marker מתאים למאמרים מדעיים עם נוסחאות. שרת MCP מתאים למי שלא רוצה לחשוב על המרה ומעדיף ש-Claude Code יחליט בעצמו.
טבלת השוואה מורחבת:
| כלי | כוכבים ב-GitHub | מתאים במיוחד ל- | מהירות | רישיון |
|---|---|---|---|---|
| MarkItDown (Microsoft) | 134k | PDF + DOCX + PPTX + YouTube + אודיו | בינונית | MIT |
| PyMuPDF4LLM (Artifex) | - | PDF מקורי, OCR, כתובות URL מוטמעות | המהיר ביותר (אין GPU) | AGPL v3 / מסחרי |
| Docling (IBM Research) | 60.7k | RAG בסביבת ייצור, טבלאות, נוסחאות | בינונית | MIT |
| Marker (datalab.to) | 35.6k | קובצי PDF מדעיים, arXiv, נוסחאות | גבוהה (עם GPU) | GPL-3.0 + Open Rail-M |
| MinerU | - | מסמכי CJK (סינית/יפנית) | גבוהה | Apache-2.0 |
Marker מציג נתוני דיוק מרשימים במבחני ביצועים:
0.18 שניות לעמוד על GPU מסוג H100 (122 עמודים בשנייה). דיוק של 95.67% לעומת Llamaparse (84.24%) ו-Mathpix (86.43%). במאמרים מדעיים, 96.67%.
אבל Marker דורש GPU למהירות טובה ומגיע עם מודלים של למידת מכונה. עבור רוב המשימות (קובצי PDF רגילים עם טקסט), PyMuPDF4LLM או MarkItDown יעשו את העבודה בתוך שניות, ללא GPU.
כלל פשוט לבחירה
- קובץ PDF אחד או שניים, וצריך אותם מהר - MarkItDown CLI.
- עשרות קובצי PDF, דרושה אוטומציה - שרת MarkItDown MCP או PyMuPDF4LLM בסקריפט.
- קובצי PDF עם קישורים ותמונות, כשחשוב לשמר את המבנה - PyMuPDF4LLM.
- RAG בסביבת ייצור עסקית, כשחשובה יציבות הטבלאות - Docling.
- מאמרים מדעיים עם נוסחאות - Marker.
- לא רוצים לחשוב על זה; רוצים ש-Claude ימיר - שרת MarkItDown MCP.
איך כותבים סקריפט מוכן לשימוש שממיר תיקיית מסמכים באופן אוטומטי?
הנקודה המרכזית
הדפוס הנוח ביותר הוא סקריפט bash שעובר על תיקיית פרויקט, ממיר את כל קובצי ה-PDF, DOCX ו-PPTX ל-Markdown, ומכניס אותם לתת-תיקייה _md/. מגדירים אותו פעם אחת, ובמעבר אחד הופכים כל תיקייה חדשה של מסמכים ל„קריאה עבור Claude”. לאחר מכן מצרפים את _md/ ל-Claude Code באמצעות @_md/ ועובדים עם הטקסט הדחוס.
דוגמה מעשית: נניח שיש לכם 40 דוחות PDF ו-PPTX מלקוחות בתיקייה אחת — דוחות ברוקראז', חוזים ומצגות. העלאת התיקייה ישירות ל-Claude חסרת תועלת: חלון ההקשר יתמלא במידע עוד לפני התשובה הראשונה. העבירו את כל התיקייה בסקריפט שלהלן, ואז המשיכו לעבוד עם קובצי .md קלים במקום קובצי PDF כבדים.
שמרו את הסקריפט הזה בשם scripts/docs-to-md.sh בתיקיית הבסיס של הפרויקט:
#!/bin/bash
# docs-to-md.sh - ממיר את כל המסמכים בתיקייה ל-Markdown באמצעות MarkItDown
# שימוש: bash docs-to-md.sh ./documents
set -e
INPUT_DIR="${1:-./documents}"
OUTPUT_DIR="${INPUT_DIR}/_md"
mkdir -p "$OUTPUT_DIR"
echo "Scanning $INPUT_DIR..."
for file in "$INPUT_DIR"/*.{pdf,docx,pptx,xlsx}; do
[ -f "$file" ] || continue
basename=$(basename "$file")
name="${basename%.*}"
output="$OUTPUT_DIR/${name}.md"
if [ -f "$output" ] && [ "$output" -nt "$file" ]; then
echo "Skipping $basename (already converted)"
continue
fi
echo "Converting $basename..."
markitdown "$file" > "$output"
done
echo "Done. Results are in $OUTPUT_DIR"
הגדירו אותו כקובץ בר-הרצה:
chmod +x scripts/docs-to-md.sh
הריצו אותו:
bash scripts/docs-to-md.sh ./reports
לאחר הריצה, התיקייה ./reports/_md/ תכיל גרסאות .md של כל המסמכים. צרפו אותן ל-Claude Code באמצעות @reports/_md/ ועבדו עם הטקסט הדחוס במקום עם קובצי PDF.
הסקריפט מדלג אוטומטית על קבצים שכבר הומרו (אם קובץ ה-.md חדש יותר מקובץ המקור) — הרצה חוזרת זולה ואינה מבצעת מחדש את כל העבודה.
המרה אידמפוטנטית והדרגתית
אם תרצו שהסקריפט יזהה קובצי PDF שהשתנו (נשמרו מחדש תחת אותו שם), הוסיפו בדיקת hash של התוכן:
hash=$(shasum -a 256 "$file" | cut -d' ' -f1)
hash_file="$OUTPUT_DIR/.${name}.sha256"
if [ -f "$hash_file" ] && [ "$(cat "$hash_file")" = "$hash" ]; then
echo "Skipping $basename (hash matches)"
continue
fi
markitdown "$file" > "$output"
echo "$hash" > "$hash_file"
הגרסה הזאת ממירה קובץ מחדש רק אם התוכן שלו השתנה.
מתי עדיף עדיין להשתמש בקובץ PDF ב-Claude במקום ב-Markdown?
הנקודה המרכזית
המרה ל-Markdown מאבדת שלושה דברים: רכיבים חזותיים (דיאגרמות, תרשימים, שרטוטים), טבלאות מורכבות עם תאים וכיתובים ממוזגים, ואת העיצוב המלא של המסמך כמוצג (למשל, חוזה שצריך לצטט לפי עמוד). אם הדברים האלה חשובים למשימה, השאירו את הקובץ כ-PDF, הפעילו ניתוח חזותי ושלמו במודע את העלות החזותית.
שלושה מקרים שבהם המרה ל-Markdown אינה מספקת:
1. ניתוח חזותי של דיאגרמות ותרשימים
אם Claude צריך „לקרוא” תרשים — עקומת מחיר, דיאגרמת תהליך או דיאגרמת ארכיטקטורה — המידע הזה לא נמצא ב-Markdown. Markdown משמר רק את כיתובי האיורים; האיור עצמו אובד.
פתרון: העלו את קובץ ה-PDF והפעילו במפורש מצב חזותי. ב-Claude API הדגל פועל אוטומטית; ב-AWS Bedrock נדרש הדגל citations.
Claude מנתח גם טקסט וגם תמונות כדי להבין את המסמך טוב יותר.
2. טבלאות מורכבות עם תאים ממוזגים
טבלאות Markdown הן שטוחות. אם בקובץ ה-PDF יש טבלה עם תאים ממוזגים, כותרות רב-רמתיות או טבלאות משנה מקוננות, הממיר ישטח אותה או יאבד את הקשרים בין החלקים.
פתרון: השתמשו ישירות בקובץ ה-PDF, השתמשו ב-Docling (הכלי המתאים ביותר לטיפול בטבלאות מורכבות), או עצבו אותה ידנית לאחר ההמרה.
3. מסמכים כמוצגים עם הפניות לעמודים
במסמכים משפטיים, בחוזים ובפרוטוקולים, חשוב שאפשר יהיה לצטט „עמוד 7, פסקה 3”. מספרי העמודים אובדים ב-Markdown.
פתרון: PDF + Files API + מטמון הנחיות. העלו את הקובץ פעם אחת ואז הפנו אליו באמצעות file_id; Claude רואה את מספור העמודים ויכול לצטט עמודים מסוימים.
מסמכים קצרים
אם קובץ PDF קצר מ-2 עמודים ומשתמשים בו פעם אחת, לא כדאי להמיר אותו. 5,000 טוקנים ל-PDF לעומת 800 ל-Markdown אינם חיסכון שמצדיק התקנת MarkItDown.
נקודת האיזון היא בערך 5+ עמודים או 2+ שימושים באותו מסמך. מתחת לכך, העלו את קובץ ה-PDF ישירות; מעל לכך, המירו אותו.
מהן 5 הטעויות הנפוצות ביותר שאנשים עושים עם קובצי PDF ב-Claude?
הנקודה המרכזית
המלכודות העיקריות: להעלות את אותו קובץ PDF מחדש בצ'אטים שונים במקום להמיר אותו פעם אחת, לא להשתמש במטמון הנחיות לבקשות חוזרות, להשתמש בצילומי מסך במקום בטקסט, לא לבצע OCR לקובצי PDF סרוקים ולהתעלם ממגבלת 100 העמודים למודלים עם הקשר של 200K. כל טעות מבזבזת עשרות אלפי טוקנים ללא סיבה טובה.
1. העלאת אותו קובץ PDF בכל פעם בצ'אט חדש
ל-Claude Pro יש מגבלת הודעות בפרק זמן של 5 שעות — דוח אחד בן 50 עמודים יכול לכלות אותה עוד לפני השאלה השנייה.
יש לכך עיקרון פשוט: משימה אחת — צ'אט אחד. כש-AI מתחיל לצרוך כמות מופרזת של טוקנים, פירוש הדבר הוא שאתם דוחסים הכול לצ'אט אחד ומצרפים אליו את קובץ ה-PDF שוב ושוב. הקצו משימה קטנה אחת לכל חלון. המירו את המסמך ל-Markdown פעם אחת, ואז הוסיפו את קובץ ה-.md לכל חלון חדש לצד הפרויקט. העיגול של חלון ההקשר לא יהפוך לצהוב.
פתרון: או להמיר אותו פעם אחת ל-Markdown, או להשתמש ב-Files API עם file_id ובמטמון הנחיות.
2. צילום מסך במקום טקסט
דוגמה טיפוסית: מישהו רוצה להציג ל-Claude קטע קוד או טבלה, מצלם את כל המסך ברזולוציה של 1920×1080, ותוהה למה המגבלה נגמרת אחרי 5 בקשות.
צילום מסך ברזולוציה של 1000×1000 פיקסלים עולה ~1,300 טוקנים. אותו טקסט בהעתקה ידנית עולה 50–100 טוקנים. זהו הבדל של פי 13–26.
פתרון: חתכו את צילומי המסך היטב (כך שיכללו רק את החלק החשוב), או, עדיף, העתיקו את הטקסט ישירות.
3. קובץ PDF סרוק ללא OCR
MarkItDown לא יודע לבצע OCR. אם תמירו סריקה, התוצאה תהיה קובץ .md ריק (או 3 שורות של רעש).
פתרון: לסריקות השתמשו ב-PyMuPDF4LLM (עם OCR חכם מובנה) או ב-Docling.
4. התעלמות ממגבלת 100 העמודים
בתיעוד של Anthropic מופיעה מגבלה של 600 עמודים לבקשה — אבל בפועל, המגבלה למודלים עם הקשר של 200K (Sonnet 4.x, Opus 4.x) היא 100 עמודים. מגבלת 600 העמודים מיועדת למודלים ישנים יותר או לרמות שירות מיוחדות.
אם תעלו דוח בן 150 עמודים ל-Sonnet 4.6, תקבלו שגיאה או, גרוע מכך, Claude יעבד רק את 100 העמודים הראשונים ויתנהג כאילו קרא את המסמך כולו.
פתרון: חלקו קובצי PDF ארוכים לחלקים לפני ההעלאה. או המירו אותם ל-Markdown — אין מגבלת עמודים, רק מגבלת טוקנים.
5. אי-שימוש במטמון הנחיות לבקשות חוזרות
אם אתם עובדים עם אותו מסמך דרך ה-API, עטפו אותו ב-cache_control: ephemeral. בקשות חוזרות בתוך 5 דקות עולות 10% מהמחיר הראשוני. בקשה אחת עולה יותר; על השאר מקבלים הנחה של 90%.
פתרון: הפעילו מטמון הנחיות כברירת מחדל לכל תוכן שאתם מעלים יותר מפעם אחת.
מה הלאה: הנדסת הקשר
הנקודה המרכזית
המרת קובצי PDF ל-Markdown היא טכניקה אחת בהנדסת הקשר, אוריינות חדשה לעבודה עם AI. הנחיה היא שאלה. הקשר הוא כל מה ש-Claude רואה לפני השאלה וסביבה: הנחיית המערכת, CLAUDE.md, קבצים, שרתי MCP והיסטוריית הפגישה. ככל שההקשר נקי יותר, כך התשובה מדויקת יותר ועלותה נמוכה יותר. קראו את הניתוח המלא במדריך „הנדסת הקשר ב-2026”.
המרת PDF ל-Markdown היא דרך אחת לחסוך בטוקנים. היא אינה משפרת כשלעצמה את דיוק התשובות של Claude. הדיוק מגיע מהנדסת הקשר — התחום העוסק במה שמכניסים להקשר של המודל לפני ששואלים שאלה.
אם יש ב-CLAUDE.md שלכם 800 שורות, בפרויקט יש 10 שרתי MCP מיותרים, ואתם מצרפים קובץ PDF בן 100 עמודים, המרה ל-Markdown תמנע דליפה אחת, אבל שלוש האחרות יישארו. לכן המדריכים האלה עוסקים בנושאים הבאים:
- לאן נעלמים הטוקנים ב-Claude Code - 9 דפוסים של דליפת הקשר, ולא רק קובצי PDF.
- הנדסת הקשר ב-2026 - ניהול שיטתי של הקשר.
- מצב תכנון ב-Claude Code - מצב תכנון לפני ש-Claude מתחיל לכתוב קוד.
מקורות
המשיכו לגלות את Ailoot ב-ailoot.ai.
פרטים נוספים
שאלות ותשובות: קובצי PDF ב-Claude Code: המרה, טוקנים ושימור המבנה
כמה טוקני Markdown צורכת הדוגמה של 15 עמודים וארבעה צ׳אטים?
לפי הנחת המאמר של 300 טוקנים לעמוד שהומר, הסכום הוא 15 × 300 × 4 = 18,000 טוקני קלט. זהו אומדן להמחשה; ספרו את הטוקנים במסמך שהומר עבור הקובץ שלכם.
האם המרה לטקסט מספיקה לכל PDF?
לא. בדקו את ה-Markdown שהומר מול ה-PDF, במיוחד טבלאות, סדר עמודים ותוכן שתלוי בתמונות. השוו שימוש בטוקנים רק אחרי אישור שהמידע הדרוש למשימה שרד את ההמרה.