forked from phoenix/litellm-mirror
65 lines
No EOL
1.8 KiB
Text
65 lines
No EOL
1.8 KiB
Text
datasource client {
|
|
provider = "postgresql"
|
|
url = env("DATABASE_URL")
|
|
}
|
|
|
|
generator client {
|
|
provider = "prisma-client-py"
|
|
}
|
|
|
|
// Track spend, rate limit, budget Users
|
|
model LiteLLM_UserTable {
|
|
user_id String @unique
|
|
team_id String?
|
|
max_budget Float?
|
|
spend Float @default(0.0)
|
|
user_email String?
|
|
models String[]
|
|
max_parallel_requests Int?
|
|
tpm_limit BigInt?
|
|
rpm_limit BigInt?
|
|
budget_duration String?
|
|
budget_reset_at DateTime?
|
|
}
|
|
|
|
// Generate Tokens for Proxy
|
|
model LiteLLM_VerificationToken {
|
|
token String @unique
|
|
spend Float @default(0.0)
|
|
expires DateTime?
|
|
models String[]
|
|
aliases Json @default("{}")
|
|
config Json @default("{}")
|
|
user_id String?
|
|
team_id String?
|
|
max_parallel_requests Int?
|
|
metadata Json @default("{}")
|
|
tpm_limit BigInt?
|
|
rpm_limit BigInt?
|
|
max_budget Float?
|
|
budget_duration String?
|
|
budget_reset_at DateTime?
|
|
}
|
|
|
|
// store proxy config.yaml
|
|
model LiteLLM_Config {
|
|
param_name String @id
|
|
param_value Json?
|
|
}
|
|
|
|
// View spend, model, api_key per request
|
|
model LiteLLM_SpendLogs {
|
|
request_id String @unique
|
|
call_type String
|
|
api_key String @default ("")
|
|
spend Float @default(0.0)
|
|
startTime DateTime // Assuming start_time is a DateTime field
|
|
endTime DateTime // Assuming end_time is a DateTime field
|
|
model String @default("")
|
|
user String @default("")
|
|
modelParameters Json @default("{}")// Assuming optional_params is a JSON field
|
|
usage Json @default("{}")
|
|
metadata Json @default("{}")
|
|
cache_hit String @default("")
|
|
cache_key String @default("")
|
|
} |