ローカルLLMを外部サービス(Make/Zapier)と連携させるAPIサーバー構築手順
【最初に結論を書きます】
OpenAI APIの月額が気になりはじめたなら、VPS+Ollamaで自前APIサーバーを立てるのは十分ありです。
ただし、最初にはっきり書いておきます。
「ローカルLLMのAPI化にGPU VPS必須」と書いてある記事は疑ってください。
OllamaはゲームエンジンじゃないのでCPUで動きます。GPUがあれば速くなるのは事実ですが、「MakeやZapierとつないでAI自動化したい」という用途で月数万円のGPUプランを最初から勧めてくるのは、アフィ報酬目的の可能性が高い。CPUプランで試して、速度が実際に不満だったら検討する——この順番が正しい。
自分の判断をまとめると:
| 用途 | 判断 |
|---|---|
| テスト・開発中 | CPUプランで十分。ConoHa時間課金で最小コストから始める |
| 本番運用(応答速度が厳しい) | GPUプランを検討。ただし月3,000円台のCPU VPSで7Bモデルを動かすのが現実的な第一歩 |
| OpenAI APIの代替として固定費化したい | VPS固定費 < API従量課金になるか先に自分の月間呼び出し回数で計算する |
ChatGPT APIの代わりに「自分のLLM」を使えたら?
Make(旧Integromat)やZapierでAI自動化ワークフローを組んでいると、月末にOpenAIのダッシュボードを開くのがちょっと怖くなってくる。あの感覚、あります。
GPT-4oは入力1Mトークンあたり$2.50。月に10万回呼び出したら数万円になることもある。しかも「今月何回呼んだっけ」って毎月気にしないといけないのが地味にストレスです。
VPS上にOllamaをAPIサーバーとして立ち上げ、MakeやZapierから呼び出せば、月額固定コストでAI自動化が使い放題になります。
具体的には:VPS月額 + ドメイン代 = 月3,000〜5,000円で固定。 呼び出し回数がどれだけ増えても料金は変わらない。「毎月いくらか計算したくない」という人には精神的にかなりラクです。これが自分がVPS+Ollamaを選ぶ一番の理由です。
この記事では、VPSにOllamaをセットアップし、HTTPSのAPIエンドポイントとして外部公開し、MakeのHTTPモジュール・ZapierのWebhooksアクションから呼び出す具体的な手順を解説します。
全体アーキテクチャ
[Make/Zapier]
↓ HTTPS POST
[VPS: Nginx リバースプロキシ]
↓ HTTP
[Ollama APIサーバー :11434]
↓ 推論
[ローカルLLM (Llama3 / Mistral等)]
VPS上でOllamaがポート11434でAPIを待ち受けており、Nginxがそれを443(HTTPS)でラップして外部公開します。MakeやZapierからはHTTPSのURLを叩くだけでLLMの応答が得られます。
構造はシンプルです。図だけ見ると難しそうに感じるかもしれないけど、1つ1つ順番にやれば詰まるポイントはそんなに多くない。実際、自分が最初にこれを試したとき、一番時間がかかったのはドメインのDNS設定が反映されるまで待つ時間でした(作業自体じゃなかった)。
Step 1: VPS上でOllamaをセットアップ
VPSにSSH接続したら以下を実行します。
# Ubuntu 22.04 前提
# Ollamaをインストール
curl -fsSL https://ollama.com/install.sh | sh
# 外部からのAPI接続を許可する設定
sudo mkdir -p /etc/systemd/system/ollama.service.d
sudo tee /etc/systemd/system/ollama.service.d/override.conf << 'EOF'
[Service]
Environment="OLLAMA_HOST=0.0.0.0:11434"
EOF
# サービス再起動
sudo systemctl daemon-reload
sudo systemctl restart ollama
# モデルをダウンロード(7Bモデルが使いやすい)
ollama pull llama3.1:8b
ollama pull mistral:7b
# APIが動作しているか確認
curl http://localhost:11434/api/tags
モデル選びについて正直に言うと:
7Bモデル(llama3.1:8bやmistral:7b)が最初の選択肢としてちょうどいいです。CPUのみのVPSでも動くし、Make/Zapierのタイムアウト(デフォルト300秒)には十分収まる。2Bモデルはもっと速いけど精度が落ちます。13B以上はCPUだと遅すぎて、Make/Zapierのワークフローで実用するには厳しくなります。「大きいほど賢い」は事実ですが、動かなかったら意味がない。まずは7Bから始めてください。
セットアップで詰まったときに日本語で問い合わせられるサポートがあると地味に助かります。XServer VPS はその点で安心感があります。特にVPSを初めて触る方なら選択肢として頭に入れておいていい。
Step 2: Nginx + Let’s Encrypt でHTTPS公開
MakeやZapierはHTTPS必須なので、ドメインを用意してSSL証明書を取得します。ここが唯一「ちょっと手間」なステップです。ドメインは年1,000円前後で取れます。ケチらず専用のものを1つ用意してください。サブドメインで api.yourdomain.com みたいに切るのがスッキリして管理しやすいです。
# Nginxをインストール
sudo apt update && sudo apt install -y nginx certbot python3-certbot-nginx
# Nginx設定ファイルを作成
sudo tee /etc/nginx/sites-available/ollama-api << 'EOF'
server {
server_name api.yourdomain.com;
location / {
proxy_pass http://127.0.0.1:11434;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_read_timeout 300s;
# APIキー認証(簡易)
if ($http_x_api_key != "your-secret-key-here") {
return 401;
}
}
}
EOF
# 設定を有効化
sudo ln -s /etc/nginx/sites-available/ollama-api /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx
# Let's EncryptでSSL証明書取得
sudo certbot --nginx -d api.yourdomain.com --non-interactive --agree-tos -m your@email.com
誤解されたくないので書いておく。your-secret-key-here は絶対に変更してください。
これを変えないまま放置すると、URLさえわかれば誰でもあなたのVPSのLLMを無料でタダ乗りできる状態になります。見ず知らずの人にVPSのCPU・メモリを使われることになる。面倒でも長いランダム文字列を設定してください。パスワードマネージャーで生成するのが一番早い。ここだけはサボらないでください。
Step 3: APIの動作確認
設定が終わったら、外部から叩けるか確認します。自分のPCのターミナルから実行してください(VPSのターミナルからじゃないです。VPS内からだと「外部からつながるか」の確認にならない)。
# 外部からAPIが呼べるかテスト
curl -X POST https://api.yourdomain.com/api/chat \
-H "Content-Type: application/json" \
-H "X-Api-Key: your-secret-key-here" \
-d '{
"model": "llama3.1:8b",
"messages": [{"role": "user", "content": "こんにちは!"}],
"stream": false
}'
こんなレスポンスが返ってきたら成功です:
{
"model": "llama3.1:8b",
"message": {
"role": "assistant",
"content": "こんにちは!何かお手伝いできることはありますか?"
}
}
実体験から言うと、CPUのみのVPSだと最初のレスポンスまで10〜30秒かかることがあります。「遅い……」と感じるかもしれない。でもMakeのタイムアウト(デフォルト300秒)には余裕で収まるし、Make/Zapierの自動化ワークフローって人間が待つわけじゃないので、バックグラウンドで動いてくれれば30秒でも問題ない場合がほとんどです。「リアルタイムで人間が待つ」用途でなければ、CPUで十分です。
GPUを検討するのは、ここまで動かしてみてから。先に課金しないでください。
Step 4: Make(旧Integromat)との連携
MakeのHTTPモジュールを使って呼び出します。設定画面でポチポチするだけで、コードを書く必要はないです。
- 新しいシナリオを作成
- HTTP > Make a request モジュールを追加
- 以下の設定を入力:
- URL:
https://api.yourdomain.com/api/chat - Method:
POST - Headers:
Content-Type: application/json,X-Api-Key: your-secret-key-here - Body type:
Raw - Content type:
JSON (application/json) - Request content:
- URL:
{
"model": "llama3.1:8b",
"messages": [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "{{1.text}}"}
],
"stream": false
}
- Parse response:
Yesにしてmessage.contentをマッピング
{{1.text}} の部分が前のモジュールからの動的な入力になります。ここにGmailの本文やSlackのメッセージを流し込む感じです。OpenAI公式モジュールとほぼ同じ感覚で組めるので、すでにMakeでAI自動化を組んだことがある人なら違和感なく使えます。
Step 5: Zapierとの連携
ZapierでもWebhooks by Zapierを使って同様に連携できます。
- Webhooks by Zapier > POST アクションを追加
- URL:
https://api.yourdomain.com/api/chat - Payload Type:
Json - Data(Key/Value形式):
model:llama3.1:8bstream:false
- Headers:
X-Api-Key: your-secret-key-here
Zapierの場合は「Webhooks by Zapier」がPaidプラン以上じゃないと使えない点だけ注意してください。無料プランだと詰まります。
コスト比較:VPSに移行すると実際いくら変わるか
実体験から言うと、これが一番大事な話です。ここを計算せずに「とりあえずVPSにしよう」と動くのはもったいない。
OpenAI GPT-4oの場合:
- 入力 1Mトークン = $2.50
- 月10万回呼び出し × 平均500トークン = 5,000万トークン
- 5,000万 ÷ 100万 × $2.50 = 月$125(約19,000円)
VPS+Ollamaの場合:
- VPS月額(CPUプラン): 約1,500〜3,000円
- ドメイン: 約100円/月
- 合計: 月2,000〜3,500円固定
1日あたりに換算すると約67〜117円。これが固定。何回呼んでも変わらない。
損益分岐点で考えると:
月間のAPI呼び出しが増えるほどVPSが有利になります。月1万回を超えてくるあたりから差が出始めて、月5万回以上になるとVPS移行は確実にペイします。
一方、月1,000回くらいしか呼ばないなら正直OpenAI APIのままでいいです。その規模だとOpenAI APIの費用は数百円程度で、VPS構築の手間のほうが大きい。「VPSを立てた達成感」は得られますが、コスト面でのメリットはほぼない。自分の月間呼び出し回数をOpenAIのダッシュボードで確認してから判断してください。
ConoHa VPS は時間課金なので、「まず試してみて、ワークフローが安定して使えるようになったら月額固定に切り替える」という動き方ができます。最初から固定プランに課金するより精神的にラク。
実用ワークフロー例
実際に動くと確認できているユースケースを載せます。「これができるなら試してみようかな」の参考にしてください。
| ユースケース | Makeのトリガー | LLMへの指示 |
|---|---|---|
| メール自動返信案作成 | Gmail新着受信 | 「以下のメールへの丁寧な返信を作成してください」 |
| Slack投稿の要約 | Slack新着メッセージ | 「以下のSlack投稿を3行で要約してください」 |
| フォーム回答の分析 | Googleフォーム送信 | 「以下の回答をポジティブ/ネガティブ/中立で分類してください」 |
| ブログ記事の下書き | スプレッドシート更新 | 「以下のキーワードで500文字のブログ記事を書いてください」 |
「要約・分類・定型文生成」あたりは7Bモデルでも十分実用になります。GPT-4oと同じクオリティは出ないけど、コストがほぼゼロになるなら多少クオリティが落ちても許容できるケースは多いはず。「完璧じゃなくていい、ドラフトを出してくれれば自分で直す」という使い方なら特に相性がいいです。
よくある質問
まとめ:あなたの使い方で選ぶ
| あなたの状況 | 判断 |
|---|---|
| OpenAI APIの月額が1万円を超えてきた | VPS+Ollamaへの移行を本気で検討してください。固定費化できます |
| 月1,000〜3,000回くらいしか呼ばない | 正直OpenAI APIのままでいい。VPS構築の手間のほうが大きい |
| まず試してみたい | ConoHaの時間課金で小さく始めて、使うようになったら固定プランに切り替える |
| 応答速度が最重要(本番運用・人間が待つUI) | GPUプランを検討。ただし月数万円になるので費用対効果は要計算。CPUで試してからでも遅くない |
| セットアップに不安がある | XServer VPSの日本語サポートが助かります。詰まったときに日本語で聞ける安心感は本物 |
| 「GPU必須」と書いてある記事を読んだ | その記事のアフィ設計を疑ってください。CPUで十分動きます |
ポイントをまとめると:
- VPS上のOllamaを外部APIとして公開すれば、MakeやZapierから自由に呼び出せる
- Nginx + Let’s EncryptでHTTPS化、APIキー認証でセキュリティを確保
- OpenAI APIの従量課金 → VPS固定費に変換できる。月の呼び出し回数が多いほど有利(月1万回超えたら要検討)
- GPUは最初から不要。CPUで試して、実際に遅すぎると感じたら検討する順番でいい
合わなかったらやめればいい。それだけの話だ。動いた瞬間に「あ、これで月のAPI代が消えるんだ」って実感できます。その実感があってから、プランをどうするか考えれば十分です。