新しいものを表示

GitHub Copilotのオートコンプリーションを無効にし、手動で補完をトリガーする方法。やっと分かったのでメモ。

まずVSCodeに以下の設定を追加。
"github.copilot.editor.enableAutoCompletions": false, "editor.inlineSuggest.edits.experimental.enabled": false,

続いて、ショートカットキーはデフォルトでalt+\なのだが、日本語キーボードの場合、"editor.action.inlineSuggest.trigger"に "alt+oem_102"を割り当てる必要がある。(設定UIでalt+\を押下するだけでもいい)

こうでもしないと、無料枠の2000補完/月は一瞬で使い切ると思う。あとOpenAIに見せるファイルの主導権はこちらで握っておくなら、オートコンプリートは切っておいたほうがいい。

スレッドを表示

Alt+\でトリガーできるはずなんだが、動かないなあ。よくわからん

スレッドを表示

オートコンプリーションを無効にすることはできるけど、手動で補完を開始することはできない?そんなことないよな?

スレッドを表示

OpenAIとかAnthropicにローカルファイルを見せるのイヤだから、やっぱり使わないかもしれない。

スレッドを表示

Github Copilot無償化、2000補完/月って現実的に使い物になるかな。コードの提案が表示された時点で1補完ってことよね?
年間1万5000円ならPro版サブスクしてもいいかなぁ。

コード補完精度はそんなに高くないけど、たまに入力を省けるレベルにはAmazon Qは使えるんで、これでもいい気はしてる。

真にリアルタイム性を有した音声会話の実装は、さすがにv-next案件だな。まずはチャットと、疑似リアルタイムの音声チャットが精度よくできることを優先。

スレッドを表示

リアルタイムで並列的に行われる音声会話を、シーケンシャルな推論を行うLLMでエミュレートするのは、結構な困難を伴うと思う。

自分が話したこと(output)が単調増加するだけじゃなく、相手が話したこと(prompt)もリアルタイムに変動するという状況になるので、推論効率や精度が落ちる。そこをいかに落とさずに行うかがポイントになるだろうな。

スレッドを表示

AIチャットはターン制バトルじゃなくてアクティブタイムバトルだ、というのが持論だけど、いうてアクティブタイムバトルも行動が同時に発生することはない以上、疑似リアルタイムでしかない。

しかし音声会話ならば、自分と相手が同時に喋る状況も当然あるので、アクティブタイムバトル的処理では不十分、キャラが同時にリアルタイムに動く、アクションゲーム的な処理が必要になると思う。

スレッドを表示

逆に(逆に?)ユーザーの発言を最後まで聞かずに、勝手にユーザーの言うことを想像して、それに対する返答を、ユーザーがまだ喋ってるのに被せてくるキャラとか、萌え要素ですらあるかもしれない。

スレッドを表示

この手法だとAIの応答速度は、まるでリアルタイムに会話してるレベルまでいくんじゃないかな。会話精度はともかく。

スレッドを表示

predicted outputをllama.cppで実現する方法がよく分からないので、今は実装できないけどね。

他の方法としては、predicted outputではなく、確定outputとしてしまう。つまり、ユーザー台詞を補完したものに対するAIの返答の冒頭部分を、正解としてそのままプロンプトに載せ、後続を推論する方式。この方式だと回答が不自然になる可能性も出てくるけど、キャラチャットなんて、それくらいの不自然さを許容しても別に構わんと思う。

スレッドを表示

音声入力じゃなくて文字入力の場合は、入力中のテキストボックスの文字列を、裏で勝手に補完して、同じことをやる。なに、ローカルなので遠慮は要らない。

スレッドを表示

でも羨ましいから、可能な限り努力はするんや。
以前考えた、投機的音声合成法をもっと投機的にやりたい。

音声認識をもっと細切れにやる。
「おはよう、元気かい?」みたいな入力の場合、「おはよう、」でもう音声認識をかけてしまい、後続のユーザーの台詞までLLMで適当に補完し、AIの台詞の冒頭部分をそれに続く形で推論し、音声合成までやってしまう。

ユーザーの発声が終了したら、即、生成済みのAIの音声を再生しつつ、ユーザーの声を音声認識し、ユーザーの台詞完全版をプロンプトとして得る。

既に生成済みのAIの台詞の冒頭部分をpredicted outputとして、AI台詞をLLMで推論する。

predictが当たってたらラッキー、生成済みのAI音声に続く音声を合成して、再生中の音声に続けて再生する。

predictがはずれたら、再生中の音声をフェードアウトして、AI台詞全体を合成しなおし、再生する。

投機的というか、言い直しを許容する感じ。まあそれも人間ぽくて逆にいいかも。

スレッドを表示

音声合成AIは「はい、今日もいい天気ですね」というプロンプトで、「はい、今日もいい天気ですね」という音声を出力出来るのに対して、マルチモーダルLLMだと、「おはようございます」というプロンプトで、「はい、今日もいい天気ですね」という音声を出力するわけだから、まあチートだよな。

スレッドを表示

x.com/tegnike/status/186916629
realtime APIめっちゃ速くていいな。マルチモーダルモデルには応答速度ではどうやったって勝てん。

zenn.dev/galapagos/articles/sn
シンプルなシミュレーションなのに、かなりそれっぽくていいなあ。普通に綺麗だし。

www3.nhk.or.jp/news/html/20241
通常は空気中の水分を凝縮して飲み水を出すが、確率で爆発するやつだろ、知ってる。

言ってることが理解できないAIに意味はないよなぁ。
我々は、何かを理解したいからAIを使うんだし。

スレッドを表示
古いものを表示
Fedibird

様々な目的に使える、日本の汎用マストドンサーバーです。安定した利用環境と、多数の独自機能を提供しています。