add misc API (/models
and /dashboard/billing/credit_grants
)
This commit is contained in:
parent
8a13bd3c1e
commit
61cea2a784
@ -18,7 +18,7 @@ from utils.rwkv import *
|
|||||||
from utils.torch import *
|
from utils.torch import *
|
||||||
from utils.ngrok import *
|
from utils.ngrok import *
|
||||||
from utils.log import log_middleware
|
from utils.log import log_middleware
|
||||||
from routes import completion, config, state_cache, midi
|
from routes import completion, config, state_cache, midi, misc
|
||||||
import global_var
|
import global_var
|
||||||
|
|
||||||
app = FastAPI(dependencies=[Depends(log_middleware)])
|
app = FastAPI(dependencies=[Depends(log_middleware)])
|
||||||
@ -34,6 +34,7 @@ app.add_middleware(
|
|||||||
app.include_router(completion.router)
|
app.include_router(completion.router)
|
||||||
app.include_router(config.router)
|
app.include_router(config.router)
|
||||||
app.include_router(midi.router)
|
app.include_router(midi.router)
|
||||||
|
app.include_router(misc.router)
|
||||||
app.include_router(state_cache.router)
|
app.include_router(state_cache.router)
|
||||||
|
|
||||||
|
|
||||||
|
131
backend-python/routes/misc.py
Normal file
131
backend-python/routes/misc.py
Normal file
@ -0,0 +1,131 @@
|
|||||||
|
from fastapi import APIRouter, HTTPException, status
|
||||||
|
from utils.rwkv import AbstractRWKV
|
||||||
|
import global_var
|
||||||
|
|
||||||
|
router = APIRouter()
|
||||||
|
|
||||||
|
|
||||||
|
@router.get("/dashboard/billing/credit_grants", tags=["MISC"])
|
||||||
|
def credit_grants():
|
||||||
|
return {
|
||||||
|
"object": "credit_summary",
|
||||||
|
"total_granted": 10000,
|
||||||
|
"total_used": 0,
|
||||||
|
"total_available": 10000,
|
||||||
|
"grants": {
|
||||||
|
"object": "list",
|
||||||
|
"data": [
|
||||||
|
{
|
||||||
|
"object": "credit_grant",
|
||||||
|
"grant_amount": 10000,
|
||||||
|
"used_amount": 0,
|
||||||
|
"effective_at": 1672531200,
|
||||||
|
"expires_at": 33229440000,
|
||||||
|
}
|
||||||
|
],
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
fake_models = [
|
||||||
|
{
|
||||||
|
"id": "gpt-3.5-turbo",
|
||||||
|
"object": "model",
|
||||||
|
"created": 1677610602,
|
||||||
|
"owned_by": "openai",
|
||||||
|
"permission": [
|
||||||
|
{
|
||||||
|
"id": "modelperm-zy5TOjnE2zVaicIcKO9bQDgX",
|
||||||
|
"object": "model_permission",
|
||||||
|
"created": 1690864883,
|
||||||
|
"allow_create_engine": False,
|
||||||
|
"allow_sampling": True,
|
||||||
|
"allow_logprobs": True,
|
||||||
|
"allow_search_indices": False,
|
||||||
|
"allow_view": True,
|
||||||
|
"allow_fine_tuning": False,
|
||||||
|
"organization": "*",
|
||||||
|
"group": None,
|
||||||
|
"is_blocking": False,
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"root": "gpt-3.5-turbo",
|
||||||
|
"parent": None,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "text-davinci-003",
|
||||||
|
"object": "model",
|
||||||
|
"created": 1669599635,
|
||||||
|
"owned_by": "openai-internal",
|
||||||
|
"permission": [
|
||||||
|
{
|
||||||
|
"id": "modelperm-a6niqBmW2JaGmo0fDO7FEt1n",
|
||||||
|
"object": "model_permission",
|
||||||
|
"created": 1690930172,
|
||||||
|
"allow_create_engine": False,
|
||||||
|
"allow_sampling": True,
|
||||||
|
"allow_logprobs": True,
|
||||||
|
"allow_search_indices": False,
|
||||||
|
"allow_view": True,
|
||||||
|
"allow_fine_tuning": False,
|
||||||
|
"organization": "*",
|
||||||
|
"group": None,
|
||||||
|
"is_blocking": False,
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"root": "text-davinci-003",
|
||||||
|
"parent": None,
|
||||||
|
},
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
|
@router.get("/v1/models", tags=["MISC"])
|
||||||
|
@router.get("/models", tags=["MISC"])
|
||||||
|
def models():
|
||||||
|
model: AbstractRWKV = global_var.get(global_var.Model)
|
||||||
|
model_name = model.name if model else "rwkv"
|
||||||
|
|
||||||
|
return {
|
||||||
|
"object": "list",
|
||||||
|
"data": [
|
||||||
|
{
|
||||||
|
"id": model_name,
|
||||||
|
"object": "model",
|
||||||
|
"owned_by": "rwkv",
|
||||||
|
"root": model_name,
|
||||||
|
"parent": None,
|
||||||
|
},
|
||||||
|
*fake_models,
|
||||||
|
],
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@router.get("/v1/models/{model_id}", tags=["MISC"])
|
||||||
|
@router.get("/models/{model_id}", tags=["MISC"])
|
||||||
|
def model(model_id: str):
|
||||||
|
for fake_model in fake_models:
|
||||||
|
if fake_model["id"] == model_id:
|
||||||
|
return fake_model
|
||||||
|
|
||||||
|
if "rwkv" in model_id.lower():
|
||||||
|
model: AbstractRWKV = global_var.get(global_var.Model)
|
||||||
|
model_name = model.name if model else "rwkv"
|
||||||
|
return {
|
||||||
|
"id": model_name,
|
||||||
|
"object": "model",
|
||||||
|
"owned_by": "rwkv",
|
||||||
|
"root": model_name,
|
||||||
|
"parent": None,
|
||||||
|
}
|
||||||
|
|
||||||
|
raise HTTPException(
|
||||||
|
status.HTTP_404_NOT_FOUND,
|
||||||
|
{
|
||||||
|
"error": {
|
||||||
|
"message": f"The model '{model_id}' does not exist",
|
||||||
|
"type": "invalid_request_error",
|
||||||
|
"param": "model",
|
||||||
|
"code": "model_not_found",
|
||||||
|
}
|
||||||
|
},
|
||||||
|
)
|
Loading…
Reference in New Issue
Block a user