mirror of
https://github.com/geoffsee/open-gsio.git
synced 2025-09-08 22:56:46 +00:00
50 lines
1.2 KiB
TypeScript
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;
|
|
};
|