OllamaVisionLaTeX — LaTeX画像をコード化するLlama 3.2 Visionアプリ
概要
LaTeX OCR with Llama 3.2 Visionは、画像中の数式をLaTeXコードに変換してレンダリングまで行うStreamlitアプリです。ユーザーはPNG/JPG/JPEG形式の画像をアップロードすると、バックエンドでLlama 3.2 Vision(ollama.chat API)に問い合わせ、モデル出力を受け取ってからポストプロセス(不要なトークンや重複の削除、整形)を行い、最終的に抽出されたLaTeXコードとそのレンダリング結果を表示します。ドキュメントは自動生成(Dosu)をベースに手動修正が施されています。実験的なスピンオフ実装として、素早くOCR+生成系モデルの挙動を確認する用途に向いています。
リポジトリの統計情報
- スター数: 1
- フォーク数: 0
- ウォッチャー数: 1
- コミット数: 2
- ファイル数: 3
- メインの言語: Python
主な特徴
- Llama 3.2 Vision(Ollama)を用いた画像→LaTeX変換のプロトタイプ実装
- Streamlitで提供される簡易UIにより画像アップロードと結果確認が容易
- 出力に対するポストプロセス(ノイズ除去・重複削除)を実装
- 生成されたLaTeXコードのレンダリング表示による視覚的検証機能
技術的なポイント
本プロジェクトは軽量なデモとして、Vision対応の大規模言語モデルをOCR用途に転用する流れを示しています。入力はPNG/JPG/JPEGの数式画像で、フロントエンドはStreamlit(app.py)によりユーザー操作を受け付けます。バックエンド呼び出しはollama.chat APIを通じてLlama 3.2 Visionモデルへプロンプト付きで問い合わせを行い、モデルのテキスト出力(LaTeX候補)を受け取ります。受け取った出力にはそのままでは不要な補填や重複、説明文が混入することがあるため、リポジトリではポストプロセスでクリーニング(不要行の削除、トークン整形)、および重複する候補のデデュープ処理を行っています。さらに、生成結果をMathJaxなどでレンダリングして視覚的に確認できる仕組みを用意することで、モデルの誤認識や表記揺れを目視でチェックできます。技術的な課題としては、モデルが複雑な式や記号類、手書き風の入力に対して誤変換しやすい点、生成ベースのため確実性に欠ける点、そして外部API(Ollama)依存により実行環境の準備が必要な点が挙げられます。改善案としては、微調整済みOCR専用モデルの併用、式構造のパース後にシンボル単位で検証する後処理ルールの導入、複数ショット提示や出力候補のスコアリングによる信頼度推定などが考えられます。リポジトリにはサンプル画像(kl_div.png)や最小構成のapp.pyが含まれており、試作・評価を迅速に始められる構成です。
プロジェクトの構成
主要なファイルとディレクトリ:
- README.md: file
- app.py: file
- kl_div.png: file
まとめ
手早くLlama VisionでLaTeX OCRを試せる実験的サンプルです。
リポジトリ情報:
- 名前: OllamaVisionLaTeX
- 説明: Recognize LaTeX images into LaTeX code, terribly, spinoff on https://github.com/patchy631/ai-engineering-hub/blob/main/LaTeX-OCR-with-Llama/README.md
- スター数: 1
- 言語: Python
- URL: https://github.com/Daidanny008/OllamaVisionLaTeX
- オーナー: Daidanny008
- アバター: https://avatars.githubusercontent.com/u/59802789?v=4
READMEの抜粋:
Documentation generated by Dosu, some manual changes
LaTeX OCR with Llama 3.2 Vision is a Streamlit application that extracts LaTeX code from images containing mathematical equations using the Llama 3.2 Vision model. The app enables users to upload images (PNG, JPG, JPEG) and receive the corresponding LaTeX code, which is also rendered for visual verification. The extraction process leverages the ollama.chat API and applies post-processing to clean and deduplicate the output before display…