1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
namespace Agent.Planner;
public enum TokenBudgetClass
{
K1 = 1_024,
K2 = 2_048,
K4 = 4_096,
K8 = 8_192,
K16 = 16_384,
K32 = 32_768,
K64 = 65_536,
K128 = 131_072
}
public static class TokenBudgetClassExtensions
{
public static long MaxTokens(this TokenBudgetClass value) => (long)value;
public static TokenBudgetClass Parse(string value) => value switch
{
"1K" => TokenBudgetClass.K1,
"2K" => TokenBudgetClass.K2,
"4K" => TokenBudgetClass.K4,
"8K" => TokenBudgetClass.K8,
"16K" => TokenBudgetClass.K16,
"32K" => TokenBudgetClass.K32,
"64K" => TokenBudgetClass.K64,
"128K" => TokenBudgetClass.K128,
_ => throw new ArgumentOutOfRangeException(nameof(value), value, "Unknown token budget class.")
};
}
|