ai-utils.js
Version:
Build AI applications, chatbots, and agents with JavaScript and TypeScript.
39 lines (38 loc) • 1.11 kB
JavaScript
export class ModelCallEventSource {
constructor({ observers, errorHandler, }) {
Object.defineProperty(this, "observers", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
Object.defineProperty(this, "errorHandler", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
this.observers = observers;
this.errorHandler = errorHandler ?? ((error) => console.error(error));
}
notifyModelCallStarted(event) {
for (const observer of this.observers) {
try {
observer.onModelCallStarted?.(event);
}
catch (error) {
this.errorHandler(error);
}
}
}
notifyModelCallFinished(event) {
for (const observer of this.observers) {
try {
observer.onModelCallFinished?.(event);
}
catch (error) {
this.errorHandler(error);
}
}
}
}