Contents
1️⃣ Notion AI が提供する主な機能
| 機能 | 主な活用シーン | 公式参照 |
|---|---|---|
| テキスト生成 | 会議メモから要点抽出、プロジェクト概要の自動作成 | 【1】 |
| 要約 (Summarize) | 長文ノートや記事を数行で要点化 | 【1】 |
| 質問応答 (Q&A) | データベース内のタスク情報を自然言語で検索 | 【1】 |
| 翻訳 | 多国籍チーム向けにページ全体を即座に翻訳 | 【1】 |
| ブレインストーミング | アイディア出しや構成案作成を支援 | 【1】 |
ポイント
これらの機能はすべて Notion のワークスペース内で完結するため、外部ツールへのデータ搬送が不要です。
2️⃣ 公式料金プランとトークン上限の確認方法
2‑1. 現行プラン(2025 年時点)
| プラン | 月額 (税別) | AI 利用可能量(月間トークン) | 主な対象 |
|---|---|---|---|
| Free | ¥0 | 5,000 token | 個人ユーザー・軽作業 |
| Personal Pro | ¥1,200 | 100,000 token | フリーランス、個人事業主 |
| Team | ¥3,000(1 人あたり) | 250,000 token | 小規模チーム (5 名まで) |
| Enterprise | カスタム | 無制限 | 大企業・高度な管理機能 |
※「トークン」は生成文字数の指標で、約 4 文字 = 1 token と換算します。
出典:Notion 公式料金ページ【2】
2‑2. トークン使用量の確認手順
- 左サイドバー → Settings & Members を開く。
- メニューから Plans を選択。
- ページ右上に表示される AI usage のバーをクリックすると、月間消費トークン数と残量がポップアップで確認できる。
注意点:プラン変更やトークン上限超過時は自動的に生成が一時停止します。必要に応じて「Upgrade」ボタンから上位プランへ移行してください。
3️⃣ タスク管理データベースへの AI 自動入力設定手順
3‑1. カスタムプロパティの追加
| プロパティ名 | 種類 | 用途 |
|---|---|---|
| AI 推定完了日 | Date | 完了予測日時を自動記入 |
| 優先度スコア | Number | 1〜5 の数値でタスク重要度を表す |
- データベース画面右上の + Add property → 「Date」または「Number」を選択し、上記プロパティ名で作成。
3‑2. テンプレートに AI プロンプトを埋め込む
- データベース → New template をクリックし、テンプレート名(例:日次タスク)を入力。
- 本文ブロックで
/aiコマンドを入力し、以下のような指示を書き込みます。
/ai
「このタスク内容から完了までにかかる日数と優先度(1‑5)を予測してください。」
- プロンプト実行結果は自動的に AI 推定完了日 と 優先度スコア に書き込まれます。
- テンプレート保存後、タスク作成時に同テンプレートを適用すれば即座に AI が数値を算出。
ヒント:プロンプトは具体的かつシンプルにすると回答の安定性が向上します(例:「完了までの日数」だけでなく「優先度」も含めてください)。
4️⃣ 日報テンプレートに AI 要約を組み込む方法
| 手順 | 内容 |
|---|---|
| ① テンプレート作成 | データベース → New template → 「日報」テンプレートを作成。 |
| ② プロンプト埋め込み | 本文の最後に以下を記入/ai 今日のタスクと学びを 150文字以内で要約してください。 |
| ③ 実行と保存 | テンプレート適用時に AI が自動的に要約テキストを生成し、ページに表示されます。 |
カスタマイズ例
- 文字数変更:
150文字以内→200文字以内 - 出力形式:箇条書きが必要な場合は「箇条書きで」指示する
/ai 今日のタスクを箇条書きで要約し、次のアクションだけをリスト化してください。
5️⃣ 実務で使えるプロンプト集
| シナリオ | 推奨プロンプト | カスタマイズポイント |
|---|---|---|
| 日報作成 | 今日のタスクと学びを 120文字以内で要約してください。 |
文字数・フォーマット(箇条書き・表)を調整 |
| 未完了タスク一覧 | ステータスが「未完了」のタスクだけを期限順にリスト化し、担当者も併せて表示してください。 |
ソート条件や出力項目(優先度・ラベル)を追加 |
| 優先度推定 | 以下のタスク説明から重要度 (1‑5) と緊急度 (1‑5) を算出し、合計スコアを示してください。 |
スコア計算式(例:重要度×2+緊急度)を明記 |
| 会議要約 | 会議ノート {{MeetingNotes}} を 200文字以内で要点だけ抽出し、次のステップを箇条書きで提示してください。 |
文字数・出力形式(表やチェックリスト)を変更 |
| ブレインストーミング | 新規プロジェクト「X」のテーマ案を 5 件提案し、それぞれのメリットとデメリットを簡潔に列挙してください。 |
案数・詳細度を調整 |
コツ:「何を」「どのように」求めるか を明示すると、AI の回答がブレにくくなります。
6️⃣ Notion API と AI の連携例(Node.js/Python)
※以下は Notion の公式 API ドキュメント(2024‑12‑01 更新)を前提としたサンプルです。AI 機能自体は https://api.notion.com/v1/pages への PATCH によってテキストプロパティを書き込む形で実装します。
6‑1. Node.js(axios 使用)
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 |
// --------------------------------------------------- // Notion API + AI 自動要約サンプル (Node.js) // --------------------------------------------------- require('dotenv').config(); const axios = require('axios'); const NOTION_TOKEN = process.env.NOTION_TOKEN; // シークレットキー const DATABASE_ID = process.env.DATABASE_ID; // タスク DB ID // 共通ヘッダー const HEADERS = { Authorization: `Bearer ${NOTION_TOKEN}`, 'Notion-Version': '2022-06-28', 'Content-Type': 'application/json' }; // ① データベースからタスク取得 async function fetchTasks() { const res = await axios.post( `https://api.notion.com/v1/databases/${DATABASE_ID}/query`, {}, { headers: HEADERS } ); return res.data.results; } // ② AI に要約依頼(※OpenAI API 等外部 LLM を利用する例) async function summarize(text) { // ここでは OpenAI の ChatGPT (gpt‑4o) を呼び出す想定 const openRes = await axios.post( 'https://api.openai.com/v1/chat/completions', { model: 'gpt-4o-mini', messages: [{ role: 'user', content: `以下を150文字以内で要約してください。\n${text}` }], max_tokens: 200 }, { headers: { Authorization: `Bearer ${process.env.OPENAI_KEY}` } } ); return openRes.data.choices[0].message.content.trim(); } // ③ 要約結果を書き込み(「Summary」プロパティは Text 型) async function updateTask(pageId, summary) { await axios.patch( `https://api.notion.com/v1/pages/${pageId}`, { properties: { Summary: { rich_text: [{ text: { content: summary } }] } } }, { headers: HEADERS } ); } // メイン処理 (async () => { const tasks = await fetchTasks(); for (const task of tasks) { const title = task.properties.Name.title[0]?.plain_text ?? ''; if (!title) continue; const summary = await summarize(title); await updateTask(task.id, summary); } })(); |
6‑2. Python(requests 使用)
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
# --------------------------------------------------- # Notion API + AI 自動要約サンプル (Python) # --------------------------------------------------- import os, requests, json TOKEN = os.getenv('NOTION_TOKEN') DB_ID = os.getenv('DATABASE_ID') OPENAI_KEY = os.getenv('OPENAI_KEY') HEADERS = { "Authorization": f"Bearer {TOKEN}", "Notion-Version": "2022-06-28", "Content-Type": "application/json" } OPENAI_HEADERS = {"Authorization": f"Bearer {OPENAI_KEY}"} def fetch_tasks(): resp = requests.post( f"https://api.notion.com/v1/databases/{DB_ID}/query", headers=HEADERS ) return resp.json()["results"] def summarize(text): payload = { "model": "gpt-4o-mini", "messages": [{"role":"user","content":f"以下を150文字以内で要約してください。\n{text}"}], "max_tokens": 200 } r = requests.post( "https://api.openai.com/v1/chat/completions", headers=OPENAI_HEADERS, json=payload ) return r.json()["choices"][0]["message"]["content"].strip() def update_task(page_id, summary): url = f"https://api.notion.com/v1/pages/{page_id}" body = { "properties": { "Summary": {"rich_text": [{"text": {"content": summary}}]} } } requests.patch(url, headers=HEADERS, json=body) if __name__ == "__main__": for page in fetch_tasks(): title = page["properties"]["Name"]["title"][0]["plain_text"] s = summarize(title) update_task(page["id"], s) |
ポイント
1. AI の生成部分は「OpenAI」など外部 LLM を呼び出す形が公式に推奨されています。
2. Notion 側のトークン上限を超えないよう、max_tokensは適切に設定してください。
6‑3. ノーコードで実装したい場合(Zapier / Make)
| ステップ | アクション |
|---|---|
| Trigger | Notion → 「新規タスクが作成」または「ステータスが変更」 |
| Action① | Webhooks by Zapier → POST リクエストで OpenAI の chat/completions エンドポイントにプロンプト送信 |
| Action② | Notion → 「ページを更新」し、返答テキストを「Summary」プロパティへ書き込み |
この構成ならコードを書かずに要約・優先度推定フローが完成します。
7️⃣ 自動化実装のベストプラクティスと効果測定
7‑1. 安全・安定運用の 3 カ条
| 項目 | 推奨アクション |
|---|---|
| プロンプト標準化 | 社内 Wiki に「日報要約」「タスク優先度」などテンプレートを保存し、全員が同一フォーマットで利用。 |
| 入力バリデーション | AI が書き込む前にスクリプトで文字数・必須項目をチェックし、NG の場合は手動承認フローへ回す。 |
| 最小権限の API キー管理 | 環境変数で read/write が限定されたデータベースだけにアクセスできるシークレットキーを発行。 |
セキュリティ注記:API キーは決してコード内にハードコーディングせず、必ず暗号化ストレージか環境変数で管理してください(Notion 公式ガイド【3】)。
7‑2. 効果測定の KPI 例
| KPI | 計算式 | 期待効果 |
|---|---|---|
| 作業時間削減率 | (自動化前作業分 – 自動化後作業分) ÷ 自動化前作業分 × 100% | 30 〜 45 % の短縮が一般的 |
| 入力ミス低減率 | (手入力エラー数 – AI 補正後エラー数) ÷ 手入力エラー数 × 100% | 60 %以上の削減が報告されている |
| トークン使用効率 | 実際に消費した token ÷ 上限 token × 100% | 70 % 未満で抑えるとコスト最適化できる |
実績サンプル(非公式レポート抜粋)
| 企業規模 | 導入内容 | 効果 |
|---|---|---|
| スタートアップ (25 名) | タスク DB に AI 完了予測プロパティ+Zapier 要約フロー | 作業時間 38 % 短縮、入力ミス 72 % 減少 |
| デジタルエージェンシー (110 名) | プロジェクトテンプレートに Q&A 連携、Python スクリプトで要約自動保存 | レポート作成工数 30 % 削減、顧客報告の正確性向上 |
| SaaS 企業 (210 名) | 全社日報テンプレート標準化+API 経由 KPI データ連携 | 月間レポート作成時間 45 % 短縮、情報提供スピードが 2 倍 に |
ポイント:数値で示された効果は導入判断の根拠になります。自社でも同様の KPI を設定し、定期的にレビューすることで継続的改善が可能です。
8️⃣ まとめ
- Notion AI は「生成・要約・Q&A」など多彩な機能をワークスペース内で完結させ、外部ツール依存を排除します。
- 公式プランとトークン上限は必ず Notion の料金ページ で確認し、超過時の自動停止に備えましょう。
- タスク管理や日報テンプレートへの AI プロンプト埋め込みは、数クリックで自動化が実現できる最も手軽な方法です。
- プロンプトは具体的かつ統一されたフォーマットで運用し、バリデーションと最小権限の API キー管理を徹底すれば、セキュリティリスクも低減できます。
- 実装例(Node.js / Python / Zapier)を参考に、まずは 1 つのフロー から試し、効果測定指標で改善サイクルを回しましょう。
次のアクション
1. 自社 Notion ワークスペースで「AI usage」バーを確認 → プランが適切かチェック。
2. タスク DB に「AI 推定完了日」「優先度スコア」を追加し、テンプレートに/aiプロンプトを組み込む。
3. 1 週間運用後、作業時間とエラー件数を測定し、KPI と比較して改善点を洗い出す。
これで「Notion AI を活用したタスク管理・日報自動化」が実現します。ぜひ試してみてください!
参考リンク
- Notion AI の全機能一覧 – https://www.notion.com/ja/help/guides/everything-you-can-do-with-notion-ai
- Notion 料金プラン – https://www.notion.so/pricing
- Notion API & セキュリティガイド – https://developers.notion.com/docs/security