modal: fix schema passing issue with shadowing BaseModel.schema default

This commit is contained in:
2023-08-22 17:10:36 +02:00
parent 4cbda1d0c6
commit d76bb83fe0

View File

@@ -155,7 +155,7 @@ class LLM:
def web(): def web():
from fastapi import Depends, FastAPI, HTTPException, status from fastapi import Depends, FastAPI, HTTPException, status
from fastapi.security import OAuth2PasswordBearer from fastapi.security import OAuth2PasswordBearer
from pydantic import BaseModel from pydantic import BaseModel, Field
llmstub = LLM() llmstub = LLM()
@@ -172,14 +172,14 @@ def web():
class LLMRequest(BaseModel): class LLMRequest(BaseModel):
prompt: str prompt: str
schema: Optional[dict] = None schema_: Optional[dict] = Field(None, alias="schema")
@app.post("/llm", dependencies=[Depends(apikey_auth)]) @app.post("/llm", dependencies=[Depends(apikey_auth)])
async def llm( async def llm(
req: LLMRequest, req: LLMRequest,
): ):
if req.schema: if req.schema_:
func = llmstub.generate.spawn(prompt=req.prompt, schema=json.dumps(req.schema)) func = llmstub.generate.spawn(prompt=req.prompt, schema=json.dumps(req.schema_))
else: else:
func = llmstub.generate.spawn(prompt=req.prompt) func = llmstub.generate.spawn(prompt=req.prompt)
result = func.get() result = func.get()