AI停止時の業務影響をPythonで棚卸しする
「そのAI、明日の朝も同じように使える前提で業務に入れて大丈夫ですか?」
Claude Fable 5 が戻ってきたニュースで、僕が最初に気になったのは性能ではありませんでした。Axios は 2026年7月1日に Fable 5 がオンラインに戻ったと報じ、6月30日には制限解除も報じています。
- https://www.axios.com/2026/07/01/anthropic-fable-5-back-online-trump-export-controls-lifted
- https://www.axios.com/2026/06/30/trump-anthropic-ai-model-fable-restrictions
規制やセキュリティの中身には踏み込みません。業務側で見るべきなのはもっと地味です。AIが急に止まった時、どの仕事から詰まるのか。
ここ地味に効きます。止まってから考えると、たいてい遅いです。
今日は4行のダミーCSVで、AI依存の業務を点数化する小さな Python を動かしました。貼って使える棚卸し表です。
流れはこうです。
Q. 何を作る?
AIを使っている業務をCSVに並べ、停止時に危ない順へ並べ替えるスクリプトです。見る項目は、代替手段、締切、社外影響、機密度、確認者。完璧な台帳より「明日止まったら困る順」を出します。
Q. CSVはどう書く?
まず ai_tasks.csv を作ります。
業務,利用AI,停止時の代替,締切分,社外影響,機密度,担当者,確認者
提案書の初稿作成,Claude Fable 5,,120,あり,中,佐藤,
問い合わせ一次返信,ChatGPT,定型文テンプレ,45,あり,高,鈴木,田中
議事録の要約,Gemini,録音から手作業,1440,なし,中,高橋,山本
競合価格の調査,Claude,手作業で上位3社だけ確認,2880,なし,低,伊藤,佐藤
締切分 は「あと何分で必要か」です。2時間後なら 120、翌日なら 1440。日時形式にしないのは、入力しやすくするためです。
停止時の代替 が空なら、AIが止まった瞬間に手が止まる仕事として扱います。「頑張ればできる」は代替ではありません。手順やテンプレがあるものだけ書きます。
Q. Pythonコードは?
標準ライブラリだけで動きます。
import csv, sys
YES = {"yes", "y", "true", "1", "あり", "有", "ある"}
def yn(v): return str(v).strip().lower() in YES
def mins(v):
try: return int(str(v).strip())
except ValueError: return 999999
def judge(r):
p, why = 0, []
if not r["停止時の代替"].strip(): p += 3; why.append("代替なし")
d = mins(r["締切分"])
if d <= 60: p += 3; why.append("1時間以内")
elif d <= 240: p += 2; why.append("4時間以内")
elif d <= 1440: p += 1; why.append("当日中")
if yn(r["社外影響"]): p += 2; why.append("社外影響")
sec = r["機密度"].strip().lower()
if sec in {"高", "high"}: p += 2; why.append("機密度高")
elif sec in {"中", "medium"}: p += 1; why.append("機密度中")
if not r["確認者"].strip(): p += 1; why.append("確認者未設定")
rank = "S" if p >= 7 else "A" if p >= 5 else "B" if p >= 3 else "C"
return rank, p, " / ".join(why) or "低リスク"
with open(sys.argv[1], newline="", encoding="utf-8-sig") as f:
reader = csv.DictReader(f)
rows = []
for r in reader:
rank, p, why = judge(r)
rows.append({"ランク": rank, "点数": p, "業務": r["業務"], "利用AI": r["利用AI"], "担当者": r["担当者"], "確認者": r["確認者"] or "未設定", "理由": why})
writer = csv.DictWriter(sys.stdout, fieldnames=["ランク", "点数", "業務", "利用AI", "担当者", "確認者", "理由"])
writer.writeheader()
writer.writerows(sorted(rows, key=lambda x: x["点数"], reverse=True))
ファイル名を ai_risk_inventory.py にして実行します。
python ai_risk_inventory.py ai_tasks.csv
手元ではこう出ました。
ランク,点数,業務,利用AI,担当者,確認者,理由
S,9,提案書の初稿作成,Claude Fable 5,佐藤,未設定,代替なし / 4時間以内 / 社外影響 / 機密度中 / 確認者未設定
S,7,問い合わせ一次返信,ChatGPT,鈴木,田中,1時間以内 / 社外影響 / 機密度高
C,2,議事録の要約,Gemini,高橋,山本,当日中 / 機密度中
C,0,競合価格の調査,Claude,伊藤,佐藤,低リスク
Q. 点数はどう決めた?
止まった時に逃げ道がないものを一番重くしました。代替なしは3点。締切が1時間以内なら3点。社外に迷惑が出るなら2点。機密度が高いなら2点。確認者が空なら1点。
配点に正解はありません。問い合わせ対応が多い会社なら社外影響を3点、法務確認が重い会社なら確認者未設定を2点にしてもいいです。
大事なのは、配点を毎回変えないことです。まず1週間このルールで回す。違和感が出たら点数を直す。基準を育てる感じです。
Q. 何から直す?
出力されたSランクから見ます。ただし、いきなりAIを別サービスへ差し替える必要はありません。
最初にやることは3つです。代替欄を空にしない。確認者を1人決める。手作業に戻す最小手順を書く。
「提案書の初稿作成」なら、代替欄に「過去提案書3件から構成だけ流用」と書けます。これだけでも、停止時にゼロから考えなくて済みます。
問い合わせ一次返信は代替があります。ただ、締切が45分で社外影響があり、機密度も高い。ここはAIの種類より、確認フローを短くするほうが先です。
良いAIを探す前に、止まった時の逃げ道を作る。現場ではこっちが先です。
まとめると
Fable 5 の復帰ニュースは、強いAIを使えるかどうかだけの話ではありません。業務側から見ると「AIが止まる前提で、どの仕事を守るか」を決めるきっかけです。
今回の Python は小さいですが、代替なし・締切・社外影響・機密度・確認者を同じ基準で並べます。話が「どのAIがすごいか」から「どの業務を先に守るか」に変わります。
まずは4行で十分です。AIに頼っている作業を4つだけ書く。Sランクが出たら、そこが最初に手を入れる場所です。