はじめに
AIの進化が企業内での業務効率化に大きな影響を与えている今日、どのようなAIアプリケーションが実際に最も効果を発揮しているのかを明らかにします。 特に、LLMを利用した「誤字脱字を確認するツール」が社内で最も使用されているという驚きの結果について、その特性と効果に焦点を当てて解説します。
背景と開発の経緯
社内で導入されているAIを活用した業務効率化アプリはいくつかあります。具体的には「CSの応答補助ツール」や「薬機法を確認するツール」などが存在しています。しかし、今回の記事の主題となる「誤字脱字を確認するツール」は、これらの中で最も頻繁に使用されているアプリです。
この「誤字脱字を確認するツール」の開発は、私自身がブログや文書のダブルチェックを行っている過程で生まれました。特に、ダブルチェックを行う際に「このミスは事前に修正できたのでは?」と考える瞬間が多くありました。実際に機械的にこのミスを発見できるのか、ChatGPTをテストしたところ、誤字脱字の修正が効率的に行えることを発見しました。それによって、手動での校正作業にかかる時間と労力が削減できる可能性に気づき、このアプリの開発に至りました。
アプリの仕組み
このアプリには大きな特徴が二つあります。
- プロンプトの入力が不要
- ChatGPTでの誤字脱字確認は、毎回プロンプトを入力する必要がありますが、このアプリではその手間を省きます。
- トークン長の問題を解消
- ChatGPTは一定のトークン長しか受け付けませんが、このアプリでは適切な長さにテキストを分割して誤字脱字を確認します。
以下がそのサンプルコードになります。
まずは、テキストを分割する部分です。
text = uploaded_file.getvalue().decode('utf-8') japanese_spliter = JapaneseCharacterTextSplitter( chunk_size=700, chunk_overlap=0, ) text_chunks = japanese_spliter.split_text(text)
TextSplitterはこちらを参考にしています。
次はチャンクごとにGPTにチェックさせる部分です。
for i, chunk in enumerate(text_chunks): st.subheader("chunk {}".format(i+1)) prompt = load_prompt_template() chain = LLMChain( llm=load_chat_model(), prompt=prompt ) st.markdown("**:blue[チェックした文章]**") st.markdown(chunk) st.markdown("**:red[AIからの出力]**") placeholder = st.empty() results = chain.run(chunk, callbacks=[PrintRetrievalHandler(placeholder)]) st.divider()
これらをStreamlitを使用して画面に出力しています。
実際の管理画面は以下のように非常にシンプルです。
実際に検知すると以下のような出力になります。
シンプルな設計
このアプリの仕組みはとてもシンプルで、これ以上の要素は一切入れていません。シンプルながらも、上記の特徴によって大きな効果を発揮しています。
ただし、このツールはあくまでGPTによる確認に限られ、完全な修正機能ではありません。機械が気がつける部分と人間にしか気がつけない部分のバランスが重要です。
効果と評価
このアプリが最も社内で利用されている理由は、日常業務での無駄をうまく排除できるからです。具体的には、私自身の業務経験から生まれた、微細ですが重要な課題を解決しています。
今後の展望
社内での他のアプリ開発も進行中ですが、このような日常業務での小さな問題解消に焦点を当てたアプリが効果を発揮すると感じています。 また、簡単に誰でもこのようなアプリを作成できるからこそ、必要に応じて自分自身で使い捨てのアプリを開発して使用し、不要になれば捨てるといったプロセスが出来上がるのではないかと考えています。