libre / api /app /clients /agents /Functions /initializeFunctionsAgent.js
Marco Beretta
LibreChat upload repo
3b6afc0
raw
history blame
703 Bytes
const { initializeAgentExecutorWithOptions } = require('langchain/agents');
const { BufferMemory, ChatMessageHistory } = require('langchain/memory');
const initializeFunctionsAgent = async ({
tools,
model,
pastMessages,
// currentDateString,
...rest
}) => {
const memory = new BufferMemory({
chatHistory: new ChatMessageHistory(pastMessages),
memoryKey: 'chat_history',
humanPrefix: 'User',
aiPrefix: 'Assistant',
inputKey: 'input',
outputKey: 'output',
returnMessages: true,
});
return await initializeAgentExecutorWithOptions(tools, model, {
agentType: 'openai-functions',
memory,
...rest,
});
};
module.exports = initializeFunctionsAgent;