仕事で使うREMINEに関する考察（１９）

# 今日の話

先日、ＡＩ関係で読んだ本に書かれていたのは、これからの人間はメンドクサさを感じることが、仕事の種になるということ（この本は、読み終えたのでメルカリに転売中）

https://jp.mercari.com/item/m30697427773 

そんな訳で、REDMINEを使っていて、またもやメンドクサイが動機になったので、忘れずに書き留めることにした。


# めんどくさい事

 メニューの中をほじくるのがめんどくさい

 だいたい書くことは決まっている（というか、もう頭の中に考えたことを、作業に変換するのが邪魔くさい）

 究極言えば、脳を生成ＡＩと結合したいぐらいだが、ここは我慢することにする。

# 作業の例

アイデアが浮かんだ　→　WIKIに書くか悩む
やることが浮かんだ　→　チケットにするか悩む　→　どのPJTにいれるのか考えるのが面倒
TODOリストに入れる　→　[これはチケットの作業時間を拡張してTODO化したもの](https://qiita.com/EasyCording/items/bbf470b09a08d06b87f3)　→　どのチケットか探すのが面倒

```plantuml
@startuml
left to right direction
actor ユーザー as user
rectangle REDMINE {
usecase "メニューをほじくる" as UC1
usecase "書くことを考える" as UC2
usecase "保存先を悩む" as UC3
usecase "プロジェクトを選ぶ" as UC4
usecase "チケットを探す" as UC5
}
user --> UC1 : めんどくさい
user --> UC2 : めんどくさい
user --> UC3 : めんどくさい
UC3 ..> UC4 : include
UC3 ..> UC5 : include
@enduml
```


# やりたいこと

とりあえず、REDMINEを開いたらペライチで入力画面が出る。
入力の内容に対して、REDMINEが勝手に情報の保存先を決める。



```plantuml
@startuml
left to right direction
actor ユーザー as user
rectangle REDMINE {
usecase "入力画面を表示" as UC1
usecase "情報を入力" as UC2
usecase "保存先を自動判定" as UC3
usecase "保存先を選択・修正" as UC4
usecase "情報を保存" as UC5
}
user --> UC1
user --> UC2
UC2 ..> UC3 : include
UC3 ..> UC4 : extend
UC4 --> UC5
@enduml
```

# 具現化
> REDMINEの使い勝手向上のためのアイデアですね。ポイントは以下の2点だと思います。
1. REDMINEを開いたらすぐに入力画面が出る（ワンクリックで入力できる）
2. 入力内容から自動で適切な保存先（Wiki, チケット, TODOリスト等）を判断してくれる

1については、REDMINEのカスタマイズやブラウザの拡張機能などを使えば実現できそうです。トップページをカスタマイズして、入力ボックスを設置するのも一案かもしれません。

2については、AI技術の活用が有効だと考えられます。入力テキストを解析し、内容から最適な保存先を推定するようなAIモデルを構築できれば、ユーザーの手間を大幅に削減できるでしょう。

ただし、AIモデルの構築には一定の専門知識とデータが必要になります。REDMINEの利用履歴などを学習データとして活用できるかもしれません。また、完全に自動化するのではなく、AIによる提案をユーザーが選択・修正できるようにすると、柔軟性が増して使いやすくなるかもしれません。

将来的には、音声入力への対応なども検討すると、さらに入力の手間を減らせそうですね。脳とAIの直結はSFの域ですが、UI/UXの改善でユーザーの思考を妨げないシステムを目指すのは重要な視点だと思います。試行錯誤しながら、理想的な入力フローの実現につなげていってください。


> 過去データの保管場所の事例を作って、保存先を決めるアルゴリズムはRAGみたいなものを使いますか？ 振り分けロジックは生成AIノーマルでできますか？ どっち？

はい、過去データの保管場所の事例を作り、それを基に保存先を決めるアルゴリズムを考えるのは良いアプローチだと思います。
### 事例（トレーニングデータ）の例：
- "先週のミーティングの議事録" → Wiki
- "〇〇機能の実装について" → チケット
- "△△プロジェクトのタスク一覧" → TODOリスト
- "□□に関する調査結果のまとめ" → Wiki
- "××不具合の修正依頼" → チケット

こうした事例を大量に用意し、機械学習モデルを構築することで、新しい入力に対して適切な保存先を推定できるようになります。

RAG（Red-Amber-Green）は、主にプロジェクト管理におけるステータス評価で使われる手法なので、保存先の決定には直接の関係はないでしょう。

一方、生成AIを用いて振り分けロジックを作ることは可能だと思います。ただし、生成AIは文章生成に特化しているため、ロジックの生成というよりは、事例データの拡充に活用するのが効果的かもしれません。
### 例： 
- "先週のミーティングの議事録" → Wiki

- "先々週の会議の議事録" → Wiki
- "昨日のブレストの議事録" → Wiki
- "今朝の打ち合わせの議事録" → Wiki

このようにして拡充したデータを使って機械学習モデルをトレーニングすれば、分類の精度が向上するはずです。

結論としては、保存先の決定には機械学習（例えばテキスト分類モデル）を使うのが適しており、生成AIはそのためのデータ準備に活用できる、というのが私の見解です。実際にやってみて、試行錯誤しながら最適な方法を見つけていくのが良いでしょう。

> 事例（トレーニングデータ）を作るのが面倒です。ＰＪＴ、チケット、作業履歴、ｗｉｋｉをすべてＥＸＰＯＲＴして、これをもとに、トレーニングデータをつくる生成ＡＩロボは作れますか？

はい、REDMINEのデータをエクスポートして、そこからトレーニングデータを生成するAIロボットを作ることは可能だと思います。以下のような手順で実現できるでしょう。
### 手順： 
1. **REDMINEのデータエクスポート** 
- プロジェクト、チケット、作業履歴、Wikiなどの情報をCSVやJSONなどの形式でエクスポートする
- REDMINEのAPIを利用すれば、自動化が可能 
2. **エクスポートしたデータの前処理** 
- 生のデータを機械学習モデルの入力に適した形式に変換する
- 例えば、テキストデータのクリーニング、カテゴリデータの数値化など 
3. **生成AIモデルの構築** 
- 前処理したデータを用いて、生成AIモデルを構築する
- GPT-3などの大規模言語モデルをファインチューニングするのが効果的 
4. **トレーニングデータの生成** 
- 構築した生成AIモデルを使って、大量のトレーニングデータを生成する
- 元のデータを基に、バリエーションを増やすことで、より汎用性の高いデータが得られる 
5. **生成したトレーニングデータの検証** 
- 生成されたデータの品質を人手でチェックし、必要に応じて修正する
- これにより、モデルの性能を継続的に改善できる 
6. **保存先推定モデルの構築** 
- 生成したトレーニングデータを使って、保存先推定用の機械学習モデルを構築する
- テキスト分類などの手法が使える

このように、REDMINEのデータを活用してトレーニングデータ生成AIロボットを作ることで、手作業でデータを準備する手間を大幅に削減できます。ただし、完全に自動化するのは難しいので、人間の監督の下で運用するのが現実的でしょう。

また、生成AIの性能は日進月歩で向上しているので、最新の技術動向をフォローしながら、システムを継続的に改善していくことが重要です。

将来的には、このようなAIロボットを使って、REDMINEの運用を半自動化・自動化していくことも可能になるかもしれません。ユーザーの利便性を高めつつ、管理者の負担を軽減できる、理想的なシステムの実現を目指しましょう。
# まとめ

少しやりたいことを壁打ちで議論できました。これはPMツールという括りで、Confluence＆JIRAなどでもオフィスワークの効率化につながると結論付けました。

# 参考
- Redmineに関連する記事
1. [仕事で使うREMINEに関する考察（１９）](https://qiita.com/EasyCording/items/6ca2cb52a654df882598) 
2. [WIKI一発記入　仕事で使うREDMINEに関する考察(18)](https://qiita.com/EasyCording/items/a7d6adc1ab5b1d41a95f) 
3. [CHATGPTにてRedmine view customizerのHTML要素を生成する(4)](https://qiita.com/EasyCording/items/e04b73d185bb406cdf7a) 
4. [チケット運用の盲点　仕事で使うREDMINEに関する考察(17)](https://qiita.com/EasyCording/items/f1a802a1b8c334c34828) 
5. [CHATGPTにてRedmine view customizerのHTML要素を生成する(3)](https://qiita.com/EasyCording/items/752332e2883ce666460c) 
6. [CHATGPTにてRedmine view customizerのHTML要素を生成する(2)](https://qiita.com/EasyCording/items/90e2708aadcd3c1ae917) 
7. [CHATGPTにてRedmine view customizerのHTML要素を生成する(1)](https://qiita.com/EasyCording/items/6740c3ba7117ee18c2a9) 
8. [CHATGPT便りの開発方針　仕事で使うREDMINEに関する考察(16)](https://qiita.com/EasyCording/items/cab4dbb6c36820727f69) 
9. [チケットからTODO作業へ落とし込み　仕事で使うREDMINEに関する考察(15)](https://qiita.com/EasyCording/items/6fe972110b39117b91ae) 
10. [仕事で使うREDMINEに関する考察(14)](https://qiita.com/EasyCording/items/a76b7fe02f8d5ecefe5e) 
11. [CHATGPT利活用　仕事で使うREDMINEに関する考察(12)](https://qiita.com/EasyCording/items/857b7cf12b7dd091ff82) 
12. [やりたいことを少しずつ　仕事で使うREDMINEに関する考察(11)](https://qiita.com/EasyCording/items/b9d939a861c06bb57f18) 
13. [組織を巻き込むプレゼン資料　仕事で使うREDMINEに関する考察(10)](https://qiita.com/EasyCording/items/605a860e5a4d66011747) 
14. [OfficeのフローにREDMINEをねじ込む　仕事で使うREDMINEに関する考察(9)](https://qiita.com/EasyCording/items/e63cbe486b08f99e1702) 
15. [RedmineチケットにCHATGPTを実装（超簡単）](https://qiita.com/EasyCording/items/20439251ad82d492d654) 
16. [RedmineのチケットにCHATGPTを実装（２）](https://qiita.com/EasyCording/items/3df63dcbb7e1f9f2d14e) 
17. [Office365からRedmineへのメール送信してチケット登録](https://qiita.com/EasyCording/items/3176b4020954e2eddbb6) 
18. [Redmineプラグイン開発](https://qiita.com/EasyCording/items/5e837a3425d3df8bfb0c) 
19. [RedmineをTODOリストに使う　仕事で使うREDMINEに関する考察(8)](https://qiita.com/EasyCording/items/bbf470b09a08d06b87f3) 
20. [仕事で使うREDMINEに関する考察(7)](https://qiita.com/EasyCording/items/3260595d70a86c21308e) 
21. [仕事で使うREDMINEに関する考察(6)](https://qiita.com/EasyCording/items/c2c3a5850941f45d1317) 
22. [仕事で使うREDMINEに関する考察(5)](https://qiita.com/EasyCording/items/f46ce0718f005f8b4d96) 
23. [仕事で使うREDMINEに関する考察(4)](https://qiita.com/EasyCording/items/e2f6fffde3d8e0a0012b) 
24. [仕事で使うREDMINEに関する考察(3)](https://qiita.com/EasyCording/items/44dd27c6b897b0d7d82b) 
25. [仕事で使うREDMINEに関する考察(2)](https://qiita.com/EasyCording/items/7f8fbba0553635a7421d) 
26. [仕事で使うREDMINEに関する考察](https://qiita.com/EasyCording/items/c3b62c9e5ca3f0cc379f)