| 12345678910111213141516171819202122232425 |
- import { AgentState } from "../config/agent-state";
- import { BaseChatModel } from "@langchain/core/language_models/chat_models";
- import { PROMPTS } from "../config/langchain-config";
- import { FFBVectorService } from "../ffb-vector.service";
- export const metaNode = async (
- state: typeof AgentState.State,
- model: BaseChatModel,
- providerName: string = 'Unknown',
- vectorService?: FFBVectorService
- ): Promise<Partial<typeof AgentState.State>> => {
- const lastMessage = state.messages[state.messages.length - 1].content as string;
- // Construct context from messages
- const context = state.messages.map(m => `${m._getType()}: ${m.content}`).join('\n');
- let schemaContext = "Schema visualization unavailable.";
- if (vectorService) {
- schemaContext = await vectorService.getSchemaContext();
- }
- const response = await model.invoke(PROMPTS.META(lastMessage, context, providerName, schemaContext));
- return { messages: [response] };
- };
|