続きです。全てのシリーズはこちら
※本記事は「技術解説編」です。先に公開したユーモア中心の「おちゃらけ版」とは若干時系列が異なるため、シリーズでお読みいただくと理解が深まるかと思います。
本記事は、生産性改善32 LINE愛子botのできることまとめ(開発開始から2か月)の技術寄り解説版とします。

サンネーム社のAIアシスタント「愛子」LINE Botは、2025年6月2日の稼働開始以来、わずか2か月で勤怠管理から社内情報検索、PDF配信、スケジュール参照まで多彩な機能を実装しました。本記事では、その技術的ハイライトをまとめます。
■開発環境とアーキテクチャ設計
バックエンド:Python+FlaskアプリをGoogle Cloud Run(GCR)でホスティング。
※初期はRender環境でのデプロイに四苦八苦。鍵ファイルを誤ってGitHub公開してしまい、重いセキュリティ警告を受領するハプニングも。
認証基盤:当初はRender+サービスアカウント鍵運用だったが、鍵管理の煩雑さを解消すべくGCR+Cloud Functions(GCF)構成へ移行。
また、“爆速API化”と非同期処理を狙って、この機会にFlaskからFastAPIへ移行。
※移行途中、Cloud Functions のトリガー設定ミスで2日間動かず、コードと設定を何度も行ったり来たり。
キャッシュ戦略:スプレッドシート読み込みのボトルネック対策として、起動時に各種シート(従業員情報/取引先情報/会社情報)をキャッシュして、高速検索を実現。
※キャッシュを有効にしたら、逆に「キャッシュされていないはずの新規データが反映されない」バグに直面。
■実装フェーズの歩み
勤怠管理システム(QRコード打刻)
QRコード(固定文字列+日付)をLINEで受信 → PIL+pyzbarでデコード
UIDに紐づけた従業員名を取得し、Google Sheetsへ「出勤/退勤」タイムスタンプ記録
時間帯判定ロジック(3:00–11:00を「出勤」、11:00–翌3:00を「退勤」)と、早出・残業自動算出を実装
200回制限のPUSH通知をreplyメッセージに切り替え、土日判定や平日日報切り替えも自動化
最初のプロトタイプは通知が全く返らず、原因調査に数日を費やしました。ログすら残らない状態から、環境変数の文字コードミスを発見したときはまさに「灯台下暗し」。
■社内情報検索機能
従業員情報:UID・氏名・役職をスプレッドシートから部分一致検索
取引先情報:会社名・担当者・連絡先を完全一致+部分一致で取得
検索エンジンの曖昧ワード対応は当初OpenAI→後にGemini APIへ一部委譲し、プロンプトで解析精度を向上
ユーザーのフレーズをまるごと会社名と判断してしまい、「該当なし」が返り続ける日々。文章を“の”で切り分ける簡易NLPを導入するまで数日がかりのデバッグに。
■ドキュメント配信 & スケジュール参照
「売上報告」「予定表」コマンドでGoogle Drive内PDFをFlex Messageのボタン付きで返却
社内カレンダー(スプレッドシート)縦軸:日付、横軸:従業員構成のレイアウトを読み込むことで、今日/明日〜3日後までの予定取得を実現
PDF取得機能は動作するものの、LINEのメッセージボリューム上限に何度も引っかかり、返却サイズ削減に1日かけて画像圧縮とリンク方式に落ち着く。無料もしくは低価格で使うには創意工夫と根性が必要だという2か月となる。
■会話ログ・音声データ管理
LINE送受信メッセージをCloud Run経由でCloud FunctionsへPOST → Google Sheetsへ記録
「音声データ」フォルダへの録音アップロード機能を追加
サービスアカウントの認証トークン更新忘れで3日間ログが0件。過去ログを一括インポートする苦行を経験。ソフトウエア開発に最も必要なのはログです。経験のない人は症状だけで問題が見つかり解決すると信じてますが、それは不可能です。ただそれを可能に変える可能性が出てきたのがAIでした。しかしAIの言うとおりに改良を続けると、関係のないコードに次々と修正を加えることになり、返ってデグレの温床に・・・
■技術的チャレンジ
認証情報漏洩リスク:Render上のJSON鍵公開→GCPネイティブ認証へ移行。
スプレッドシートI/O遅延:起動キャッシュ+定期更新スケジュールで改善。
デプロイの安定化:Dockerfileのライブラリバージョン固定、requirements.txt整理。
検索ロジックの複雑化:AIプロンプトを前処理に活用し、人間らしいユーザー意図の解析を実現。
■今後の展望
会話文脈の継承:会話ログから重要情報を抽出し、次の対話に自然に活かす「コンテキスト継承AI」の実装。
タスク管理連携:スケジュール・タスク情報の双方向同期+リマインダー通知機能。
業務自動化:メール要約・返信ドラフト、製造工程監視レポート自動生成などのフルオート化。
そろそろ、AI愛子のメンテナンス期間へ突入します。本家本元のOpenAI社からも使えそうなAIエージェントもリリースされました。使えるのであればLINE愛子botとの融合も視野に入れます。
将来的にどこまでを完成とするのか。それはまだ誰にも分かりません。
コメントを残す