Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
n8nで定期成果報告の資料づくりを自動化する
Search
熊懐葵
June 21, 2025
Technology
0
160
n8nで定期成果報告の資料づくりを自動化する
機械学習の社会実装勉強会 第48回 (
https://machine-learning-workshop.connpass.com/event/358793/
) の発表資料です。
熊懐葵
June 21, 2025
Tweet
Share
More Decks by 熊懐葵
See All by 熊懐葵
Claude Codeで進めるAWSリソースのTerraform移行
aoikumadaki
0
4
LangGraphとFlaskを用いた社内資料検索ボットの実装④GithubRetriever構築編
aoikumadaki
0
73
LangGraphとFlaskを用いた社内資料検索ボットの実装③アプリケーション構築編
aoikumadaki
0
110
LangGraphとFlaskを用いた社内資料検索ボットの実装②Retriever構築編
aoikumadaki
0
190
LangGraphとFlaskを用いた社内資料検索ボットの実装①AIエージェント構築編
aoikumadaki
0
340
StreamlitとLangChainを使った表画像OCRアプリの実装
aoikumadaki
3
720
LangChainでデータ分析エージェントを作ってみる
aoikumadaki
0
260
AWS LambdaとLangSmithを使った社内レポート添削システムMinervaの実装
aoikumadaki
0
310
Other Decks in Technology
See All in Technology
広島銀行におけるAWS活用の取り組みについて
masakimori
0
140
AIとTDDによるNext.js「隙間ツール」開発の実践
makotot
6
700
浸透しなさいRFC 5322&7208
hinono
0
120
現場が抱える様々な問題は “組織設計上” の問題によって生じていることがある / Team-oriented Organization Design 20250827
mtx2s
5
1.2k
つくって納得、つかって実感! 大規模言語モデルことはじめ
recruitengineers
PRO
24
6.2k
夢の印税生活 / Life on Royalties
tmtms
0
280
認知戦の理解と、市民としての対抗策
hogehuga
0
370
R-SCoRe: Revisiting Scene Coordinate Regression for Robust Large-Scale Visual Localization
takmin
0
430
ECS モニタリング手法大整理
yendoooo
1
120
Amazon Bedrock AgentCore でプロモーション用動画生成エージェントを開発する
nasuvitz
6
430
Understanding Go GC #coefl_go_jp
bengo4com
0
1.1k
Backboneとしてのtimm2025
yu4u
4
1.6k
Featured
See All Featured
Become a Pro
speakerdeck
PRO
29
5.5k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
283
13k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Typedesign – Prime Four
hannesfritz
42
2.8k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
GraphQLとの向き合い方2022年版
quramy
49
14k
Imperfection Machines: The Place of Print at Facebook
scottboms
268
13k
The Art of Programming - Codeland 2020
erikaheidi
55
13k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
How GitHub (no longer) Works
holman
315
140k
Transcript
n8nで定期成果報告の資料づくりを 自動化する 2025/6/21 機械学習の社会実装勉強会 第48回 熊懐 葵
目次 • これまで • モチベーション • n8nとは • 開発 •
インフラ構築 • コンポーネント準備 • ワークフロー実装 2
プロジェクト・業務データ これまで ディースタッツでは、複数のソフトを連携させてプロジェクトを推進している Slack Jira Confluence GitHub 連携・通知 タスク管理 業務資料
開発 生成AIで何か楽ができそう 3
これまで 4 Sofiaを作った。
振り返ると... システムを一つ作るのに多くの時間と労力がかかってしまった 5 インフラ構築 コンポーネント準備 システム実装 AWSやGCPで簡単 (+好み) アプリ間連携 エージェント構築
一旦休憩
振り返ると... システムを一つ作るのに多くの時間と労力がかかってしまった 6 インフラ構築 コンポーネント準備 システム実装 勉強会 • Sofia①AIエージェント構築編 •
Sofia②Retriever構築編 • Sofia④GithubRetriever構築編 勉強会 • Sofia③アプリケーション構築編 • (ここで力尽きる)
本当はこうしたい 7 業 務 改 善 インフラ構築 コンポーネント準備 システム実装 各コンポーネント(材料)の準備を手早く終わらせて、業務改善につながるシステム
の実装(機能改善)に時間をかけたい こことここのデータ使ったら 業務自動化できそう...? この業務の自動化できそう...!
n8nを使うモチベーション 8 業 務 改 善 インフラ構築 コンポーネント準備 システム実装 各コンポーネント(材料)の準備を手早く終わらせて、業務改善につながるシステム
の考案に時間をかけたい→ n8nを活用 勉強会 • Sofia①AIエージェント構築編 • Sofia②Retriever構築編 • Sofia④GithubRetriever構築編 n8nがほぼ 用意済み
n8n n8nとは Jiraチケット取得 9 ローコードでワークフローの自動化を実装できるオープンソースのツール。 成果報告資料を自動生成するワークフロー GitHub Pull Request取得 資料生成
Confluenceに投稿
開発の流れ 10 業 務 改 善 インフラ構築 コンポーネント準備 ワークフロー実装 まずはn8nを使えるようにするところから
①インフラ構築 11 自前のサーバーで動かすこと(セルフホスト)が可能なので、自社のAWS EC2で動 かす。 1. EC2を立てる • インスタンスタイプ: t4g.small
• パブリックサブネット(社内リソースの都合上) ※パブリックIPは外部から見えるのでセキュリティ的に最善ではない → プライベートサブネット + NAT
①インフラ構築 13 2. EC2にssh接続→EC2上でn8nを起動する • 外部にあるn8nのリポジトリからボリュームを作成 $ docker volume create
n8n_data • 作成したボリュームをマウントして、コンテナを起動 $ docker run -it --rm --name n8n -p 5678:5678 -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n port: 5678 外部にあるn8n のリポジトリ コンテナを起動
①インフラ構築 15 3. n8nにアクセスする • 一度サーバーから出て、ssh接続 + ポートフォワーディング(ローカルから ポート5678に接続できるようにする) >
ssh -L 5678:localhost:5678 <サーバー名> • 接続がうまくいくとhttp://localhost:5678(ブラウザ)でn8nに接続ができる ブラウザで、 http://localhost:5678 と検索 サインイン エントリを使用したコマンド例
ここまでの進捗 16 業 務 改 善 インフラ構築 コンポーネント準備 ワークフロー実装 完了!
※インフラ環境がすでにあるかどうかで所要時間が前後しそう
②コンポーネント準備 17 1. 外部APIと連携する。 ホーム画面→Create Credential
②コンポーネント準備 18 1. 外部APIと連携する。 ホーム画面→Create Credential Github OAuth Appを作成 し、OAuth2
APIを選択 JiraはCloud版を使用している Confluenceは対応していな かったのでBasic Auth
②コンポーネント準備 19 2. GitHubと連携する。 n8n GitHub Client Secretも設定
②コンポーネント準備 20 3., 4. Jira・Confluenceと連携する。 n8n Jira/Confluence ここでAPIトークンを発行 (使うApp・Scopeを選択) トークンを設定する
②コンポーネント準備 21 5. OpenAIと連携する。 n8n API Keyを設定する
ここまでの進捗 22 業 務 改 善 インフラ構築 コンポーネント準備 ワークフロー実装 完了!
完了! ※材料の準備...外部アプリと連携→メソッドを用意(n8nが用意済み)
③ワークフロー実装 23 自動化するワークフロー: 成果報告資料の生成 成果報告資料とは? • 4半期に1度プロジェクトごとに作成する資料 • 期間内に完了したタスクをまとめて、成果としてまとめる これまで
1. Jiraの検索機能で、期間内に完了したチケットを抽出 2. チケット内のリンクや説明文から、関連するPRや Confluence資料を読む 3. 成果タイトルを考える 4. 背景、課題、施策、結果、今後の展望を書く 5. 関連するチケット単位で2~4を繰り返す ※誰がやるかでピリつく
③ワークフロー実装 24 +をクリックして ワークフローのトリガーを選択
③ワークフロー実装 25 +をクリックして これを選択 将来的に動的に変更したい データを入れておく クリックしたらトリガーする ※定期的にトリガーするノード もある
③ワークフロー実装 26 他プロジェクトでも使えるようにしたい 4半期ごとなので4パターン プロジェクトによって 該当リポジトリが異なる 作成する資料 の名前と場所 最終的にここに投稿される
③ワークフロー実装 27 先ほど登録したcredential が選択できる JQLで条件を指定する • プロジェクト • 完了日 inputから代入する
③ワークフロー実装 28 ここをクリック (前のノードを実行できる) 選択
③ワークフロー実装 29 必要そうなデータをドラッグ &ドロップ
必要そうなデータを全て 選択できたらクリック ③ワークフロー実装 30 結果が出力される (ぐちゃぐちゃなので整理したい)
key構造を整理する ③ワークフロー実装 31 整理できた
③ワークフロー実装 32 Jira情報取得完了 Jiraチケットだけでは情報不足 のチケットもあった チケットに対応するGitHub PRの情報も取得して補完する
③ワークフロー実装 33 複数選択して上 に移動できる Get Pull Requestsを選択 する 黒点からドラッグすると矢印 を伸ばせる→放す
これを選択 先ほど登録したcredential が選択できる ドラッグ&ドロップ By ...オプション の選択ミスに注意 ↓でstatus=closedオ プションをつける
③ワークフロー実装 34 選択 repository ごとに作る 3つとも繋げる 3にする Filterノード をつける
③ワークフロー実装 35 PRのデータ内になる merged_atを条件に使う マージされた日が開 始日かそれ以降
③ワークフロー実装 36 PR titleの”DO”の部分を抽出 期間内かつDOプロジェクトの PRを抽出できる
③ワークフロー実装 37 これだけだと情報量が乏しい リンクを貼るなどしてPR descriptionを書いている... PRの変更内容を取得できれば 役に立ちそう PRの変更内容を 取得する
38 PRのURL+.diff HTTP Requestノード 変更内容を要約する よう指示する レスポンスのdiff ③ワークフロー実装
③ワークフロー実装 39 こんな情報が取得できる (※見やすく表示した) 変更内容をGPTに説明さ せた文字列を取得できる
③ワークフロー実装 40 整理できた Jiraチケットの場合と同様 にkey構造を整理する
③ワークフロー実装 41 key(DO-XXX)が同じデータ をまとめる appendではなく combine key(DO-XXX)ごとにJira, GitHubの情報がまとまった
③ワークフロー実装 42 PRがあるチケット とないチケットが ある ↓ チケットごとに情 報の粒を揃える チケットごとの 出力をまとめる
htmlで書くように指示
③ワークフロー実装 43 htmlをjsonデータで 送信できるよう処理 confluenceのエンドポイント 先に設定していた credential Header設定 HTTP Requestノード
③ワークフロー実装 44 Body設定 外部からの資料作成 に必要な形式 タイトル 本文 スペース 作成ページ
完成!実行には少々時間がかかる 45 1PRずつ文章生成 (3分) 1アイテムずつ文章生成(17分) 全部まとめて文章生成(2分) 104アイテム(チケットx84+PRx56)で20分超かかる。
ご清聴ありがとうございました