Microsoft MarkItDown の詳細
マークイットダウンとは何ですか?
MarkItDown は Microsoft によって開発された Python パッケージで、さまざまなファイル形式を Markdown に変換するように設計されています。
デビュー以来、このライブラリの人気は急上昇し、わずか 2 週間で 25,000 を超える GitHub スターを獲得しました。 ?
MarkItDown の人気の理由は何ですか?
MarkItDown は、次のような幅広いファイル タイプを強力にサポートします。
- Office 形式: Word、PowerPoint、Excel
- メディア ファイル: 画像 (EXIF データと説明付き)、オーディオ (文字起こしサポート付き)
- Web およびデータ形式: HTML、JSON、XML、CSV
- アーカイブ: ZIP ファイル
Word のような標準形式だけでなく、マルチモーダル データも処理できる機能が際立っています。たとえば、OCR と音声認識を使用して、画像や音声ファイルからコンテンツを抽出します。
MarkItDown は、あらゆるものを Markdown に変換できるため、LLM トレーニング用の強力なツールになります。ドメイン固有のドキュメントを処理することで、LLM を利用したアプリケーションでより正確で関連性の高い応答を生成するための豊富なコンテキストが提供されます。
MarkItDown の使用を開始する
MarkItDown の使用は非常に簡単です。必要なコードは 4 行のみです。
from markitdown import MarkItDown md = MarkItDown() result = md.convert("test.xlsx") print(result.text_content)
MarkItDown の使用例をいくつか示します。
Word ドキュメントを変換すると、クリーンで正確な Markdown が生成されます。
複数タブの Excel スプレッドシートも簡単に処理できます:
ZIP アーカイブ?問題ない!ライブラリは、その中のすべてのファイルを再帰的に解析します:
最初は、画像抽出で結果が得られない可能性があります:
これは、MarkItDown が LLM に依存して画像の説明を生成するためです。 LLM クライアントを統合することで、この機能を有効にできます:
from openai import OpenAI client = OpenAI(api_key="i-am-not-an-api-key") md = MarkItDown(llm_client=client, llm_model="gpt-4o")
設定を適切に行うと、画像ファイルを正常に処理できます。
注: LLM は画像ベースの PDF を処理しません。 PDF はコンテンツを抽出するために OCR 前処理が必要です。
ただし、PDF は抽出時に書式設定が失われるため、見出しとプレーン テキストは区別されません。
制限事項
MarkItDown には制限がないわけではありません:
- OCR なしの PDF ファイルは処理できません。
- PDF ファイルから抽出する場合、書式設定は使用できません。
それでも、オープンソース プロジェクトなので、高度にカスタマイズ可能です。開発者は、クリーンなコードベースのため、機能を簡単に拡張できます。
MarkItDown の仕組み
MarkItDown のアーキテクチャは簡単でモジュール式です。
これには、汎用の Convert() メソッドを定義する DocumentConverter クラスがあります。
from markitdown import MarkItDown md = MarkItDown() result = md.convert("test.xlsx") print(result.text_content)
個々のコンバータはこの基本クラスを継承し、動的に登録されます。
from openai import OpenAI client = OpenAI(api_key="i-am-not-an-api-key") md = MarkItDown(llm_client=client, llm_model="gpt-4o")
このモジュール式アプローチにより、新しいファイル タイプのサポートを簡単に追加できます。
ファイル変換のワークフロー
オフィス文書
Office ファイルは、mammoth、pandas、pptx などのライブラリを使用して HTML に変換され、BeautifulSoup を使用して Markdown に変換されます。
音声ファイル
音声は、Google の API を利用する speech_recognition ライブラリを使用して書き起こされます。
(Microsoft さん、なぜ Azure ではないのですか??)
画像
画像処理には、LLM プロンプトを介したキャプションの生成が含まれます:
「この画像の詳しい説明を書いてください。」
PDF は pdfminer ライブラリによって処理されますが、OCR が組み込まれていません。テキスト抽出のために PDF を前処理する必要があります。
MarkItDown を API としてデプロイする
MarkItDown はローカルで実行できますが、API としてホストすると柔軟性がさらに高まり、Zapier や n8n などのワークフローに簡単に統合できます。
FastAPI を使用した MarkItDown API の簡単な例を次に示します。
class DocumentConverter: """Base class for all document converters.""" def convert( self, local_path: str, **kwargs: Any ) -> Union[None, DocumentConverterResult]: raise NotImplementedError()
API を呼び出すには:
self.register_page_converter(PlainTextConverter()) self.register_page_converter(HtmlConverter()) self.register_page_converter(DocxConverter()) self.register_page_converter(XlsxConverter()) self.register_page_converter(Mp3Converter()) self.register_page_converter(ImageConverter()) # ...
API を無料でホストする
Python API のホスティングは難しい場合があります。 AWS EC2 や DigitalOcean などの従来のサービスではサーバー全体をレンタルする必要があり、常にコストがかかります。
しかし、今では Leapcell を使用できるようになりました。
これは、サーバーレスな方法で Python コードベースをホストできるプラットフォームです。料金は API 呼び出しごとにのみ発生し、無料枠の使用量が豊富です。
GitHub リポジトリに接続し、ビルドと開始コマンドを定義するだけで準備完了です。
これで、クラウドでホストされ、ワークフローに統合する準備ができた MarkItDown API が完成しました。そして最も重要なことは、実際に呼び出された場合にのみ課金されることです。
Leapcell で独自の MarkItDown API の構築を今すぐ始めましょう! ?
以上がMicrosoft MarkItDown の詳細の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











