はい よろしくお願いしますいや ワードキャンプ久しぶりなんで こういうの緊張しますよね朝からお越しいただいて ありがとうございます早速ですね ってこう思いますがだいたいこういうの そうですよね 動かないですよね動いた OKちょっとテーマがテーマなんで 始めるに51点お伝えしておきたいな と思いまして今日 この話 AI LLMですねのお話するんですけどもあくまでそれを ワードプレイスに組み込んだりした体験団としてお話しますのでAIでやったり そういう何の 専門家としてお話するわけではないことはご了承ください なので 体験についてですね皆さんが ワードプレイスに LLMとかOpen AIとか 組み込んだら どんな感じになるだろうなっていうのを想像してもらうための 体験を話するセッションだというふうにご理解いただければと思います著作権周りとかですね 学術的な話とかも興味ある方 いらっしゃるかと思いますけれどもちょっとそちらに関しては 専門の方ほかにいらっしゃると思いますのでそこは ご了承くださいというのをですねはじめにお話した上で 進めていこうと思いますで 今日お話しするトピックですけどもまず ワードプレイスに関するいろんな作業でLLMを使って どんな作業が効率化できるかみたいなところをですね 一部紹介しますその後ですね LLMが ワードプレイスであったりWeb政策 どんな課題解決するだろうなっていうところをお話ししてで 最後にですね 可能性をですね いくつかレージして20分を終わらせたいなと思っておりますということでですね あとですね このあたりですね効率化した話 組み込んだ話 うまくいかなかったケースですね事故紹介ですけども 岡本と言います関西で ワードプレイス ミーズアップの運営をやっていたりですねワードキャンプ 京都 関西の実行委員長とかやっているのと 本職では ストライブのディベロッパードボケートデブレルの仕事をしていますけども今回も完全に ワードプレイスコミュニティの一員として お話しさせていただいております早速入っていきたいと思いますが個人の運用保守ですねちなみにOpenAIを もう既に使ってるって方でどれぐらいらしちゃいますか 結構多いですね一応ですね OpenAIとLLMについて簡単にご紹介したいなと思いましてちなみに気になる方ですね こう読めないかもしれませんけどチャットGPTでOpenAIについて教えてくださいといっぱい語ってくれるので スマートフォンでぜひチャット.openai.comで 一回聞いてみてくださいラージュランゲースモデルが LLMの役語の創祥ですこれ何かというと パラメーターであったりとかですねラベルなしテキストっていうのを 膨大にトレーニング済みの言語モデルになっているのでこれをOpenAIが公開したものがの一つがチャットGPTですなので 言語モデルなどで事前に提供されたテキストデータをもとにその続きの文章を予測するようなそういったモデルになっていますただテキストデータといっても自体が反応性がすごく高いのでいろんなタスクに使えるねっていうことに気づいたのが今年の始まりでそこから一気にLLMのブームが始まったとされていますなので例えばブログのコンテンツももちろんテキストですしワードプレスのPHPとかジャバスクリプトのコードっていうのも解釈としてもテキストになりますのでこういったものも LLMが予測することができますもちろんエンジンXとかバーパーチとかのサーバーアノログアクセスエラーログとかもですね加わせてやったらそれに対してLLMが文章を作るみたいなこともできますそれ以外には例えば検索キーワードに対してGoogle検索とかが近いと思いますけども質問に対して答えを作るこれもテキストですのでこういったものも LLMがですね何かしらのレスポンスを作ることができますでどういうふうに使ったかというところのまず一つ目としては本職ではストライプのAPIのアップデートの情報とかを Xですねお知らせしたりはしているんですけれどもその内容をですねアップデートの頻度がかなり激しいサービスですのでとたまに補足しきれない時があったりしてそういう時に自分が何がアップデートされたかというのは簡単に把握するためにChange Logの英語で書かれているテキストをチャットGPTにそのまま渡してどんなアップデートがありましたかとキーテックス紹介してもらってそれを元に案内するみたいなことですね公開された記事例えばワードプレスだといろんなワードプレス.orgでブログで今度こういう機能のアップデートありますよみたいなもしくはベータのアナウンスとかいろいろあると思うんですけれどもそれのキャッチャーアップが間に合わないなという方はそのテキストをチャットGPTにコピー&ペーストもしくはこの後紹介するAPIとかを使って投げ込んでやることでひとまずだいたいこんな感じのことが起きているらしいというのを把握するのに使うことができますあとはですねやっぱりワードプレスをウェブスとサーバーの乗せて運用しているとどこかでエラーが発生したり何か動かなくなったりとかそういうことがあります実際と記事は更新できなくなったということがこの間あったんですけれどもそういうときにサーバーのエラーログとりあえず探してきて普段見ないテキストを見つけてそれをコピー&ペーストしてチャットGPTに貼り付けてこれで何が起きているのか教えてくださいというとチャットGPTがこのエラーメッセージはこういうことエラーが起きていますと解説してくれましたそれに対して対象方法はできるとウェブ版もしくはアプリ版のチャットGPTはコンテキストに基づいて回答してくれるのでそれに対する対象方法を割って聞いたらもこのケースだとノースペースレフトオンデバイスとかディスク容量がなくなっているケースですねで対象方法を割って聞いたらディスク容量がなくなっているからファイルを消したりとこの辺のファイルを消したらどうですかっていうふうに出してくれたりもしてましたそれを元にファイルの容量を削減させてそのときは解決させましたでさっきのはサーバーログだったんですけどPHPのエラーログとかもですね貼り付けておくと例えばフェータルエラーとかあと開発モードでワーニングとか出てきたりとかすると思うんですけどもそれが何か分かんなくてグーグルで検索してもちょっと容量を得ないなと思ったときに例えばチャットGPTに聞いてみるみたいな使い方もですね一つとしてはあるかなと思いますただですねこれ注意点なんですけどもこれチャットGPTに限らずLLMですね大規模言語モデルを利用する際の注意点として提示されたコードであったりこれはこうですよって説明されたものがですね100%正しいとは限らないということは注意の下上でやってくださいでここに載ってるコードですね何だろうかなグーグルアップスクリプトかなのコードについて聞いたんですけどもヘッダーの情報か何かが本当はアップスクリプトが送ってこないのに送ってくるように書いているみたいなことがありましたこれおそらくモデルの方でアップスクリプト以外のコードのデータを元に回答を予測しているからしている部分が混ざったことで出たと思うんですけどもLLM界隈ではですねハルシネーションというふうに言われています原格の英語の英訳だと思うんですがなので使う中でですね事実に基づかない情報を生成する現象というのがですねチャットGPTもしくはLLMなどを使ってる際には発生していますただ学習データの特に置きやすいのが偏っている場合であったりとかご情報の中でもそもそもチャットGPTであったりオープンエアのモデルがつく学習した時点では存在しなかった概念について聞いたケースでは一番ハルシネーションが起こりやすいとされていますチャットGPTの最近アップデートあったのかな少なくとも2021年ごろのモデルだとGPT3に関しては言われているんですけれどもなのでそれ以降に生まれた概念に関してワードプレスだとおそらく最利用ブロックが同期パターン、非同期パターンとかに名前が変わった時点が21年より後だと思うんですけれども最同期ブロック非同期ブロックみたいな概念はここのモデルは知らないのでそれについて聞こうとすると分からないからそれ以外の情報を元に何とか回答しようとする何とか回答しようとした結果事実ではない回答が生まれるというケースが出てきたりしていますこれの対策方法というのもWebで検索すると結構いろいろ出てくるので例えば事前に提示した情報以外では答えないでくださいとかですね分からないなら分からないで言ってくださいとかこの辺人間のコミュニケーションに近い部分ではあるんですがそうやって対策するかもしくはちゃんとですね提示されたコードに対してワードプレスのコードリファレンスであったりとか本番環境でいきなり試す前にプレイグラウンドとか使ってですねちゃんと動くかどうかを確認してで問題なく動くことを確認した上で提示するようにしてくださいこれはワードプレスの例ですけどもサーバーのログの解釈とかもですねもちろんあくまで解釈の一環だとする必要がありますなのでですね検索エンジンとは別物で検索エンジンはある情報を元に回答しますけどもLLMは学習した情報を元に何とか答えようとするものになっていますなので誤った情報ですね何とか答えようとした結果本当は知らないのにそれっぽく答えてくるっていうケースがあったりをしますでそれを対策としてはどういうの何のために対話をしたいのかというところをですね明確にしてプロンプ投入力するのをお勧めしますアイディア出しなのかアイディア出しだったら多少ファジーでも問題ないですし逆にようやくであったり提案だったりすると不正確なものを送られるとそれはかなり問題になるので事前に要件をきっちり過剰は切り合ってやる必要とかもありますとかですねそういう性質を理解して使う必要があると思いますワードプレスに組み込んだ話のところですけども皆さん自動買ってお好きですか自動買好きですよね私も大好きでですねワードオープンAIでプラグインとかもいろいろあるのとAPIも公開されていますでAPIキー作成したらですねそれをオープンAIのチャットスラッシュコンプリヘンションズでAPIに対してポストで投げつけてやったらチャットGPTのUIと同じようなリクエストを投げつけることができますで公式のライブラリーがPythonとNodeJSだけなのでワードプレスの場合SDK使わずにWP Remoteポストを使っていただくかもしくは別サーバーでAPI立ててあげる方がいいと思いますでAPIに関してはオーソライゼーションヘッダーに投げてあげましょうですねで例としてはですねうちのサイトで使っているのは記事を公開したときだけ処理が走るようにFOOCを設定してあげてですねポストの内容ですねあの概要分で入れるExertというフィールドあると思うんですけれどもそこの内容を自前で挿入してない場合はオープンAPIのAPIを使って記事の内容から概要を作るというものをですね今やっていますでチャットGPというのリクエストの場合ですねシステムっていうところで前提条件を設定してユーザーで変動を設定するみたいなことにすると前提条件付きで例えばこういうふうなブログを書いているのでそれに合わせた100文字以内で書いてくださいとかやったぐらいのコンテンツ渡すとそれにしたがって回答するみたいなことができますでこれうちのブログですね左側でもブログで記事書いてこう書いて押したらバス上のところが勝手にバス上で作ってやってくれるというふうになっていますで前提条件の設定にすると若干第三者が書いたような紹介部になることもあるのでその辺りもプロンプトの調整が必要ではありますでこれ使ってる今ヘッドレスでやってるんですけども記事一覧の文字書き部分ですねとワードプレスカーが文字数で区切るものじゃなくてちゃんと文字数に合わせたエクスアーポットを使えるようになったのでここでどういう記事がというのを把握しやすくなりましたで個人的にやりたいのは被動機化ですね結構オープンAIのAPIの処理が時間かかるので公開ボタンを押してから公開されば長いんですね1分ぐらいなのでトラブッダー時とかちょっと怖いので被動機化したいなと思ったりはしているのとプロンプトのチューニングですね今ハードコーディングしてるのでと思ってますあとは使う際のポイントとしてはですねオープンAIのAPIってワードプレスの処理のミスって無限ループになったりしたらかなり怖いと思うのでハードリミットっていうので特定の金額を超えたらそもそもAPI使えなくする仕組みがオープンAI用意されているのでこれらの設定は事前にしてあげた方がいいと思いますでもっと色々触りたいなっていう方はですねラングチェーンっていうものがですねパイソンとノードJSで公開されているのでこちらぜひ調べてみてくださいそれまでの会話の流れとかを使ってですねコンテキストなる会話チャットGPTのUIで出てるものを全く同じようなものを作ろうとすることができるフレームワークですそれ以外にも追加の要素をオープンAIに提供できるようにするエンベディングっていうものもあったりはしてですねこの辺を使ってリトライアブルアーグメントジェネレーションですねラグって言われているんですけれどもオープンAIが知らない情報だから自分のサイトのコンテンツとかについても検索して回答を生成するみたいなこともですねオープンAIのAPIとラングチェーンを使って実現期量になってきています今はですね試していることとしてはワードプレスのWPIPIからですね後でシールを公開するので興味あるかと公開コードのほうを見てみてくださいベクターストアとかいろいろ使ってですね自分のサイトの記事情報に対してをインポートしてそれに対して回答するようなチャットAPIみたいなものをですね自作しようとしているところなんですけれどもこれが完成したらまたどっかのワードプレスコミュニティで紹介すると思いますただこの辺がですねフレームワークがパイソンに集中していてあとノードJSがあるかなっていうふうな現状がありますのでディープダイをしていこうとするとパイソンかノードJSを勉強してワードプレスはそのAPIをWPにモードポストとかで読んで同期させるみたいな仕組みで考えていく必要があると思うのでサービス家とかを検討されている方そこをご注意くださいうまくいかなかったケースですねあの読書メモとかですねいろいろ書いてるんですけどそれを記事に起こすのがめんどくさいからってチャットGPTに一回投げたんですねだから結構いい感じの記事出してくれてそのまま公開しようと思ったんですけれども何度ためにブログ書いてたかわかんなくなったんですねメモを記事に書き直してそれで本に学んだもの自分の中に落とし込むやるつもりで書いてたのにそこのステップをこれに任せちゃったんでこれってブログにする意味あるのかなっていうふうなどになってきたというところでこの辺は手段の目的がだと思ってますどっちも手段であってもこんなことできるあんなことできるこんなこともできるいろいろ考えないとできるんですけどそれをやるそれを本当にやらないといけないんだと課題を解決しなきゃいけないんだというのは考えておく必要があると思います何度ためにワードプレイスタイトを作ってますかっていうのも結構長く言われてる命題だと思いますけどもということでですね苦手な作業のところですねLLMを使ってある程度相談相手になってもらうとか一時回答の相手になってもらうみたいな使い方はできると思いますただ本当にその回答があっているかどうかっていうのを裏取りする必要があるのであくまで行き先の自信を決める相談相手ぐらいに考えていただくといいと思いますAPI使うとですねようやくの自動化とかアシスタの作成とかこの辺りはある程度の精度でできるようになっていると感じてますのでそこあたりでですねあとパーマリンク日本語で記事タイトルからできると思うんですけどそれを英語に自動で翻訳するところとかですねにも使えるかと思いますのでぜひ皆さん色々挑戦してみてくださいただゴリゴリに使いこなそうと思うとパイソン化ノードJSでラングチェーンのフレーマークを使う必要が出てくるとは思いますのでそのあたりはどうとるかみたいな考えていくと思いますということでですねだいたい話したい内容としてバーなんですけども行き過ぎたかなまあこの後ディスカッションタイムに当たって前段としてお話する内容としてここで以上になりますでこの後のお話ですね皆さんでぜひ話し合ってほしいなと思う内容なんですけどもだいたい20分ぐらいですけども僕にとってはエラーログを読んで何しなきゃそのログを解釈してでそれをどう行動に結びつけるかみたいなところの作業をできるだけ減らしたかったのでそれに対してチャットGPTを使ったりとかようやく分作るのもあんまり得意じゃないので自動化したいしあばよくはXとかにシェアするボストもこれから自動化したいなと思ってるんですけどもこういう結構自動化したいものってやめたいもの本当はやりたくないものだと思うのでそういうところ何かみたいなことをですね皆さんでちょっと出し合ってほしいなと思いますそれに対して今日聞いたLEDMそれ以外にもいろんなモデルあると思うんですけどもどんなことできそうかなとかこんなモデルあったらできるんじゃないかみたいな事実ベースじゃなくてもいいですこんなのあればいいなっていうベースで皆さん話していただければと思いますで最後にそれをですね全体でシェアするような流れになればだと思いますのでここからディスカッションの流れに入っていこうと思いますので一旦はさかさんにお会いしたいと思いますお聞きいただきありがとうございました