feat: images stream

This commit is contained in:
Cristina Poncela Cubeiro
2026-05-04 16:46:20 +02:00
parent 62d9132648
commit e9b0af0a11

36
packages/ai/src/images.ts Normal file
View File

@@ -0,0 +1,36 @@
import { getImagesApiProvider } from "./images-api-registry.js";
import type {
AssistantImages,
AssistantImagesEventStream,
ImagesApi,
ImagesContext,
ImagesModel,
ImagesOptions,
ProviderImagesOptions,
} from "./types.js";
function resolveImagesApiProvider(api: ImagesApi) {
const provider = getImagesApiProvider(api);
if (!provider) {
throw new Error(`No API provider registered for api: ${api}`);
}
return provider;
}
export function images<TApi extends ImagesApi>(
model: ImagesModel<TApi>,
context: ImagesContext,
options?: ProviderImagesOptions,
): AssistantImagesEventStream {
const provider = resolveImagesApiProvider(model.api);
return provider.images(model, context, options as ImagesOptions);
}
export async function completeImages<TApi extends ImagesApi>(
model: ImagesModel<TApi>,
context: ImagesContext,
options?: ProviderImagesOptions,
): Promise<AssistantImages> {
const s = images(model, context, options);
return s.result();
}