feat: OpenAI Ingredient Parsing (#3581)

This commit is contained in:
Michael Genson
2024-05-22 04:45:07 -05:00
committed by GitHub
parent 4c8bbdcde2
commit 5c57b3dd1a
28 changed files with 789 additions and 274 deletions

View File

@@ -33,6 +33,7 @@ class AdminAboutController(BaseAdminController):
enable_oidc=settings.OIDC_AUTH_ENABLED,
oidc_redirect=settings.OIDC_AUTO_REDIRECT,
oidc_provider_name=settings.OIDC_PROVIDER_NAME,
enable_openai=settings.OPENAI_ENABLED,
)
@router.get("/statistics", response_model=AppStatistics)
@@ -55,4 +56,5 @@ class AdminAboutController(BaseAdminController):
base_url_set=settings.BASE_URL != "http://localhost:8080",
is_up_to_date=APP_VERSION == "develop" or APP_VERSION == "nightly" or get_latest_version() == APP_VERSION,
oidc_ready=settings.OIDC_READY,
enable_openai=settings.OPENAI_ENABLED,
)

View File

@@ -32,6 +32,7 @@ def get_app_info(session: Session = Depends(generate_session)):
enable_oidc=settings.OIDC_READY,
oidc_redirect=settings.OIDC_AUTO_REDIRECT,
oidc_provider_name=settings.OIDC_PROVIDER_NAME,
enable_openai=settings.OPENAI_ENABLED,
)

View File

@@ -11,11 +11,12 @@ router = APIRouter(prefix="/parser")
@controller(router)
class IngredientParserController(BaseUserController):
@router.post("/ingredients", response_model=list[ParsedIngredient])
def parse_ingredients(self, ingredients: IngredientsRequest):
async def parse_ingredients(self, ingredients: IngredientsRequest):
parser = get_parser(ingredients.parser, self.group_id, self.session)
return parser.parse(ingredients.ingredients)
return await parser.parse(ingredients.ingredients)
@router.post("/ingredient", response_model=ParsedIngredient)
def parse_ingredient(self, ingredient: IngredientRequest):
async def parse_ingredient(self, ingredient: IngredientRequest):
parser = get_parser(ingredient.parser, self.group_id, self.session)
return parser.parse([ingredient.ingredient])[0]
response = await parser.parse([ingredient.ingredient])
return response[0]