koboriakira.com

原宿ぽむ選手撮影の「ぽむとれーと」が届いた。被写体は坂崎ユカ選手。たかがポートレート、なんて思ってた時期が私にもありました。


function callingの実装

今日は1日かけてFunction Callingの実装を試す。あとで絶対にブログに書こうと思うけど、すこしメモを。

たとえば「今日の天気を教えて」みたいな命令をしたいとき、ChatGPTは今日の天気情報を持っていないし、そもそも「今日」が何日かも知らない。

このような「まだできないこと」を補完してあげられるのがfunction callingなのでは、という理解。

ゆえに、

  • 今日の日付を取得する
  • 指定された天気を調べるAPIを呼び出す

という2つの関数をfunction callingとして利用できるようにする。そうすると、次のような感じでAIが処理してくれる

AIの処理イメージ

今日の天気を教えてほしい

まず今日の日付を知りたいから、今日の日付がわかる関数を呼び出そう…今日は2023年8月27日なのか。

2023年8月27日の天気を教えてほしい

この日の天気に関する情報は、天気を調べるAPIを呼び出せばよさそうだ。日付は2023年8月27日…JSON形式のデータが得られたぞ。

2023年8月27日の天気を教えてほしい。天気の情報は{JSON形式のデータ}を参照。

これなら返答できるな。返答しよう。

感想

このとき大事なのは「今日の天気を取得する関数」を作ってはいけないのだろう、ということ。通常の設計と同様に、無駄な依存関係は省くべきだ(※そのうえで複数のfunctionをまとめて利用したいケースはあるかも、と思っている)。

このあと画像生成のfunctionも追加したことで、「今日の天気をイラストで表して」みたいなことも回答してくれるようになった。

これの凄いところは、自分しか欲しくない機能を自分で作れるところだと思う。

たとえばNotionで管理しているデイリーログのページに何かを追加してほしい。そのための関数をOpenAIが用意してくれることはありえない。でも自身で実装することは簡単にできる。

前に「多くの情報をひとつに集めることが重要」と書いたけれど、さらにその確信を深めた。せめてAPI経由ですべての情報にアクセスできるべきだ。「めちゃくちゃ便利だし内部にAI機能も設けられているけれど、外部サービスと自由に連携できない」というサービスは、すくなくともAI目線ではもう使い物にならないサービスになるかもしれない。

※今日の天気を表したイラスト。プロンプトさえ改善すれば、結構いい感じになるのではと夢見ている。

2023 08 27


家でパウパトロールの非公式アニメ(違法配信ではなく、二次創作という意味)が永遠と流れ続けていた。

子供向けのYouTubeチャンネルはなかなか戦略的で、生放送という形態で1時間ぐらいのアニメが永遠とループされている。そのため他のチャンネルに移動することなく、ひたすら再生数を稼ぐことができていそうだ。

ほぼすべての大人が「自分もトミカ死ぬほど買って、池に投げ入れてみたり砂場に埋めてみたりした動画を撮って儲けようかな」と思ったはずだ。これを行動に移す人とそうでない人の差はなんだろうか。ケンブリッジ大学の研究にありそう。


本当に上の動画をひたすら見せられた記憶しかない。入浴前にLUSHのRootsをはじめて使ってみて、夜にこれを作って食べた。


Function Callingの実装をいよいよ試した。

すでに稼働している1日の要約機能をFunction Calling経由で呼び出せるようにしてみて、やりながら色々と考えることがあった。Function Callingは擬人化されたイメージ、つまりBotに付与してあげると良い具合なんだろうな、というのがいまの仮説。BotができることをFunction Callingとして定義しておき、Botに対してリクエストが飛んだらFunction Callingの中から任意のものを選ぶ感じ。


好きなゴスペラーズが戻ってきた! 最近ずっといい具合だったけど、とうとう自分の感覚と合ってきた感じ。ゴスペラーズはポップスをやらないと! という派閥なので。

chelmicoの楽曲のなかで一番好きだ。RIP SLYMEの流れであることをまったく隠さずにいるのが素敵。サビの軽快さがクセになる。

急いでFurui Rihoの曲を聴きまくった。「ABCでガッチャン」の衝撃が強かったけれども、たとえばこの「ピンクの髪」も相当いい。R&Bの素質をバリバリに持っているのだけれど、ちゃんとポップスをやってくれている。「あの曲からインピレーション受けてるのかな」みたいなのも沢山あり、聴いてて楽しい。

これは別に今日知った訳じゃなくて、ここ1ヶ月ずっと聴いてる。聴けば聴くほど憎たらしいというか、手のひらで踊らされている感じが強い。そして文字通り踊らされている。


☆Taku Takahashiプロデュース楽曲。何歳になったって、このテイストが流れれば勝手に幸せになるように身体ができあがっている。

これも同様。eillとやってるなんて最高じゃん! 何の映画なのかはいまだに知らないし、知らずにいようと思う。

eillのことを考えると止まらなくなる。本当に好きなアーティストだ。きちんと歌が上手くて楽曲も現代風なのに、その全体を「平成」感が覆っている。私の思うJ-POPがここにはある。

これを書いたあとに新曲も見つけて聴いた。ほら、やっぱりそうじゃん。「m-floがlovesしそうな声」ってことなのかもな。かなり本質では。


銀杏BOYSによる広末涼子カバー。忘れないようにメモ。

先日のレスラーズグラフィカ7のキャンバス販売の案内が出ていた。坂崎ユカ選手とNEO美威獅鬼軍のキャンバスを買うことに決めた…つもり。

