AI愛子設計ログ8 LINE愛子bot

続きです。全てのシリーズはこちら
※本記事は「技術解説編」です。先に公開したユーモア中心の「おちゃらけ版」とは若干時系列が異なるため、シリーズでお読みいただくと理解が深まるかと思います。

■開発初日に3時間で出来あがってしまったLINE愛子bot

「こんにちは。AIアシスタントの愛子です」

と、LINEロボット(LINE bot)から返事が来るまでの作業をここでまとめます。

■開発初日3時間の衝撃

AIアシスタント「愛子」は、LINE Bot(ロボット)としてユーザーとチャット形式で対話する構成。実はこのBot、開発初日にわずか3時間で会話可能な状態にまで仕上がってしまいました。

なぜそんなに早かったのか?

その答えは、LINE Messaging APIFastAPI(Python製の非同期・型安全なAPI開発向けWebフレームワーク)の組み合わせでシンプル構成にできたことです。

ここでは、具体的な実装手順を細かく解説していきます。

■STEP 1:LINE Developer ConsoleでBotを登録

まず、LINE Botを使うにはLINEの開発者プラットフォームであるLINE Developersにアクセスし、以下の作業を行います:

▶ 作業概要:

  1. LINEアカウントでログイン
  2. 「プロバイダー」を作成(開発者または企業名でOK)
  3. チャネルを新規作成
    • チャネル種別:Messaging API
    • チャネル名、アイコン、説明、WebサイトURLなどを入力
  4. チャネルシークレット/チャネルアクセストークンの取得
    • これらが後述のPythonコードとLINEとの橋渡しになります。

■STEP 2:Webhookの準備 ― Python+FastAPI

次に、LINEからのリクエスト(Webhook)を受け取るサーバーをPython+FastAPIで構築しました。

■STEP 5:セキュリティとロギングの強化

Googleはよく考えていて、セキュリティがデプロイの時点で保証すると設計思想です。確かにコマンドラインで各種セキュリティコードを入れてデプロイさせなくてはいけないので、取っつきにくい部分はあるのですが、基本的には慣れてしまえばただのコピペ。内容が何なのかなど気にせず実行でき、かつ、この時にしかセキュリティコードは渡さないので、それこそ盤石の安全性です。

これはRenderで開発してた時にRenderにセキュリティ情報。ファイルはGitHUBに置くなど少し心許なかったのですが、シンプルでわかりやすい鍵の管理です。

これにより、以下の実装が可能となりました。

  • Google Sheetsへの発言ログ保存(Google Sheets API)
  • スプレッドシートごとのアクセス制御(Driveの共有設定)
  • リトライ処理・エラーハンドリング

■LINE愛子bot 爆誕

なんか難しそうな書き方ではありますが、全部AIの指示に従って契約を進めていけばいいだけです。

LINE Messaging API、FastAPI、OpenAI、Google Drive――すべてがクラウドで完結し、無料または低コストで運用できる時代にすでになっています。

Bot構築に3時間しかかからなかったのは、“技術的に困難ではないが、設計に思想が必要”ということだったのですが、全てAI愛子が道を示してくれましたことで、何も調べることなく、勉強することもなく、欲しいものがわずか3時間で手に入りました。

これは凄いことです。

───しかし、そんなに世の中は甘くはありませんでした。
無限に続くかと思われるバグチェックの嵐(既に紹介しているあれこれ)に飲まれていくのはこの後の話です。


コメント

コメントを残す