実装例
実践的なAIボットの実装例を紹介します。これらのサンプルコードを参考に、用途に応じたボットを開発できます。
📦 GitHubリポジトリ: https://github.com/urth-inc/metatell-ai-bot
📂 実装例ディレクトリ: https://github.com/urth-inc/metatell-ai-bot/tree/develop/examples
サンプルボット一覧
metatell Bot SDKには以下のサンプル実装が含まれています:
| サンプル名 | 説明 | 主な機能 |
|---|---|---|
basic-bot | 基本的なチャットボット | メッセージ応答、基本的な対話 |
voice-bot | 音声対話ボット | 音声入出力、リアルタイム応答 |
speech-to-speech-bot | 音声間変換ボット | 音声認識→処理→音声合成 |
dify-bot | Dify統合ボット | 外部AI APIとの連携 |
voice-bot の概要
音声入出力に対応したインタラクティブなボット実装です。
主な機能
- リアルタイム音声認識
- テキスト音声変換(TTS)
- キーボードコマンドによる操作
- 音声コマンドへの応答
セットアップと起動
# サンプルディレクトリに移動
cd examples/voice-bot
# 依存関係のインストール
npm install
# 環境変数の設定
cp .env.example .env
# .envファイルを編集してルームIDを設定
# ボットの起動
npm start YOUR_ROOM_URL
basic-bot の概要
シンプルなコマンドベースのチャットボットです。
主な機能
- メンションによるコマンド実行
- ヘルプコマンド
- 時刻表示、ダイスロール
- アバター制御(移動、アニメーション)
- 新規ユーザーへの自動挨拶
speech-to-speech-bot の概要
音声を認識して処理し、音声で応答するボットです。
主な機能
- 音声ストリームの処理
- リアルタイム音声認識
- テキスト処理(翻訳、要約など)
- 音声合成と配信
dify-bot の概要
Dify APIと連携する高度なAIボットです。
主な機能
- 外部AI APIとの連携
- 会話履歴の管理
- ユーザーごとのコンテキスト保持
- タイピング表示
カスタムボットの作成
用途に応じて様々なボットを作成できます:
ゲームマス ターボット
- クイズゲームの進行
- スコア管理
- プレイヤー管理
サポートボット
- FAQ応答
- チケット作成
- ユーザーガイダンス
モデレーターボット
- ルール違反の検出
- ユーザー管理
- 統計レポート
デプロイと運用
PM2を使用した運用
# PM2でボットを起動
pm2 start ecosystem.config.js
# ログの確認
pm2 logs metatell-bot
# 再起動
pm2 restart metatell-bot
# 停止
pm2 stop metatell-bot
Dockerを使用した運用
# イメージのビルド
docker build -t metatell-bot .
# コンテナの起動
docker run -d --name my-bot metatell-bot