feat: sync deployed v1.0.0-rc.38-custom.42
Sync production source including routing, billing, Astra detection and public uptime. Update custom build instructions and license packaging.
This commit is contained in:
1 parent
aa6c3f50f4
commit
ceddfd3d6b
828 files changed
+122253
-13702
No files matched your search
@@ -109,3 +109,42 @@ func TestGPT6AstraBuiltinBilling(t *testing.T) {
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func TestImageModelBuiltinPricesAndOverrides(t *testing.T) {
|
||||
settings := config.GlobalConfig.Get("billing_setting").(*billing_setting.BillingSetting)
|
||||
saved := *settings
|
||||
savedRatios, savedPrices := ratio_setting.ModelRatio2JSONString(), ratio_setting.ModelPrice2JSONString()
|
||||
t.Cleanup(func() {
|
||||
*settings = saved
|
||||
require.NoError(t, ratio_setting.UpdateModelRatioByJSONString(savedRatios))
|
||||
require.NoError(t, ratio_setting.UpdateModelPriceByJSONString(savedPrices))
|
||||
})
|
||||
for _, name := range []string{"gpt-image-2", "gpt-image-2.5-sunburst", "gpt-image-2.5-flare"} {
|
||||
t.Run(name, func(t *testing.T) {
|
||||
*settings = billing_setting.BillingSetting{BillingMode: map[string]string{}, BillingExpr: map[string]string{}}
|
||||
require.NoError(t, ratio_setting.UpdateModelRatioByJSONString(`{}`))
|
||||
require.NoError(t, ratio_setting.UpdateModelPriceByJSONString(`{}`))
|
||||
expression, ok := billing_setting.GetBillingExpr(name)
|
||||
require.True(t, ok)
|
||||
usage := &dto.Usage{PromptTokens: 1000, CompletionTokens: 100, PromptTokensDetails: dto.InputTokenDetails{
|
||||
CachedTokens: 300, ImageTokens: 600, CachedTokensDetails: &dto.CachedTokenDetails{ImageTokens: common.GetPointer(200)},
|
||||
}}
|
||||
result, err := billingexpr.ComputeTieredQuota(&billingexpr.BillingSnapshot{ExprString: expression, ExprHash: billingexpr.ExprHashString(expression), GroupRatio: 1, QuotaPerUnit: 500000},
|
||||
service.BuildTieredTokenParams(usage, false, billingexpr.UsedVars(expression)))
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, 4113, result.ActualQuotaAfterGroup)
|
||||
encoded, err := common.Marshal(map[string]float64{name: 0})
|
||||
require.NoError(t, err)
|
||||
require.NoError(t, ratio_setting.UpdateModelRatioByJSONString(string(encoded)))
|
||||
assert.Equal(t, "ratio", billing_setting.GetBillingMode(name))
|
||||
require.NoError(t, ratio_setting.UpdateModelRatioByJSONString(`{}`))
|
||||
require.NoError(t, ratio_setting.UpdateModelPriceByJSONString(string(encoded)))
|
||||
assert.Equal(t, "ratio", billing_setting.GetBillingMode(name))
|
||||
settings.BillingMode[name] = "tiered_expr"
|
||||
settings.BillingExpr[name] = `tier("custom", p * 7)`
|
||||
actual, ok := billing_setting.GetBillingExpr(name)
|
||||
require.True(t, ok)
|
||||
assert.Equal(t, settings.BillingExpr[name], actual)
|
||||
})
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user