設定上人外122歳(♀)の精神安穏日記

広告の消し方 https://masavo.jp/ad

財布を持ってないときの例外処理を忘れていた

自宅からコンビニに行ったら、財布もおサイフケータイも忘れた。

財布もケータイも必ず持っているという、隠れた前提条件に基づくメソッドだった。

イメージ

def buy
  if @me.has_wallet?  || @me.has_phone?
     # 購入処理

  else
    raise NoMonnyError
  end
rescue NoMonnyError => e
  logger.info "お金もってないので、調達します"
  @me.get_monny
end

Me#has_phone?も怪しい。Phone#any_battery?が前提になっている。

人間はクラッシュすると思わぬ行動を起こす。

実装が甘いとお金を変なところから調達したり、品物を盗んだりするんだろうと思った。

LLMクライアント内在!

補足しきれなかったエラーは上位階層でLLMクライアントに投げている感じで、学習元によって振る舞いが変わる。

だから幼少期の教育や家庭環境が大事ということか。

今回のケースは、sampleコードで示すような概念を頭の中で描いてクライアントがLLMに読み込ませているかつ、今回のケースを抽象化したり、一般化したり、別の用途でも使えるようにしたりしている。

実際の実装はガチガチにしないで、LLMクライアントに食わせて動的にコード生成してもらってその都度臨機応変に都度実行みたいなことをして、耐障害性を向上させているんだな。