mirror of
https://github.com/QuantumNous/new-api.git
synced 2026-09-07 01:56:53 +00:00
test: clean up reward-hacking backend tests (#5563)
This commit is contained in:
@@ -3,7 +3,6 @@ package service
|
||||
import (
|
||||
"math"
|
||||
"math/rand"
|
||||
"sync"
|
||||
"testing"
|
||||
|
||||
"github.com/QuantumNous/new-api/dto"
|
||||
@@ -695,11 +694,6 @@ func TestBuildTieredTokenParams_Len_TierCondition(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// Stress test: 1000 concurrent goroutines, complex tiered expr vs ratio,
|
||||
// random token counts, verify correctness and measure performance
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
const complexTieredExpr = `p <= 200000 ? tier("standard", p * 3 + c * 15 + cr * 0.3 + cc * 3.75 + cc1h * 6 + img * 3 + img_o * 30 + ai * 10 + ao * 40) : tier("long_context", p * 6 + c * 22.5 + cr * 0.6 + cc * 7.5 + cc1h * 12 + img * 6 + img_o * 60 + ai * 20 + ao * 80)`
|
||||
|
||||
func randomUsage(rng *rand.Rand) *dto.Usage {
|
||||
@@ -731,51 +725,6 @@ func randomUsage(rng *rand.Rand) *dto.Usage {
|
||||
}
|
||||
}
|
||||
|
||||
func TestStress_TieredBilling_1000Concurrent(t *testing.T) {
|
||||
usedVars := billingexpr.UsedVars(complexTieredExpr)
|
||||
|
||||
var wg sync.WaitGroup
|
||||
errCh := make(chan string, 1000)
|
||||
|
||||
for i := 0; i < 1000; i++ {
|
||||
wg.Add(1)
|
||||
go func(seed int64) {
|
||||
defer wg.Done()
|
||||
rng := rand.New(rand.NewSource(seed))
|
||||
|
||||
for j := 0; j < 100; j++ {
|
||||
usage := randomUsage(rng)
|
||||
groupRatio := 0.5 + rng.Float64()*2.0
|
||||
|
||||
params := BuildTieredTokenParams(usage, false, usedVars)
|
||||
cost, trace, err := billingexpr.RunExpr(complexTieredExpr, params)
|
||||
if err != nil {
|
||||
errCh <- err.Error()
|
||||
return
|
||||
}
|
||||
if cost < 0 {
|
||||
errCh <- "negative cost"
|
||||
return
|
||||
}
|
||||
|
||||
quota := billingexpr.QuotaRound(cost / 1_000_000 * testQuotaPerUnit * groupRatio)
|
||||
if quota < 0 {
|
||||
errCh <- "negative quota"
|
||||
return
|
||||
}
|
||||
|
||||
_ = trace.MatchedTier
|
||||
}
|
||||
}(int64(i))
|
||||
}
|
||||
|
||||
wg.Wait()
|
||||
close(errCh)
|
||||
for e := range errCh {
|
||||
t.Fatal(e)
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkTieredBilling_ComplexExpr(b *testing.B) {
|
||||
rng := rand.New(rand.NewSource(42))
|
||||
usedVars := billingexpr.UsedVars(complexTieredExpr)
|
||||
|
||||
Reference in New Issue
Block a user