Πώς να μετατρέψετε αρχεία PDF και Word σε κείμενο για AI: το MarkItDown της Microsoft
MarkdownΕκτενής αξιολόγηση: Πώς μετατρέπετε αρχεία PDF και Word σε κείμενο για AI: το MarkItDown της Microsoft.
Διαβάστε ολόκληρο το άρθρο
Κύρια συμπεράσματα
Το MarkItDown είναι ένα δωρεάν εργαλείο της Microsoft που μετατρέπει έγγραφα Word, Excel, παρουσιάσεις και PDF σε δομημένο κείμενο για AI. Αναλύει καθαρά αρχεία Office σε κλάσμα του δευτερολέπτου. Μετατρέπει PDF με σύνθετη διάταξη σε χάος και επιστρέφει κενό αρχείο με κωδικό εξόδου μηδέν όταν πρόκειται για σάρωση. Παρακάτω θα βρείτε μια εντολή εγκατάστασης που λειτουργεί, μετρήσεις σε έγγραφα με κυριλλικό κείμενο και έναν κανόνα για το πότε πρέπει να χρησιμοποιήσετε άλλο εργαλείο.
Περισσότερες οδηγίες είναι διαθέσιμες στην τεκμηρίωση του Ailoot.
Τι είναι το MarkItDown και σε τι χρησιμεύει;
Κύρια συμπεράσματα
Το MarkItDown είναι ένα εργαλείο Python της Microsoft που διαβάζει ένα αρχείο και επιστρέφει το περιεχόμενό του ως δομημένο κείμενο. Οι επικεφαλίδες γίνονται επικεφαλίδες και οι πίνακες γίνονται πίνακες. Βρίσκεται σε ένα δημόσιο αποθετήριο GitHub με άδεια MIT, εγκαθίσταται με μία εντολή και εκτελεί όλη την επεξεργασία στον υπολογιστή σας. Κάνει μία δουλειά: προετοιμάζει ένα έγγραφο ώστε ένα AI να βλέπει όχι μόνο τις λέξεις αλλά και τη δομή.
Στέλνετε σε ένα AI ένα συμβόλαιο, μια αναφορά ή μια λογιστική εξαγωγή και παίρνετε μια απάντηση που δεν έχει καμία σχέση με το έγγραφο. Συνήθως δεν φταίει το μοντέλο. Το αρχείο περιέχει μια μορφή: το Word είναι ένα αρχείο αρχειοθήκης με σήμανση, το Excel είναι ένα υπολογιστικό φύλλο με συνδέσεις μεταξύ κελιών και το PDF είναι ένα σύνολο χαρακτήρων με συντεταγμένες πάνω σε μια σελίδα. Το μοντέλο δουλεύει με κείμενο και κάποιος πρέπει να εξαγάγει αυτό το κείμενο.
Αυτό κάνει το MarkItDown. Το αποθετήριο βρίσκεται στο github.com/microsoft/markitdown, με άδεια MIT, επομένως μπορείτε να το χρησιμοποιείτε χωρίς περιορισμούς. Στις 18 Αυγούστου 2026 έχει 174,412 αστέρια και 12,756 forks· η πιο πρόσφατη έκδοση, η 0.1.7, κυκλοφόρησε στις 29 Ιουλίου. Το έργο είναι ενεργό, αν και η εστίασή του έχει μετατοπιστεί από την ανάπτυξη στη συντήρηση: έχει 481 ανοιχτά pull requests, έναντι 183 που έχουν συγχωνευτεί σε όλη την ιστορία του.
Οι προγραμματιστές περιγράφουν τον σκοπό του ως εξής:
Το MarkItDown είναι ένα ελαφρύ εργαλείο Python για τη μετατροπή αρχείων διαφόρων μορφών σε Markdown, για χρήση με μεγάλα γλωσσικά μοντέλα και συναφείς αγωγούς ανάλυσης κειμένου.
Η επόμενη πρόταση στην περιγραφή εξηγεί τις μισές από τις διαμαρτυρίες που διατυπώνουν οι χρήστες για το εργαλείο:
Παρότι το αποτέλεσμα συχνά φαίνεται αρκετά αξιοπρεπές και φιλικό προς τον άνθρωπο, προορίζεται για χρήση από εργαλεία ανάλυσης κειμένου και ενδέχεται να μην είναι η καλύτερη επιλογή για μετατροπή εγγράφων υψηλής πιστότητας που προορίζονται για ανάγνωση από ανθρώπους.
Το αποτέλεσμα είναι πρώτη ύλη για ένα μοντέλο. Δεν θα είναι ένα όμορφο έγγραφο και το έργο το λέει ξεκάθαρα, στην πρώτη κιόλας ενότητα.
Η περιγραφή εξηγεί ευθέως γιατί χρησιμοποιεί Markdown: τα κορυφαία μοντέλα ήδη «μιλούν» αυτή τη σήμανση και την περιλαμβάνουν στις απαντήσεις τους χωρίς να τους ζητηθεί, επειδή είδαν τεράστιους όγκους της κατά την εκπαίδευση. Η σήμανση είναι επίσης συμπαγής: τρία σύμβολα δίεσης για μια επικεφαλίδα αντί για μια ντουζίνα γραμμές μεταδεδομένων.
Σε τι διαφέρει το MarkItDown από έναν συνηθισμένο μετατροπέα;
Κύρια συμπεράσματα
Μετατροπείς όπως το pandoc μεταφράζουν μια γλώσσα σήμανσης σε άλλη και διατηρούν τη διάταξη για τους ανθρώπους. Το pandoc δεν δέχεται καθόλου PDF ως είσοδο. Το MarkItDown λύνει το αντίθετο πρόβλημα: εξάγει περιεχόμενο από ένα αρχείο Office και το οργανώνει ώστε ένα μοντέλο να μπορεί να το κατανοήσει αμέσως, χωρίς να σπαταλά tokens. Η διατήρηση της οπτικής διάταξης δεν είναι ο στόχος του, κι αυτή είναι όλη η διαφορά.
Η διαφορά φαίνεται καθαρά σε ένα παράδειγμα. Πάρτε έναν φάκελο με είκοσι PDF και δοκιμάστε να τα περάσετε από το pandoc. Δεν θα λειτουργήσει: το pandoc μπορεί να δημιουργήσει PDF ως έξοδο, αλλά δεν μπορεί να τα διαβάσει ως είσοδο. Και αυτή η περίπτωση —«έχω μια στοίβα εγγράφων· δώστε τα στο μοντέλο»— είναι η συνηθέστερη.
Οι δημιουργοί του MarkItDown το συγκρίνουν με το textract, μια βιβλιοθήκη που απλώς εξάγει κείμενο από οπουδήποτε. Η διαφορά είναι ότι το MarkItDown προσπαθεί να διατηρήσει τη δομή: επικεφαλίδες, λίστες, πίνακες και συνδέσμους.
| Δυνατότητα | pandoc | MarkItDown |
|---|---|---|
| Διαβάζει PDF | όχι | ναι, με επιφυλάξεις |
| Διαβάζει Word, Excel, παρουσιάσεις | μερικώς | ναι |
| Προορίζεται το αποτέλεσμα για | ανθρώπους | μοντέλα |
| Κύρια αξία | πιστότητα διάταξης | δομή και μικρός αριθμός χαρακτήρων |
| Εγκατάσταση | αυτόνομο πρόγραμμα | μία εντολή Python |
Το πρακτικό συμπέρασμα είναι απλό. Αν χρειάζεται να μετατρέψετε ένα άρθρο σε διάταξη για δημοσίευση, χρησιμοποιήστε pandoc. Αν θέλετε ένα AI να κατανοήσει είκοσι συμβόλαια, χρησιμοποιήστε MarkItDown.
Πώς εγκαθιστάτε το MarkItDown χωρίς να πάρετε την πρώτη έκδοση;
Κύρια συμπεράσματα
Με την έκδοση 0.1.8, η εντολή στην περιγραφή του έργου εγκαθιστά την πιο πρόσφατη έκδοση σε Python 3.14 και 3.12· αυτό έχει επανελεγχθεί σε οκτώ καθαρά περιβάλλοντα. Η σιωπηλή υποβάθμιση στην 0.0.2, τη δεύτερη έκδοση στην ιστορία του έργου, εξακολουθεί να συμβαίνει σε Python 3.15, σε Mac με Intel που εκτελούν την 3.14 και σε Mac με παλαιότερες εκδόσεις macOS που εκτελούν την 3.13 και την 3.14. Σε αυτές τις περιπτώσεις το πρόγραμμα εγκατάστασης αναφέρει επιτυχία. Χρησιμοποιήστε, λοιπόν, Python 3.12, δηλώστε ονομαστικά τις μορφές που χρειάζεστε και ελέγξτε αμέσως τον αριθμό έκδοσης.
Πρώτα η σωστή εντολή· έπειτα, γιατί είναι η σωστή.
Ελέγξτε την έκδοση Python
Η Python 3.12 είναι η πιο αξιόπιστη: η πιο πρόσφατη έκδοση του MarkItDown εγκαθίσταται σε κάθε περιβάλλον που δοκιμάστηκε με αυτήν. Η εντολή
python3 --versionδείχνει ποια έχετε. Σε Mac με Intel ή σε Mac με παλαιότερη έκδοση macOS, οι Python 3.13 και 3.14 μπορεί να υποβαθμιστούν σιωπηλά· η Python 3.15 δεν υποστηρίζεται ακόμη, όπως εξηγείται παρακάτω.Εγκαταστήστε δηλώνοντας τις μορφές
Εκτελέστε
pip install 'markitdown[pdf,docx,xlsx,pptx]'. Τα εισαγωγικά είναι απαραίτητα, αλλιώς το shell θα ερμηνεύσει τις αγκύλες. Σε Mac με Intel, προσθέστε τη σημαία--prefer-binaryμετά τοinstall.Ελέγξτε αμέσως ότι εγκαταστάθηκε
Εκτελέστε
markitdown --version. Η απάντηση πρέπει να είναιmarkitdown 0.1.8ή νεότερη. Ένας μικρότερος αριθμός σημαίνει ότι η εγκατάσταση υποβαθμίστηκε· αυτή η ενότητα εξηγεί γιατί.
pip install 'markitdown[pdf,docx,xlsx,pptx]'
markitdown --version
Η περιγραφή του έργου αναφέρει ως κύρια εντολή την pip install 'markitdown[all]'—για να εγκαταστήσετε τα πάντα μονομιάς. Στις 28 Σεπτεμβρίου 2026, μία εβδομάδα μετά την κυκλοφορία της 0.1.8, εκτελέστηκαν τέσσερις παραλλαγές σε καθαρά περιβάλλοντα σε Mac με Apple Silicon και Python 3.14.6 και 3.12.12:
| Εντολή | Εγκαταστάθηκε σε Python 3.14 | Εγκαταστάθηκε σε Python 3.12 |
|---|---|---|
pip install markitdown | 0.1.8 | 0.1.8 |
pip install 'markitdown[pdf,docx,xlsx,pptx]' | 0.1.8 | 0.1.8 |
pip install 'markitdown[all]' | 0.1.8 | 0.1.8 |
pip install 'markitdown[all]==0.1.8' | 0.1.8 | 0.1.8 |
Και οι οκτώ εγκαταστάσεις ολοκληρώθηκαν με την ένδειξη «Successfully installed» και η εντολή markitdown --version επέστρεψε 0.1.8 σε κάθε περίπτωση. Τον Αύγουστο, όταν η 0.1.7 ήταν η πιο πρόσφατη έκδοση, η τρίτη εντολή σε Python 3.14 εγκατέστησε την 0.0.2, που κυκλοφόρησε στις 8 Μαρτίου 2025—τη δεύτερη έκδοση στην ιστορία του έργου. Τώρα υπάρχουν έντεκα σταθερές εκδόσεις, από την 0.0.1 έως την 0.1.8, και είκοσι έξι συνολικά, μαζί με τις προεκδόσεις.
Η αιτία ήταν η αλυσίδα εξαρτήσεων. Στην 0.1.7, το πρόσθετο [all] φέρνει μια βιβλιοθήκη υποτίτλων YouTube από συγκεκριμένη σειρά εκδόσεων, και όλες οι εκδόσεις αυτής της σειράς δηλώνουν ότι δεν λειτουργούν σε Python 3.14. Το πρόγραμμα εγκατάστασης τις απορρίπτει και, επειδή δεν έχει οριστεί συγκεκριμένη έκδοση, επιστρέφει διαδοχικά σε παλαιότερες εκδόσεις του MarkItDown μέχρι να βρει μία που μπορεί να εγκατασταθεί. Βρίσκει την 0.0.2 και την εγκαθιστά, βάζοντας στον υπολογιστή σας μια έκδοση ενάμιση χρόνου. Στην 0.1.8, η απαίτηση για τη βιβλιοθήκη υποτίτλων αναβαθμίστηκε σε σειρά που λειτουργεί στην 3.14, και η υποβάθμιση σταμάτησε εκεί.
Ο μηχανισμός εξακολουθεί να υπάρχει. Αν το πρόγραμμα εγκατάστασης δεν μπορεί να βρει ένα απαιτούμενο στοιχείο για το σύστημά σας, επιστρέφει σιωπηλά στην 0.0.2 με τον ίδιο τρόπο. Στις πρόσφατες εκδόσεις, αυτό το στοιχείο είναι η μηχανή onnxruntime που χρησιμοποιείται από τον ανιχνευτή τύπου αρχείου. Σε Mac κατασκευάζεται ως εξής: για Python 3.12, macOS 11 και νεότερο· για 3.13, macOS 13· για 3.14, μόνο Apple Silicon με macOS 14 ή νεότερο. Αν το Mac σας δεν πληροί αυτές τις απαιτήσεις, ακόμη και η απλή εντολή pip install markitdown εγκαθιστά την 0.0.2. Μια δοκιμή σε Mac με Intel και Python 3.14 μέσω Rosetta έδωσε ακριβώς αυτό: «Successfully installed», χωρίς προειδοποιήσεις, και την 0.0.2 στο εσωτερικό.
Τα Mac με Intel έχουν μια ακόμη επιπλοκή. Από τον Ιούνιο του 2026, η βιβλιοθήκη cryptography που προστίθεται για την ανάγνωση PDF κυκλοφορεί χωρίς έτοιμη έκδοση για αυτόν τον επεξεργαστή, οπότε το πρόγραμμα εγκατάστασης προσπαθεί να τη μεταγλωττίσει από τον πηγαίο κώδικα. Προσθέστε τη σημαία --prefer-binary στην εντολή και θα χρησιμοποιήσει την προηγούμενη έκδοση με έτοιμο πακέτο. Σε δοκιμή με Python 3.13 σε Intel, αυτό εγκατέστησε την 0.1.8 και το PDF άνοιξε. Η σημαία εγκαθιστά το cryptography 48.0.1, το οποίο έχει τρωτά σημεία: στην αποκρυπτογράφηση PKCS#7 και στην επαλήθευση αλυσίδας πιστοποιητικών. Το MarkItDown το χρησιμοποιεί μόνο για να αποκρυπτογραφεί κρυπτογραφημένα PDF, και η ανάγνωση εγγράφων δεν περνά από αυτά τα σημεία.
Με Python 3.15, η υποβάθμιση συμβαίνει για δύο λόγους. Η έκδοση 0.1.8 δηλώνει υποστήριξη μόνο από την 3.10 έως την 3.14 και δεν υπάρχει ακόμη μηχανή για την 3.15. Η επίλυση εξαρτήσεων του προγράμματος εγκατάστασης για την 3.15 το επιβεβαιώνει: τόσο η απλή εντολή όσο και η εντολή με τις μορφές εγκαθιστούν την ίδια 0.0.2.
Μια προειδοποίηση υποβάθμισης μοιάζει ως εξής, μία γραμμή για κάθε πρόσθετο της εντολής:
WARNING: markitdown 0.0.2 does not provide the extra 'all'
Η γραμμή χάνεται ανάμεσα σε δεκάδες γραμμές λήψης και δεν λέει τίποτα για την έκδοση που μπήκε στη θέση της. Με μια απλή εντολή χωρίς πρόσθετα, δεν υπάρχει καν προειδοποίηση. Η τελική αναφορά είναι χαρούμενη: «Successfully installed».
Η εγκατάσταση χωρίς πρόσθετα δεν είναι λύση. Το βασικό πακέτο εγκαθίσταται, αλλά δεν μπορεί να ανοίξει PDF:
PdfConverter recognized the input as a potential .pdf file, but the
dependencies needed to read .pdf files have not been installed. To resolve
this error, include the optional dependency [pdf] or [all] when installing
MarkItDown. For example:
* pip install 'markitdown[pdf]'
* pip install 'markitdown[all]'
Το ίδιο το εργαλείο προτείνει το [all] και, με την 0.1.8, αυτή η συμβουλή λειτουργεί ξανά σε Python 3.14 και 3.12. Παρ' όλα αυτά, είναι προτιμότερο να δηλώνετε ονομαστικά τις μορφές: το [all] προσθέτει περίπου δεκαπέντε ακόμη πακέτα και περίπου 55 megabytes, ανάμεσά τους μια προέκδοση βιβλιοθήκης Azure και ακριβώς την αλυσίδα εξαρτήσεων YouTube που είχε ήδη προκαλέσει πρόβλημα στην εγκατάσταση.
Το πρόγραμμα εγκατάστασης χειρίζεται μόνο του την προέκδοση Azure. Συνήθως το pip παραλείπει προεκδόσεις, αλλά εδώ η απαίτηση κατονομάζει ρητά μια προέκδοση, οπότε την εγκαθιστά. Δοκιμάστηκαν τέσσερις εκδόσεις pip, από την 23.2 έως την 26.2, σε Python 3.12· όλες επιλέγουν την 0.1.8.
Προειδοποίηση
Αμέσως μετά την εγκατάσταση, εκτελέστε markitdown --version. Παίρνει πέντε δευτερόλεπτα και είναι ο μόνος τρόπος να ξέρετε ότι εγκαταστήσατε αυτό που ζητήσατε. Η ένδειξη επιτυχίας εδώ δεν σημαίνει τίποτα.
Τον Αύγουστο, η επανεγκατάσταση σε ένα ακόμη καθαρό περιβάλλον έδωσε το ίδιο αποτέλεσμα: 0.0.2 και τη λέξη «Successfully».
Αξίζει να γνωρίζετε εκ των προτέρων μερικές πρακτικές λεπτομέρειες.
Είναι αρκετά μεγάλο: μια βασική εγκατάσταση καταλαμβάνει 143 megabytes· με τέσσερις μορφές, 303. Το βαρύτερο στοιχείο, στα 81 megabytes, είναι ο ανιχνευτής τύπου αρχείου, ο οποίος περιλαμβάνεται ακόμη και στη βασική εγκατάσταση. Αυτό δεν έχει σημασία για έναν φορητό υπολογιστή, αλλά έχει για μια λειτουργία cloud με όριο μεγέθους.
Μην βασίζεστε σε καθρέφτες ως εναλλακτική. Ένας δοκιμασμένος καθρέφτης παρείχε ευρετήριο και τα αρχεία MarkItDown ήταν διαθέσιμα, αλλά έλειπε μία απαιτούμενη εξάρτηση, οπότε η εγκατάσταση απέτυχε τόσο σε Python 3.14 όσο και σε 3.12.
Η εγκατάσταση είναι δευτερεύουσα μπροστά στο κύριο ζήτημα. Πολύ συχνότερα, ένα AI παράγει ανοησίες επειδή στο παράθυρο περιβάλλοντός του μπήκε το λάθος πράγμα ή η λάθος αναπαράστασή του. Η ικανότητα να αποφασίζετε τι θα δώσετε σε ένα μοντέλο πριν από μια εργασία ονομάζεται μηχανική περιβάλλοντος, και η προετοιμασία εγγράφων είναι μέρος της.
Πώς μετατρέπετε το πρώτο σας έγγραφο σε κείμενο;
Κύρια συμπεράσματα
Μία εντολή στο τερματικό: το όνομα του προγράμματος και η διαδρομή του αρχείου. Από προεπιλογή, το αποτέλεσμα εμφανίζεται στο παράθυρο, ώστε να μπορείτε να το αποθηκεύσετε απευθείας σε αρχείο. Υπάρχουν τρεις μέθοδοι: έξοδος στην κονσόλα, εγγραφή με σημαία ή μεταβίβαση του αρχείου ως ροή. Για ενσωμάτωση στα δικά σας σκριπτ, υπάρχει ένα περιτύλιγμα Python τριών γραμμών, το οποίο δέχεται και URL.
Η συντομότερη επιλογή:
markitdown dogovor.docx
Το κείμενο εμφανίζεται στο τερματικό. Για να το αποθηκεύσετε σε αρχείο, υπάρχουν δύο τρόποι:
markitdown dogovor.docx -o dogovor.md
markitdown dogovor.docx > dogovor.md
Η διαφορά είναι αμελητέα σε Mac και Linux, αλλά έχει σημασία στα Windows: η ανακατεύθυνση μέσω > μπορεί να προκαλέσει κατάρρευση του προγράμματος όταν η έξοδος περιέχει κυριλλικό κείμενο.
Μπορείτε να μεταβιβάσετε ένα αρχείο ως ροή· σε αυτήν την περίπτωση, η υπόδειξη επέκτασης είναι χρήσιμη:
cat dogovor.docx | markitdown -x docx
Ακολουθούν οι κύριες σημαίες από τη βοήθεια της 0.1.8:
| Σημαία | Τι κάνει |
|---|---|
-o, --output | γράφει το αποτέλεσμα σε αρχείο αντί να το εμφανίζει στο παράθυρο |
-x, --extension | υπόδειξη επέκτασης όταν το αρχείο μεταβιβάζεται ως ροή |
-m, --mime-type | υπόδειξη τύπου περιεχομένου |
-c, --charset | υπόδειξη κωδικοποίησης χαρακτήρων |
-d, --use-docintel | επεξεργασία μέσω της επί πληρωμή υπηρεσίας cloud της Microsoft |
-v, --version | εμφανίζει την έκδοση |
Η ίδια βοήθεια αναφέρει τρεις ακόμη χρήσιμες σημαίες, καθεμία δοκιμασμένη: η --list-plugins εμφανίζει τα εγκατεστημένα πρόσθετα, η -p τα ενεργοποιεί για μια συγκεκριμένη εκτέλεση και η --keep-data-uris διατηρεί στην έξοδο τις εικόνες που είναι ενσωματωμένες στο έγγραφο (από προεπιλογή περικόπτονται). Οι υπόλοιπες είναι ρυθμίσεις για τις υπηρεσίες cloud της Microsoft.
Το περιτύλιγμα Python έχει τρεις γραμμές:
from markitdown import MarkItDown
md = MarkItDown()
print(md.convert("ostatki.xlsx").text_content)
Η ίδια κλήση δέχεται URL. Μια απλή σελίδα επέστρεψε καθαρό κείμενο 167 χαρακτήρων, μαζί με επικεφαλίδα και σύνδεσμο, χωρίς το μενού και το υποσέλιδο:
r = md.convert("https://example.com")
Ποιες μορφές καταλαβαίνει το MarkItDown και τι σημαίνει αυτό στην πράξη;
Κύρια συμπεράσματα
Η περιγραφή του έργου παραθέτει ένα ευρύ φάσμα: αρχεία Office, PDF, εικόνες, ήχο, αρχεία αρχειοθήκης, συνδέσμους YouTube και ηλεκτρονικά βιβλία. Τρία στοιχεία δεν λειτουργούν όπως υποδηλώνει η περιγραφή. Η δωρεάν έκδοση δεν αναγνωρίζει καθόλου κείμενο σε εικόνες. Η ομιλία στέλνεται σε μηχανή αγγλικής γλώσσας. Τα αρχεία που δεν μπορούν να αναλυθούν εξαφανίζονται από τα αρχεία αρχειοθήκης χωρίς προειδοποίηση.
Συνοπτικός πίνακας των ισχυρισμών και της πρακτικής σημασίας τους.
| Μορφή | Ισχυρισμός | Τι συμβαίνει στην πράξη |
|---|---|---|
| Word, Excel, παρουσιάσεις | ναι | λειτουργεί καθαρά· αυτό είναι το δυνατό του σημείο |
| CSV, JSON, XML, HTML | ναι | λειτουργεί, αλλά το CSV έχει παγίδα οριοθέτησης |
| ναι | εξαρτάται από τη διάταξη: μία στήλη συναρμολογείται, δύο στήλες διαλύονται | |
| Εικόνες | «μεταδεδομένα και αναγνώριση» | χωρίς αναγνώριση, μόνο μεταδεδομένα ή ένα επί πληρωμή μοντέλο όρασης |
| Ήχος | «μεταγραφή ομιλίας» | κατευθύνεται στη μηχανή αγγλικής γλώσσας της Google |
| Αρχεία ZIP | «διατρέχει τα περιεχόμενα» | ό,τι δεν μπορεί να αναλύσει εξαφανίζεται σιωπηλά |
| Σύνδεσμοι YouTube | ναι | μόνο πλήρεις σύνδεσμοι της μορφής '<OFFICIAL_URL>'?... |
| Ηλεκτρονικά βιβλία EPUB | ναι | λειτουργεί |
Τρία στοιχεία αναλυτικότερα.
Εικόνες. Η περιγραφή περιλαμβάνει τη λέξη OCR, οπότε οι χρήστες περιμένουν ότι το πρόγραμμα θα διαβάσει κείμενο από μια φωτογραφία. Δεν το κάνει. Διαβάζει μεταδεδομένα χρησιμοποιώντας ξεχωριστό πρόγραμμα, το exiftool, και, αν συνδέσετε ένα μοντέλο όρασης με δικό σας κλειδί, μπορεί να του στείλει την εικόνα για περιγραφή.
Ήχος. Η μεταγραφή ομιλίας είναι διαθέσιμη, αλλά η γλώσσα δεν μεταβιβάζεται και η μηχανή αναμένει από προεπιλογή αγγλικά. Καλεί επίσης το ανεπίσημο δωρεάν endpoint της Google, το οποίο περιορίζεται σε περίπου πενήντα αιτήματα την ημέρα ανά κλειδί.
Αρχεία αρχειοθήκης. Το πρόγραμμα αποσυμπιέζει αρχεία ZIP και διατρέχει τα αρχεία που περιέχουν, συνενώνοντας τα αποτελέσματα. Αν δεν μπορεί να αναλύσει ένα αρχείο, το σφάλμα συλλαμβάνεται και αποσιωπάται. Το αρχείο απλώς δεν εμφανίζεται στο αποτέλεσμα και δεν θα το μάθετε.
Τι συμβαίνει με έγγραφα που περιέχουν κυριλλικό κείμενο;
Κύρια συμπεράσματα
Τρία αρχεία με κυριλλικό κείμενο—ένα συμβόλαιο Word, ένα φύλλο απογραφής Excel και μια παρουσίαση—περάστηκαν από την πιο πρόσφατη έκδοση. Το κυριλλικό κείμενο και ο αριθμός διατηρήθηκαν αναλλοίωτα και στα τρία. Τα πράγματα χαλάνε σε τρία σημεία: αρχεία CSV με ελληνικό ερωτηματικό ως διαχωριστικό, μορφοποίηση νομίσματος σε κελιά Excel και έξοδος στην κονσόλα των Windows. Και τα τρία έχουν λύσεις.
Τα αρχεία που ακολουθούν δημιουργήθηκαν ειδικά για δοκιμές· τα δεδομένα τους είναι επινοημένα.
Το φύλλο απογραφής Excel βγήκε εξίσου καθαρά, με το όνομα του φύλλου να γίνεται επικεφαλίδα:
## Stock
| Θέση | Σε απόθεμα | Δέσμευση | Διαθέσιμα |
| --- | --- | --- | --- |
| Καφές σε κόκκους, kg | 420 | 38 | 382 |
| Τσάι φύλλων, kg | 180 | 52 | 128 |
Η παρουσίαση έγινε κείμενο, με τους αριθμούς των διαφανειών να εμφανίζονται ως σχολιασμοί και τους τίτλους των διαφανειών να γίνονται επικεφαλίδες. Και εδώ το κυριλλικό κείμενο διατηρείται αναλλοίωτο. Ο γενικός ισχυρισμός ότι «το MarkItDown δεν καταλαβαίνει κυριλλικά» είναι λανθασμένος.
Τώρα, τα τρία σημεία όπου όντως υπάρχουν προβλήματα.
CSV με ελληνικό ερωτηματικό ως διαχωριστικό. Για σύγκριση, εκτελέστηκαν δύο πανομοιότυπες εξαγωγές τιμολογίων. Αυτή με κόμματα παρήγαγε σωστό πίνακα τεσσάρων στηλών. Με ελληνικά ερωτηματικά, ολόκληρη η γραμμή μπαίνει σε ένα κελί.
Ολόκληρη η γραμμή κατέληξε σε ένα κελί. Η κωδικοποίηση αναγνωρίστηκε σωστά και δεν υπήρξε σφάλμα· η σημαία -c δεν βοηθά. Το μοντέλο θα λάβει αυτόν τον πίνακα και δεν θα καταλάβει ποια τιμή είναι το ποσό και ποια η κατάσταση. Εξαγάγετε ξανά το αρχείο με ρητό διαχωριστικό κόμμα και σωστή κωδικοποίηση, κρατώντας ανέπαφο το πρωτότυπο. Μην αντικαθιστάτε καθολικά τα ελληνικά ερωτηματικά: διαχωριστικά μέσα σε κείμενο με εισαγωγικά και δεκαδικά κόμματα μπορεί να αποτελούν μέρος τιμής. Αν δεν είναι δυνατή νέα εξαγωγή, αναλύστε το πρωτότυπο με το πραγματικό διαχωριστικό του και γράψτε νέο CSV με εργαλείο που διατηρεί σωστά εισαγωγικά και τιμές κελιών. Πριν την ανάλυση, συγκρίνετε πλήθος στηλών, γραμμών και σύνολα ελέγχου με την αρχική εξαγωγή.
Μορφοποίηση νομίσματος στο Excel. Το σύμβολο νομίσματος αποθηκεύεται στις ρυθμίσεις εμφάνισης του κελιού και δεν περνά στην ίδια την τιμή. Οι συντηρητές του έργου επιβεβαίωσαν την αιτία. Για έναν τιμοκατάλογο ή ένα τιμολόγιο, αυτό έχει σημασία: το μοντέλο θα βλέπει αριθμούς χωρίς να γνωρίζει σε ποιο νόμισμα αντιστοιχούν.
Κονσόλα Windows. Σε αρχεία με μη λατινικούς χαρακτήρες, το πρόγραμμα μπορεί να καταρρεύσει.
Το ίχνος σφάλματος δείχνει την κωδικοποίηση cp1251, δηλαδή την κονσόλα των Windows. Το ίδιο το έγγραφο αναλύεται σωστά· αποτυγχάνει η εκτύπωση του αποτελέσματος στο παράθυρο του τερματικού. Υπάρχουν, λοιπόν, δύο λύσεις:
markitdown dogovor.docx -o dogovor.md
$env:PYTHONUTF8 = "1"; markitdown dogovor.docx > dogovor.md
Η πρώτη παρακάμπτει εντελώς την κονσόλα· η δεύτερη κάνει την Python να γράφει σε UTF-8. Έχουν υποβληθεί διορθώσεις για το ίδιο το εργαλείο τουλάχιστον έξι φορές: ορισμένες προτάσεις έκλεισαν χωρίς συγχώνευση, ενώ οι υπόλοιπες παραμένουν ανοιχτές. Επομένως, πρέπει να χρησιμοποιήσετε κάποια παράκαμψη.
Ένα τέταρτο σύμπτωμα εμφανίζεται στα PDF: ακολουθίες όπως (cid:1090) στη θέση γραμμάτων. Αυτό σημαίνει ότι το αρχείο έχει μη τυπικό πίνακα γραμματοσειρών και οι χαρακτήρες του δεν μπόρεσαν να αποκωδικοποιηθούν. Δεν έχει νόημα να επεξεργαστείτε ένα τέτοιο έγγραφο με το MarkItDown· χρειάζεστε άλλο εργαλείο.
Γιατί ένα PDF βγαίνει σαν χάος;
Κύρια συμπεράσματα
Ένα PDF δεν περιέχει δομή, μόνο χαρακτήρες με συντεταγμένες στη σελίδα. Το κείμενο μίας στήλης συναρμολογείται αρκετά καλά. Οι δύο στήλες γίνονται χάος: οι γραμμές ενώνονται μεταξύ στηλών, οι λέξεις κολλάνε μεταξύ τους και η διάταξη μετατρέπεται σε πίνακες που δεν υπήρχαν ποτέ στο έγγραφο. Το εργαλείο δεν εντοπίζει καθόλου επικεφαλίδες σε PDF—αυτό φαίνεται τόσο από τον πηγαίο κώδικα όσο και από ανεξάρτητες μετρήσεις.
Για τη δοκιμή, επεξεργάστηκε ένα επιστημονικό άρθρο δύο στηλών μεγέθους 2.16 megabytes. Ο κωδικός εξόδου ήταν μηδέν· έπειτα από 0.9 δευτερόλεπτα, η έξοδος περιείχε 88,000 χαρακτήρες, σχεδόν όλους ανοησίες. Οι 88,000 χαρακτήρες δίνουν την εντύπωση ότι όλα λειτούργησαν. Μέχρι να ανοίξετε το αρχείο:
| | Hybrid | | OCR-LLM | | Framework |
| --- | ------ | -------- | ----------- | --- | ---------- |
...
Informationextractionfromcopy-heavydoc-
5202 tcO 11 ]LC.sc[ 1v83101.0152:viXra
Τρία πράγματα πήγαν στραβά ταυτόχρονα. Η διάταξη δύο στηλών έγινε πίνακες που δεν υπάρχουν στο άρθρο. Οι λέξεις ενώθηκαν χωρίς κενά. Η τελευταία γραμμή είναι μια κάθετη πλαϊνή στήλη της σελίδας, εξαγμένη ανάποδα.
Ύστερα ήρθε το αστείο. Το δοκιμαστικό άρθρο αποδείχθηκε ότι ήταν η ίδια η εργασία που μέτρησε το MarkItDown και το συνέκρινε με άλλα εργαλεία. Το εργαλείο μετέτρεψε την παράγραφο με τις δικές του μετρήσεις σε αυτό:
cues. This name-matching error could be miti- OCRpreprocessingoverhead(0.056s),whileDo-
gatedthroughpromptengineeringtoprovidemore clingandMinerUadoptmorecomputationallyin-
explicit matching instructions or fine-tuning the tensive strategies with OCR latencies of approxi-
Οι αριστερές και οι δεξιές στήλες ενώνονται γραμμή προς γραμμή. Ένα μοντέλο που θα λάβει αυτό το κείμενο θα διαβάσει μισή πρόταση από μία παράγραφο και μισή από κάποια άλλη.
Η αιτία είναι τεχνική και απλή. Το Word αποθηκεύει ρητά «αυτό είναι επικεφαλίδα» και «αυτό είναι κελί πίνακα». Ένα PDF αποθηκεύει «αυτός είναι ένας χαρακτήρας» και «αυτές είναι οι συντεταγμένες του στη σελίδα». Η ανακατασκευή της δομής από συντεταγμένες είναι ξεχωριστή και δύσκολη εργασία, και το MarkItDown μόλις που επιχειρεί να την εκτελέσει. Ο πηγαίος κώδικας ανάλυσης PDF δεν περιέχει εντοπισμό επικεφαλίδων: αν μια σελίδα δεν αναγνωριστεί ως φόρμα ή πίνακας, ολόκληρο το έγγραφο περνά από βασική εξαγωγή κειμένου.
Οι χρήστες το αναφέρουν τακτικά στο αποθετήριο του έργου, μεταξύ άλλων για επιστημονικά άρθρα και πίνακες.
Το εργαλείο δεν εντοπίζει ούτε μία επικεφαλίδα σε PDF, ακριβώς όπως δείχνει ο πηγαίος κώδικάς του.
Ο ισχυρισμός «το MarkItDown επιτυγχάνει ακρίβεια 82%» κυκλοφορεί στο διαδίκτυο χωρίς καμία μεθοδολογία. Η αναζήτηση της αρχικής πηγής δεν οδηγεί πουθενά: η αλυσίδα συνδέσμων καταλήγει σε μια σελίδα που δεν φορτώνει. Δεν μπορεί να θεωρηθεί μέτρηση.
Τι συμβαίνει με ένα σαρωμένο συμβόλαιο;
Κύρια συμπεράσματα
Τίποτα. Το αρχείο επεξεργάζεται, το πρόγραμμα αναφέρει επιτυχία και η έξοδος περιέχει μηδέν χαρακτήρες. Χωρίς σφάλμα, χωρίς προειδοποίηση. Αυτό δοκιμάστηκε δύο φορές σε PDF που δημιουργήθηκε από εικόνα και ξεχωριστά στην ίδια την εικόνα—το αποτέλεσμα ήταν το ίδιο. Το εργαλείο εξάγει κείμενο που είναι ήδη αποθηκευμένο ως κείμενο στο αρχείο· η δωρεάν έκδοση δεν διαθέτει δυνατότητα αναγνώρισης.
Αυτή η συμπεριφορά είναι πιο επικίνδυνη από τις άλλες, επειδή δεν μοιάζει με αποτυχία.
Για τη δοκιμή, δημιουργήθηκε ένα PDF από εικόνα που περιείχε κείμενο—δηλαδή ακριβώς αυτό που παίρνετε όταν φωτογραφίζετε ή σαρώνετε ένα συμβόλαιο. Η εκτέλεση επαναλήφθηκε για να αποκλειστεί η τυχαιότητα:
| Είσοδος | Κωδικός εξόδου | Χαρακτήρες στην έξοδο | Μήνυμα σφάλματος |
|---|---|---|---|
| PDF από εικόνα, εκτέλεση 1 | 0 | 0 | κανένα |
| PDF από εικόνα, εκτέλεση 2 | 0 | 0 | κανένα |
| Απευθείας εικόνα PNG | 0 | 1 (αλλαγή γραμμής) | κανένα |
Μηδέν χαρακτήρες και μηδέν σφάλματα, δύο φορές στη σειρά. Κωδικός εξόδου μηδέν σημαίνει «όλα πήγαν καλά» και κάθε σκριπτ που ελέγχει την επιτυχία με βάση τον κωδικό εξόδου θα θεωρήσει ότι το έγγραφο επεξεργάστηκε. Έπειτα η κενή έξοδος πηγαίνει στο μοντέλο, το μοντέλο δεν βλέπει τίποτα και αρχίζει να επινοεί μια απάντηση από το πουθενά.
Προειδοποίηση
Αν επεξεργάζεστε έγγραφα σε παρτίδες, ελέγξτε το μήκος της εξόδου. Ο κωδικός εξόδου δεν σας λέει τίποτα: μια κενή έξοδος με κωδικό μηδέν είναι η ένδειξη σάρωσης.
Υπάρχουν δύο λύσεις και αμφότερες είναι επί πληρωμή. Η πρώτη είναι η σημαία -d, που στέλνει το έγγραφο στην υπηρεσία αναγνώρισης cloud της Microsoft· το κείμενο βοήθειας της σημαίας λέει ρητά ότι απαιτείται έγκυρο endpoint υπηρεσίας. Η δεύτερη είναι ένα ξεχωριστό πρόσθετο πακέτο που στέλνει σελίδες σε μοντέλο όρασης με το δικό σας κλειδί, οπότε πληρώνετε τον πάροχο του μοντέλου για κάθε σελίδα. Από τον Απρίλιο του 2026, μια ανοιχτή συζήτηση για τη δεύτερη μέθοδο αναφέρει ότι επεξεργάζεται μόνο την πρώτη σελίδα μιας πολυσέλιδης σάρωσης.
Μπορείτε επίσης να εκτελέσετε ένα μοντέλο αναγνώρισης στον δικό σας υπολογιστή, αλλά αυτό είναι ξεχωριστό έργο.
Για ένα μεμονωμένο έγγραφο, είναι ευκολότερο να το ανοίξετε και να αντιγράψετε το κείμενο με το χέρι. Για μια ροή σαρώσεων, χρειάζεστε εργαλείο με ενσωματωμένη αναγνώριση.
Μπορείτε απλώς να ανεβάσετε το αρχείο σε έναν διαδικτυακό μετατροπέα;
Κύρια συμπεράσματα
Τεχνικά, ναι· υπάρχουν πολλοί ιστότοποι με αυτό το όνομα. Αλλά κανένας δεν συνδέεται με τη Microsoft. Ο ισχυρισμός «το αρχείο δεν φεύγει ποτέ από το πρόγραμμα περιήγησής σας» μπορεί να ελεγχθεί με ένα κλικ και δεν είναι πάντα αληθής. Πριν ανεβάσετε ένα συμβόλαιο ή μια εξαγωγή με ονόματα ανθρώπων, δείτε μόνοι σας πού πηγαίνει το αρχείο.
Το «MarkItDown online» είναι μία από τις συνηθέστερες προτάσεις αναζήτησης και υπάρχουν ιστότοποι που το προσφέρουν. Το αρχικό εργαλείο της Microsoft δεν έχει καθόλου ιστότοπο· διατίθεται μόνο ως πρόγραμμα που εγκαθιστάτε μόνοι σας. Οτιδήποτε με παρόμοιο όνομα ανοίγει σε πρόγραμμα περιήγησης έχει δημιουργηθεί από κάποιον άλλο.
Μπορείτε να ελέγξετε μια τέτοια υπηρεσία σε ένα λεπτό: ανοίξτε τα εργαλεία προγραμματιστή στην καρτέλα αιτημάτων δικτύου, ανεβάστε οποιοδήποτε ακίνδυνο αρχείο και δείτε αν πηγαίνει σε διακομιστή. Αν ναι, ο ισχυρισμός ότι η επεξεργασία γίνεται στο πρόγραμμα περιήγησης είναι ψευδής, όσο πειστικά κι αν παρουσιάζεται στις Συχνές ερωτήσεις.
Προειδοποίηση
Ένα συμβόλαιο, ένα τιμολόγιο ή μια εξαγωγή που περιέχει ονόματα εργαζομένων περιλαμβάνει προσωπικά δεδομένα. Αν στείλετε ένα τέτοιο αρχείο σε ιστότοπο τρίτου, εσείς το διαβιβάσατε. Ένα τοπικό εργαλείο αποφεύγει αυτό το πρόβλημα: το αρχείο δεν φεύγει από τον υπολογιστή σας.
Γι' αυτό το MarkItDown εκτιμάται σε περιβάλλοντα όπου τα έγγραφα δεν μπορούν να σταλούν έξω από τον οργανισμό. Σε μία συζήτηση, κάποιος περιέγραψε την περίπτωσή του: απαγορεύονταν αυθαίρετα προγράμματα στον φορητό υπολογιστή της δουλειάς του, αλλά επιτρέπονταν βιβλιοθήκες Python, και το τοπικό εργαλείο αποδείχθηκε η μόνη διαθέσιμη επιλογή.
Πόσο χώρο εξοικονομεί πραγματικά το MarkItDown;
Κύρια συμπεράσματα
Το κύριο όφελος είναι ότι το μοντέλο μπορεί να κατανοήσει το έγγραφο. Υπάρχει και διαφορά μεγέθους: η σύγκριση του όγκου της σήμανσης μέσα στα αρχεία Office με το μέγεθος του εξαγόμενου κειμένου δείχνει μείωση κατά πέντε έως επτά φορές. Αφαιρεί επίσης όσα δεν χρειάζεται να διαβάσει το μοντέλο: περιγραφές γραμματοσειρών, περιθωρίων και χρωμάτων κελιών.
Ένα αρχείο Office είναι δομημένο ως αρχείο αρχειοθήκης που περιέχει σήμανση. Αν αποσυμπιέσετε τα τρία δοκιμαστικά αρχεία και συγκρίνετε το μέγεθος του μέρους που περιέχει το περιεχόμενο με το μέγεθος της εξόδου, προκύπτει το εξής:
| Αρχείο | Σήμανση στο εσωτερικό | Εξαγμένο κείμενο | Πόσες φορές μικρότερο |
|---|---|---|---|
| Συμβόλαιο Word | 3,701 bytes | 711 bytes | 5.2 |
| Υπολογιστικό φύλλο Excel | 1,561 bytes | 262 bytes | 6.0 |
| Παρουσίαση | 2,203 bytes | 296 bytes | 7.4 |
Τα αρχεία είναι μικρά· οι αναλογίες θα διαφέρουν για μεγαλύτερα αρχεία και δεν υπάρχει μία μοναδική τιμή εξοικονόμησης. Όταν εμφανίζονται στρογγυλοί αριθμοί σε άρθρα σύγκρισης, ρωτήστε για τη μεθοδολογία.
Οι ίδιοι οι δημιουργοί μιλούν επίσης για εξοικονόμηση: η περιγραφή του έργου λέει συγκεκριμένα ότι οι συμβάσεις του Markdown είναι πολύ οικονομικές ως προς τους χαρακτήρες. Αυτό ισχύει, αλλά δεν πρέπει να είναι το κύριο επιχείρημα. Η διαφορά ανάμεσα στο «το μοντέλο έλαβε τρεις χιλιάδες χαρακτήρες αντί για δεκαπέντε χιλιάδες» και στο «το μοντέλο έλαβε καθαρή δομή αντί για ένα συνονθύλευμα» είναι άλλης τάξης. Το πρώτο εξοικονομεί χρήματα· το δεύτερο καθορίζει αν η απάντηση θα έχει νόημα.
Αν σας απασχολεί η χρήση περιβάλλοντος, το θέμα καλύπτεται ξεχωριστά: Πού πηγαίνουν τα tokens στο Claude και πόσα περιλαμβάνονται σε κάθε πρόγραμμα.
Πώς συνδέετε το MarkItDown με το Claude μέσω MCP;
Κύρια συμπεράσματα
Το έργο διαθέτει ξεχωριστό πακέτο που εκτελεί έναν διακομιστή MCP με μία μόνο εντολή: δίνετε μια διαδρομή αρχείου και παίρνετε πίσω κείμενο. Τον Σεπτέμβριο του 2026, το πακέτο ενημερώθηκε επιτέλους στην 0.0.1a7, αλλά η έκδοση εξακολουθεί να είναι προέκδοση και στέλνει τηλεμετρία στη Microsoft από προεπιλογή. Η παρακάτω εντολή συνδέεται μέσω uv, καρφιτσώνει την έκδοση, χρησιμοποιεί Python 3.12 και απενεργοποιεί την τηλεμετρία. Δεν υπάρχει έλεγχος ταυτότητας και, σύμφωνα με τη δική του τεκμηρίωση, ο διακομιστής μπορεί να διαβάσει οποιοδήποτε αρχείο είναι διαθέσιμο στον χρήστη που τον εκκίνησε.
Το MCP είναι ένας τρόπος να δώσετε σε ένα AI ένα εξωτερικό εργαλείο που μπορεί να χρησιμοποιεί μόνο του. Για μια επισκόπηση του μηχανισμού και άλλων διακομιστών, δείτε την αξιολόγηση των διακομιστών MCP για το Claude Code.
Ο διακομιστής MarkItDown εκθέτει ακριβώς ένα εργαλείο: μετατροπή ενός εγγράφου σε κείμενο. Δέχεται τοπική διαδρομή αρχείου, URL σελίδας ή δεδομένα ενσωματωμένα απευθείας στο αίτημα.
Συνδέεται στο Claude Code με μία μόνο εντολή, με καρφιτσωμένη έκδοση διακομιστή. Χρειάζεστε τον διαχειριστή πακέτων uv:
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
Η απάντηση στη δεύτερη εντολή πρέπει να εμφανίζει «Connected» για το markitdown. Η πρώτη εκκίνηση κατεβάζει περίπου εβδομήντα πακέτα και διαρκεί έως ένα λεπτό· μετά από αυτό, ο διακομιστής ξεκινά σε ένα έως ενάμιση δευτερόλεπτο.
Ακολουθούν οι επιφυλάξεις, καθεμία ελεγμένη χειροκίνητα.
Η έκδοση 0.0.1a7 κυκλοφόρησε στις 14 Σεπτεμβρίου 2026. Πριν από αυτήν, ο διακομιστής είχε μείνει κολλημένος στην 0.0.1a4 από τον Μάιο του 2025 για περισσότερο από έναν χρόνο. Ο αριθμός της πιο πρόσφατης έκδοσης εξακολουθεί να αντιστοιχεί σε προέκδοση.
Δεν εγκαθίσταται σε κάθε σύστημα με πρόσφατη έκδοση Python. Η μηχανή onnxruntime από την οποία εξαρτάται είναι διαθέσιμη για Python 3.14 σε Mac μόνο για Apple Silicon με macOS 14 ή νεότερο, οπότε η εγκατάσταση αποτυγχάνει σε Mac με Intel και σε macOS 13 ή παλαιότερο με Python 3.14. Σε Mac με Apple Silicon, ο διακομιστής δοκιμάστηκε σε Python 3.14, 3.13 και 3.12 και εγκαταστάθηκε και στις τρεις. Η εντολή χρησιμοποιεί UV_PYTHON=3.12: υπάρχουν έτοιμα πακέτα για την 3.12 σε Windows, Linux και Mac με Apple Silicon, και αν δεν έχετε αυτήν την έκδοση Python, το uv θα την κατεβάσει. Υπάρχει κι εδώ μια επιφύλαξη για Mac με Intel: το uv θα μεταγλωττίσει τη βιβλιοθήκη cryptography από τον πηγαίο κώδικα, επειδή από τον Ιούνιο του 2026 δεν υπάρχει έτοιμο πακέτο για Intel. Η εγκατάσταση διαρκεί περισσότερο και μπορεί να αποτύχει.
Η έκδοση MarkItDown που εγκαθίσταται στο εσωτερικό εξαρτάται από την έκδοση του uv. Από το MarkItDown 0.1.6 και μετά, το πρόσθετο [all] απαιτεί προέκδοση βιβλιοθήκης Azure: το uv 0.12 και νεότερο την εγκαθιστά μαζί με την πιο πρόσφατη έκδοση MarkItDown 0.1.8, ενώ παλαιότερες εκδόσεις uv υποβαθμίζονται στην 0.1.5. Ελέγξτε την έκδοση uv με uv --version.
Δύο πράγματα στέλνονται εκτός υπολογιστή. Το πρώτο είναι η τηλεμετρία: σε Mac και Linux, η μηχανή onnxruntime μέσα στον διακομιστή τη στέλνει στη Microsoft από προεπιλογή. Η μεταβλητή ORT_DISABLE_TELEMETRY=1 στην εντολή την απενεργοποιεί. Στη δοκιμή, χωρίς αυτήν, ο διακομιστής συνδέθηκε με τα endpoint τηλεμετρίας της Microsoft. Με ορισμένη τη μεταβλητή, δεν υπήρχαν καθόλου συνδέσεις όσο γινόταν επεξεργασία αρχείων από τον δίσκο.
Το δεύτερο είναι ο ήχος. Ο διακομιστής στέλνει αρχεία WAV, MP3, M4A και MP4 στην υπηρεσία αναγνώρισης ομιλίας της Google για μεταγραφή μέσω απλού HTTP, χωρίς κρυπτογράφηση. Καλύτερα να μην στέλνετε μέσω αυτής ηχογραφήσεις συνομιλιών με πελάτες.
Ένα μεγάλο έγγραφο δεν χωράει. Μια ανοιχτή συζήτηση περιγράφει απάντηση διακομιστή 51,000 tokens που έφτασε σε όριο 25,000 tokens, και το εργαλείο δεν χωρίζει τα αρχεία σε τμήματα.
Και η ασφάλεια. Η τεκμηρίωση του ίδιου του πακέτου αναφέρει ξεκάθαρα:
Ο διακομιστής δεν υποστηρίζει έλεγχο ταυτότητας και εκτελείται με τα δικαιώματα του χρήστη που τον εκκίνησε. Το εργαλείο μετατροπής μπορεί να χρησιμοποιηθεί για ανάγνωση οποιουδήποτε αρχείου είναι προσβάσιμο στον χρήστη του διακομιστή ή οποιωνδήποτε δεδομένων στο δίκτυο.
Με άλλα λόγια, ένας agent με αυτό το εργαλείο μπορεί να διαβάσει οτιδήποτε μπορείτε να διαβάσετε κι εσείς. Αυτό είναι αποδεκτό για εργασία στον δικό σας υπολογιστή. Δεν πρέπει να εκθέσετε δημόσια τον διακομιστή ούτε να τον δώσετε σε μη έμπιστο agent.
Προειδοποίηση
Η τεκμηρίωση του έργου δεν περιλαμβάνει διαμόρφωση ειδικά για το Claude Code—περιγράφει μόνο το Claude Desktop και την εκκίνηση μέσω container. Αν βρείτε έτοιμη διαμόρφωση στο διαδίκτυο που περιγράφεται ως «από την επίσημη τεκμηρίωση» για το Claude Code, να γνωρίζετε ότι δεν υπάρχει τέτοια διαμόρφωση στο αποθετήριο.
Για τακτική εργασία, είναι ευκολότερο να καλέσετε το πρόγραμμα με μια εντολή και να βάλετε το κείμενο που προκύπτει στο έργο. Το αρχείο βρίσκεται τότε δίπλα στα υπόλοιπα υλικά, όπου το μοντέλο μπορεί να το συμβουλεύεται από μόνο του.
Πότε είναι πιο ειλικρινές να χρησιμοποιήσετε άλλο εργαλείο;
Κύρια συμπεράσματα
Ο κανόνας είναι απλός: αν η δομή είναι ήδη καταγεγραμμένη μέσα στο αρχείο, χρησιμοποιήστε το MarkItDown—είναι το ταχύτερο και δωρεάν. Αν η δομή πρέπει να ανακατασκευαστεί από εικόνα της σελίδας, χρησιμοποιήστε εργαλείο με μοντέλα διάταξης. Το Docling χειρίζεται πίνακες και σύνθετες διατάξεις, το MinerU χειρίζεται τύπους και πολλαπλές στήλες, ενώ οι επί πληρωμή υπηρεσίες cloud βοηθούν όταν δεν υπάρχει χρόνος για μπελάδες.
Μια σύγκριση βάσει εργασίας· τα αστέρια στο GitHub δεν έχουν καμία σχέση:
| Εργαλείο | Δυνατό σημείο | Τι πληρώνετε |
|---|---|---|
| MarkItDown | αρχεία Office, ταχύτητα, δωρεάν | δεν χειρίζεται σύνθετα PDF ή σαρώσεις |
| Docling | πίνακες και διατάξεις μέσω εξειδικευμένων μοντέλων | δεκάδες δευτερόλεπτα ανά έγγραφο |
| MinerU | πολλαπλές στήλες, τύποι, πυκνοί πίνακες | πιο δύσκολη εγκατάσταση |
| Marker | υψηλή ακρίβεια, τύποι, εικονογραφήσεις | απαιτεί κάρτα γραφικών και η άδειά του περιορίζει τα έσοδα |
| unstructured | επιστρέφει τη δομή του εγγράφου σε τμήματα με περιγραφές | δυσκολότερη αξιοποίηση της εξόδου |
| Αναλυτές cloud | χωρίς ρύθμιση | χρήματα και αποστολή του εγγράφου έξω από τον υπολογιστή σας |
Υπάρχει μια λεπτομέρεια για το Marker που παραλείπουν τα άρθρα σύγκρισης. Από τον Ιούλιο του 2026, ο ίδιος ο κώδικας έχει permissive άδεια, ενώ τα βάρη του μοντέλου έχουν ξεχωριστή άδεια με ένα όριο: η χρήση είναι δωρεάν αν τα έσοδα της εταιρείας σας δεν ξεπέρασαν τα πέντε εκατομμύρια δολάρια και αντλήθηκαν τόσα σε χρηματοδότηση κατά το προηγούμενο έτος. Μια ξεχωριστή ρήτρα απαγορεύει τη χρήση από όποιον δημιουργεί ανταγωνιστικό προϊόν. Αυτό δεν αφορά τους περισσότερους αναγνώστες, αλλά αποτελεί λόγο για μια αναπτυσσόμενη επιχείρηση να διαβάσει την άδεια πριν το υιοθετήσει.
Αυτό οδηγεί σε μια πρακτική ροή εργασίας τεσσάρων βημάτων:
- Περάστε τα πάντα από το MarkItDown—είναι δωρεάν και άμεσο.
- Ανοίξτε το αποτέλεσμα και ελέγξτε το μέγεθός του.
- Αν το κείμενο βγάζει νόημα, η εργασία ολοκληρώθηκε· δεν χρειάζεται τίποτε άλλο.
- Αν η έξοδος είναι χάος ή κενή, περάστε το συγκεκριμένο αρχείο από ένα βαρύτερο εργαλείο.
Έτσι πληρώνετε το κόστος χρόνου και πολυπλοκότητας μόνο για τα έγγραφα που το χρειάζονται.
Πώς εντάσσετε το MarkItDown στη ροή εργασίας σας;
Κύρια συμπεράσματα
Η ίδια η Anthropic δηλώνει τον κανόνα στις περιγραφές των δεξιοτήτων της: χρησιμοποιήστε αυτό το εργαλείο για να διαβάσετε ένα έγγραφο. Μην σχεδιάζετε αλλαγές με βάση αυτό. Ακολουθούν τρία σενάρια στα οποία αποδίδει από την πρώτη εκτέλεση: ανάλυση παρτίδας παρόμοιων εγγράφων, προσθήκη σταθερού υλικού αναφοράς σε ένα έργο AI μία φορά και προετοιμασία εξαγωγής από λογιστικό σύστημα για ανάλυση.
Η Anthropic χρησιμοποιεί το MarkItDown στις έτοιμες δεξιότητές της για εργασία με αρχεία Office και αυτές οι δεξιότητες διατυπώνουν πλήρως το όριο που πρέπει να υιοθετήσετε:
Επιθεωρήστε γρήγορα ένα φύλλο: markitdown file.xlsx. Δεν είναι διαθέσιμες οι συντεταγμένες κελιών, οπότε μην σχεδιάζετε αλλαγές με βάση αυτό.
Οι αναφορές κελιών και σελίδων χάνονται στο κείμενο, επομένως δεν μπορείτε να το χρησιμοποιήσετε για να κάνετε αλλαγές στο αρχικό αρχείο. Ακολουθούν τρία σενάρια.
Μια παρτίδα παρόμοιων εγγράφων—πράξεις, τιμολόγια, έντυπα, αιτήσεις. Βάλτε τα σε έναν φάκελο και εκτελέστε τα με μία γραμμή:
for f in dokumenty/*.docx; do markitdown "$f" -o "text/$(basename "$f" .docx).md"; done
Στη συνέχεια, δώστε στο μοντέλο τον φάκελο με τα αρχεία κειμένου και ζητήστε του να συγκεντρώσει τις σχετικές πληροφορίες σε έναν πίνακα. Αυτό λειτουργεί με ψηφιακά αρχεία· οι σαρώσεις θα αποτύχουν και θα τις εντοπίσετε αμέσως από το μηδενικό μέγεθός τους.
Σταθερό υλικό έργου—τιμοκατάλογοι, πρότυπα συμβολαίων, πολιτικές, περιγραφές υπηρεσιών. Μετατρέψτε το σε κείμενο μία φορά και τοποθετήστε το δίπλα στο έργο. Το μοντέλο θα μπορεί να το διαβάζει σε κάθε αίτημα, οπότε δεν θα χρειάζεται να επισυνάπτετε τα αρχεία στη συνομιλία κάθε φορά. Το άρθρο για τη μεταφόρτωση αρχείων στο Claude εξηγεί τη διαφορά από τη μεταφόρτωση αρχείου στη συνομιλία.
Εξαγωγή από λογιστικό σύστημα. Μια εξαγωγή Excel από λογισμικό λογιστηρίου ή τραπεζικό λογαριασμό γίνεται πίνακας μέσα σε ένα τρίτο του δευτερολέπτου και το μοντέλο μπορεί να υπολογίσει με βάση αυτήν χωρίς ενδιάμεσες παρεμβάσεις. Ελέγξτε ότι το CSV εξήχθη ή αναλύθηκε με το πραγματικό διαχωριστικό, τα εισαγωγικά και την κωδικοποίησή του και συγκρίνετε γραμμές, στήλες και σύνολα ελέγχου πριν το δώσετε στο μοντέλο. Μην κανονικοποιείτε διαχωριστικά με αναζήτηση και αντικατάσταση. Καταγράψτε επίσης ρητά το νόμισμα: σύμβολο που αποθηκεύεται μόνο στη μορφοποίηση κελιού Excel δεν διατηρείται στην εξαγωγή.
Η επεξεργασία μεγάλων PDF στο τερματικό δεν περιλαμβάνεται σε αυτήν τη λίστα. Είναι ξεχωριστό ζήτημα που αφορά τη χρήση περιβάλλοντος και καλύπτεται στο άρθρο για τα PDF στο Claude Code χωρίς απώλεια tokens. Αν μόλις ρυθμίζετε τον χώρο εργασίας σας, ξεκινήστε με την εγκατάσταση του Claude Code.
Για να ξεκινήσετε αμέσως, εκτελέστε pip install 'markitdown[pdf,docx,xlsx,pptx]', επεξεργαστείτε το πρώτο συμβόλαιο Word που θα βρείτε και ελέγξτε το μέγεθος του αποτελέσματος. Σε μισό λεπτό θα ξέρετε αν λειτουργεί με τα αρχεία σας.
Συχνές ερωτήσεις
Είναι δωρεάν το MarkItDown;
Ναι. Έχει άδεια MIT, χωρίς περιορισμούς στην εμπορική χρήση. Πληρώνετε μόνο για δύο προαιρετικές μεθόδους: αναγνώριση cloud από τη Microsoft μέσω της σημαίας -d και περιγραφές εικόνων από μοντέλο όρασης με το δικό σας κλειδί. Όλα τα υπόλοιπα εκτελούνται δωρεάν στον υπολογιστή σας.
Στέλνονται δεδομένα σε κάποιον διακομιστή;
Για τη συνηθισμένη μετατροπή αρχείων Office και PDF, όχι—όλα επεξεργάζονται τοπικά. Υπάρχουν τρεις εξαιρέσεις: η μεταγραφή ήχου περνά από την υπηρεσία της Google, η σημαία -d στέλνει το έγγραφο στο cloud της Microsoft και οι περιγραφές εικόνων αποστέλλονται σε μοντέλο με το δικό σας κλειδί. Καμία από αυτές τις μεθόδους δεν είναι ενεργοποιημένη αυτόματα.
Γιατί δεν βρίσκω την εντολή markitdown μετά την εγκατάσταση;
Συχνότερα, το πρόγραμμα εγκαταστάθηκε σε περιβάλλον που δεν βρίσκεται στη διαδρομή αναζήτησης. Ελέγξτε την πλήρη διαδρομή προς το αρχείο μέσα στο περιβάλλον. Μια άλλη συνηθισμένη περίπτωση είναι να το εγκαταστήσατε για μία έκδοση Python αλλά να το καλείτε με άλλη. Μία ακόμη παγίδα: σε εκδόσεις Python παλαιότερες από την 3.10, εγκαθίσταται ένα κενό πακέτο χωρίς σφάλμα εγκατάστασης.
Τι πρέπει να κάνω αν βλέπω (cid:1090) και παρόμοιες συμβολοσειρές αντί για γράμματα;
Πρόκειται για μη αποκωδικοποιημένο πίνακα γραμματοσειρών μέσα στο PDF. Οι ρυθμίσεις δεν θα το διορθώσουν· πρέπει να περάσετε το αρχείο από άλλο εργαλείο, όπως το Docling ή το MinerU. Για ένα μεμονωμένο έγγραφο, είναι ταχύτερο να αντιγράψετε το κείμενο χειροκίνητα από ένα πρόγραμμα προβολής.
Μπορώ να επεξεργαστώ έναν ολόκληρο φάκελο αρχείων μονομιάς;
Δεν υπάρχει ξεχωριστή λειτουργία φακέλου, αλλά μπορείτε να το κάνετε με έναν μονογραμμικό βρόχο τερματικού: for f in papka/*.docx; do markitdown "$f" -o "$f.md"; done. Μια άλλη επιλογή είναι να βάλετε τα πάντα σε ZIP και να δώσετε το αρχείο αρχειοθήκης: το πρόγραμμα θα επεξεργαστεί τα περιεχόμενά του, αλλά τα αρχεία που δεν μπορεί να αναλύσει θα εξαφανιστούν χωρίς προειδοποίηση.
Σε τι διαφέρει η έξοδος από την αντιγραφή του κειμένου με το χέρι;
Διατηρεί τη δομή. Η αντιγραφή σάς δίνει επίπεδο κείμενο όπου μια επικεφαλίδα δεν ξεχωρίζει από μια παράγραφο και ένας πίνακας διαλύεται. Το MarkItDown διατηρεί επικεφαλίδες, λίστες και πίνακες, ώστε το μοντέλο να καταλαβαίνει τι είναι τι. Η διαφορά είναι μικρή για ένα σύντομο έγγραφο, αλλά καθοριστική για είκοσι.
Μπορεί το MarkItDown να ανοίξει έγγραφα που προστατεύονται με κωδικό πρόσβασης;
Όχι. Ένα προστατευμένο με κωδικό αρχείο δεν ανοίγει και δεν μπορείτε να δώσετε τον κωδικό στο πρόγραμμα. Πρέπει προηγουμένως να αφαιρέσετε την προστασία στην εφαρμογή που την επέβαλε.
Πηγές
- MarkItDown - αποθετήριο έργου στο GitHub
- MarkItDown στο PyPI - εκδόσεις και ημερομηνίες κυκλοφορίας
- markitdown-mcp - περιγραφή διακομιστή MCP
- Anthropic Skills - πώς χρησιμοποιείται το MarkItDown για πίνακες
- Docling - ανάλυση εγγράφων με μοντέλα διάταξης
- MinerU - ανάλυση σύνθετης διάταξης PDF
- Marker - άδεια βαρών μοντέλου
- pandoc - μετατροπέας σήμανσης
Όταν είστε έτοιμοι, γνωρίστε το Ailoot.
Περισσότερες λεπτομέρειες
Ερωτήσεις και απαντήσεις: Πώς να μετατρέψετε αρχεία PDF και Word σε κείμενο για AI: το MarkItDown της Microsoft
Μπορώ να διορθώσω CSV με ελληνικό ερωτηματικό αντικαθιστώντας κάθε ερωτηματικό με κόμμα;
Όχι. Κείμενο με εισαγωγικά και δεκαδικές μορφές μπορεί να περιέχουν αυτούς τους χαρακτήρες. Εξαγάγετε ξανά με το προβλεπόμενο διαχωριστικό ή χρησιμοποιήστε αναλυτή και εγγραφέα CSV με ρητά διαχωριστικό, κωδικοποίηση και εισαγωγικά· επαληθεύστε στήλες, γραμμές και σύνολα ελέγχου με το πρωτότυπο.
Ο μηδενικός κωδικός εξόδου σημαίνει χρήσιμη μετατροπή PDF;
Όχι. Το παράδειγμα σάρωσης του άρθρου επέστρεψε κενή έξοδο χωρίς σφάλμα και ένα σύνθετο PDF έδωσε μη αναγνώσιμο κείμενο. Ανοίξτε το αποτέλεσμα, ελέγξτε μήκος και δομή και χρησιμοποιήστε εργαλείο διάταξης ή αναγνώρισης όταν το εξαγόμενο κείμενο είναι κενό ή αλλοιωμένο.