Files
open-gsio/workers/site/workflows/preprocessing/createPreprocessingWorkflow.ts
geoffsee 33679583af init
2025-05-22 23:14:01 -04:00

50 lines
1.2 KiB
TypeScript

import {
ManifoldRegion,
WorkflowFunctionManifold,
} from "manifold-workflow-engine";
import { createIntentService } from "../IntentService";
import { createSearchWebhookOperator } from "./webOperator";
import { createNewsWebhookOperator } from "./newsOperator";
import { createScrapeWebhookOperator } from "./scrapeOperator";
export const createPreprocessingWorkflow = ({
eventHost,
initialState,
streamId,
chat: { messages, openai },
}) => {
const preprocessingManifold = new WorkflowFunctionManifold(
createIntentService({ messages, openai }),
);
preprocessingManifold.state = { ...initialState };
const searchWebhookOperator = createSearchWebhookOperator({
eventHost,
streamId,
openai,
messages,
});
const newsWebhookOperator = createNewsWebhookOperator({
eventHost,
streamId,
openai,
messages,
});
const scrapeWebhookOperator = createScrapeWebhookOperator({
eventHost,
streamId,
openai,
messages,
});
const preprocessingRegion = new ManifoldRegion("preprocessingRegion", [
searchWebhookOperator,
newsWebhookOperator,
scrapeWebhookOperator,
]);
preprocessingManifold.addRegion(preprocessingRegion);
return preprocessingManifold;
};