* 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]>
23 lines
716 B
Ruby
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
|