こんにちは、萩田です。
今回はエンジニアチームによるハッカソンを開催したので、その様子をお送りしたいと思います。
テーマは今回『AIエージェント』です!
参加選手は以下の4人。テーマは以下だ!
長司「AIでMySQLのスロークエリを分析をやってみるぜ!」
熊野「AIで社内サポートSlackエージェント開発するぜ!」
馬場「AIでおすすめのクリニックをレコメンドするぜ!」
萩田「AIでのリアルタイム電話対応をやってみるぜ!」
とにかくすげーぜみんな! いいもん作ってくれよな。
レディー… ファイッッ!!

従来はデータベースで発生した遅延ログ=『スロークエリ』を、人力で解析していた。
これをAI(Claude AI)で解析し、省力化と対応速度向上を図った。
さらに、『どう直すべきか提案』してほしい。
Python 3.11.9 / MySQL / Claude AI
テーブル情報などの匿名化に時間を取られたが、他は比較的スムーズに進み、提案を返すところまでは実装できた
課題:
- 提案した内容をもとに、自律的にDB設定変更・改善・計測までさせたい
- 画像・音声・動画を生かしたマルチモーダルな機能開発も取り組んでいきたい
【成功】無事にClaudeを使って『SQLクエリチューニングのAI化』を実現!

お客様対応を円滑化するため、『サポート熟練者の回答を元にAI化』したい。
まずは社内利用専用で、Slack経由でプロダクトについて回答してほしい。
Slack API / Azure OpenAI(GPT-4)
SlackのEvent API→WEBサーバ→Azure OpenAIという処理の流れを実装した。
Slack API連携の設定が地味に引っかかったが、他は問題なし!
【成功】日常利用しているSlack経由で、プロダクトに関するQ&Aロボを実現!

ブラウザ音声入力より、近隣クリニックをGoogleMapからレコメンドしてほしい!
Livekit / OpenAI Whisper / OpenAI GPT-4o / Cartesia Sonic-2
以下の3 つが難しく、時間をかけて対応した。
- 技術選定
AI はとにかく進化が早いので、いわゆる枯れた技術がなく、どのようなAPI やフレームワークを使って実装するかがとても悩んだ。
音声変換のスピードや日本語対応、安定さ、フレームワークによる抽象化度合い(あまり依存しすぎると変更が辛い)など、ドキュメントだけでなく実際に動かした上での判断を丁寧にした。
- Function Calling
AI エージェントの肝と言えばAPI の呼び出しだが、Livekit の場合独自で実装されているので、中々キャッチアップするのが大変だった。
MCP のような共通プロトコルが整備されてくると、開発者としてはありがたいと思う。
- Google マップAPI
久々に使ったので、Nearby Search など最近のAPI の仕様変更に地味に悩まされた。
【成功】無事AIレコメンドシステムを実現できた!

AIでのリアルタイム電話対応を実装してみたい。普通に電話をかけて、会話する感覚でやりとりできるようにしたい。
Python 3.9 / Twilio API(Stream機能で着電)/ OpenAI Realtime API(Twilioの着電を転送)
Stream(音声の動的なリアルタイムデータ)を両方向で処理するため、WebSocketを、『Twilio - WEBサーバ - OpenAI』の3者で張るところが繊細だった。
最先端のOpenAI Realtime APIを投入! 情報が限られていて困ったところもあったが、公式情報などを参照しなんとか価値になったと思う。
【成功】無事、音声電話+AI対応を実現できた!
こんな感じで『リザーブプラス AIハッカソン』は無事に終了しました。
今回はAIでの業務支援をテーマとし、さまざまな新技術を検証することができました。
今後もこのような新技術を活用し、医療現場に貢献できればと思っています。