【要約】AIに画像を貼れないので、画面の一部をOCRして「純テキスト」にするツールを作った [Zenn_Python] | Summary by TechDistill
> Source: Zenn_Python
Execute Primary Source
// Problem
開発者や運用者が、セキュリティの厳しい環境でAIチャットを利用する際に、情報の転記作業が大きな障壁となっている。具体的には以下の課題が存在する。
- ・ファイルアップロード禁止による、スクリーンショットの直接共有が困難。
- ・エラーメッセージやログを手入力する際の手間と、入力ミスの発生。
- ・AIが生成するMarkdown装飾や前置きが、コピペ時のノイズになる点。
// Approach
開発者は、GUIによる領域選択とプロンプトエンジニアリングを組み合わせ、情報の抽出を自動化する手法を採用した。
- ・wxPythonを用いた半透明ウィンドウによる、直感的なドラッグ操作での領域指定。
- ・System Promptによる出力制御を行い、改行やインデントを維持しつつ装飾を排除。
- ・OpenAI互換APIの仕様を利用し、OpenAIとOllamaの接続コードを共通化。
- ・Ollama利用時に、画像認識が可能な「ビジョンモデル」を自動判定する機能の実装。
// Result
画面上の情報を、最小限の操作で即座に「純テキスト」として取得できる環境を構築した。
- ・ドラッグ操作のみで、レイアウトを維持したままテキストをコピー可能。
- ・Ollamaの活用により、外部へデータを送らずにローカルでOCR処理を完結。
- ・AIの余計な解説を排除し、チャットへの貼り付け作業を効率化。
Senior Engineer Insight
> 個人の生産性向上ツールとして非常に実用的である。特にSystem Promptを用いて「純テキストのみ」を出力させる制御は、LLMの出力を後続プロセスで利用する際の定石と言える。また、Ollamaへの対応は、セキュリティ要件の厳しい現場でのニーズを的確に捉えている。実戦投入を検討する場合、GUIの描画パフォーマンスの最適化や、APIエラー時のリトライ処理、依存ライブラリのパッケージング(PyInstaller等)による配布容易性の向上が求められる。