CF-ai-TGbot:Cloudflare AI Gateway連携の高機能Telegramボット
概要
CF-ai-TGbotはNode.jsで開発されたTelegram用のAIチャットボットで、Cloudflare AI Gatewayを利用して複数の大規模言語モデル(LLM)と連携します。グループチャット内での対話履歴を保持し、自然な連続会話を実現。モデルの切替もコマンド一つで可能なため、用途やトーンに合わせて最適なAIを選択可能です。また、AIの応答はMarkdown形式からTelegram対応のHTMLへ変換され、美しいフォーマットで表示されます。Cloudflareを経由することでAPIキーの秘匿やリクエストのログ収集、キャッシュ管理も行い、拡張性と安全性を兼ね備えています。
リポジトリの統計情報
- スター数: 20
- フォーク数: 3
- ウォッチャー数: 20
- コミット数: 12
- ファイル数: 5
- メインの言語: JavaScript
主な特徴
- Cloudflare AI Gateway経由で複数の大規模言語モデルと連携
- 会話の文脈を記憶し、連続した自然な対話を実現
/setmodel
コマンドで簡単にAIモデルを動的切替可能- Markdown形式のAI応答をTelegram対応のHTMLに変換し見やすく表示
技術的なポイント
CF-ai-TGbotはNode.js環境で動作し、Telegram Bot APIを駆使してユーザーとのインタラクションを実現しています。特徴的なのはCloudflare AI Gatewayの活用です。これにより、すべてのAIリクエストはCloudflareを経由して送信されます。Cloudflare側でログの収集やリクエストのキャッシュを行えるため、API利用の効率化とセキュリティ強化が可能です。また、APIキーはCloudflareに集約されるため、リポジトリやクライアント側に直接キーを持つ必要がなく、安全性が高まっています。
会話の文脈管理はTelegramグループのチャット履歴から状態を保持する形で実装されており、過去の発言を踏まえた連続的な質問応答が可能となっています。記憶の長さは調整可能で、言語モデルの制限を超えない範囲で快適な会話体験を提供します。
さらに、ユーザーは/setmodel
コマンドでLlama 3やMistralなど複数の事前設定されたAIモデルを簡単に切り替えられます。これにより、用途に応じて高性能なモデルを選択したり、軽量モデルで高速応答を得たりと柔軟な運用が実現します。
AIが生成した応答はMarkdown形式で返ってくることが多いですが、本ボットはこれをTelegramがサポートするHTML形式に自動変換します。コードブロックや強調表示、リストなどが正しく表示されるため、ユーザーは読みやすいメッセージを受け取れます。これにより、開発者や技術者の利用に適した環境を提供しています。
構成ファイルはシンプルで.env
に環境変数を設定し、bot.js
がメインの処理を担当。依存関係はpackage.json
にまとめられており、Node.jsの標準的な開発フローに沿っています。全体として、拡張性・保守性の高い設計がなされている点も注目です。
プロジェクトの構成
主要なファイルとディレクトリ:
.env
: APIキーや設定値などの環境変数を管理LICENSE
: 使用許諾情報README.md
: プロジェクト概要と利用方法の説明bot.js
: Telegramボットのメインロジックpackage.json
: 依存パッケージやスクリプトの管理
まとめ
Cloudflare AI Gatewayを活用した柔軟かつ高性能なTelegram AIチャットボット。
リポジトリ情報:
- 名前: cf-ai-TGbot
- 説明: 説明なし
- スター数: 20
- 言語: JavaScript
- URL: https://github.com/Johnsheng1/cf-ai-TGbot
- オーナー: Johnsheng1
- アバター: https://avatars.githubusercontent.com/u/138360646?v=4