DefaultContextManager

public int MaxContextTokens { get; set; }

Language: C#

public int MaxGenerationTokens { get; set; }

Language: C#

public DefaultContextManager(ITokenizer tokenizer, int maxContextTokens = 4096, int maxGenerationTokens = 512)

Language: C#

Creates a new context manager with specified token limits.

Parameters:

  • tokenizer: The tokenizer to use for counting tokens.
  • maxContextTokens: Maximum tokens allowed in context (default: 4096).
  • maxGenerationTokens: Maximum tokens to reserve for generation (default: 512).

public async Task<int> CountTokensAsync(IEnumerable<Message> messages, CancellationToken cancellationToken = default)

Language: C#

public Task<int> CountTokensAsync(string text, CancellationToken cancellationToken = default)

Language: C#

public async Task<List<Message>> TruncateMessagesAsync(IEnumerable<Message> messages, CancellationToken cancellationToken = default)

Language: C#

public async Task<bool> CanFitMessageAsync(IEnumerable<Message> currentMessages, Message newMessage, CancellationToken cancellationToken = default)

Language: C#

public async Task<int> GetAvailableGenerationTokensAsync(IEnumerable<Message> currentMessages, CancellationToken cancellationToken = default)

Language: C#