Pythonは学習と使用が簡単ですが、Cはより強力ですが複雑です。 1。Python構文は簡潔で初心者に適しています。動的なタイピングと自動メモリ管理により、使いやすくなりますが、ランタイムエラーを引き起こす可能性があります。 2.Cは、高性能アプリケーションに適した低レベルの制御と高度な機能を提供しますが、学習しきい値が高く、手動メモリとタイプの安全管理が必要です。

Pythonを1日2時間学ぶだけで十分ですか?それはあなたの目標と学習方法に依存します。 1)明確な学習計画を策定し、2)適切な学習リソースと方法を選択します。3)実践的な実践とレビューとレビューと統合を練習および統合し、統合すると、この期間中にPythonの基本的な知識と高度な機能を徐々に習得できます。

Pythonは開発効率でCよりも優れていますが、Cは実行パフォーマンスが高くなっています。 1。Pythonの簡潔な構文とリッチライブラリは、開発効率を向上させます。 2.Cのコンピレーションタイプの特性とハードウェア制御により、実行パフォーマンスが向上します。選択を行うときは、プロジェクトのニーズに基づいて開発速度と実行効率を比較検討する必要があります。

PythonとCにはそれぞれ独自の利点があり、選択はプロジェクトの要件に基づいている必要があります。 1)Pythonは、簡潔な構文と動的タイピングのため、迅速な開発とデータ処理に適しています。 2)Cは、静的なタイピングと手動メモリ管理により、高性能およびシステムプログラミングに適しています。

PythonListSarePartOfThestAndardarenot.liestareBuilting-in、versatile、forStoringCollectionsのpythonlistarepart。

Pythonは、自動化、スクリプト、およびタスク管理に優れています。 1)自動化:OSやShutilなどの標準ライブラリを介してファイルバックアップが実現されます。 2)スクリプトの書き込み:Psutilライブラリを使用してシステムリソースを監視します。 3)タスク管理:スケジュールライブラリを使用してタスクをスケジュールします。 Pythonの使いやすさと豊富なライブラリサポートにより、これらの分野で優先ツールになります。

科学コンピューティングにおけるPythonのアプリケーションには、データ分析、機械学習、数値シミュレーション、視覚化が含まれます。 1.numpyは、効率的な多次元配列と数学的関数を提供します。 2。ScipyはNumpy機能を拡張し、最適化と線形代数ツールを提供します。 3. Pandasは、データ処理と分析に使用されます。 4.matplotlibは、さまざまなグラフと視覚的な結果を生成するために使用されます。

Web開発におけるPythonの主要なアプリケーションには、DjangoおよびFlaskフレームワークの使用、API開発、データ分析と視覚化、機械学習とAI、およびパフォーマンスの最適化が含まれます。 1。DjangoandFlask Framework:Djangoは、複雑な用途の迅速な発展に適しており、Flaskは小規模または高度にカスタマイズされたプロジェクトに適しています。 2。API開発:フラスコまたはdjangorestFrameworkを使用して、Restfulapiを構築します。 3。データ分析と視覚化:Pythonを使用してデータを処理し、Webインターフェイスを介して表示します。 4。機械学習とAI:Pythonは、インテリジェントWebアプリケーションを構築するために使用されます。 5。パフォーマンスの最適化:非同期プログラミング、キャッシュ、コードを通じて最適化
