mirror of
https://github.com/discourse/discourse-ai.git
synced 2025-07-14 01:53:27 +00:00
FIX: Proper default LLM detection for inferred concepts (#1392)
This commit is contained in:
parent
478f31de47
commit
27de71fc4f
@ -15,7 +15,7 @@ module DiscourseAi
|
|||||||
.find { |p| p.id == SiteSetting.inferred_concepts_generate_persona.to_i }
|
.find { |p| p.id == SiteSetting.inferred_concepts_generate_persona.to_i }
|
||||||
.new
|
.new
|
||||||
|
|
||||||
llm = LlmModel.find(persona.default_llm_id)
|
llm = LlmModel.find(persona.class.default_llm_id)
|
||||||
context =
|
context =
|
||||||
DiscourseAi::Personas::BotContext.new(
|
DiscourseAi::Personas::BotContext.new(
|
||||||
messages: [{ type: :user, content: content }],
|
messages: [{ type: :user, content: content }],
|
||||||
@ -154,7 +154,7 @@ module DiscourseAi
|
|||||||
.find { |p| p.id == SiteSetting.inferred_concepts_deduplicate_persona.to_i }
|
.find { |p| p.id == SiteSetting.inferred_concepts_deduplicate_persona.to_i }
|
||||||
.new
|
.new
|
||||||
|
|
||||||
llm = LlmModel.find(persona.default_llm_id)
|
llm = LlmModel.find(persona.class.default_llm_id)
|
||||||
|
|
||||||
# Create the input for the deduplicator
|
# Create the input for the deduplicator
|
||||||
input = { type: :user, content: concept_names.join(", ") }
|
input = { type: :user, content: concept_names.join(", ") }
|
||||||
|
@ -31,9 +31,12 @@ RSpec.describe DiscourseAi::InferredConcepts::Finder do
|
|||||||
bot_double = instance_double("DiscourseAi::Personas::Bot")
|
bot_double = instance_double("DiscourseAi::Personas::Bot")
|
||||||
|
|
||||||
allow(AiPersona).to receive(:all_personas).and_return([persona_class_double])
|
allow(AiPersona).to receive(:all_personas).and_return([persona_class_double])
|
||||||
allow(persona_class_double).to receive(:id).and_return(SiteSetting.inferred_concepts_generate_persona.to_i)
|
allow(persona_class_double).to receive(:id).and_return(
|
||||||
|
SiteSetting.inferred_concepts_generate_persona.to_i,
|
||||||
|
)
|
||||||
allow(persona_class_double).to receive(:new).and_return(persona_instance_double)
|
allow(persona_class_double).to receive(:new).and_return(persona_instance_double)
|
||||||
allow(persona_instance_double).to receive(:default_llm_id).and_return(llm_model.id)
|
allow(persona_instance_double).to receive(:class).and_return(persona_class_double)
|
||||||
|
allow(persona_class_double).to receive(:default_llm_id).and_return(llm_model.id)
|
||||||
allow(LlmModel).to receive(:find).with(llm_model.id).and_return(llm_model)
|
allow(LlmModel).to receive(:find).with(llm_model.id).and_return(llm_model)
|
||||||
allow(DiscourseAi::Personas::Bot).to receive(:as).and_return(bot_double)
|
allow(DiscourseAi::Personas::Bot).to receive(:as).and_return(bot_double)
|
||||||
allow(bot_double).to receive(:reply).and_yield(
|
allow(bot_double).to receive(:reply).and_yield(
|
||||||
@ -57,9 +60,12 @@ RSpec.describe DiscourseAi::InferredConcepts::Finder do
|
|||||||
bot_double = instance_double("DiscourseAi::Personas::Bot")
|
bot_double = instance_double("DiscourseAi::Personas::Bot")
|
||||||
|
|
||||||
allow(AiPersona).to receive(:all_personas).and_return([persona_class_double])
|
allow(AiPersona).to receive(:all_personas).and_return([persona_class_double])
|
||||||
allow(persona_class_double).to receive(:id).and_return(SiteSetting.inferred_concepts_generate_persona.to_i)
|
allow(persona_class_double).to receive(:id).and_return(
|
||||||
|
SiteSetting.inferred_concepts_generate_persona.to_i,
|
||||||
|
)
|
||||||
allow(persona_class_double).to receive(:new).and_return(persona_instance_double)
|
allow(persona_class_double).to receive(:new).and_return(persona_instance_double)
|
||||||
allow(persona_instance_double).to receive(:default_llm_id).and_return(llm_model.id)
|
allow(persona_instance_double).to receive(:class).and_return(persona_class_double)
|
||||||
|
allow(persona_class_double).to receive(:default_llm_id).and_return(llm_model.id)
|
||||||
allow(LlmModel).to receive(:find).with(llm_model.id).and_return(llm_model)
|
allow(LlmModel).to receive(:find).with(llm_model.id).and_return(llm_model)
|
||||||
allow(DiscourseAi::Personas::Bot).to receive(:as).and_return(bot_double)
|
allow(DiscourseAi::Personas::Bot).to receive(:as).and_return(bot_double)
|
||||||
allow(bot_double).to receive(:reply).and_yield(nil, nil, :text)
|
allow(bot_double).to receive(:reply).and_yield(nil, nil, :text)
|
||||||
@ -229,9 +235,12 @@ RSpec.describe DiscourseAi::InferredConcepts::Finder do
|
|||||||
bot_double = instance_double("DiscourseAi::Personas::Bot")
|
bot_double = instance_double("DiscourseAi::Personas::Bot")
|
||||||
|
|
||||||
allow(AiPersona).to receive(:all_personas).and_return([persona_class_double])
|
allow(AiPersona).to receive(:all_personas).and_return([persona_class_double])
|
||||||
allow(persona_class_double).to receive(:id).and_return(SiteSetting.inferred_concepts_deduplicate_persona.to_i)
|
allow(persona_class_double).to receive(:id).and_return(
|
||||||
|
SiteSetting.inferred_concepts_deduplicate_persona.to_i,
|
||||||
|
)
|
||||||
allow(persona_class_double).to receive(:new).and_return(persona_instance_double)
|
allow(persona_class_double).to receive(:new).and_return(persona_instance_double)
|
||||||
allow(persona_instance_double).to receive(:default_llm_id).and_return(llm_model.id)
|
allow(persona_instance_double).to receive(:class).and_return(persona_class_double)
|
||||||
|
allow(persona_class_double).to receive(:default_llm_id).and_return(llm_model.id)
|
||||||
allow(LlmModel).to receive(:find).with(llm_model.id).and_return(llm_model)
|
allow(LlmModel).to receive(:find).with(llm_model.id).and_return(llm_model)
|
||||||
allow(DiscourseAi::Personas::Bot).to receive(:as).and_return(bot_double)
|
allow(DiscourseAi::Personas::Bot).to receive(:as).and_return(bot_double)
|
||||||
allow(bot_double).to receive(:reply).and_yield(
|
allow(bot_double).to receive(:reply).and_yield(
|
||||||
@ -255,9 +264,12 @@ RSpec.describe DiscourseAi::InferredConcepts::Finder do
|
|||||||
bot_double = instance_double("DiscourseAi::Personas::Bot")
|
bot_double = instance_double("DiscourseAi::Personas::Bot")
|
||||||
|
|
||||||
allow(AiPersona).to receive(:all_personas).and_return([persona_class_double])
|
allow(AiPersona).to receive(:all_personas).and_return([persona_class_double])
|
||||||
allow(persona_class_double).to receive(:id).and_return(SiteSetting.inferred_concepts_deduplicate_persona.to_i)
|
allow(persona_class_double).to receive(:id).and_return(
|
||||||
|
SiteSetting.inferred_concepts_deduplicate_persona.to_i,
|
||||||
|
)
|
||||||
allow(persona_class_double).to receive(:new).and_return(persona_instance_double)
|
allow(persona_class_double).to receive(:new).and_return(persona_instance_double)
|
||||||
allow(persona_instance_double).to receive(:default_llm_id).and_return(llm_model.id)
|
allow(persona_instance_double).to receive(:class).and_return(persona_class_double)
|
||||||
|
allow(persona_class_double).to receive(:default_llm_id).and_return(llm_model.id)
|
||||||
allow(LlmModel).to receive(:find).with(llm_model.id).and_return(llm_model)
|
allow(LlmModel).to receive(:find).with(llm_model.id).and_return(llm_model)
|
||||||
allow(DiscourseAi::Personas::Bot).to receive(:as).and_return(bot_double)
|
allow(DiscourseAi::Personas::Bot).to receive(:as).and_return(bot_double)
|
||||||
allow(bot_double).to receive(:reply).and_yield(nil, nil, :text)
|
allow(bot_double).to receive(:reply).and_yield(nil, nil, :text)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user