ディスカッション (35件)
※免責事項:私はこのオープンウェイトモデルを開発しているNumind社の社員です。
要約:画像やテキストをMarkdownに変換するモデルです!
Qwen3.5-4Bをベースにした4BモデルをApache-2.0ライセンスでリリースしました。PDF、スクリーンショット、フォーム、表、領収書、請求書、複数ページにわたる文書など、複雑な文書から情報を抽出することを、オープンなモデルでより実用的にすることが目的です。
もし「NuMarkdown(https://huggingface.co/numind/NuMarkdown-8B-Thinking )」を使ったことがあるなら、これはその後継モデルにあたります!
サインアップ不要で完全に無料のHugging Faceスペースを用意したので、ぜひ試してみてください:https://huggingface.co/spaces/numind/NuExtract3
主な用途:
・文書画像のMarkdown変換
・ターゲットJSONテンプレートを使用した文書からの構造化データ抽出
・表、フォーム、レイアウトが複雑なページの処理
・テキストおよび視覚的な文書入力の両方に対応
・文書抽出パイプラインのローカル/オープンウェイトな代替手段として活用
8xH100のノードで3日間トレーニングを行い、最大限のコンテキストを学習させたため、長い文書でも十分な性能を発揮します。Markdown変換については、並列処理による効率化のため、ページ単位での処理を推奨します。
充実したドキュメントに加え、Safetensors、GGUF、MLXの重みを提供しているため、セルフホストも非常に簡単です。VRAM 4GBから動作可能で、GPTQ、W8A8、FP8、Q4、Q6など複数の量子化版を用意しており、あらゆる環境で動かせるはずです。
検証は主にvLLM、SGLang、llama.cppで行いました。Ollama対応もできれば良いのですが、現在のチャットテンプレートエンジンがあまり好みではないため検討中です。
ブログやモデルカードはこちらからご確認ください:
・https://about.nuextract.ai/blog/nuextract-3-release
・https://huggingface.co/numind/NuExtract3
・https://huggingface.co/collections/numind/nuextract3
現在このモデルに関する論文を執筆中で、受理され次第共有します。現時点では査読付きジャーナル・会議へ投稿中のため、Arxivには未掲載です。
何か質問があればできる限り回答します。コミュニティからのフィードバックを心よりお待ちしています。
興味があればDiscordにも参加してください!
https://discord.com/invite/3tsEtJNCDe
シェアしてくれてありがとう。モデルも助かるよ。あとは、本を裁断したりページをめくったりしなくて済むブックスキャナーさえあれば完璧なんだけどな :)
スマホのカメラをオート撮影モードにして本の上に設置して、ページをめくるだけ。これで1冊あたり15分くらいかな。ソースは俺自身、何度もやってるから間違いない。
ありがとう!やってみたよ。そこそこ上手くいった。手で持ってただけだからスタンドが必要かもね。そしたらもっと改善するかな。1冊15分は正直まだ長いけど……悪くないスタート地点だ。
いいですね。VRAM 4GBが動作ラインなのは、多くの人にとって現実的に使えるポイントです。GGUFとMLXの重みを初日から提供してくれて感謝。コミュニティ任せにしなかったのが素晴らしい。
一つ質問ですが、マルチカラムのレイアウトや複雑な表の読み取り精度は、dots.ocrやQwen3-VLと比べてどうですか?MarkdownのOCRはサイドバーや脚注、結合されたセルがあると読み取り順序が崩れがちなので。あと、手書き文字にも対応しているのか、それとも今回のリリースでは対象外なのかも気になります。
とにかく、今週中にいろいろ試してみます!
このタイプのドキュメントでかなり学習させているので、表の出力はMarkdownの中にHTMLを埋め込む形にしています。Markdownだけでやるよりずっと精度がいいですよ。ベースモデルがHTMLで大量に学習しているし、表の構造を壊す原因になる「|」の書き忘れも減るので。
ボックスの中にさらにボックスがあるような複雑なレイアウトも扱えるようになりますしね。
なので、かなりうまく動くはずです。
手書き文字についてはメインの用途ではありませんが、一応学習はさせています。Hugging Faceのスペースでぜひ試してみてください。大抵の用途には十分対応できると思いますよ。
これを要約してくれるAIが必要だな。ちょっと待ってて
LLMが画像を取り込んで、画像のように見えるテキストを出力するってこと(実際はテキストなんだけど)
金曜に試してみたけど、あまり調整しなくてもいい結果が出たよ。デジタル新聞向けのコツってあるかな?今Gemini Flash 3の代わりを探してて。性能はすごくいいんだけど、コストがすぐにかさんじゃうから。
DPIを調整してみるのがいいかも。テストした感じだと150〜170 DPIがベストだけど、数値を上げてみる価値はあると思う。もしMarkdown化するなら、OpenCVなんかでページを分割するのも有効ですよ。
すぐ返信してくれてありがとう!時間があるときに試してみるよ。素晴らしい仕事だね!
20~30ページ程度の小規模なテストパックを、いくつかのレイアウト(密なカラム、広告、写真など)で走らせてみるといいよ。失敗したページは別途まとめて、それだけ高コストなモデルに回せばいい。そうすれば、推測に頼らずにローカルモデルがどこで破綻するのかを正確に測れるはずだ。
コストがすぐに積み上がっちゃうんだよね
月額サブスクを使えばいいよ。5時間の上限に達したら、ページをキューに入れたまま放置しておけばOK。自分はこれでClaudeを使ってるけど、かなり快適だよ。
まさか俺が毎朝6時に200枚もの新聞の画像をGeminiに手動でダウンロードしてアップロードしてると思ってんの?それとも何か見落としてるだけかな。
これは興味深いですね、ありがとうございます!
trafilaturaみたいなツールを使ってWebページをMarkdownに変換する用途には使えますか?保存してあるWebページがたくさんあって、そこからコンテンツを抽出したいんです。
正直に言うと、Webページは主な用途ではないので、Webサイトに関してはそこまでガッツリ学習させてはいません。モデルサイズを考えれば悪くはないと思うけど、突出して優れているわけではないかな。
試すなら、HTMLテキストを入力する場合と、画面キャプチャの画像を入力する場合の両方でテストしてみて。
ごめん、もっと読んで理解したよ。HTMLの抽出はまた別の問題だし、これは画像も理解できるみたいだね。
HTMLならいつでもスクリーンショットを撮ればいいじゃん。
このモデルって、動画に焼き付けられた中国語の字幕をOCRするのに向いてるかな?何かおすすめはある?今はvideocrっていうアプリを使ってるんだけど。
今のところかなり良い感じ。QwenやGemma(MoE、4B、9B、dense)で苦労した部分もこれならうまくいったよ。自分のワークフローに組み込んでみようと思う。ありがとう!
どういたしまして!褒めてくれて本当にありがとう。
Hugging Faceのリポジトリにもぜひ「いいね」してあげてね😉
もしvLLMでこれを読み込んでウェイトのキーエラーやサイレントエラーが起きるなら、Qwen3.5 VLMのウェイトがたまにsafetensorsで「model.language_model.*」というプレフィックスをつけてシリアライズされるのが原因かも。vLLMはフラットなレイアウトを期待してるから、読み込む前にそのプレフィックスを取り除く必要があるよ。あとconfig.jsonに残ってる「mrope_section_size」も同じ問題を起こすね。vLLMのQwen2-VLバックエンドがこれに引っかかっちゃうんだ。ウェイト変換スクリプトを2行修正するか、単純にconfig.jsonからmropeキーを削除しちゃえばOK。あと「--load-format safetensors」を使うと、マルチシャードのチェックポイントならデフォルトより4〜7倍速く読み込めるよ。
んー、こっちではエラーもサイレントな失敗も起きてないよ。vLLM 0.20.0以降を使ってるけど、古いバージョンを使ってるのかな?
ありがとう!最新版だと思ってたけど、実際は0.17.0だったことに気づいたよ。助かった :)
今これ (OCR:古いフランス語の本からJSON形式でデータを抽出するベストな方法は?)を実現しようとしてるんだけど、このモデルで手伝ってもらえるかな?
次のどちらがいいと思う?
- まずgranite-docling-2stage-258m でHTMLを生成してから、そのHTMLをNuExtract3に渡す
- それとも直接NuExtract3を使う
面白いし、かなり複雑なタスクだね。NuExtract3なら全部一発でいけると思うよ。さっきHugging FaceのSpaceで試してみた! https://huggingface.co/spaces/numind/NuExtract3 (サインアップ不要で使えるよ)
モデルが扱いやすいようにテンプレートを少し変えてみた。
{"Page number": "integer",
"Title": "verbatim-string",
"Verse content": "string",
"Commentaire content": "string"}
「Extract JSON」で実行したらこんな感じの結果になったよ。
[抽出されたJSONの内容]
どう思う?個人的にはかなり良い出来だと思う。
すごくいい結果だね。ありがと、試してみるよ!
役に立ってよかった
こういう投稿こそ、もっと増えてほしいね。自分の会社にはSaaS向けの機能があって、顧客が「デジタルフォーム」としてお金を払ってるものがあるんだ。簡単に言うと、紙のフォームをソフトウェア上で再現して、タスクや業務を通じてデータを自動入力したり、署名や画像を添付したりできる機能。これを、「自動マニュアル読み取り→洗練された翻訳レイヤー→デジタルフォーム作成」という流れに拡張できれば、ClickUpやMonday.comみたいな大手に簡単に売り込めるよ。今まではシステムで現実のフォームに近いデジタルフォームを作るのに1〜2日かかってたのが(デザインの習得が難しいし)、たった1分、写真を撮るだけで済むようになるわけだからね。どういう仕組みかとか、もし興味があればDMで詳しく話せるよ。
いいね!!!学術論文でこれ使った人いたら、どんな感じか教えてほしい!
すごくいいね
Ollamaでリリースしてくれる予定はある?最新モデルが1年以上前のだからさ。
モデルを公開してくれてありがとう!汎用的なLLMとの比較以外に、同じ目的や似たような目的で作られたMinerUやDoclingと比較したことはある?
データ入力ファームを立ち上げてるんだけど、これで何千人もの秘書の仕事を奪うつもりだよ!
今日テストしてたんだけど、複雑な表の抽出でちゃんと機能するモデルに出会えたのは今回が初めてだよ。これまでOCRモデル、paddle、glm、dotsとか全部試してきたけど、どれも単純~中程度のドキュメントには良くても、これは後処理で修正しなくても箱から出してすぐ使えたよ。本当にありがとう!