import type { Express } from 'express';
import { FetchChatCompletions } from '@opentiny/genui-sdk-chat-completions';
import { createChatCompletionHandler } from './handler/create-chat-completion';
export interface IEquipChatCompletionsOptions {
route: string;
apiKey: string;
baseURL: string;
}
export function equipChatCompletions(app: Express, options: IEquipChatCompletionsOptions) {
const { route, apiKey, baseURL } = options;
const chatCompletion = new FetchChatCompletions({
apiKey,
baseURL,
});
const { handler: chatCompletionHandler } = createChatCompletionHandler({
chatCompletions: (params, options) => chatCompletion.chatStream(params, options),
});
app.post(route, chatCompletionHandler);
}