Open JunzoKamahara opened 3 months ago
あ、すいません、vllmのデフォルトチャットテンプレートを使用しているためかもしれません。vllm側で工夫すればいいのかな。
Issueありがとうございます!
おお、ローカルLLMにもAnthropic Claudeみたいな仕様のLLMがあるんですね👀
Claudeで下記のようなロジックを組んでるので転用できるかもしれません! 後ほど確認しておきます!
ちなみにですが、エラーの出るLLMの名前おしえてもらってよいですか?
すいません、返事遅くなりました。CohereのCommand R Plus 70Bを量子化したものをvllmで動かしています。
特定のローカルLLM(具体的にはCommand R PlusやMistral系?)では、ユーザroleがuser/assistant/user/assitant/user/...という順序になっていないとエラーになるものがありました。その場合Bad Request 405が返ってきます。 調べてみると、発言履歴を10個だけ使っていますが、この場合「assitant/user」の5回繰り返しになります。先頭がassistantoなら良さそうなんですが、実は最初にsystem promptが入っているので、systemはassistanto相当になり、assistant/assitantと続くのでエラーになるようです。 単純にエラーをなくすだけなら、slice(-11)とかにすればエラーは出なくなります。 あるいは、この系統のLLMでは、system promptをuser roleに変更するとか(すいません、確認できていません)もありそうですが、モデル毎の設定を追加するのはちょっと面倒ですね。 src/pages/index.tsx:484 const messages: Message[] = [ { role: "system", content: systemPrompt, }, ...messageLog.slice(-10), ];