Skip to content

Commit

Permalink
FIX: Mixtral models have system role support. (#703)
Browse files Browse the repository at this point in the history
Using assistant role for system produces an error because
they expect alternating roles like user/assistant/user and so on.
Prompts cannot start with the assistant role.
  • Loading branch information
romanrizzi committed Jul 4, 2024
1 parent eab2f74 commit 442681a
Show file tree
Hide file tree
Showing 5 changed files with 16 additions and 64 deletions.
1 change: 0 additions & 1 deletion lib/completions/dialects/dialect.rb
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ def all_dialects
[
DiscourseAi::Completions::Dialects::ChatGpt,
DiscourseAi::Completions::Dialects::Gemini,
DiscourseAi::Completions::Dialects::Mistral,
DiscourseAi::Completions::Dialects::Claude,
DiscourseAi::Completions::Dialects::Command,
DiscourseAi::Completions::Dialects::OpenAiCompatible,
Expand Down
59 changes: 0 additions & 59 deletions lib/completions/dialects/mistral.rb

This file was deleted.

7 changes: 6 additions & 1 deletion spec/lib/completions/endpoints/hugging_face_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,12 @@ def request_body(prompt, stream: false, tool_call: false)
let(:hf_mock) { HuggingFaceMock.new(endpoint) }

let(:compliance) do
EndpointsCompliance.new(self, endpoint, DiscourseAi::Completions::Dialects::Mistral, user)
EndpointsCompliance.new(
self,
endpoint,
DiscourseAi::Completions::Dialects::OpenAiCompatible,
user,
)
end

describe "#perform_completion!" do
Expand Down
11 changes: 9 additions & 2 deletions spec/lib/completions/endpoints/vllm_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -69,10 +69,17 @@ def stub_streamed_response(prompt, deltas, tool_call: false)
let(:anthropic_mock) { VllmMock.new(endpoint) }

let(:compliance) do
EndpointsCompliance.new(self, endpoint, DiscourseAi::Completions::Dialects::Mistral, user)
EndpointsCompliance.new(
self,
endpoint,
DiscourseAi::Completions::Dialects::OpenAiCompatible,
user,
)
end

let(:dialect) { DiscourseAi::Completions::Dialects::Mistral.new(generic_prompt, model_name) }
let(:dialect) do
DiscourseAi::Completions::Dialects::OpenAiCompatible.new(generic_prompt, model_name)
end
let(:prompt) { dialect.translate }

let(:request_body) { model.default_options.merge(messages: prompt).to_json }
Expand Down
2 changes: 1 addition & 1 deletion spec/lib/completions/llm_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
RSpec.describe DiscourseAi::Completions::Llm do
subject(:llm) do
described_class.new(
DiscourseAi::Completions::Dialects::Mistral,
DiscourseAi::Completions::Dialects::OpenAiCompatible,
canned_response,
"hugging_face:Upstage-Llama-2-*-instruct-v2",
gateway: canned_response,
Expand Down

0 comments on commit 442681a

Please sign in to comment.