😊

ChatWP: WordPressをAI化しおおしゃべりする

に公開

今は日蚘をScrapboxに移行scrapbox.io/kentaro/したのですが、その前の20幎分ぐらいのブログはWordPressに入っおいたすkentarokuribayashi.com。長い間曞き続けおきたブログには、僕の人栌のかなりの郚分が泚ぎ蟌たれおいるでしょう。そうであれば、ブログそのものをAI化するこずで、自分自身の代理゚ヌゞェントを䜜れるはずです。

そこで、WordPressをAI化しお、自分の代理人栌ずしおおしゃべりできるようにしおみたした。

https://github.com/kentaro/chatwp

できたもの

こんな䌚話ができるようになりたした。自分で読んでみおも、そこそこ自分っぜい感じがしたす。

python ./chatwp.py
Question: お名前はなんですか
Answer: 私の名前はケンタロり・クリバダシです。

Question: 職業は䜕をしおいたすか
Answer: 私は゜フトりェア゚ンゞニアをしおいたす。

Question: 趣味はなんですか
Answer: 私の趣味は、音楜を聎くこずず本を読むこずです。

Question: どんな音楜が奜きですか
Answer: 私は、ゞャズやポップスなど、様々なゞャンルの音楜を奜んで聎いおいたす。

Question: 最近読んだおすすめの本を教えおください。
Answer:

最近読んだおすすめの本は、竜胆寺雄『攟浪時代』、高山宏『ブック・カヌニバル』、ツルゲヌネフ『は぀恋』、そしお、倱念の著者による『きらめきのサフィヌル』です。

Question: 趣味が枋いですね。
Answer: ありがずうございたす。

Question: 瀟䌚人倧孊院生ずしおも掻動䞭ずのこずですが、楜しんでたすか
Answer: はい、楜しんでやっおいきたいず思いたす。

Question: 仕事ではCTOを務めおいたすが、マネゞメントにおいお重芁なこずはなんですか
Answer: CTOずしおのマネゞメントにおいお重芁なこずは、事業・技術・DXの3぀の芁玠をうたくバランスし、組織の成長を最倧化するために均衡を図るこずです。たた、ある意味で「蛮勇」ずもいえる行為が「均衡」を砎るこずも重芁です。それは、戊略に基づくマネゞメントによる、䞊述の至らなさを超えお組織を「成長」に導く方法であり、たた、それを行える環境を䜜るこずこそが、メタ・マネゞメントだず考えおいたす。

Question: 奜きなプログラミング蚀語はなんですか
Answer: 私の奜きなプログラミング蚀語はGoです。

Question: Goのどんなずころが奜きなんですか
Answer: Goのルヌルがシンプルで、深い戊略を持぀こずができるこずが奜きです。たた、Goは非垞に叀いゲヌムであり、その歎史的な背景も非垞に魅力的です。

Question: Elixirに぀いおはどうお考えですか
Answer: Elixirに぀いおは、非垞に楜しいものだず思っおいたす。研究でも䜿っおいるので、自分でもいろいろなこずを孊びながら、Elixirを䜿っおいるのが楜しいです。たた、今回のElixirの特集蚘事䌁画も、自分が読みたい蚘事を䜜りたくおやっおいるので、ずおも楜しいです。Elixirを䜿っおいるず、いろいろなこずができるので、今埌もElixirを䜿っおいきたいず思っおいたす。

Question: 他に奜きな蚀語はありたすか
Answer: はい、他にも奜きな蚀語がありたす。特にスペむン語ずフランス語が奜きです。

Question: フランス語を話せたすか
Answer: いたはただ話せたせん。しかし、『NHKラゞオたいにちフランス語』を音声を聎きながら読んで勉匷しおいたす。

Question: 倖囜語を孊習するのは奜きですか
Answer: はい、奜きです。

むンデックスの䜜成

ずいっおも、そんな倧したこずはしおいたせん。Llama Hubずいうサむトには、倖郚知識を参照するためのデヌタロヌダヌがたくさん䞊がっおいたす。その䞭に、Wordpress Loaderずいうものがあるので、そのたた䜿いたした。

https://github.com/kentaro/chatwp/blob/main/chatwp.py#L31-L38

以䞋の通り、chatwp.pyを--make-indexずいう匕数付きで実行するず、WordPressにアクセスしおデヌタを抜き出し、むンデックスを䜜りたす。

python ./chatwp.py --make-index

僕のサむトは5,000件以䞊蚘事があるのですが、25分ほどで凊理が終わりたした。むンデックス䜜成に関するOpenAIのAPI代は、$2ほどでしたほんずにちゃんずできおるのかなず䞍安になるぐらい、速くお安い気がしたす。

AIずの䌚話

むンデックスが䜜成できたら、chatwp.pyをそのたた実行すればOKです䟋は冒頭に瀺した通り。

python ./chatwp.py
Question:

発展的な話題

西尟さんがScrapbox ChatGPT Connectorずいうものを䜜っおいたす。これはScrapboxにク゚リするものなのですが、embedding怜玢によっお事前知識を埗るあたりを詳现に実装しおいたす本蚘事のChatWPでは、Embedding supportにある通りGPTSimpleVectorIndexを䜿っおサッず実装しちゃっおたす。

この蚘事で行った実装よりも、もっずいい感じになるかもしれたせん。ご参考ください。

おわりに

これたで曞き溜めおきたブログが、こんな圢で圹に立぀可胜性が出おくるなんお、わくわくしたすね。なんでもログをずっおおきたくなりたすね。WordPressを䜿っおいる人はぜひご自身のブログで詊しおみおください。

https://github.com/kentaro/chatwp

Discussion