Skip to content
This repository was archived by the owner on Jul 22, 2025. It is now read-only.

Commit f847d34

Browse files
committed
Merge branch 'main' into sentiment-analysis
2 parents 8915871 + 2c0a8e7 commit f847d34

File tree

192 files changed

+5828
-2210
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

192 files changed

+5828
-2210
lines changed

.discourse-compatibility

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
< 3.5.0.beta1-dev: bdef136080074a993e7c4f5ca562edc31a8ba756
12
< 3.4.0.beta4-dev: a53719ab8eb071459f215227421b3ea4987e5f87
23
< 3.4.0.beta4-dev: 20612fde52d3f740cad64823ef8aadb0748b567f
34
< 3.4.0.beta3-dev: decf1bb49d737ea15308400f22f89d1d1e71d13d

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,5 @@ node_modules
22
/gems
33
/auto_generated
44
.env
5+
evals/log
6+
evals/cases

Gemfile.lock

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ GEM
2929
racc
3030
prettier_print (1.2.1)
3131
racc (1.8.0)
32-
rack (3.1.6)
32+
rack (3.1.10)
3333
rainbow (3.1.1)
3434
regexp_parser (2.9.2)
3535
rexml (3.3.9)

admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-tools-edit.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,5 +14,7 @@ export default class DiscourseAiToolsEditRoute extends DiscourseRoute {
1414

1515
controller.set("allTools", toolsModel);
1616
controller.set("presets", toolsModel.resultSetMeta.presets);
17+
controller.set("llms", toolsModel.resultSetMeta.llms);
18+
controller.set("settings", toolsModel.resultSetMeta.settings);
1719
}
1820
}

admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-tools-new.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,5 +11,7 @@ export default class DiscourseAiToolsNewRoute extends DiscourseRoute {
1111

1212
controller.set("allTools", toolsModel);
1313
controller.set("presets", toolsModel.resultSetMeta.presets);
14+
controller.set("llms", toolsModel.resultSetMeta.llms);
15+
controller.set("settings", toolsModel.resultSetMeta.settings);
1416
}
1517
}

admin/assets/javascripts/discourse/templates/admin-plugins/show/discourse-ai-tools/edit.hbs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,7 @@
33
@tools={{this.allTools}}
44
@model={{this.model}}
55
@presets={{this.presets}}
6+
@llms={{this.llms}}
7+
@settings={{this.settings}}
68
/>
79
</section>

admin/assets/javascripts/discourse/templates/admin-plugins/show/discourse-ai-tools/new.hbs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,7 @@
33
@tools={{this.allTools}}
44
@model={{this.model}}
55
@presets={{this.presets}}
6+
@llms={{this.llms}}
7+
@settings={{this.settings}}
68
/>
79
</section>

app/controllers/discourse_ai/admin/ai_personas_controller.rb

Lines changed: 22 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -23,14 +23,28 @@ def index
2323
.each do |tool|
2424
tools << {
2525
id: "custom-#{tool.id}",
26-
name: I18n.t("discourse_ai.tools.custom_name", name: tool.name.capitalize),
26+
name:
27+
I18n.t(
28+
"discourse_ai.tools.custom_name",
29+
name: tool.name.capitalize,
30+
tool_name: tool.tool_name,
31+
),
2732
}
2833
end
2934
llms =
30-
DiscourseAi::Configuration::LlmEnumerator
31-
.values(allowed_seeded_llms: SiteSetting.ai_bot_allowed_seeded_models)
32-
.map { |hash| { id: hash[:value], name: hash[:name] } }
33-
render json: { ai_personas: ai_personas, meta: { tools: tools, llms: llms } }
35+
DiscourseAi::Configuration::LlmEnumerator.values_for_serialization(
36+
allowed_seeded_llm_ids: SiteSetting.ai_bot_allowed_seeded_models_map,
37+
)
38+
render json: {
39+
ai_personas: ai_personas,
40+
meta: {
41+
tools: tools,
42+
llms: llms,
43+
settings: {
44+
rag_images_enabled: SiteSetting.ai_rag_images_enabled,
45+
},
46+
},
47+
}
3448
end
3549

3650
def new
@@ -182,15 +196,16 @@ def ai_persona_params
182196
:priority,
183197
:top_p,
184198
:temperature,
185-
:default_llm,
199+
:default_llm_id,
186200
:user_id,
187201
:max_context_posts,
188202
:vision_enabled,
189203
:vision_max_pixels,
190204
:rag_chunk_tokens,
191205
:rag_chunk_overlap_tokens,
192206
:rag_conversation_chunks,
193-
:question_consolidator_llm,
207+
:rag_llm_model_id,
208+
:question_consolidator_llm_id,
194209
:allow_chat_channel_mentions,
195210
:allow_chat_direct_messages,
196211
:allow_topic_mentions,

app/controllers/discourse_ai/admin/ai_tools_controller.rb

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,11 +84,13 @@ def ai_tool_params
8484
.require(:ai_tool)
8585
.permit(
8686
:name,
87+
:tool_name,
8788
:description,
8889
:script,
8990
:summary,
9091
:rag_chunk_tokens,
9192
:rag_chunk_overlap_tokens,
93+
:rag_llm_model_id,
9294
rag_uploads: [:id],
9395
parameters: [:name, :type, :description, :required, enum: []],
9496
)

app/controllers/discourse_ai/admin/rag_document_fragments_controller.rb

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ def indexing_status_check
2020
def upload_file
2121
file = params[:file] || params[:files].first
2222

23-
if !SiteSetting.ai_embeddings_enabled?
23+
if !DiscourseAi::Embeddings.enabled?
2424
raise Discourse::InvalidAccess.new("Embeddings not enabled")
2525
end
2626

@@ -48,7 +48,8 @@ def upload_file
4848

4949
def validate_extension!(filename)
5050
extension = File.extname(filename)[1..-1] || ""
51-
authorized_extensions = %w[txt md]
51+
authorized_extensions = %w[txt md pdf]
52+
authorized_extensions.concat(%w[png jpg jpeg]) if SiteSetting.ai_rag_images_enabled
5253
if !authorized_extensions.include?(extension)
5354
raise Discourse::InvalidParameters.new(
5455
I18n.t(

0 commit comments

Comments
 (0)