はじめに
IBM Bob(以下、Bob)は、VS Code上で動作するAIアシスタントです。普段はコードを書いてもらったり、調べ物をしてもらったりするのに使っています。
そのBobには Skill(スキル) という機能があります。「こういう作業はこう進めてほしい」という手順書を自分で作っておくと、次回から一言言うだけでBobが自動でやってくれるというものです。
今回は、実際に私が作った PowerPointを自動生成するSkill を紹介します。研修で用いるスライド作成が、かなりラクになりました。
Skillってなに?
一言でいうと、Bobへの「作業マニュアル」 です。
たとえば「パワポを作って」と言うだけで、Bobがマニュアルを読んで自動で動いてくれます。毎回同じことをプロンプトに書く手間がなくなります。
どうやって作るの?
.bob/skills/ というフォルダの中に、SKILL.md というMarkdownファイルを置くだけです。
.bob/skills/
└── my-skill/
└── SKILL.md ← ここに手順を書く
SKILL.md の中身はこんな形です。
---
name: my-skill
description: このSkillがいつ・何をするかを書く(Bobがここを読んで起動するか判断する)
---
## Step 1
まずユーザーに必要な情報を確認する。
## Step 2
メインの処理をする。
## Step 3
完了を報告する。
ポイントは description(説明文)を正確かつ詳細に書くこと。
Bobはここを読んで「あ、このSkillを使えばいいんだ」と判断します。空欄だとSkillが無視されるので注意です。
どこに置けばいい?
| 置き場所 | 使える範囲 |
|---|---|
プロジェクトフォルダの中(.bob/skills/) |
そのプロジェクトの中だけ |
ホームディレクトリ(~/.bob/skills/) |
どのプロジェクトでも使える |
今回作ったSkillはどこでも使いたかったので、ホームディレクトリに置きました。
作ったSkill:パワポ自動生成
なぜ作ったか
2週間に1回実施されるStand & Deliverに向けて、PowerPointスライドを0から手作業で作っていました。Stand & Deliver内で提案する製品理解を進めながら、発表スライドを作成するとなると、毎回時間が足りなくなり。
「これBobに頼めないかな?」と思って作ったのが今回のSkillです。
Skillで何をしているか
Bobにやってもらっていることは大きく4つです。
① 事前確認
「どんな内容のスライドにしますか?」とBobが質問してきます。ファイル名やスライドの内容を答えるだけでOKです。
② Pythonスクリプトの生成・実行
答えた内容をもとに、BobがPowerPointを作るPythonスクリプトを自動生成して、そのまま実行します。自分でコードを書く必要はありません。
③ 自動チェック
スライドができたら、文字がはみ出ていないか・図形が重なっていないかをBobが自動で確認します。
④ 問題があれば自動修正
チェックで問題が見つかったらBobが自分で直して、またチェックして…を繰り返します。OKになったら完了報告してくれます。
SKILL.mdのdescriptionはこう書いた
---
name: pptx-from-template
description: PowerPointスライドを作成・修正するとき、または既存のPPTXスライドの
体裁修正・重なり解消・テキスト更新を行うときに使う。
「スライドを作って」「PPTXに内容を入れて」「パワポを作って」のように
言われたら起動する。
---
「パワポを作って」という曖昧な言葉でもBobがこのSkillを選んでくれるように、使われそうな言い回しをいくつか書いておきました。
実際に使ってみると
「発表スライドを作って」と話しかけると、
- Bobが「ファイル名は何にしますか?スライドの内容は?」と聞いてくる
- 答えるとPythonスクリプトを自動生成して実行
- はみ出し・重なりを自動チェック
- 問題があれば自動修正して再実行
- 「完成しました!」とファイルのパスを教えてくれる
手作業での繰り返し操作がほぼなくなりました。
Skillを作るときに気をつけたこと
descriptionは具体的に書く
「いつ使うか」「どんな言葉が来たら動くか」を書くと、Bobが正しく判断してくれます。
# :x: 曖昧すぎる
description: PowerPointを操作する
# :チェックマーク_緑: 具体的でわかりやすい
description: 「スライドを作って」「パワポを作って」と言われたら起動する。
PowerPointスライドの作成・修正・テキスト更新を行う。
手順はステップに分けて書く
「Step 1」「Step 2」のように番号を振って書くと、Bobが順番通りに動いてくれます。
チェック処理をSkillの中に入れる
「作って終わり」ではなく「作る→チェック→修正→再チェック」という流れをSkillに書いておくと、Bobが自律的に品質を上げてくれます。これが地味に便利でした。
まとめ
- BobのSkillは、繰り返し作業をBobに覚えさせる仕組みです
-
SKILL.mdというMarkdownファイルに手順を書くだけで作れます -
descriptionにどんな場面で使うかを書くのがポイントです - 今回のSkillでパワポ作成がほぼ自動化できました
コードを書く仕事以外にも使えます。「毎月同じような作業をしている」という場面があれば、ぜひSkillを作ってみてください。