生成多张
This commit is contained in:
@@ -103,15 +103,15 @@ func ImagesPost(w http.ResponseWriter, r *http.Request) {
|
||||
// 通过模型推理生成图像, 为图像标记任务批次
|
||||
if match, _ := regexp.MatchString("application/json", r.Header.Get("Content-Type")); match {
|
||||
template := &struct {
|
||||
FromImage int `json:"from_image"` // 来源图片(图生图时使用)
|
||||
Prompt string `json:"prompt"` // 提示词
|
||||
NegativePrompt string `json:"negative_prompt"` // 负面提示词
|
||||
NumInferenceSteps int `json:"num_inference_steps"` // 推理步数
|
||||
GuidanceScale float32 `json:"guidance_scale"` // 引导比例
|
||||
Scheduler string `json:"scheduler"` // 调度器
|
||||
Seed string `json:"seed"` // 随机种子(单张图生成时使用)
|
||||
Number int `json:"number"` // 生成数量
|
||||
ModelID int `json:"model_id"` // 模型ID
|
||||
FromImage int `json:"from_image"` // 来源图片(图生图时使用)
|
||||
Prompt string `json:"prompt"` // 提示词
|
||||
NegativePrompt string `json:"negative_prompt"` // 负面提示词
|
||||
Steps int `json:"steps"` // 推理步数
|
||||
GuidanceScale float32 `json:"guidance_scale"` // 引导比例
|
||||
Scheduler string `json:"scheduler"` // 调度器
|
||||
Seed string `json:"seed"` // 随机种子(单张图生成时使用)
|
||||
NIter int `json:"n_iter"` // 生成数量
|
||||
ModelID int `json:"model_id"` // 模型ID
|
||||
}{}
|
||||
body, err := ioutil.ReadAll(r.Body)
|
||||
if err != nil {
|
||||
@@ -125,11 +125,11 @@ func ImagesPost(w http.ResponseWriter, r *http.Request) {
|
||||
}
|
||||
|
||||
// 输入检查
|
||||
if template.Number <= 0 {
|
||||
template.Number = 1
|
||||
if template.NIter <= 0 {
|
||||
template.NIter = 1
|
||||
}
|
||||
if template.NumInferenceSteps <= 0 {
|
||||
template.NumInferenceSteps = 20
|
||||
if template.Steps <= 0 {
|
||||
template.Steps = 50
|
||||
}
|
||||
if template.GuidanceScale <= 0 {
|
||||
template.GuidanceScale = 1
|
||||
@@ -157,7 +157,7 @@ func ImagesPost(w http.ResponseWriter, r *http.Request) {
|
||||
// 直接创建一组图片
|
||||
var image_list []models.Image
|
||||
var task string = uuid.New().String()
|
||||
for i := 0; i < template.Number; i++ {
|
||||
for i := 0; i < template.NIter; i++ {
|
||||
var image models.Image
|
||||
image.UserID = account.ID
|
||||
image.Task = task
|
||||
@@ -165,7 +165,7 @@ func ImagesPost(w http.ResponseWriter, r *http.Request) {
|
||||
image.FromImage = template.FromImage
|
||||
image.Prompt = template.Prompt
|
||||
image.NegativePrompt = template.NegativePrompt
|
||||
image.NumInferenceSteps = template.NumInferenceSteps
|
||||
image.NumInferenceSteps = template.Steps
|
||||
image.GuidanceScale = template.GuidanceScale
|
||||
image.Scheduler = template.Scheduler
|
||||
image.Seed = template.Seed
|
||||
|
Reference in New Issue
Block a user