feat(新功能): batch generate 增加接口说明,design batch队列修改
fix(修复bug): docs(文档变更): refactor(重构): test(增加测试):
This commit is contained in:
@@ -433,12 +433,12 @@ def model_process(request_data: ModelProgressModel):
|
|||||||
|
|
||||||
|
|
||||||
@router.post("/design_batch_generate")
|
@router.post("/design_batch_generate")
|
||||||
async def design(file: UploadFile = File(...),
|
async def design_batch(file: UploadFile = File(...),
|
||||||
tasks_id: str = Form(...),
|
tasks_id: str = Form(...),
|
||||||
user_id: str = Form(...),
|
user_id: str = Form(...),
|
||||||
file_name: str = Form(...),
|
file_name: str = Form(...),
|
||||||
total: int = Form(...)
|
total: int = Form(...)
|
||||||
):
|
):
|
||||||
dbg_config = DBGConfigModel(
|
dbg_config = DBGConfigModel(
|
||||||
tasks_id=tasks_id,
|
tasks_id=tasks_id,
|
||||||
user_id=user_id,
|
user_id=user_id,
|
||||||
|
|||||||
@@ -236,15 +236,71 @@ def generate_relight_image(tasks_id: str):
|
|||||||
|
|
||||||
|
|
||||||
@router.post("/batch_generate_product_image")
|
@router.post("/batch_generate_product_image")
|
||||||
async def design(request_batch_item: BatchGenerateProductImageModel):
|
async def batch_generate_product(request_batch_item: BatchGenerateProductImageModel):
|
||||||
|
"""
|
||||||
|
创建一个具有以下参数的请求体:
|
||||||
|
- **tasks_id**: 任务id 用于获取生成结果
|
||||||
|
- **prompt**: 想要生成图片的描述词
|
||||||
|
- **image_url**: 被生成图片的S3或minio url地址
|
||||||
|
- **image_strength**: 生成强度,越低越接近原图
|
||||||
|
- **product_type**: 输入single item 还是 overall item
|
||||||
|
- **batch_size**: 批生成数量
|
||||||
|
|
||||||
|
|
||||||
|
示例参数:
|
||||||
|
{
|
||||||
|
"tasks_id": "123-89",
|
||||||
|
"prompt": "the best quality, masterpiece. detailed, high-res, simple background, studio photography, extremely detailed, updo, detailed face, face, close-up, HDR, UHD, 8K realistic, Highly detailed, simple background, Studio lighting",
|
||||||
|
"image_url": "aida-results/result_00097282-ebb2-11ee-a822-b48351119060.png",
|
||||||
|
"image_strength": 0.8,
|
||||||
|
"product_type": "overall",
|
||||||
|
"batch_size": 1
|
||||||
|
}
|
||||||
|
"""
|
||||||
return await start_product_batch_generate(request_batch_item)
|
return await start_product_batch_generate(request_batch_item)
|
||||||
|
|
||||||
|
|
||||||
@router.post("/batch_generate_relight_image")
|
@router.post("/batch_generate_relight_image")
|
||||||
async def design(request_batch_item: BatchGenerateRelightImageModel):
|
async def batch_generate_relight(request_batch_item: BatchGenerateRelightImageModel):
|
||||||
|
"""
|
||||||
|
创建一个具有以下参数的请求体:
|
||||||
|
- **tasks_id**: 任务id 用于获取生成结果
|
||||||
|
- **prompt**: 想要生成图片的描述词
|
||||||
|
- **image_url**: 被生成图片的S3或minio url地址
|
||||||
|
- **direction**: 光源方向 Right Light Left Light Top Light Bottom Light
|
||||||
|
- **product_type**: 输入single item 还是 overall item
|
||||||
|
- **batch_size**: 批生成数量
|
||||||
|
|
||||||
|
|
||||||
|
示例参数:
|
||||||
|
{
|
||||||
|
"tasks_id": "123-89",
|
||||||
|
"prompt": "beautiful woman, detailed face, sunshine, outdoor, warm atmosphere",
|
||||||
|
"image_url": "aida-results/result_0000b606-1902-11ef-9424-0242ac180002.png",
|
||||||
|
"direction": "Right Light",
|
||||||
|
"product_type": "overall",
|
||||||
|
"batch_size": 1
|
||||||
|
}
|
||||||
|
"""
|
||||||
return await start_relight_batch_generate(request_batch_item)
|
return await start_relight_batch_generate(request_batch_item)
|
||||||
|
|
||||||
|
|
||||||
@router.post("/batch_generate_pose_transform_image")
|
@router.post("/batch_generate_pose_transform_image")
|
||||||
async def design(request_batch_item: BatchPoseTransformModel):
|
async def batch_generate_pose_transform(request_batch_item: BatchPoseTransformModel):
|
||||||
|
"""
|
||||||
|
创建一个具有以下参数的请求体:
|
||||||
|
- **tasks_id**: 任务id 用于取消生成任务和获取生成结果
|
||||||
|
- **image_url**: 被生成图片的S3或minio url地址
|
||||||
|
- **pose_id**: 1
|
||||||
|
- **batch_size**: 批生成数量
|
||||||
|
|
||||||
|
|
||||||
|
示例参数:
|
||||||
|
{
|
||||||
|
"tasks_id": "123-89",
|
||||||
|
"image_url": "aida-results/result_0000b606-1902-11ef-9424-0242ac180002.png",
|
||||||
|
"pose_id": "1",
|
||||||
|
"batch_size": 1
|
||||||
|
}
|
||||||
|
"""
|
||||||
return await start_pose_transform_batch_generate(request_batch_item)
|
return await start_pose_transform_batch_generate(request_batch_item)
|
||||||
|
|||||||
@@ -162,6 +162,11 @@ SEGMENTATION = {
|
|||||||
}
|
}
|
||||||
# ollama config
|
# ollama config
|
||||||
OLLAMA_URL = "http://10.1.1.240:11434/api/embeddings"
|
OLLAMA_URL = "http://10.1.1.240:11434/api/embeddings"
|
||||||
|
|
||||||
|
|
||||||
|
# design batch
|
||||||
|
BATCH_DESIGN_RABBITMQ_QUEUES = os.getenv("BATCH_DESIGN_RABBITMQ_QUEUES", f"Design{RABBITMQ_ENV}")
|
||||||
|
|
||||||
# DESIGN config
|
# DESIGN config
|
||||||
DESIGN_MODEL_URL = '10.1.1.240:10000'
|
DESIGN_MODEL_URL = '10.1.1.240:10000'
|
||||||
AIDA_CLOTHING = "aida-clothing"
|
AIDA_CLOTHING = "aida-clothing"
|
||||||
|
|||||||
@@ -2,16 +2,16 @@ import json
|
|||||||
|
|
||||||
import pika
|
import pika
|
||||||
|
|
||||||
from app.core.config import RABBITMQ_PARAMS
|
from app.core.config import RABBITMQ_PARAMS, BATCH_DESIGN_RABBITMQ_QUEUES
|
||||||
|
|
||||||
|
|
||||||
def publish_status(task_id, progress, result):
|
def publish_status(task_id, progress, result):
|
||||||
connection = pika.BlockingConnection(pika.ConnectionParameters(**RABBITMQ_PARAMS))
|
connection = pika.BlockingConnection(pika.ConnectionParameters(**RABBITMQ_PARAMS))
|
||||||
channel = connection.channel()
|
channel = connection.channel()
|
||||||
channel.queue_declare(queue='DesignBatch', durable=True)
|
channel.queue_declare(queue=BATCH_DESIGN_RABBITMQ_QUEUES, durable=True)
|
||||||
message = {'task_id': task_id, 'progress': progress, "result": result}
|
message = {'task_id': task_id, 'progress': progress, "result": result}
|
||||||
channel.basic_publish(exchange='',
|
channel.basic_publish(exchange='',
|
||||||
routing_key='DesignBatch',
|
routing_key=BATCH_DESIGN_RABBITMQ_QUEUES,
|
||||||
body=json.dumps(message),
|
body=json.dumps(message),
|
||||||
properties=pika.BasicProperties(
|
properties=pika.BasicProperties(
|
||||||
delivery_mode=2,
|
delivery_mode=2,
|
||||||
|
|||||||
Reference in New Issue
Block a user