OpenAI (ChatGPT models) で Telegram の AI ボットを作る
LangBot で OpenAI (ChatGPT models) を使った Telegram の AI ボットを動かす手順:モデル設定、ボットの認証情報、ネットワーク、テスト、トラブルシューティング。
このレシピでは OpenAI (ChatGPT models) のモデルを Telegram のボットにつなぎます。LangBot が Telegram のメッセージを受け取り、パイプラインで処理して返信するので、プラットフォーム連携のコードは不要です。
LangBot の内蔵エージェントで OpenAI の GPT モデルを使います。ナレッジベース、MCP ツール、Skills、コードサンドボックスも追加できます。
必要なもの
- 稼働中の LangBot:LangBot Cloud(サーバー不要)、または Docker や
uvx langbotによるセルフホスト。 - LangBot から呼び出せる OpenAI (ChatGPT models) のアカウントまたはサーバー。
- @BotFather で取得したボットトークン(
/newbotを送り、botで終わるユーザー名を付けます)。
ネットワーク
Telegram はロングポーリングを使うため、LangBot から api.telegram.org へ外向きに接続できれば十分です。公開 Webhook URL は不要で、手元の PC や自宅サーバーでも動きます。
1. OpenAI (ChatGPT models) のモデルを追加する
- OpenAI のコンソールで API キーを作成します。
- LangBot の モデル で LLM モデルを追加し、プロバイダーに OpenAI、リクエスト URL に
https://api.openai.com/v1を指定して、API キーとモデル ID を入力します。 - モデルが関数呼び出しに対応していれば ツール使用 を有効にします。MCP ツール、Skills、サンドボックスに必要です。
- モデル ID は OpenAI のモデル一覧にある現行のものを使います。OpenAI 互換のエンドポイントも同じ手順で、それぞれのリクエスト URL を指定します。
2. パイプラインを作成する
LangBot WebUI の パイプライン でパイプラインを作成(または既定のものを編集)し、AI を次のように設定します。
| 項目 | 設定値 |
|---|---|
| ランナー | Local Agent(内蔵エージェント) |
| モデル | 追加したモデル。予備モデルも指定できます。 |
| プロンプト | ボットの役割、口調、してはいけないこと。 |
| ナレッジベース | 任意。ナレッジベースを付けると資料に基づいて回答します。 |
3. Telegram のボットを作成する
- ボット で新しいボットを作成し、Telegram アダプター(LangBot 4.11 の新しいアダプター。非推奨の旧版は選ばない)を選びます。
- トークンを貼り付け、必要に応じて Markdown とストリーミングを有効にし、ボットを有効化して保存します。
4. 紐付けてテストする
ボットを開いて作成したパイプラインを選び、保存してボットが有効になっていることを確認します。
ボットとの個人チャットで Start を押してからメッセージを送ります。グループではパイプラインのトリガー条件(ボットへのメンションや返信など)を満たす必要があります。
トラブルシューティング
- ネットワークや地域のエラーは、LangBot からリクエスト URL に到達できないことが原因です。制限のある環境では到達可能な互換ゲートウェイを使います。
- 1 つのトークンをポーリングできるのは 1 インスタンスだけです。返信がない場合は、同じボットを別の LangBot インスタンスやスクリプトで有効にしていないか確認してください。
- WebUI の モニタリング に、すべてのメッセージ、パイプラインの実行、エラーが記録されます。
よくある質問
Telegram には公開 IP のあるサーバーが必要ですか?
いいえ。Telegram はロングポーリングを使うため、LangBot から api.telegram.org へ外向きに接続できれば十分です。公開 Webhook URL は不要で、手元の PC や自宅サーバーでも動きます。
Telegram のボットはストリーミング返信に対応していますか?
はい。ボットでストリーミングを有効にし、AI 側もストリーミングに対応している必要があります。詳しくはプラットフォーム機能一覧をご覧ください。
同じ OpenAI (ChatGPT models) の設定を他のプラットフォームでも使えますか?
はい。1 つのパイプラインを複数のボットに紐付けられるので、同じ設定で複数のプラットフォームに同時に応答できます。
関連ガイド
- Telegram の詳しい設定ガイド
- モデルの設定
- Telegram で使える他の AI:Dify · n8n · Coze · Langflow · DeepSeek
- OpenAI (ChatGPT models) を他のプラットフォームで使う:Discord · Slack · Lark(Feishu) · DingTalk · WeCom(社内アプリ) · WeCom インテリジェントボット
