UNPKG

@push.rocks/smartai

Version:

SmartAi is a versatile TypeScript library designed to facilitate integration and interaction with various AI models, offering functionalities for chat, audio generation, document processing, and vision tasks.

42 lines 2.98 kB
export class SmartAi { constructor(options) { this.inputStreamWriter = null; this.outputStreamController = null; this.processFunction = options.processFunction; } setupOutputStream() { return new ReadableStream({ start: (controller) => { this.outputStreamController = controller; } }); } setupInputStream() { return new WritableStream({ write: async (chunk) => { const processedData = await this.processFunction(chunk); if (this.outputStreamController) { this.outputStreamController.enqueue(processedData); } }, close: () => { this.outputStreamController?.close(); }, abort: (err) => { console.error('Stream aborted', err); this.outputStreamController?.error(err); } }); } getInputStreamWriter() { if (!this.inputStreamWriter) { const inputStream = this.setupInputStream(); this.inputStreamWriter = inputStream.getWriter(); } return this.inputStreamWriter; } getOutputStream() { return this.setupOutputStream(); } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnRhaS5jbGFzc2VzLnNtYXJ0YWkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy9zbWFydGFpLmNsYXNzZXMuc21hcnRhaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxNQUFNLE9BQU8sT0FBTztJQUtsQixZQUFZLE9BQXdCO1FBSDVCLHNCQUFpQixHQUErQyxJQUFJLENBQUM7UUFDckUsMkJBQXNCLEdBQW1ELElBQUksQ0FBQztRQUdwRixJQUFJLENBQUMsZUFBZSxHQUFHLE9BQU8sQ0FBQyxlQUFlLENBQUM7SUFDakQsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixPQUFPLElBQUksY0FBYyxDQUFTO1lBQ2hDLEtBQUssRUFBRSxDQUFDLFVBQVUsRUFBRSxFQUFFO2dCQUNwQixJQUFJLENBQUMsc0JBQXNCLEdBQUcsVUFBVSxDQUFDO1lBQzNDLENBQUM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sZ0JBQWdCO1FBQ3RCLE9BQU8sSUFBSSxjQUFjLENBQVM7WUFDaEMsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRTtnQkFDckIsTUFBTSxhQUFhLEdBQUcsTUFBTSxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUN4RCxJQUFJLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO29CQUNoQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO2dCQUNyRCxDQUFDO1lBQ0gsQ0FBQztZQUNELEtBQUssRUFBRSxHQUFHLEVBQUU7Z0JBQ1YsSUFBSSxDQUFDLHNCQUFzQixFQUFFLEtBQUssRUFBRSxDQUFDO1lBQ3ZDLENBQUM7WUFDRCxLQUFLLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRTtnQkFDYixPQUFPLENBQUMsS0FBSyxDQUFDLGdCQUFnQixFQUFFLEdBQUcsQ0FBQyxDQUFDO2dCQUNyQyxJQUFJLENBQUMsc0JBQXNCLEVBQUUsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzFDLENBQUM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sb0JBQW9CO1FBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUM1QixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUM1QyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsV0FBVyxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ25ELENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztJQUNoQyxDQUFDO0lBRU0sZUFBZTtRQUNwQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQ2xDLENBQUM7Q0FDRiJ9