enh: images openai api params
This commit is contained in:
@@ -111,6 +111,7 @@ class ImagesConfig(BaseModel):
|
||||
IMAGES_OPENAI_API_BASE_URL: str
|
||||
IMAGES_OPENAI_API_KEY: str
|
||||
IMAGES_OPENAI_API_VERSION: str
|
||||
IMAGES_OPENAI_API_PARAMS: Optional[dict | str]
|
||||
|
||||
AUTOMATIC1111_BASE_URL: str
|
||||
AUTOMATIC1111_API_AUTH: Optional[dict | str]
|
||||
@@ -152,6 +153,7 @@ async def get_config(request: Request, user=Depends(get_admin_user)):
|
||||
"IMAGES_OPENAI_API_BASE_URL": request.app.state.config.IMAGES_OPENAI_API_BASE_URL,
|
||||
"IMAGES_OPENAI_API_KEY": request.app.state.config.IMAGES_OPENAI_API_KEY,
|
||||
"IMAGES_OPENAI_API_VERSION": request.app.state.config.IMAGES_OPENAI_API_VERSION,
|
||||
"IMAGES_OPENAI_API_PARAMS": request.app.state.config.IMAGES_OPENAI_API_PARAMS,
|
||||
"AUTOMATIC1111_BASE_URL": request.app.state.config.AUTOMATIC1111_BASE_URL,
|
||||
"AUTOMATIC1111_API_AUTH": request.app.state.config.AUTOMATIC1111_API_AUTH,
|
||||
"AUTOMATIC1111_PARAMS": request.app.state.config.AUTOMATIC1111_PARAMS,
|
||||
@@ -229,6 +231,9 @@ async def update_config(
|
||||
request.app.state.config.IMAGES_OPENAI_API_VERSION = (
|
||||
form_data.IMAGES_OPENAI_API_VERSION
|
||||
)
|
||||
request.app.state.config.IMAGES_OPENAI_API_PARAMS = (
|
||||
form_data.IMAGES_OPENAI_API_PARAMS
|
||||
)
|
||||
|
||||
request.app.state.config.AUTOMATIC1111_BASE_URL = form_data.AUTOMATIC1111_BASE_URL
|
||||
request.app.state.config.AUTOMATIC1111_API_AUTH = form_data.AUTOMATIC1111_API_AUTH
|
||||
@@ -292,6 +297,7 @@ async def update_config(
|
||||
"IMAGES_OPENAI_API_BASE_URL": request.app.state.config.IMAGES_OPENAI_API_BASE_URL,
|
||||
"IMAGES_OPENAI_API_KEY": request.app.state.config.IMAGES_OPENAI_API_KEY,
|
||||
"IMAGES_OPENAI_API_VERSION": request.app.state.config.IMAGES_OPENAI_API_VERSION,
|
||||
"IMAGES_OPENAI_API_PARAMS": request.app.state.config.IMAGES_OPENAI_API_PARAMS,
|
||||
"AUTOMATIC1111_BASE_URL": request.app.state.config.AUTOMATIC1111_BASE_URL,
|
||||
"AUTOMATIC1111_API_AUTH": request.app.state.config.AUTOMATIC1111_API_AUTH,
|
||||
"AUTOMATIC1111_PARAMS": request.app.state.config.AUTOMATIC1111_PARAMS,
|
||||
@@ -539,6 +545,12 @@ async def image_generations(
|
||||
if ENABLE_FORWARD_USER_INFO_HEADERS:
|
||||
headers = include_user_info_headers(headers, user)
|
||||
|
||||
url = (
|
||||
f"{request.app.state.config.IMAGES_OPENAI_API_BASE_URL}/images/generations",
|
||||
)
|
||||
if request.app.state.config.IMAGES_OPENAI_API_VERSION:
|
||||
url = f"{url}?api-version={request.app.state.config.IMAGES_OPENAI_API_VERSION}"
|
||||
|
||||
data = {
|
||||
"model": model,
|
||||
"prompt": form_data.prompt,
|
||||
@@ -553,18 +565,17 @@ async def image_generations(
|
||||
if "gpt-image-1" in request.app.state.config.IMAGE_GENERATION_MODEL
|
||||
else {"response_format": "b64_json"}
|
||||
),
|
||||
**(
|
||||
{}
|
||||
if not request.app.state.config.IMAGES_OPENAI_API_PARAMS
|
||||
else request.app.state.config.IMAGES_OPENAI_API_PARAMS
|
||||
),
|
||||
}
|
||||
|
||||
api_version_query_param = ""
|
||||
if request.app.state.config.IMAGES_OPENAI_API_VERSION:
|
||||
api_version_query_param = (
|
||||
f"?api-version={request.app.state.config.IMAGES_OPENAI_API_VERSION}"
|
||||
)
|
||||
|
||||
# Use asyncio.to_thread for the requests.post call
|
||||
r = await asyncio.to_thread(
|
||||
requests.post,
|
||||
url=f"{request.app.state.config.IMAGES_OPENAI_API_BASE_URL}/images/generations{api_version_query_param}",
|
||||
url=url,
|
||||
json=data,
|
||||
headers=headers,
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user