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
120
n8nで定期成果報告の資料づくりを自動化する
機械学習の社会実装勉強会 第48回 (
https://machine-learning-workshop.connpass.com/event/358793/
) の発表資料です。
熊懐葵
June 21, 2025
Tweet
Share
More Decks by 熊懐葵
See All by 熊懐葵
LangGraphとFlaskを用いた社内資料検索ボットの実装④GithubRetriever構築編
aoikumadaki
0
67
LangGraphとFlaskを用いた社内資料検索ボットの実装③アプリケーション構築編
aoikumadaki
0
97
LangGraphとFlaskを用いた社内資料検索ボットの実装②Retriever構築編
aoikumadaki
0
180
LangGraphとFlaskを用いた社内資料検索ボットの実装①AIエージェント構築編
aoikumadaki
0
320
StreamlitとLangChainを使った表画像OCRアプリの実装
aoikumadaki
3
670
LangChainでデータ分析エージェントを作ってみる
aoikumadaki
0
250
AWS LambdaとLangSmithを使った社内レポート添削システムMinervaの実装
aoikumadaki
0
290
Other Decks in Technology
See All in Technology
アクセスピークを制するオートスケール再設計: 障害を乗り越えKEDAで実現したリソース管理の最適化
myamashii
1
360
モニタリング統一への道のり - 分散モニタリングツール統合のためのオブザーバビリティプロジェクト
niftycorp
PRO
1
390
対話型音声AIアプリケーションの信頼性向上の取り組み
ivry_presentationmaterials
2
750
マルチプロダクト環境におけるSREの役割 / SRE NEXT 2025 lunch session
sugamasao
1
470
AWS CDK 開発を成功に導くトラブルシューティングガイド
wandora58
3
170
SEQUENCE object comparison - db tech showcase 2025 LT2
nori_shinoda
0
290
衛星運用をソフトウェアエンジニアに依頼したときにできあがるもの
sankichi92
1
230
united airlines ™®️ USA Contact Numbers: Complete 2025 Support Guide
flyunitedhelp
1
470
Enhancing SaaS Product Reliability and Release Velocity through Optimized Testing Approach
ropqa
1
260
ソフトウェアテストのAI活用_ver1.25
fumisuke
1
570
LLM時代の検索
shibuiwilliam
2
650
United Airlines Customer Service– Call 1-833-341-3142 Now!
airhelp
0
180
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
96
6.1k
Fireside Chat
paigeccino
37
3.5k
GraphQLとの向き合い方2022年版
quramy
49
14k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
We Have a Design System, Now What?
morganepeng
53
7.7k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
GitHub's CSS Performance
jonrohan
1031
460k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
KATA
mclloyd
30
14k
Making the Leap to Tech Lead
cromwellryan
134
9.4k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
A better future with KSS
kneath
238
17k
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分超かかる。
ご清聴ありがとうございました