Module: Legion::Extensions::MicrosoftTeams::Helpers::TraceRetriever
- Included in:
- Runners::Bot
- Defined in:
- lib/legion/extensions/microsoft_teams/helpers/trace_retriever.rb
Constant Summary collapse
- MAX_TRACE_TOKENS =
2000- MAX_TRACES =
20
Instance Method Summary collapse
-
#retrieve_context(message:, owner_id:, chat_id: nil, channel_id: nil) ⇒ Object
rubocop:disable Lint/UnusedMethodArgument.
Instance Method Details
#retrieve_context(message:, owner_id:, chat_id: nil, channel_id: nil) ⇒ Object
rubocop:disable Lint/UnusedMethodArgument
11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/legion/extensions/microsoft_teams/helpers/trace_retriever.rb', line 11 def retrieve_context(message:, owner_id:, chat_id: nil, channel_id: nil) # rubocop:disable Lint/UnusedMethodArgument return nil unless memory_trace_available? traces = [] traces.concat(retrieve_sender_traces(owner_id: owner_id)) traces.concat(retrieve_teams_traces) traces.concat(retrieve_chat_traces(chat_id: chat_id)) if chat_id ranked = rank_traces(traces: traces, query: ) format_trace_context(traces: ranked.first(MAX_TRACES)) rescue StandardError => e log_trace_error('retrieve_context', e) nil end |