Skip to content

Commit 2294db6

Browse files
committed
[Vertex AI] Rename ImageGenerationResponse to ImagenGenerationResponse (#14317)
1 parent bc5bd82 commit 2294db6

File tree

6 files changed

+43
-43
lines changed

6 files changed

+43
-43
lines changed

FirebaseVertexAI/Sources/Types/Internal/Imagen/ImageGenerationRequest.swift renamed to FirebaseVertexAI/Sources/Types/Internal/Imagen/ImagenGenerationRequest.swift

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
import Foundation
1616

1717
@available(iOS 15.0, macOS 12.0, macCatalyst 15.0, tvOS 15.0, watchOS 8.0, *)
18-
struct ImageGenerationRequest<ImageType: ImagenImageRepresentable> {
18+
struct ImagenGenerationRequest<ImageType: ImagenImageRepresentable> {
1919
let model: String
2020
let options: RequestOptions
2121
let instances: [ImageGenerationInstance]
@@ -31,16 +31,16 @@ struct ImageGenerationRequest<ImageType: ImagenImageRepresentable> {
3131
}
3232

3333
@available(iOS 15.0, macOS 12.0, macCatalyst 15.0, tvOS 15.0, watchOS 8.0, *)
34-
extension ImageGenerationRequest: GenerativeAIRequest where ImageType: Decodable {
35-
typealias Response = ImageGenerationResponse<ImageType>
34+
extension ImagenGenerationRequest: GenerativeAIRequest where ImageType: Decodable {
35+
typealias Response = ImagenGenerationResponse<ImageType>
3636

3737
var url: URL {
3838
return URL(string: "\(Constants.baseURL)/\(options.apiVersion)/\(model):predict")!
3939
}
4040
}
4141

4242
@available(iOS 15.0, macOS 12.0, macCatalyst 15.0, tvOS 15.0, watchOS 8.0, *)
43-
extension ImageGenerationRequest: Encodable {
43+
extension ImagenGenerationRequest: Encodable {
4444
enum CodingKeys: CodingKey {
4545
case instances
4646
case parameters

FirebaseVertexAI/Sources/Types/Public/Imagen/ImageGenerationResponse.swift renamed to FirebaseVertexAI/Sources/Types/Public/Imagen/ImagenGenerationResponse.swift

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,15 @@
1515
import Foundation
1616

1717
@available(iOS 15.0, macOS 12.0, macCatalyst 15.0, tvOS 15.0, watchOS 8.0, *)
18-
public struct ImageGenerationResponse<ImageType: ImagenImageRepresentable> {
19-
public let images: [ImageType]
20-
public let raiFilteredReason: String?
18+
public struct ImagenGenerationResponse<T: ImagenImageRepresentable> {
19+
public let images: [T]
20+
public let filteredReason: String?
2121
}
2222

2323
// MARK: - Codable Conformances
2424

2525
@available(iOS 15.0, macOS 12.0, macCatalyst 15.0, tvOS 15.0, watchOS 8.0, *)
26-
extension ImageGenerationResponse: Decodable where ImageType: Decodable {
26+
extension ImagenGenerationResponse: Decodable where T: Decodable {
2727
enum CodingKeys: CodingKey {
2828
case predictions
2929
}
@@ -32,19 +32,19 @@ extension ImageGenerationResponse: Decodable where ImageType: Decodable {
3232
let container = try decoder.container(keyedBy: CodingKeys.self)
3333
guard container.contains(.predictions) else {
3434
images = []
35-
raiFilteredReason = nil
35+
filteredReason = nil
3636
// TODO(#14221): Log warning if no predictions.
3737
return
3838
}
3939
var predictionsContainer = try container.nestedUnkeyedContainer(forKey: .predictions)
4040

41-
var images = [ImageType]()
42-
var raiFilteredReasons = [String]()
41+
var images = [T]()
42+
var filteredReasons = [String]()
4343
while !predictionsContainer.isAtEnd {
44-
if let image = try? predictionsContainer.decode(ImageType.self) {
44+
if let image = try? predictionsContainer.decode(T.self) {
4545
images.append(image)
46-
} else if let filterReason = try? predictionsContainer.decode(RAIFilteredReason.self) {
47-
raiFilteredReasons.append(filterReason.raiFilteredReason)
46+
} else if let filteredReason = try? predictionsContainer.decode(RAIFilteredReason.self) {
47+
filteredReasons.append(filteredReason.raiFilteredReason)
4848
} else if let _ = try? predictionsContainer.decode(JSONObject.self) {
4949
// TODO(#14221): Log or throw unsupported prediction type
5050
} else {
@@ -57,7 +57,7 @@ extension ImageGenerationResponse: Decodable where ImageType: Decodable {
5757
}
5858

5959
self.images = images
60-
raiFilteredReason = raiFilteredReasons.first
60+
filteredReason = filteredReasons.first
6161
// TODO(#14221): Log if more than one RAI Filtered Reason; unexpected behaviour.
6262
}
6363
}

FirebaseVertexAI/Sources/Types/Public/Imagen/ImagenModel.swift

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ public final class ImagenModel {
5555

5656
public func generateImages(prompt: String,
5757
generationConfig: ImagenGenerationConfig? = nil) async throws
58-
-> ImageGenerationResponse<ImagenInlineDataImage> {
58+
-> ImagenGenerationResponse<ImagenInlineDataImage> {
5959
return try await generateImages(
6060
prompt: prompt,
6161
parameters: ImagenModel.imageGenerationParameters(
@@ -69,7 +69,7 @@ public final class ImagenModel {
6969

7070
public func generateImages(prompt: String, storageURI: String,
7171
generationConfig: ImagenGenerationConfig? = nil) async throws
72-
-> ImageGenerationResponse<ImagenFileDataImage> {
72+
-> ImagenGenerationResponse<ImagenFileDataImage> {
7373
return try await generateImages(
7474
prompt: prompt,
7575
parameters: ImagenModel.imageGenerationParameters(
@@ -83,8 +83,8 @@ public final class ImagenModel {
8383

8484
func generateImages<T: Decodable>(prompt: String,
8585
parameters: ImageGenerationParameters) async throws
86-
-> ImageGenerationResponse<T> {
87-
let request = ImageGenerationRequest<T>(
86+
-> ImagenGenerationResponse<T> {
87+
let request = ImagenGenerationRequest<T>(
8888
model: modelResourceName,
8989
options: requestOptions,
9090
instances: [ImageGenerationInstance(prompt: prompt)],

FirebaseVertexAI/Tests/TestApp/Tests/Integration/IntegrationTests.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -261,7 +261,7 @@ final class IntegrationTests: XCTestCase {
261261
generationConfig: generationConfig
262262
)
263263

264-
XCTAssertNil(response.raiFilteredReason)
264+
XCTAssertNil(response.filteredReason)
265265
XCTAssertEqual(response.images.count, 1)
266266
let image = try XCTUnwrap(response.images.first)
267267
XCTAssertEqual(image.mimeType, "image/jpeg")

FirebaseVertexAI/Tests/Unit/Types/Imagen/ImageGenerationRequestTests.swift renamed to FirebaseVertexAI/Tests/Unit/Types/Imagen/ImagenGenerationRequestTests.swift

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ import XCTest
1717
@testable import FirebaseVertexAI
1818

1919
@available(iOS 15.0, macOS 12.0, macCatalyst 15.0, tvOS 15.0, watchOS 8.0, *)
20-
final class ImageGenerationRequestTests: XCTestCase {
20+
final class ImagenGenerationRequestTests: XCTestCase {
2121
let encoder = JSONEncoder()
2222
let requestOptions = RequestOptions(timeout: 30.0)
2323
let modelName = "test-model-name"
@@ -44,7 +44,7 @@ final class ImageGenerationRequestTests: XCTestCase {
4444
}
4545

4646
func testInitializeRequest_inlineDataImage() throws {
47-
let request = ImageGenerationRequest<ImagenInlineDataImage>(
47+
let request = ImagenGenerationRequest<ImagenInlineDataImage>(
4848
model: modelName,
4949
options: requestOptions,
5050
instances: [instance],
@@ -62,7 +62,7 @@ final class ImageGenerationRequestTests: XCTestCase {
6262
}
6363

6464
func testInitializeRequest_fileDataImage() throws {
65-
let request = ImageGenerationRequest<ImagenFileDataImage>(
65+
let request = ImagenGenerationRequest<ImagenFileDataImage>(
6666
model: modelName,
6767
options: requestOptions,
6868
instances: [instance],
@@ -82,7 +82,7 @@ final class ImageGenerationRequestTests: XCTestCase {
8282
// MARK: - Encoding Tests
8383

8484
func testEncodeRequest_inlineDataImage() throws {
85-
let request = ImageGenerationRequest<ImagenInlineDataImage>(
85+
let request = ImagenGenerationRequest<ImagenInlineDataImage>(
8686
model: modelName,
8787
options: RequestOptions(),
8888
instances: [instance],
@@ -110,7 +110,7 @@ final class ImageGenerationRequestTests: XCTestCase {
110110
}
111111

112112
func testEncodeRequest_fileDataImage() throws {
113-
let request = ImageGenerationRequest<ImagenFileDataImage>(
113+
let request = ImagenGenerationRequest<ImagenFileDataImage>(
114114
model: modelName,
115115
options: RequestOptions(),
116116
instances: [instance],

FirebaseVertexAI/Tests/Unit/Types/Imagen/ImageGenerationResponseTests.swift renamed to FirebaseVertexAI/Tests/Unit/Types/Imagen/ImagenGenerationResponseTests.swift

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ import XCTest
1717
@testable import FirebaseVertexAI
1818

1919
@available(iOS 15.0, macOS 12.0, macCatalyst 15.0, tvOS 15.0, watchOS 8.0, *)
20-
final class ImageGenerationResponseTests: XCTestCase {
20+
final class ImagenGenerationResponseTests: XCTestCase {
2121
let decoder = JSONDecoder()
2222

2323
func testDecodeResponse_oneBase64Image_noneFiltered() throws {
@@ -37,12 +37,12 @@ final class ImageGenerationResponseTests: XCTestCase {
3737
let jsonData = try XCTUnwrap(json.data(using: .utf8))
3838

3939
let response = try decoder.decode(
40-
ImageGenerationResponse<ImagenInlineDataImage>.self,
40+
ImagenGenerationResponse<ImagenInlineDataImage>.self,
4141
from: jsonData
4242
)
4343

4444
XCTAssertEqual(response.images, [image])
45-
XCTAssertNil(response.raiFilteredReason)
45+
XCTAssertNil(response.filteredReason)
4646
}
4747

4848
func testDecodeResponse_multipleBase64Images_noneFiltered() throws {
@@ -74,12 +74,12 @@ final class ImageGenerationResponseTests: XCTestCase {
7474
let jsonData = try XCTUnwrap(json.data(using: .utf8))
7575

7676
let response = try decoder.decode(
77-
ImageGenerationResponse<ImagenInlineDataImage>.self,
77+
ImagenGenerationResponse<ImagenInlineDataImage>.self,
7878
from: jsonData
7979
)
8080

8181
XCTAssertEqual(response.images, [image1, image2, image3])
82-
XCTAssertNil(response.raiFilteredReason)
82+
XCTAssertNil(response.filteredReason)
8383
}
8484

8585
func testDecodeResponse_multipleBase64Images_someFiltered() throws {
@@ -112,12 +112,12 @@ final class ImageGenerationResponseTests: XCTestCase {
112112
let jsonData = try XCTUnwrap(json.data(using: .utf8))
113113

114114
let response = try decoder.decode(
115-
ImageGenerationResponse<ImagenInlineDataImage>.self,
115+
ImagenGenerationResponse<ImagenInlineDataImage>.self,
116116
from: jsonData
117117
)
118118

119119
XCTAssertEqual(response.images, [image1, image2])
120-
XCTAssertEqual(response.raiFilteredReason, raiFilteredReason)
120+
XCTAssertEqual(response.filteredReason, raiFilteredReason)
121121
}
122122

123123
func testDecodeResponse_multipleGCSImages_noneFiltered() throws {
@@ -143,12 +143,12 @@ final class ImageGenerationResponseTests: XCTestCase {
143143
let jsonData = try XCTUnwrap(json.data(using: .utf8))
144144

145145
let response = try decoder.decode(
146-
ImageGenerationResponse<ImagenFileDataImage>.self,
146+
ImagenGenerationResponse<ImagenFileDataImage>.self,
147147
from: jsonData
148148
)
149149

150150
XCTAssertEqual(response.images, [image1, image2])
151-
XCTAssertNil(response.raiFilteredReason)
151+
XCTAssertNil(response.filteredReason)
152152
}
153153

154154
func testDecodeResponse_noImages_allFiltered() throws {
@@ -169,25 +169,25 @@ final class ImageGenerationResponseTests: XCTestCase {
169169
let jsonData = try XCTUnwrap(json.data(using: .utf8))
170170

171171
let response = try decoder.decode(
172-
ImageGenerationResponse<ImagenInlineDataImage>.self,
172+
ImagenGenerationResponse<ImagenInlineDataImage>.self,
173173
from: jsonData
174174
)
175175

176176
XCTAssertEqual(response.images, [])
177-
XCTAssertEqual(response.raiFilteredReason, raiFilteredReason)
177+
XCTAssertEqual(response.filteredReason, raiFilteredReason)
178178
}
179179

180180
func testDecodeResponse_noImagesAnd_noFilteredReason() throws {
181181
let json = "{}"
182182
let jsonData = try XCTUnwrap(json.data(using: .utf8))
183183

184184
let response = try decoder.decode(
185-
ImageGenerationResponse<ImagenInlineDataImage>.self,
185+
ImagenGenerationResponse<ImagenInlineDataImage>.self,
186186
from: jsonData
187187
)
188188

189189
XCTAssertEqual(response.images, [])
190-
XCTAssertNil(response.raiFilteredReason)
190+
XCTAssertNil(response.filteredReason)
191191
}
192192

193193
func testDecodeResponse_multipleFilterReasons_returnsFirst() throws {
@@ -208,13 +208,13 @@ final class ImageGenerationResponseTests: XCTestCase {
208208
let jsonData = try XCTUnwrap(json.data(using: .utf8))
209209

210210
let response = try decoder.decode(
211-
ImageGenerationResponse<ImagenFileDataImage>.self,
211+
ImagenGenerationResponse<ImagenFileDataImage>.self,
212212
from: jsonData
213213
)
214214

215215
XCTAssertEqual(response.images, [])
216-
XCTAssertEqual(response.raiFilteredReason, raiFilteredReason1)
217-
XCTAssertNotEqual(response.raiFilteredReason, raiFilteredReason2)
216+
XCTAssertEqual(response.filteredReason, raiFilteredReason1)
217+
XCTAssertNotEqual(response.filteredReason, raiFilteredReason2)
218218
}
219219

220220
func testDecodeResponse_unknownPrediction() throws {
@@ -230,11 +230,11 @@ final class ImageGenerationResponseTests: XCTestCase {
230230
let jsonData = try XCTUnwrap(json.data(using: .utf8))
231231

232232
let response = try decoder.decode(
233-
ImageGenerationResponse<ImagenInlineDataImage>.self,
233+
ImagenGenerationResponse<ImagenInlineDataImage>.self,
234234
from: jsonData
235235
)
236236

237237
XCTAssertEqual(response.images, [])
238-
XCTAssertNil(response.raiFilteredReason)
238+
XCTAssertNil(response.filteredReason)
239239
}
240240
}

0 commit comments

Comments
 (0)