MCPcopy Create free account
hub / github.com/astercloud/aster / CalculateMessagePriorities

Function CalculateMessagePriorities

pkg/context/window_manager.go:413–430  ·  view source on GitHub ↗

CalculateMessagePriorities 计算所有消息的优先级

(
	ctx context.Context,
	messages []Message,
	calculator PriorityCalculator,
)

Source from the content-addressed store, hash-verified

411
412// CalculateMessagePriorities 计算所有消息的优先级
413func CalculateMessagePriorities(
414 ctx context.Context,
415 messages []Message,
416 calculator PriorityCalculator,
417) []MessageWithPriority {
418 result := make([]MessageWithPriority, len(messages))
419
420 for i, msg := range messages {
421 priority, score := calculator.CalculatePriority(ctx, msg, i, len(messages))
422 result[i] = MessageWithPriority{
423 Message: msg,
424 Priority: priority,
425 Score: score,
426 }
427 }
428
429 return result
430}
431
432// SortMessagesByPriority 按优先级排序消息
433func SortMessagesByPriority(messages []MessageWithPriority, descending bool) {

Callers 2

CompressMethod · 0.85

Calls 1

CalculatePriorityMethod · 0.65

Tested by 1