動画「【n8n自動化】AI情報を集めるAIエージェントを作る【Grok/Tavily】」内に登場するn8nのJSONファイルやプロンプトなど
JSONを読み込めばプロンプトやコードなどはコピペせずともすぐに召喚できます。APIキーやWebhookなどはご自身のものを取得してセットしてください。(しないとエラーが出ます)
RSSのワークフロー
Tavilyのワークフロー
Tavilyのクエリ
話題を集めたAIニュースや具体的なAI活用法をnoteや個人のブログを中心に集めてください。
以下に当てはまるもののみ検索してください
- 具体的な活用法を紹介しているもの
- 新しく出たAIツール
- AIツールのアップデート
ニュースレター作成のプロンプト
以下は今日のAIニュースたちです。
取得されたニュースを元に、元の記事を読みたくなるような簡潔な要約を添えたニュースレターを作成してください。
必ず元のURLは含めてください
# ニュース一覧
{{ $json.results.map((article => `{ title: "${article.title}",\n url: "${article.url}",\n\n content: "${article.content.replace(/\n/g, '\\n')}"`)).join(",\n") }}
# フォーマット
こちらのフォーマットでまとめてください。
URLはマークダウンのリンクではなく、そのままURLをテキストとして貼ってください。
```
## ニュースのタイトル
[URL]
[記事の要約]
```
2000文字毎に分割するCodeノードのコード
const splitBy2000Characters = (text) => {
const chunkSize = 2000;
const result = [];
for (let i = 0; i < text.length; i += chunkSize) {
result.push(text.slice(i, i + chunkSize));
}
return result;
}
const chunks = splitBy2000Characters($input.first().json.text)
return [{ json: { chunks } }];Grokのワークフロー
Grokを呼び出すプロンプト(を含んだCodeノードに貼り付けるもの)
const today = new Date();
const sixDaysAgo = new Date();
sixDaysAgo.setDate(today.getDate() - 6);
const formatDate = (date) =>
date.toISOString().slice(0, 10);
const startDate = formatDate(sixDaysAgo);
const endDate = formatDate(today);
const prompt = `${startDate}〜${endDate}の週のAI活用ニュース、主には「新しいツールの登場、アップデート、具体的な活用方法」を集めてください。
## ルール
- 各ニュースの概要の末尾に元ポストのURLを書いてください
- 「## 普段ウォッチしているアカウント」参考に似た系統の情報源からポストを集めてください
## 普段ウォッチしているアカウント
TestingCatalog News 🗞
@testingcatalog
AI Engineer
@aiDotEngineer
LangChain
@LangChainAI
Hamel Husain
@HamelHusain
Sam Altman
@sama
Firebase
@Firebase
Genspark (ジェンスパーク) : 日本公式
@genspark_japan
Anthropic
@AnthropicAI
ChatGPT
@ChatGPTapp
n8n.io
@n8n_io
Latent.Space
@latentspacepod
`
return [{ json: { prompt, startDate, endDate } }];
Grok API呼び出し
URL
https://api.x.ai/v1/chat/completionssearch_parameters
{{ { "mode": "auto", "from_date": $json.startDate, "to_date": $json.endDate, "max_search_results": 30, "sources": [{ "type": "x", "post_favorite_count": 60 }] } }}value
{{ [{ "role": "user", "content": $json.prompt }] }}2000文字毎に分割するCodeノードのコード
const splitBy2000Characters = (text) => { const chunkSize = 2000; const result = []; for (let i = 0; i < text.length; i += chunkSize) { result.push(text.slice(i, i + chunkSize)); } return result;}const chunks = splitBy2000Characters($input.first().json.choices[0].message.content)return [{ json: { chunks } }];

コメント