Files
discourse-ai/lib/summarization/entry_point.rb
T
Roman RizziandPenar Musaraj c7acb4a6a0 REFACTOR: Support of different summarization targets/prompts. (#835)
* DEV: Add summary types

* Refactor for different summary types

* Use enum for summary types

* Update lib/summarization/strategies/topic_summary.rb

Co-authored-by: Penar Musaraj <[email protected]>

* Update lib/summarization/strategies/topic_gist.rb

Co-authored-by: Penar Musaraj <[email protected]>

* Update lib/summarization/strategies/chat_messages.rb

Co-authored-by: Penar Musaraj <[email protected]>

* Fix chat_messages single prompt

* Small tweak to the chat summarization prompt

---------

Co-authored-by: Penar Musaraj <[email protected]>
2024-10-15 13:53:26 -03:00

23 lines
716 B
Ruby

# frozen_string_literal: true
module DiscourseAi
module Summarization
class EntryPoint
def inject_into(plugin)
plugin.add_to_serializer(:current_user, :can_summarize) do
return false if !SiteSetting.ai_summarization_enabled
scope.user.in_any_groups?(SiteSetting.ai_custom_summarization_allowed_groups_map)
end
plugin.add_to_serializer(:topic_view, :summarizable) do
scope.can_see_summary?(object.topic, AiSummary.summary_types[:complete])
end
plugin.add_to_serializer(:web_hook_topic_view, :summarizable) do
scope.can_see_summary?(object.topic, AiSummary.summary_types[:complete])
end
end
end
end
end