Scrapbox的記憶を持つKeichobot的存在
いまのKeichobotは「会話の流れ」を順序付きでしっかり覚えている(リストとして保持している)が、Scrapbox向けに拡張するならこの「記憶の持ち方」が変わる必要があると思う
「幅優先探索」に関して
チャットとして「ターン制コミュニケーション」する場合には人間の側が「話題があっちこっち飛んで辛い!一つの話題を掘り下げろ!」となるので深さ優先になりやすい評価関数になってる
具体的には直前の発言に含まれている単語のスコアにボーナスがつく
ユーザとのチャットだけが記憶なのではなくScrapboxを読み込ませる前提だと
一年前に書いた記事とかが浮かび上がってくるといい感じなのでボーナスは一切なくて良いかも
チャットを入出力として前提していたので、ユーザはキーワードを明示的にブラケティングしない想定だったが、Scrapboxを記憶として使うなら何がキーワードであるかの情報をあらかじめ持てる
現状会話を跨いだ記憶を持たないKeichobotの今後の発展方向として「個人の記憶を持つようになる」の先に「複数人チームの記憶を持つようになる」があって、その場合はチームの共通言語を生み出すことに寄与する…ってのをお仕事の文脈で社内に書いてたんだけど、これを試してみる場合に「井戸端の内容と、井戸端に参加してる人たちの公開個人プロジェクトの内容を記憶として持つチャットボット」って路線は割と面白そうだという突然のひらめき 面白そうyosider.iconerniogi.icon
幅優先探索したいケースもあると思うし、その場合はチャット的UIよりもScrapboxが向いてそう??nishio.icon Scrapbox的記憶を持つKeichobot的存在
Chrome拡張
カーソルがある行のテキストを取得する
その行にリンクがあるならリンク先のテキストをAPIを叩いて取得
くわえてベクトル検索して類似度の高い行のあるページを読み込む まずは単にキーワード抽出してそれで普通の検索をするのでも良いかも
これらを「チャットの過去ログ」のように扱う
で、何をするのか
記憶を使わない素朴なスタイル
入力行中のキーワードに対して掘り下げ質問をする
記憶を使うスタイル
どのキーワードにフォーカスするのかを過去ログでの出現頻度によって決めることをKeichobotではやってた
Scrapbox記憶を使う場合、ユーザの一時記憶にはその情報はない
「そのXと、このページのYとの間に何か関係がありますか?」
これ、このページを読みにいかないといけないから思考の妨害になる
Keichobotは自分の内面にフォーカスするように誘導してるので、他のページを読みに行かせるのは逆方向
とはいえ、Keichobotとは別の役割のボットとして、過去の記事との関連を見つける奴がいても良い
うーん、でもそれはずっと起動してなくて良い気がするなぁ
書いてる最中にリアルタイムで反応してくる必要がない
どっちかというと、翌日「昨日書いてたこれと、3年前に書いたこれとは関係がありますか?」と1日1回程度@nishioしてくるとかの方が良いのか?
非同期コミュニケーション