言い淀んでいるのは「マジでこれでよいのか?」ってことだ。ハマり方のペースが個人史としては異常だ(世の中には異次元のスピードで推し・沼にハマって幸せになっている人が多くいることを知っているので)。しかし「ユカっちが今年で卒業」という事実がブレーキを壊している。


「ふつうのエンジニア」になるための、ちょっとした発想の転換がゆったりめなペースでバズっている。Twitter経由とQiitaのメール経由からで、はてブ関係なく盛り上がるのは初めてかも。

最近はかなり意識的に「エンジニアリングをテーマにしない」ことにしている。ある種の自己啓発的な要素を含んでいる、と言えよう。戦略であり、いまのところは思ったような結果が出ている感じ。これをあと100本ぐらい執筆したらなにかしら変化が訪れる気がしていて、このまま頑張れれば最高。


と書いていたところで、こんな曲が流れてきた。なにこの最高な曲は!?


AIチア

2023/08/21

Slackにフロー情報を放り込みまくっていたら、いざ要約させるときにトークン数の上限を超えてしまった。そろそろ分割するロジックも入れないとな。その前に32kの利用可能が訪れてほしいが。


子どもが手足口病の恐れがあり病院へ連れていってもらった。ふつうの夏風邪のようで一安心。仕事は結局できず有給をとってしまった。これが夏休みかな。


Qiita死んでも破壊的操作をしないを投稿。本当にハネるときとハネないときの落差がすごい。フォロワー数が400ぐらいあるのだけれど、ほとんどがBotっぽいので広まりやすさもないんだよなあ。まあそれでも将来のためにコツコツ書くつもりだが。


そのほか個人開発をいろいろと進める。リマインド用にLINEのMessaging APIを使おうと思い、ChatGPTに「どうやるの?」と聞いたら一瞬でアプリができあがった。4,5年前にもチャレンジしたのだが、そのときは自身のユーザIDを取得するまでで死ぬほど大変だったのに。

ただこれを読んで「エンジニアの仕事がめっちゃ簡単になった、ってこと?」と理解すると、そのあと苦労するだろう。バックグラウンドにある程度の知識がある状態でChatGPTを使う場合と、本当に無知のまま使う場合とでは、かかる労力では測れない次元の違いがある。

この話が伝わりづらいのは、無知のまま使ってどんどん生み出していく人も数は少ないがいるからだ。おそらく反証がすでに何百個もあるはず。ただその人たちはChatGPTが出る・出ないに関わらず、いずれ勝手にやっていたタイプだ。ChatGPTは課題解決のハードルこそ下げてくれるが、モチベーションを挙げたり課題意識を持たせることはまだできない。熱意は自身の中から生み出すしかない。AIのチアリーディングでよければあったけど


久しぶりにTaskChute的な時間軸で暮らしてみているが、想像通りに、予定通りに進まない。予定なんてあってないようなものだ、という意識が強い。こんなに計画が好きなのに、(時間的に)計画通りに進めることには価値を一切置いていない。


朝8時に起床するつもりで予定を組んだら、早速10時起床。そんなもんだ。予定というのは破るためにあり、計画というのは調整されるためにある。行きたかったブランチを断念して、ベースブレッドとコーヒーで一日を開始。


午前中に週次レビューをこなした。Inboxに読もうと思ってたWebページを溜め込んでいたので、1時間ぐらいかけて整理。結構いい発見もあった。React Server Component のテストと Container / Presentation Separationがとくに面白く、読み終わってみれば「そりゃそうだ」と思ったのだが、実際にそのような実装ができていなかったなと振り返る。このブログもReactベースのため、コンポーネント設計も見直してみようと感じた。

音楽、数学、タイポグラフィは書いたっけかな? これもよかったので。


はじめて野球と関係なく、信濃町に降り立った。「被写体がプロレスラーだけの写真展」である、レスラーズグラフィカのためにアートコンプレックスセンターへ。

展示会場は多幸感に包まれたような空間だった。被写体であるレスラーは、この半年間でほぼみんな知っていて、あらためて「間に合った」感を覚える。

お目当ての坂崎ユカ瑞希(マジラビ)の写真を何度も観た。写真も素敵だし、そこから写真が撮影されるまでの空気感も想像できるぐらいだった。古式銃を持っているユカっちと、バラ(ですよね?花の種類は本当にわからない)に囲まれているマジラビが一番好き。ポートレートとして購入しようと思ったのだけれど、なんとキャンバスでの販売もこのあと行われるようだったので、いったん買い物は控えることにした。

2023 08 19 1

沙希様メイ・サン=ミッシェルの写真もとても良かった。バラの花とシルバートレイを後ろ手で持っている二人のバックショットが一番良かった。こっちはポートレートで買おうと思ったけど、すでに入荷待ち状態だった。やっぱり。その他のレスラーもひとつひとつ、ゆっくりと鑑賞できて本当に良かった。

2023 08 19 2

なお他の展示会場もあり、そっちで販売されていた作品(リソグラフ、と呼ぶらしい)がとても良くて購入。横山千裕さんという方の”Backyard Star”という作品。これが一番の出会いだったかも。額縁を買って階段に飾ろうと思う。

2023 08 19 3

帰宅後、記事をひとつ書いて寝かす。月曜の朝に投稿予定。24時にはすべての予定が終わるはずだったが、まあ2時間遅れて起きてるんだからな。うまく調整できただろう。


子どもは近くのお祭りに行き、輪投げや金魚すくいをやってきた。3匹も金魚を持って帰ってきて、それぞれソファーちゃん、テーブルちゃん、イスちゃん、らしい。どこでそのユーモア覚えたの?