1616 */
1717import { InferenceClientProviderOutputError } from "../errors.js" ;
1818import { isUrl } from "../lib/isUrl.js" ;
19- import type { BodyParams , HeaderParams , UrlParams } from "../types.js" ;
19+ import type { BodyParams , HeaderParams , RequestArgs , UrlParams } from "../types.js" ;
2020import { omit } from "../utils/omit.js" ;
21- import { TaskProviderHelper , type ImageToImageTaskHelper , type TextToImageTaskHelper , type TextToVideoTaskHelper } from "./providerHelper.js" ;
21+ import {
22+ TaskProviderHelper ,
23+ type ImageToImageTaskHelper ,
24+ type TextToImageTaskHelper ,
25+ type TextToVideoTaskHelper ,
26+ } from "./providerHelper.js" ;
2227import type { ImageToImageArgs } from "../tasks/cv/imageToImage.js" ;
2328import { base64FromBytes } from "../utils/base64FromBytes.js" ;
2429export interface ReplicateOutput {
@@ -156,24 +161,20 @@ export class ReplicateTextToVideoTask extends ReplicateTask implements TextToVid
156161}
157162
158163export class ReplicateImageToImageTask extends ReplicateTask implements ImageToImageTaskHelper {
159- override preparePayload ( params : BodyParams ) : Record < string , unknown > {
160- const inputs = params . args . inputs as Blob ;
161- const parameters = params . args . parameters as Record < string , unknown > | undefined ;
162-
164+ override preparePayload ( params : BodyParams < ImageToImageArgs > ) : Record < string , unknown > {
163165 return {
164166 input : {
165167 ...omit ( params . args , [ "inputs" , "parameters" ] ) ,
166- ...( parameters || { } ) ,
167- prompt : parameters ?. prompt || "" ,
168- image : inputs , // This will be processed in preparePayloadAsync
168+ ...params . args . parameters ,
169+ input_image : params . args . inputs , // This will be processed in preparePayloadAsync
169170 } ,
170171 version : params . model . includes ( ":" ) ? params . model . split ( ":" ) [ 1 ] : undefined ,
171172 } ;
172173 }
173174
174- async preparePayloadAsync ( args : ImageToImageArgs ) : Promise < import ( "../types.js" ) . RequestArgs > {
175- const { inputs, parameters , ...restArgs } = args ;
176-
175+ async preparePayloadAsync ( args : ImageToImageArgs ) : Promise < RequestArgs > {
176+ const { inputs, ...restArgs } = args ;
177+
177178 // Convert Blob to base64 data URL
178179 const bytes = new Uint8Array ( await inputs . arrayBuffer ( ) ) ;
179180 const base64 = base64FromBytes ( bytes ) ;
@@ -182,10 +183,6 @@ export class ReplicateImageToImageTask extends ReplicateTask implements ImageToI
182183 return {
183184 ...restArgs ,
184185 inputs : imageInput ,
185- parameters : {
186- ...parameters ,
187- image : imageInput ,
188- } ,
189186 } ;
190187 }
191188
0 commit comments