add ImageVariRequest/ImageEditRequest.ResponseFormat (#264)
* add ImageEditRequest.ResponseFormat * add ImageEditRequest/ImageVariRequest.ResponseFormat * complete image_test * delete var prompt param --------- Co-authored-by: Aceld <liudanbing@tal.com>
This commit is contained in:
17
image.go
17
image.go
@@ -60,6 +60,7 @@ type ImageEditRequest struct {
|
|||||||
Prompt string `json:"prompt,omitempty"`
|
Prompt string `json:"prompt,omitempty"`
|
||||||
N int `json:"n,omitempty"`
|
N int `json:"n,omitempty"`
|
||||||
Size string `json:"size,omitempty"`
|
Size string `json:"size,omitempty"`
|
||||||
|
ResponseFormat string `json:"response_format,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// CreateEditImage - API call to create an image. This is the main endpoint of the DALL-E API.
|
// CreateEditImage - API call to create an image. This is the main endpoint of the DALL-E API.
|
||||||
@@ -85,14 +86,22 @@ func (c *Client) CreateEditImage(ctx context.Context, request ImageEditRequest)
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
err = builder.writeField("n", strconv.Itoa(request.N))
|
err = builder.writeField("n", strconv.Itoa(request.N))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
err = builder.writeField("size", request.Size)
|
err = builder.writeField("size", request.Size)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
err = builder.writeField("response_format", request.ResponseFormat)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
err = builder.close()
|
err = builder.close()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return
|
return
|
||||||
@@ -114,6 +123,7 @@ type ImageVariRequest struct {
|
|||||||
Image *os.File `json:"image,omitempty"`
|
Image *os.File `json:"image,omitempty"`
|
||||||
N int `json:"n,omitempty"`
|
N int `json:"n,omitempty"`
|
||||||
Size string `json:"size,omitempty"`
|
Size string `json:"size,omitempty"`
|
||||||
|
ResponseFormat string `json:"response_format,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// CreateVariImage - API call to create an image variation. This is the main endpoint of the DALL-E API.
|
// CreateVariImage - API call to create an image variation. This is the main endpoint of the DALL-E API.
|
||||||
@@ -132,10 +142,17 @@ func (c *Client) CreateVariImage(ctx context.Context, request ImageVariRequest)
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
err = builder.writeField("size", request.Size)
|
err = builder.writeField("size", request.Size)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
err = builder.writeField("response_format", request.ResponseFormat)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
err = builder.close()
|
err = builder.close()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -123,6 +123,7 @@ func TestImageEdit(t *testing.T) {
|
|||||||
Prompt: "There is a turtle in the pool",
|
Prompt: "There is a turtle in the pool",
|
||||||
N: 3,
|
N: 3,
|
||||||
Size: CreateImageSize1024x1024,
|
Size: CreateImageSize1024x1024,
|
||||||
|
ResponseFormat: CreateImageResponseFormatURL,
|
||||||
}
|
}
|
||||||
_, err = client.CreateEditImage(ctx, req)
|
_, err = client.CreateEditImage(ctx, req)
|
||||||
checks.NoError(t, err, "CreateImage error")
|
checks.NoError(t, err, "CreateImage error")
|
||||||
@@ -158,6 +159,7 @@ func TestImageEditWithoutMask(t *testing.T) {
|
|||||||
Prompt: "There is a turtle in the pool",
|
Prompt: "There is a turtle in the pool",
|
||||||
N: 3,
|
N: 3,
|
||||||
Size: CreateImageSize1024x1024,
|
Size: CreateImageSize1024x1024,
|
||||||
|
ResponseFormat: CreateImageResponseFormatURL,
|
||||||
}
|
}
|
||||||
_, err = client.CreateEditImage(ctx, req)
|
_, err = client.CreateEditImage(ctx, req)
|
||||||
checks.NoError(t, err, "CreateImage error")
|
checks.NoError(t, err, "CreateImage error")
|
||||||
@@ -223,6 +225,7 @@ func TestImageVariation(t *testing.T) {
|
|||||||
Image: origin,
|
Image: origin,
|
||||||
N: 3,
|
N: 3,
|
||||||
Size: CreateImageSize1024x1024,
|
Size: CreateImageSize1024x1024,
|
||||||
|
ResponseFormat: CreateImageResponseFormatURL,
|
||||||
}
|
}
|
||||||
_, err = client.CreateVariImage(ctx, req)
|
_, err = client.CreateVariImage(ctx, req)
|
||||||
checks.NoError(t, err, "CreateImage error")
|
checks.NoError(t, err, "CreateImage error")
|
||||||
@@ -336,6 +339,10 @@ func TestImageFormBuilderFailures(t *testing.T) {
|
|||||||
_, err = client.CreateEditImage(ctx, req)
|
_, err = client.CreateEditImage(ctx, req)
|
||||||
checks.ErrorIs(t, err, mockFailedErr, "CreateImage should return error if form builder fails")
|
checks.ErrorIs(t, err, mockFailedErr, "CreateImage should return error if form builder fails")
|
||||||
|
|
||||||
|
failForField = "response_format"
|
||||||
|
_, err = client.CreateEditImage(ctx, req)
|
||||||
|
checks.ErrorIs(t, err, mockFailedErr, "CreateImage should return error if form builder fails")
|
||||||
|
|
||||||
failForField = ""
|
failForField = ""
|
||||||
mockBuilder.mockClose = func() error {
|
mockBuilder.mockClose = func() error {
|
||||||
return mockFailedErr
|
return mockFailedErr
|
||||||
@@ -384,6 +391,10 @@ func TestVariImageFormBuilderFailures(t *testing.T) {
|
|||||||
_, err = client.CreateVariImage(ctx, req)
|
_, err = client.CreateVariImage(ctx, req)
|
||||||
checks.ErrorIs(t, err, mockFailedErr, "CreateVariImage should return error if form builder fails")
|
checks.ErrorIs(t, err, mockFailedErr, "CreateVariImage should return error if form builder fails")
|
||||||
|
|
||||||
|
failForField = "response_format"
|
||||||
|
_, err = client.CreateVariImage(ctx, req)
|
||||||
|
checks.ErrorIs(t, err, mockFailedErr, "CreateVariImage should return error if form builder fails")
|
||||||
|
|
||||||
failForField = ""
|
failForField = ""
|
||||||
mockBuilder.mockClose = func() error {
|
mockBuilder.mockClose = func() error {
|
||||||
return mockFailedErr
|
return mockFailedErr
|
||||||
|
|||||||
Reference in New Issue
Block a user