「無料 AI Discord ボット」と検索すると、数十もの選択肢が見つかります。本当に無料のものもありますが、多くはそうではありません。少なくとも、期待する意味での無料とは限りません。この記事では、実際に利用できる選択肢、トレードオフ、AI推論を使うときに「無料」がどのような費用を伴うかを整理します。
「無料のAI」が複雑な理由
LLMを動かすには費用がかかります。ユーザーがメッセージを送り、応答を得るたびに、誰かが計算処理の費用を負担しています。OpenAIやAnthropicのようなホスト型APIはトークン課金です。自前でモデルをホストするなら、ハードウェア、電力、保守の時間を負担します。推論にはゼロではない追加費用が発生するため、完全に避けることはできません。
サービスが「無料のAIボット」を提供するときは、次のいずれかに当てはまります。
- 推論費用を自分で直接払う。たとえば自分のAPIキーを提供する方法です。
- サービスが費用を負担し、有料プラン、広告、データ収集などで回収する。
- 自分のハードウェアで推論を実行する。オープンソースモデルを使います。
- 無料枠の利用量に低めの上限を設け、プロバイダーが負担する計算費用を抑える。
どれに当てはまるかを理解することが、そのボットが本当に自分の用途に合うかを判断する鍵になります。
無料AI Discordボットの3つの種類
1. 自前ホストのオープンソースボット(ソフトウェアは無料、ハードウェアは自分で用意)
AIの使用量上限を第三者に管理されない唯一の方法です。オープンソースのLLMをローカルまたはVPSで動かし、自作またはフォークしたボットを通じてDiscordに接続して、すべてを自分で管理します。
典型的な構成:
- ローカルでモデルを提供するOllama
- Discordボット用のdiscord.pyまたはdiscord.js
- Llama 3.1 8B、Mistral 7B、Gemma 2 9Bなどのモデル
得られるもの:
- 電気代以外のメッセージ単位の費用がない
- モデル、システムプロンプト、データを完全に制御できる
- 第三者によるAIのレート制限がない(Discord自体のAPI制限は適用される)
- AIの推論処理を自分のマシン内に保てる。ただし、メッセージの送受信には引き続きDiscordを使う
引き受けること:
- ハードウェアが必要です。70億パラメーターのモデルを実用的な速度で動かすには、少なくとも8GBのVRAMを持つGPUか、ユニファイドメモリを備えた最近のMacが必要です。CPUでも推論できますが、7Bモデルでは1回の応答に数秒かかるなど低速です。
- 基盤の保守は自分で担当します。更新、再起動、監視、モデルの重みを保存するディスク容量を管理します。
- 品質は最先端モデルに及びません。Llama 3.1 8Bは十分に使えるモデルですが、GPT-4oやClaude Sonnetと同等ではありません。簡単な質問応答や気軽な会話には適していても、繊細な推論や複雑な複数ターンの対話では不足があります。
- ナレッジベース、分析、人への引き継ぎ機能は標準ではありません。必要な機能は自分で作ります。
代表的なモデルの最低ハードウェア要件:
| モデル | パラメーター数 | 必要なVRAM | CPUのみの場合のRAM | GPUでの応答速度 |
|---|---|---|---|---|
| Gemma 2 2B | 2B | 約2GB | 約4GB | 約60トークン/秒 |
| Llama 3.1 8B | 8B | 約6GB | 約10GB | 約40トークン/秒 |
| Mistral 7B | 7B | 約6GB | 約10GB | 約40トークン/秒 |
| Llama 3.1 70B(Q4) | 70B | 約40GB | 約48GB | 約15トークン/秒 |
(速度はRTX 4090で測定した概算です。量子化版はわずかな品質低下と引き換えにメモリ使用量を抑えます。)
2. フリーミアムのマネージドサービス(上限付き無料枠)
AIとボットの基盤を他社がホストする製品です。Webダッシュボードでボットを設定します。無料枠では利用量が限られ、追加利用には料金がかかります。
例:
| サービス | 無料枠 | メッセージ上限 | モデルの制御 | Discord対応 | クレジットカード |
|---|---|---|---|---|---|
| Quickchat AI | 無料プラン | 含まれる利用量はプランによる | プロバイダーが管理する最先端モデル | あり、全プラン | 不要 |
| MEE6 | 無料プラン | AI機能はPremiumのみ | プロバイダーが管理 | あり | 無料枠では不要 |
| Botpress | 無料枠 | 月2,000件の受信メッセージ | 設定可能 | 連携経由 | 不要 |
Quickchat AIの無料プランは、クレジットカードなしで試せます。Discord連携はすべてのプランで使えるので、契約前にボットを接続して実際のユーザーとテストできます。接続はワンクリックです。External AppsからDiscordを開き、Add to your Discord serverをクリックして追加先のサーバーを選びます。有料プランはStarterの月額9ドルからで、年払いなら月額8ドルです。
マネージドサービスの大きな利点は、LLMの推論以外の機能も得られることです。文書やWebサイトから作るナレッジベース、会話分析(感情分析、トピック検出)、複数チャンネルへの公開(同じエージェントをWebサイト、WhatsApp、Slack、Discordで使用)、AIが解決できない場合の人への引き継ぎなどがあります。これらを自前ホストのモデルに一から組み込むには、相応の開発が必要です。
MEE6は、主にモデレーションとコミュニティの交流を支えるボットです。AIチャットはPremium契約が必要です(2026年初頭時点で月額11.99ドル)。無料枠にはレベル機能、基本的なモデレーションコマンド、ウェルカムメッセージが含まれますが、AIとの会話は含まれません。
Botpressの無料枠は、すべてのチャンネルを合わせて月2,000件の受信メッセージです。ビジュアルなフロービルダーがあり、独自のLLM設定に対応しています。ただし、自由な会話より構造化された会話フローを主な用途にしているため、単純なDiscordボットを作る場合はQuickchatより設定が複雑です。
3. 自分のAPIキーを使うボット(LLMプロバイダーに支払う)
3つ目は、サーバーで動くオープンソースボットが、推論のために商用API(OpenAI、Anthropic、Googleなど)を呼び出す方法です。自分のAPIキーを提供します。ボットのコードは無料ですが、モデルプロバイダーへのトークン料金がかかります。
GitHubの例:
- GPT Discord Bot(OpenAIの公式サンプル)
discord.pyとOpenAI Python SDKを使って作られた、さまざまなコミュニティボット
商用APIのメッセージ当たり費用(2026年初頭時点の概算):
| モデル | 入力費用(100万トークン当たり) | 出力費用(100万トークン当たり) | メッセージ当たりの概算費用* |
|---|---|---|---|
| GPT-4o mini | $0.15 | $0.60 | 約$0.0003 |
| GPT-4o | $2.50 | $10.00 | 約$0.005 |
| Claude 3.5 Haiku | $0.80 | $4.00 | 約$0.002 |
| Claude Sonnet 4 | $3.00 | $15.00 | 約$0.007 |
| Gemini 2.0 Flash | $0.10 | $0.40 | 約$0.0002 |
*1往復で入力約500トークン、出力約200トークン、会話履歴なしを想定しています。会話履歴を含めると、入力費用は文脈の長さに比例して増えます。
GPT-4o miniで月1,000件のメッセージを処理すると約0.30ドル、月10,000件なら約3.00ドルです。小さな金額に見えますが、会話履歴を加えると変わります。各メッセージに会話全体の文脈、たとえば直前10ターンを含めると、1件当たりの入力トークンは約500から約5,000へ膨らみます。入力費用が10倍になり、合計費用も増えます。
方法別の費用比較
次の表は、メッセージ量ごとの月額費用の目安です。「自前ホスト」は小型VPSまたは既存のハードウェアを想定し、「自分のAPIキー」はGPT-4o miniの料金、「マネージド」はQuickchat AIの料金を参考にしています。
| 月間メッセージ数 | 自前ホスト(OllamaとVPS) | 自分のAPIキー(GPT-4o mini) | マネージド(Quickchat AI) |
|---|---|---|---|
| 100 | 約5~20ドル(VPS費用) | 約0.03ドル | 無料プラン、またはStarter月額9ドル |
| 1,000 | 約5~20ドル(VPS費用) | 約0.30~3.00ドル | Starter月額9ドル、またはBasic月額29ドル |
| 5,000 | 約15~40ドル(VPS費用) | 約1.50~15.00ドル | Essential月額99ドル、またはProfessional月額299ドル |
| 10,000 | 約30~80ドル(VPS費用) | 約3.00~30.00ドル | Professional月額299ドル、またはBusiness月額999ドル |
| 35,000 | 約60~150ドル(VPS費用) | 約10.50~105.00ドル | Business月額999ドル、またはEnterpriseは1解決当たり0.50ドルから |
自前ホスト欄の幅は、CPUのみのVPSを使うか、GPUインスタンスを使うかによります。CPUは安価ですが応答が遅くなります。Hetznerには月額約5~10ドルで量子化された7Bモデルを動かせるCPU VPSがありますが、応答には5~15秒かかります。GPUクラウドインスタンス(Lambda、RunPod、Vast.aiなど)は、GPU1台で時間当たり約0.20~0.50ドルからです。24時間365日動かすと月額150~360ドルになります。断続的な利用なら、スポットインスタンスやサーバーレスGPUプロバイダーで費用を抑えられます。
自分のAPIキーの欄に幅があるのは、各リクエストに会話履歴を含めるかどうかで費用が大きく変わるためです。下限は1ターンのみで履歴なし、上限は約10件の文脈を含む複数ターンの会話です。
マネージドサービスの欄は、2026年6月時点のQuickchatの料金です。ナレッジベース管理、分析、複数チャンネル対応など、他の2つの方法では追加開発が必要な機能を含みます。
手軽な自前ホスト構成:Python、discord.py、Ollama
以下は、ローカル推論にOllamaを使うDiscordボットの、最小限の動作例です。Ollamaがインストール済みで稼働しており、モデルを取得済みである必要があります(例:ollama pull llama3.1:8b)。
事前に必要なもの
- Python 3.10以降
- インストールして起動したOllama(
curl -fsSL https://ollama.com/install.sh | sh) - 取得済みのモデル:
ollama pull llama3.1:8b - Discordボットトークン(Discord Developer Portalで作成)
Send MessagesとRead Message History権限でサーバーに追加したボット
依存ライブラリをインストールする
pip install discord.py aiohttp
ボットのコード
import discord
import aiohttp
import json
DISCORD_TOKEN = "your-bot-token-here"
OLLAMA_URL = "http://localhost:11434/api/chat"
MODEL = "llama3.1:8b"
SYSTEM_PROMPT = "You are a helpful assistant in a Discord server. Keep responses concise."
# Store conversation history per channel (in-memory, resets on restart)
conversations: dict[int, list[dict]] = {}
MAX_HISTORY = 10 # Keep last 10 messages per channel
intents = discord.Intents.default()
intents.message_content = True
client = discord.Client(intents=intents)
async def query_ollama(channel_id: int, user_message: str) -> str:
"""Send a message to Ollama and return the response."""
if channel_id not in conversations:
conversations[channel_id] = []
conversations[channel_id].append({"role": "user", "content": user_message})
# Trim history to avoid unbounded memory growth
if len(conversations[channel_id]) > MAX_HISTORY:
conversations[channel_id] = conversations[channel_id][-MAX_HISTORY:]
messages = [{"role": "system", "content": SYSTEM_PROMPT}] + conversations[channel_id]
payload = {
"model": MODEL,
"messages": messages,
"stream": False,
}
async with aiohttp.ClientSession() as session:
async with session.post(OLLAMA_URL, json=payload) as resp:
if resp.status != 200:
return f"Ollama returned status {resp.status}"
data = await resp.json()
reply = data["message"]["content"]
conversations[channel_id].append({"role": "assistant", "content": reply})
return reply
@client.event
async def on_ready():
print(f"Logged in as {client.user}")
@client.event
async def on_message(message: discord.Message):
# Ignore own messages
if message.author == client.user:
return
# Only respond when mentioned
if client.user not in message.mentions:
return
# Strip the mention from the message
content = message.content.replace(f"<@{client.user.id}>", "").strip()
if not content:
return
async with message.channel.typing():
reply = await query_ollama(message.channel.id, content)
# Discord has a 2000-character limit per message
if len(reply) > 2000:
for i in range(0, len(reply), 2000):
await message.reply(reply[i:i+2000])
else:
await message.reply(reply)
client.run(DISCORD_TOKEN)
約60行のコードで、メンションされたときに応答するAIボットが動きます。会話履歴をチャンネルごとにメモリ内で保持し(再起動すると消えます)、Discordの1メッセージ2,000文字制限にも対応します。
この最小構成に足りないもの
上のコードはテストや小規模サーバーでは動きます。それ以上の用途では、本番用ボットが処理すべきさまざまな問題に直面します。
- 永続的な会話履歴。 メモリ内の辞書はプロセスの再起動で失われます。本番ではRedisやデータベースに会話を保存します。
- レート制限。 Discordの送信上限は、チャンネルごとに5秒間で5件です。利用が増えたらキューが必要です。
- 同時リクエスト。 Ollamaは既定では一度に1つのリクエストを処理します。複数のユーザーが同時に送信すると待ち行列ができます。ロードバランサーの背後で複数のOllamaインスタンスを動かすか、
OLLAMA_NUM_PARALLELオプション(v0.1.33以降)を使えます。 - エラー処理と再試行。 Ollamaはクラッシュ、メモリ不足、不正な形式の応答を起こす可能性があります。ボットはこれらを適切に処理する必要があります。
- コンテキストウィンドウの管理。
MAX_HISTORY = 10は単純な設定です。より良い方法はトークンを数え、モデルのウィンドウに収まるよう削ることです。Llama 3.1 8Bは既定で8,192トークン、最大128Kまで設定可能ですが、長い文脈では品質が低下します。 - スレッド対応。 Discordではボットとの会話がスレッドで行われることがよくあります。スレッドの作成と個別の履歴管理には追加ロジックが必要です。
- ナレッジベース・RAG。 プロジェクトのドキュメントについて答えさせるには、検索拡張生成の仕組みが必要です。文書の埋め込みを作成し、ベクトルデータベースに保存し、LLMへ送る前に関連部分を取得します。
技術的な落とし穴
Discord APIのレート制限
Discordは複数のレベルでレート制限を設けています。
- ルートごとの制限: 各APIエンドポイントに独自の上限があり、レスポンスヘッダー(
X-RateLimit-Limit、X-RateLimit-Remaining、X-RateLimit-Reset)で返されます。 - 全体の制限: すべてのエンドポイントを合わせて1秒間に50リクエスト。
- チャンネルごとのメッセージ制限: 5秒間に5件。
- Gatewayの制限: 60秒間に120イベント。
discord.pyライブラリは、上限に達するとリクエストをキューに入れるなど、多くの制限を自動的に処理します。ただし、ボットが多くのサーバーやチャンネルに同時参加していると、全体の上限に達することがあります。その場合は、複数のGateway接続にサーバー接続を分けるシャーディングを検討する必要があります。
メッセージ本文を読むためのMESSAGE_CONTENTインテントを使うボットが100を超えるサーバーに参加する場合、Discordの認証が必要です。ボットの用途を説明して、Discordの承認を得ます。
モデル品質のトレードオフ
小型のオープンソースモデルと最先端の商用モデルの差は2年前より縮まりましたが、まだ存在します。Discordボットの代表的なタスクを大まかに比較します。
| タスク | ローカルの7~8Bモデル | GPT-4o mini | GPT-4o・Claude Sonnet |
|---|---|---|---|
| 気軽な会話 | 良好 | 良好 | 良好 |
| 事実に関する質問応答 | 中程度、捏造が多め | 良好 | 非常に良好 |
| コード生成 | 基本的 | 良好 | 非常に良好 |
| 多言語対応 | 限定的 | 良好 | 非常に良好 |
| 指示への忠実さ | 中程度 | 良好 | 非常に良好 |
| キャラクターの維持 | 中程度 | 良好 | 良好 |
ゲームコミュニティで、主に気軽な会話や簡単な検索を行うボットなら、ローカルの8Bモデルは十分に役立ちます。正確さが重要なカスタマーサポートでは、品質の差が実際の問題になります。キャラクターの維持も、モデルより設定に左右される面があります。キャラクターを維持するロールプレイAIチャットボットの作り方では、通常のモデルでも人格のプロンプトと設定資料のナレッジベースでどこまで改善できるかを紹介しています。
コンテキストウィンドウの管理
Discordボットで最も軽視されがちな技術課題です。Discordの会話は本質的に複数ターンで進みます。ユーザーは短いメッセージを何度も送り、ボットは以前の発言を覚える必要があります。
応答のたびに、それまでの会話履歴をプロンプトに含める必要があります。その結果、次のことが起こります。
- 入力トークン数が会話の長さに比例して増える。
- API型ボットでは、費用も比例して増える。
- ローカルモデルでは、文脈が長いほど推論時間が増える。Attentionの計算量は二次的に増えますが、Flash Attentionなどの最適化が役立ちます。
- いずれ会話がモデルのコンテキストウィンドウを超えるため、先頭から削る、古いメッセージを要約する、新しい会話を始めるといった方針が必要になる。
実用的な方法は、直近N件をスライディングウィンドウとして残し、会話が長くなったら以前の文脈の短い要約を先頭に付けることです。要約用に追加のLLM呼び出しが必要ですが、メッセージごとの費用を一定範囲に抑えられます。
プライバシーへの影響
選ぶ方法によって大きく異なります。
- 自前ホスト: AIの推論処理は自分のハードウェア上に保ち、そこでのデータ保持とアクセスを管理できます。メッセージの送受信には引き続きDiscordを使います。AI処理のプライバシーを最も直接的に管理できる方法です。
- 自分のAPIキー: メッセージはAPIプロバイダー(OpenAI、Anthropicなど)に送信されます。データ保持ポリシーを確認してください。2026年初頭時点でOpenAIは、既定ではAPIデータを学習に使わないと説明しており、Anthropicにも同様の方針があります。ただし、メッセージは各社のサーバーを通ります。
- マネージドサービス: サービスプロバイダーがメッセージを処理します。プライバシーポリシーとデータ処理契約を確認してください。EUのユーザーデータを扱う企業では、GDPRへの対応が重要です。たとえばQuickchat AIはEU内でデータを処理し、法人顧客にDPAを提供します。
趣味のDiscordサーバーでは、プライバシーが最優先ではないことも多いでしょう。カスタマーサポートに使う企業では、会話データの保存場所とアクセスできる人を正確に把握しておくことが役立ちます。
自前ホストとマネージド:総保有コスト
上の表の計算費用だけでは、全体はわかりません。総保有コストには開発時間も含まれます。
自前ホストで自分が作るもの:
- ボットのコードとデプロイ
- 会話履歴の保存
- コンテキストウィンドウの管理
- エラー処理と監視
- 必要に応じたナレッジベース・RAGの処理基盤
- 分析とログ
- 必要に応じた複数チャンネル対応
会話履歴、ナレッジベース、基本分析を備えた本番品質の自前ホストAI Discordボットを作るには、経験のある開発者でも控えめに見て40~80時間かかります。モデル更新、依存関係の更新、デバッグ、監視などの保守にも継続的な時間が必要です。
マネージドサービスですぐ得られるもの:
- ボットのホスティングと稼働管理
- Webサイト、ドキュメント、ファイルから作るナレッジベース
- 会話分析(感情、トピック、評価)
- 複数チャンネルへの公開(同じエージェントをDiscord、Webサイト、WhatsApp、Slackなどで利用)
- AIでは対応できない場合の人への引き継ぎ
- 会話の文脈で起動する独自API呼び出しのAI Actions。タイムアウト、キック、BANなどのモデレーション操作も含む
判断のポイントは、月額料金が開発時間の機会費用より低いかどうかです。趣味のDiscordサーバーを運営する個人開発者なら、Ollamaの自前ホストが合う可能性があります。顧客向けサポート窓口として使う企業では、分析、ナレッジベース、引き継ぎといったLLM周辺の機能がボットを実用的にするため、通常はマネージドサービスが有利です。AIチケットボットのガイドでは、その組み合わせを無料プランで最初から最後まで構築するので、具体的な構成を比較対象にして費用を判断できます。
まとめ
誰にとっても「一番良い」無料AI Discordボットはありません。何を無料にしたいかで、適切な選択肢が変わります。
- 継続的なサービス料金をなくしたく、使えるハードウェアがあるなら、Ollamaとオープンソースモデルを自前でホストします。モデルとローカルのAI処理を完全に管理できますが、メッセージはDiscordを通ります。最先端モデルより品質が下がり、開発はすべて自分で担当します。
- 支払う前に実際のユーザーと試したいなら、Quickchat AIの無料プランをクレジットカードなしで始められます。無料プランでDiscord連携が使え、有料プランは月額9ドルからです。
- 最先端モデルの品質を求め、APIキーの管理に抵抗がないなら、自分のAPIキーを使うボットが低いメッセージ単価で実現します。特にGPT-4o miniやGemini Flashが候補です。ただし、ボットのホスティングと基本チャット以外の機能開発は必要です。
- ナレッジベース、分析、引き継ぎ、複数チャンネルなどの本番機能が必要なら、マネージドサービスが最速です。予想するメッセージ量と、本当に必要な機能で評価してください。
「無料AI Discordボット」の「無料」には、さまざまな意味が含まれます。計算処理には必ず費用がかかります。考えるべきなのは、誰が負担し、その代わりに何を得るか、何を手放すかです。
無料以外も含む幅広い比較は、2026年のおすすめAI Discordボットをご覧ください。サポート窓口としてのサーバーには、AI Discordチケットボットで、ドキュメントから回答し、残りを非公開チケットスレッドにエスカレーションする手順を紹介しています。