@@ -435,7 +435,7 @@ fn normalize_model_name(known_models: Vec<String>, name: String) -> String {
/// The maximum monthly spending an individual user can reach on the free tier
/// before they have to pay.
-pub const FREE_TIER_MONTHLY_SPENDING_LIMIT: Cents = Cents::from_dollars(5);
+pub const FREE_TIER_MONTHLY_SPENDING_LIMIT: Cents = Cents::from_dollars(10);
/// The default value to use for maximum spend per month if the user did not
/// explicitly set a maximum spend.
@@ -45,24 +45,17 @@ async fn test_billing_limit_exceeded(db: &mut LlmDatabase) {
let user_id = UserId::from_proto(123);
- let max_monthly_spend = Cents::from_dollars(10);
+ let max_monthly_spend = Cents::from_dollars(11);
// Record usage that brings us close to the limit but doesn't exceed it
- // Let's say we use $9.50 worth of tokens
- let tokens_to_use = 190_000_000; // This will cost $9.50 at $0.05 per 1 million tokens
+ // Let's say we use $10.50 worth of tokens
+ let tokens_to_use = 210_000_000; // This will cost $10.50 at $0.05 per 1 million tokens
let usage = TokenUsage {
input: tokens_to_use,
input_cache_creation: 0,
input_cache_read: 0,
output: 0,
};
- let cost = Cents::new(tokens_to_use as u32 / 1_000_000 * PRICE_PER_MILLION_INPUT_TOKENS as u32);
-
- assert_eq!(
- cost,
- Cents::new(950),
- "expected the cost to be $9.50, based on the inputs, but it wasn't"
- );
// Verify that before we record any usage, there are 0 billing events
let billing_events = db.get_billing_events().await.unwrap();
@@ -102,8 +95,8 @@ async fn test_billing_limit_exceeded(db: &mut LlmDatabase) {
input_cache_read: 0,
output: 0,
},
- spending_this_month: Cents::new(950),
- lifetime_spending: Cents::new(950),
+ spending_this_month: Cents::new(1050),
+ lifetime_spending: Cents::new(1050),
}
);
@@ -118,7 +111,7 @@ async fn test_billing_limit_exceeded(db: &mut LlmDatabase) {
assert_eq!(billing_event.input_cache_read_tokens, 0);
assert_eq!(billing_event.output_tokens, 0);
- let tokens_to_exceed = 20_000_000; // This will cost $1.00 more, pushing us from $9.50 to $10.50, which is over the $10 monthly maximum limit
+ let tokens_to_exceed = 20_000_000; // This will cost $1.00 more, pushing us from $10.50 to $11.50, which is over the $11 monthly maximum limit
let usage_exceeding = TokenUsage {
input: tokens_to_exceed,
input_cache_creation: 0,
@@ -158,8 +151,8 @@ async fn test_billing_limit_exceeded(db: &mut LlmDatabase) {
input_cache_read: 0,
output: 0,
},
- spending_this_month: Cents::new(1050),
- lifetime_spending: Cents::new(1050),
+ spending_this_month: Cents::new(1150),
+ lifetime_spending: Cents::new(1150),
}
);
}