@langchain/classic 1.0.17 → 1.0.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -0
- package/dist/_virtual/{rolldown_runtime.cjs → _rolldown/runtime.cjs} +24 -13
- package/dist/_virtual/_rolldown/runtime.js +36 -0
- package/dist/agents/agent.cjs +9 -11
- package/dist/agents/agent.cjs.map +1 -1
- package/dist/agents/agent.d.cts +0 -1
- package/dist/agents/agent.d.cts.map +1 -1
- package/dist/agents/agent.d.ts +2 -3
- package/dist/agents/agent.d.ts.map +1 -1
- package/dist/agents/agent.js +1 -3
- package/dist/agents/agent.js.map +1 -1
- package/dist/agents/chat/index.cjs +11 -15
- package/dist/agents/chat/index.cjs.map +1 -1
- package/dist/agents/chat/index.d.cts +0 -1
- package/dist/agents/chat/index.d.cts.map +1 -1
- package/dist/agents/chat/index.d.ts +0 -1
- package/dist/agents/chat/index.d.ts.map +1 -1
- package/dist/agents/chat/index.js +7 -11
- package/dist/agents/chat/index.js.map +1 -1
- package/dist/agents/chat/outputParser.cjs +4 -5
- package/dist/agents/chat/outputParser.cjs.map +1 -1
- package/dist/agents/chat/outputParser.d.cts +2 -3
- package/dist/agents/chat/outputParser.d.cts.map +1 -1
- package/dist/agents/chat/outputParser.d.ts +0 -1
- package/dist/agents/chat/outputParser.d.ts.map +1 -1
- package/dist/agents/chat/outputParser.js +1 -2
- package/dist/agents/chat/outputParser.js.map +1 -1
- package/dist/agents/chat/prompt.cjs.map +1 -1
- package/dist/agents/chat/prompt.js.map +1 -1
- package/dist/agents/chat_convo/index.cjs +21 -25
- package/dist/agents/chat_convo/index.cjs.map +1 -1
- package/dist/agents/chat_convo/index.d.cts +0 -1
- package/dist/agents/chat_convo/index.d.cts.map +1 -1
- package/dist/agents/chat_convo/index.d.ts +1 -2
- package/dist/agents/chat_convo/index.d.ts.map +1 -1
- package/dist/agents/chat_convo/index.js +11 -15
- package/dist/agents/chat_convo/index.js.map +1 -1
- package/dist/agents/chat_convo/outputParser.cjs +10 -13
- package/dist/agents/chat_convo/outputParser.cjs.map +1 -1
- package/dist/agents/chat_convo/outputParser.d.cts.map +1 -1
- package/dist/agents/chat_convo/outputParser.d.ts.map +1 -1
- package/dist/agents/chat_convo/outputParser.js +4 -7
- package/dist/agents/chat_convo/outputParser.js.map +1 -1
- package/dist/agents/chat_convo/prompt.cjs.map +1 -1
- package/dist/agents/chat_convo/prompt.js.map +1 -1
- package/dist/agents/executor.cjs +25 -33
- package/dist/agents/executor.cjs.map +1 -1
- package/dist/agents/executor.d.cts +0 -1
- package/dist/agents/executor.d.cts.map +1 -1
- package/dist/agents/executor.d.ts +0 -1
- package/dist/agents/executor.d.ts.map +1 -1
- package/dist/agents/executor.js +11 -19
- package/dist/agents/executor.js.map +1 -1
- package/dist/agents/format_scratchpad/log.cjs +4 -5
- package/dist/agents/format_scratchpad/log.cjs.map +1 -1
- package/dist/agents/format_scratchpad/log.d.cts +0 -1
- package/dist/agents/format_scratchpad/log.d.cts.map +1 -1
- package/dist/agents/format_scratchpad/log.d.ts +0 -1
- package/dist/agents/format_scratchpad/log.d.ts.map +1 -1
- package/dist/agents/format_scratchpad/log.js +3 -5
- package/dist/agents/format_scratchpad/log.js.map +1 -1
- package/dist/agents/format_scratchpad/log_to_message.cjs +8 -9
- package/dist/agents/format_scratchpad/log_to_message.cjs.map +1 -1
- package/dist/agents/format_scratchpad/log_to_message.d.cts.map +1 -1
- package/dist/agents/format_scratchpad/log_to_message.d.ts.map +1 -1
- package/dist/agents/format_scratchpad/log_to_message.js +4 -6
- package/dist/agents/format_scratchpad/log_to_message.js.map +1 -1
- package/dist/agents/format_scratchpad/openai_functions.cjs +9 -11
- package/dist/agents/format_scratchpad/openai_functions.cjs.map +1 -1
- package/dist/agents/format_scratchpad/openai_functions.d.cts +0 -1
- package/dist/agents/format_scratchpad/openai_functions.d.cts.map +1 -1
- package/dist/agents/format_scratchpad/openai_functions.d.ts +0 -1
- package/dist/agents/format_scratchpad/openai_functions.d.ts.map +1 -1
- package/dist/agents/format_scratchpad/openai_functions.js +5 -8
- package/dist/agents/format_scratchpad/openai_functions.js.map +1 -1
- package/dist/agents/format_scratchpad/openai_tools.cjs +3 -3
- package/dist/agents/format_scratchpad/openai_tools.js +2 -3
- package/dist/agents/format_scratchpad/tool_calling.cjs +8 -10
- package/dist/agents/format_scratchpad/tool_calling.cjs.map +1 -1
- package/dist/agents/format_scratchpad/tool_calling.d.cts +0 -1
- package/dist/agents/format_scratchpad/tool_calling.d.cts.map +1 -1
- package/dist/agents/format_scratchpad/tool_calling.d.ts +0 -1
- package/dist/agents/format_scratchpad/tool_calling.d.ts.map +1 -1
- package/dist/agents/format_scratchpad/tool_calling.js +5 -7
- package/dist/agents/format_scratchpad/tool_calling.js.map +1 -1
- package/dist/agents/format_scratchpad/xml.cjs +3 -3
- package/dist/agents/format_scratchpad/xml.cjs.map +1 -1
- package/dist/agents/format_scratchpad/xml.d.cts.map +1 -1
- package/dist/agents/format_scratchpad/xml.d.ts.map +1 -1
- package/dist/agents/format_scratchpad/xml.js +2 -3
- package/dist/agents/format_scratchpad/xml.js.map +1 -1
- package/dist/agents/helpers.cjs +2 -2
- package/dist/agents/helpers.cjs.map +1 -1
- package/dist/agents/helpers.js +2 -2
- package/dist/agents/helpers.js.map +1 -1
- package/dist/agents/index.cjs +6 -6
- package/dist/agents/index.js +2 -3
- package/dist/agents/initialize.cjs +12 -16
- package/dist/agents/initialize.cjs.map +1 -1
- package/dist/agents/initialize.d.cts +8 -2
- package/dist/agents/initialize.d.cts.map +1 -1
- package/dist/agents/initialize.d.ts +8 -2
- package/dist/agents/initialize.d.ts.map +1 -1
- package/dist/agents/initialize.js +12 -16
- package/dist/agents/initialize.js.map +1 -1
- package/dist/agents/load.cjs +5 -5
- package/dist/agents/load.cjs.map +1 -1
- package/dist/agents/load.d.cts +8 -2
- package/dist/agents/load.d.cts.map +1 -1
- package/dist/agents/load.d.ts +8 -2
- package/dist/agents/load.d.ts.map +1 -1
- package/dist/agents/load.js +4 -5
- package/dist/agents/load.js.map +1 -1
- package/dist/agents/mrkl/index.cjs +16 -21
- package/dist/agents/mrkl/index.cjs.map +1 -1
- package/dist/agents/mrkl/index.d.cts +0 -1
- package/dist/agents/mrkl/index.d.cts.map +1 -1
- package/dist/agents/mrkl/index.d.ts +0 -1
- package/dist/agents/mrkl/index.d.ts.map +1 -1
- package/dist/agents/mrkl/index.js +13 -18
- package/dist/agents/mrkl/index.js.map +1 -1
- package/dist/agents/mrkl/outputParser.cjs +4 -5
- package/dist/agents/mrkl/outputParser.cjs.map +1 -1
- package/dist/agents/mrkl/outputParser.d.cts +1 -2
- package/dist/agents/mrkl/outputParser.d.cts.map +1 -1
- package/dist/agents/mrkl/outputParser.d.ts +0 -1
- package/dist/agents/mrkl/outputParser.d.ts.map +1 -1
- package/dist/agents/mrkl/outputParser.js +1 -2
- package/dist/agents/mrkl/outputParser.js.map +1 -1
- package/dist/agents/mrkl/prompt.cjs.map +1 -1
- package/dist/agents/mrkl/prompt.js.map +1 -1
- package/dist/agents/openai/output_parser.cjs +3 -3
- package/dist/agents/openai/output_parser.js +2 -3
- package/dist/agents/openai_functions/index.cjs +22 -25
- package/dist/agents/openai_functions/index.cjs.map +1 -1
- package/dist/agents/openai_functions/index.d.cts +2 -5
- package/dist/agents/openai_functions/index.d.cts.map +1 -1
- package/dist/agents/openai_functions/index.d.ts +3 -6
- package/dist/agents/openai_functions/index.d.ts.map +1 -1
- package/dist/agents/openai_functions/index.js +8 -11
- package/dist/agents/openai_functions/index.js.map +1 -1
- package/dist/agents/openai_functions/output_parser.cjs +5 -5
- package/dist/agents/openai_functions/output_parser.cjs.map +1 -1
- package/dist/agents/openai_functions/output_parser.d.cts +0 -1
- package/dist/agents/openai_functions/output_parser.d.cts.map +1 -1
- package/dist/agents/openai_functions/output_parser.d.ts +1 -2
- package/dist/agents/openai_functions/output_parser.d.ts.map +1 -1
- package/dist/agents/openai_functions/output_parser.js +1 -1
- package/dist/agents/openai_functions/output_parser.js.map +1 -1
- package/dist/agents/openai_functions/prompt.cjs.map +1 -1
- package/dist/agents/openai_functions/prompt.js.map +1 -1
- package/dist/agents/openai_tools/index.cjs +8 -9
- package/dist/agents/openai_tools/index.cjs.map +1 -1
- package/dist/agents/openai_tools/index.d.cts +4 -6
- package/dist/agents/openai_tools/index.d.cts.map +1 -1
- package/dist/agents/openai_tools/index.d.ts +4 -6
- package/dist/agents/openai_tools/index.d.ts.map +1 -1
- package/dist/agents/openai_tools/index.js +3 -4
- package/dist/agents/openai_tools/index.js.map +1 -1
- package/dist/agents/openai_tools/output_parser.cjs +5 -6
- package/dist/agents/openai_tools/output_parser.cjs.map +1 -1
- package/dist/agents/openai_tools/output_parser.d.cts +0 -1
- package/dist/agents/openai_tools/output_parser.d.cts.map +1 -1
- package/dist/agents/openai_tools/output_parser.d.ts +1 -2
- package/dist/agents/openai_tools/output_parser.d.ts.map +1 -1
- package/dist/agents/openai_tools/output_parser.js +1 -2
- package/dist/agents/openai_tools/output_parser.js.map +1 -1
- package/dist/agents/react/index.cjs +5 -6
- package/dist/agents/react/index.cjs.map +1 -1
- package/dist/agents/react/index.d.cts +3 -5
- package/dist/agents/react/index.d.cts.map +1 -1
- package/dist/agents/react/index.d.ts +3 -5
- package/dist/agents/react/index.d.ts.map +1 -1
- package/dist/agents/react/index.js +2 -3
- package/dist/agents/react/index.js.map +1 -1
- package/dist/agents/react/output_parser.cjs +15 -22
- package/dist/agents/react/output_parser.cjs.map +1 -1
- package/dist/agents/react/output_parser.d.cts +0 -1
- package/dist/agents/react/output_parser.d.cts.map +1 -1
- package/dist/agents/react/output_parser.d.ts +0 -1
- package/dist/agents/react/output_parser.d.ts.map +1 -1
- package/dist/agents/react/output_parser.js +9 -17
- package/dist/agents/react/output_parser.js.map +1 -1
- package/dist/agents/react/prompt.cjs.map +1 -1
- package/dist/agents/react/prompt.js.map +1 -1
- package/dist/agents/structured_chat/index.cjs +26 -29
- package/dist/agents/structured_chat/index.cjs.map +1 -1
- package/dist/agents/structured_chat/index.d.cts +1 -4
- package/dist/agents/structured_chat/index.d.cts.map +1 -1
- package/dist/agents/structured_chat/index.d.ts +3 -6
- package/dist/agents/structured_chat/index.d.ts.map +1 -1
- package/dist/agents/structured_chat/index.js +12 -15
- package/dist/agents/structured_chat/index.js.map +1 -1
- package/dist/agents/structured_chat/outputParser.cjs +10 -13
- package/dist/agents/structured_chat/outputParser.cjs.map +1 -1
- package/dist/agents/structured_chat/outputParser.d.cts +0 -1
- package/dist/agents/structured_chat/outputParser.d.cts.map +1 -1
- package/dist/agents/structured_chat/outputParser.d.ts +0 -1
- package/dist/agents/structured_chat/outputParser.d.ts.map +1 -1
- package/dist/agents/structured_chat/outputParser.js +3 -6
- package/dist/agents/structured_chat/outputParser.js.map +1 -1
- package/dist/agents/structured_chat/prompt.cjs.map +1 -1
- package/dist/agents/structured_chat/prompt.js.map +1 -1
- package/dist/agents/tool_calling/index.cjs +5 -6
- package/dist/agents/tool_calling/index.cjs.map +1 -1
- package/dist/agents/tool_calling/index.d.cts +4 -6
- package/dist/agents/tool_calling/index.d.cts.map +1 -1
- package/dist/agents/tool_calling/index.d.ts +2 -4
- package/dist/agents/tool_calling/index.d.ts.map +1 -1
- package/dist/agents/tool_calling/index.js +2 -3
- package/dist/agents/tool_calling/index.js.map +1 -1
- package/dist/agents/tool_calling/output_parser.cjs +5 -5
- package/dist/agents/tool_calling/output_parser.cjs.map +1 -1
- package/dist/agents/tool_calling/output_parser.d.cts +0 -1
- package/dist/agents/tool_calling/output_parser.d.cts.map +1 -1
- package/dist/agents/tool_calling/output_parser.d.ts +1 -2
- package/dist/agents/tool_calling/output_parser.d.ts.map +1 -1
- package/dist/agents/tool_calling/output_parser.js +1 -1
- package/dist/agents/tool_calling/output_parser.js.map +1 -1
- package/dist/agents/toolkits/base.cjs +2 -2
- package/dist/agents/toolkits/conversational_retrieval/openai_functions.cjs +1 -2
- package/dist/agents/toolkits/conversational_retrieval/openai_functions.cjs.map +1 -1
- package/dist/agents/toolkits/conversational_retrieval/openai_functions.d.cts.map +1 -1
- package/dist/agents/toolkits/conversational_retrieval/openai_functions.d.ts.map +1 -1
- package/dist/agents/toolkits/conversational_retrieval/openai_functions.js +1 -2
- package/dist/agents/toolkits/conversational_retrieval/openai_functions.js.map +1 -1
- package/dist/agents/toolkits/conversational_retrieval/token_buffer_memory.cjs +6 -6
- package/dist/agents/toolkits/conversational_retrieval/token_buffer_memory.cjs.map +1 -1
- package/dist/agents/toolkits/conversational_retrieval/token_buffer_memory.d.cts +0 -1
- package/dist/agents/toolkits/conversational_retrieval/token_buffer_memory.d.cts.map +1 -1
- package/dist/agents/toolkits/conversational_retrieval/token_buffer_memory.d.ts +0 -1
- package/dist/agents/toolkits/conversational_retrieval/token_buffer_memory.d.ts.map +1 -1
- package/dist/agents/toolkits/conversational_retrieval/token_buffer_memory.js.map +1 -1
- package/dist/agents/toolkits/conversational_retrieval/tool.cjs +6 -7
- package/dist/agents/toolkits/conversational_retrieval/tool.cjs.map +1 -1
- package/dist/agents/toolkits/conversational_retrieval/tool.d.cts.map +1 -1
- package/dist/agents/toolkits/conversational_retrieval/tool.d.ts.map +1 -1
- package/dist/agents/toolkits/conversational_retrieval/tool.js +2 -3
- package/dist/agents/toolkits/conversational_retrieval/tool.js.map +1 -1
- package/dist/agents/toolkits/index.cjs +3 -3
- package/dist/agents/toolkits/index.js +2 -3
- package/dist/agents/toolkits/json/json.cjs +11 -13
- package/dist/agents/toolkits/json/json.cjs.map +1 -1
- package/dist/agents/toolkits/json/json.d.cts +0 -1
- package/dist/agents/toolkits/json/json.d.cts.map +1 -1
- package/dist/agents/toolkits/json/json.d.ts +0 -1
- package/dist/agents/toolkits/json/json.d.ts.map +1 -1
- package/dist/agents/toolkits/json/json.js +8 -10
- package/dist/agents/toolkits/json/json.js.map +1 -1
- package/dist/agents/toolkits/json/prompt.cjs.map +1 -1
- package/dist/agents/toolkits/json/prompt.js.map +1 -1
- package/dist/agents/toolkits/openapi/openapi.cjs +14 -18
- package/dist/agents/toolkits/openapi/openapi.cjs.map +1 -1
- package/dist/agents/toolkits/openapi/openapi.d.cts +0 -1
- package/dist/agents/toolkits/openapi/openapi.d.cts.map +1 -1
- package/dist/agents/toolkits/openapi/openapi.d.ts +0 -1
- package/dist/agents/toolkits/openapi/openapi.d.ts.map +1 -1
- package/dist/agents/toolkits/openapi/openapi.js +10 -14
- package/dist/agents/toolkits/openapi/openapi.js.map +1 -1
- package/dist/agents/toolkits/openapi/prompt.cjs.map +1 -1
- package/dist/agents/toolkits/openapi/prompt.js.map +1 -1
- package/dist/agents/toolkits/sql/index.cjs +3 -3
- package/dist/agents/toolkits/sql/index.js +2 -3
- package/dist/agents/toolkits/sql/prompt.cjs.map +1 -1
- package/dist/agents/toolkits/sql/prompt.d.cts.map +1 -1
- package/dist/agents/toolkits/sql/prompt.d.ts.map +1 -1
- package/dist/agents/toolkits/sql/prompt.js.map +1 -1
- package/dist/agents/toolkits/sql/sql.cjs +13 -15
- package/dist/agents/toolkits/sql/sql.cjs.map +1 -1
- package/dist/agents/toolkits/sql/sql.d.cts +0 -1
- package/dist/agents/toolkits/sql/sql.d.cts.map +1 -1
- package/dist/agents/toolkits/sql/sql.d.ts +0 -1
- package/dist/agents/toolkits/sql/sql.d.ts.map +1 -1
- package/dist/agents/toolkits/sql/sql.js +8 -10
- package/dist/agents/toolkits/sql/sql.js.map +1 -1
- package/dist/agents/toolkits/vectorstore/prompt.cjs.map +1 -1
- package/dist/agents/toolkits/vectorstore/prompt.js.map +1 -1
- package/dist/agents/toolkits/vectorstore/vectorstore.cjs +20 -24
- package/dist/agents/toolkits/vectorstore/vectorstore.cjs.map +1 -1
- package/dist/agents/toolkits/vectorstore/vectorstore.d.cts +0 -1
- package/dist/agents/toolkits/vectorstore/vectorstore.d.cts.map +1 -1
- package/dist/agents/toolkits/vectorstore/vectorstore.d.ts +0 -1
- package/dist/agents/toolkits/vectorstore/vectorstore.d.ts.map +1 -1
- package/dist/agents/toolkits/vectorstore/vectorstore.js +16 -20
- package/dist/agents/toolkits/vectorstore/vectorstore.js.map +1 -1
- package/dist/agents/types.cjs +4 -4
- package/dist/agents/types.cjs.map +1 -1
- package/dist/agents/types.d.cts +0 -1
- package/dist/agents/types.d.cts.map +1 -1
- package/dist/agents/types.d.ts +1 -2
- package/dist/agents/types.d.ts.map +1 -1
- package/dist/agents/types.js.map +1 -1
- package/dist/agents/xml/index.cjs +12 -15
- package/dist/agents/xml/index.cjs.map +1 -1
- package/dist/agents/xml/index.d.cts +1 -4
- package/dist/agents/xml/index.d.cts.map +1 -1
- package/dist/agents/xml/index.d.ts +1 -4
- package/dist/agents/xml/index.d.ts.map +1 -1
- package/dist/agents/xml/index.js +7 -10
- package/dist/agents/xml/index.js.map +1 -1
- package/dist/agents/xml/output_parser.cjs +7 -9
- package/dist/agents/xml/output_parser.cjs.map +1 -1
- package/dist/agents/xml/output_parser.d.cts +0 -1
- package/dist/agents/xml/output_parser.d.cts.map +1 -1
- package/dist/agents/xml/output_parser.d.ts +0 -1
- package/dist/agents/xml/output_parser.d.ts.map +1 -1
- package/dist/agents/xml/output_parser.js +4 -7
- package/dist/agents/xml/output_parser.js.map +1 -1
- package/dist/agents/xml/prompt.cjs.map +1 -1
- package/dist/agents/xml/prompt.js.map +1 -1
- package/dist/cache/file_system.cjs +11 -9
- package/dist/cache/file_system.cjs.map +1 -1
- package/dist/cache/file_system.d.cts +0 -1
- package/dist/cache/file_system.d.cts.map +1 -1
- package/dist/cache/file_system.d.ts +0 -1
- package/dist/cache/file_system.d.ts.map +1 -1
- package/dist/cache/file_system.js +2 -3
- package/dist/cache/file_system.js.map +1 -1
- package/dist/callbacks/handlers/console.cjs +6 -6
- package/dist/callbacks/handlers/console.d.cts +3 -2
- package/dist/callbacks/handlers/console.d.cts.map +1 -1
- package/dist/callbacks/handlers/console.d.ts +3 -2
- package/dist/callbacks/handlers/console.d.ts.map +1 -1
- package/dist/callbacks/handlers/console.js +4 -4
- package/dist/callbacks/handlers/run_collector.cjs +6 -6
- package/dist/callbacks/handlers/run_collector.d.cts +3 -2
- package/dist/callbacks/handlers/run_collector.d.cts.map +1 -1
- package/dist/callbacks/handlers/run_collector.d.ts +3 -2
- package/dist/callbacks/handlers/run_collector.d.ts.map +1 -1
- package/dist/callbacks/handlers/run_collector.js +4 -4
- package/dist/callbacks/handlers/tracer.cjs +6 -6
- package/dist/callbacks/handlers/tracer.d.cts +3 -2
- package/dist/callbacks/handlers/tracer.d.cts.map +1 -1
- package/dist/callbacks/handlers/tracer.d.ts +3 -2
- package/dist/callbacks/handlers/tracer.d.ts.map +1 -1
- package/dist/callbacks/handlers/tracer.js +4 -4
- package/dist/callbacks/handlers/tracer_langchain.cjs +6 -6
- package/dist/callbacks/handlers/tracer_langchain.d.cts +3 -2
- package/dist/callbacks/handlers/tracer_langchain.d.cts.map +1 -1
- package/dist/callbacks/handlers/tracer_langchain.d.ts +3 -2
- package/dist/callbacks/handlers/tracer_langchain.d.ts.map +1 -1
- package/dist/callbacks/handlers/tracer_langchain.js +4 -4
- package/dist/callbacks/index.cjs +3 -3
- package/dist/callbacks/index.js +2 -3
- package/dist/callbacks/promises.cjs +6 -6
- package/dist/callbacks/promises.d.cts +3 -2
- package/dist/callbacks/promises.d.cts.map +1 -1
- package/dist/callbacks/promises.d.ts +3 -2
- package/dist/callbacks/promises.d.ts.map +1 -1
- package/dist/callbacks/promises.js +4 -4
- package/dist/chains/analyze_documents_chain.cjs +6 -8
- package/dist/chains/analyze_documents_chain.cjs.map +1 -1
- package/dist/chains/analyze_documents_chain.d.cts.map +1 -1
- package/dist/chains/analyze_documents_chain.d.ts +1 -1
- package/dist/chains/analyze_documents_chain.d.ts.map +1 -1
- package/dist/chains/analyze_documents_chain.js +3 -5
- package/dist/chains/analyze_documents_chain.js.map +1 -1
- package/dist/chains/api/api_chain.cjs +1 -2
- package/dist/chains/api/api_chain.cjs.map +1 -1
- package/dist/chains/api/api_chain.d.cts +0 -1
- package/dist/chains/api/api_chain.d.cts.map +1 -1
- package/dist/chains/api/api_chain.d.ts +0 -1
- package/dist/chains/api/api_chain.d.ts.map +1 -1
- package/dist/chains/api/api_chain.js +1 -2
- package/dist/chains/api/api_chain.js.map +1 -1
- package/dist/chains/api/prompts.cjs +4 -4
- package/dist/chains/api/prompts.cjs.map +1 -1
- package/dist/chains/api/prompts.js.map +1 -1
- package/dist/chains/base.cjs +12 -14
- package/dist/chains/base.cjs.map +1 -1
- package/dist/chains/base.d.cts +3 -0
- package/dist/chains/base.d.cts.map +1 -1
- package/dist/chains/base.d.ts +3 -0
- package/dist/chains/base.d.ts.map +1 -1
- package/dist/chains/base.js +3 -5
- package/dist/chains/base.js.map +1 -1
- package/dist/chains/chat_vector_db_chain.cjs +9 -11
- package/dist/chains/chat_vector_db_chain.cjs.map +1 -1
- package/dist/chains/chat_vector_db_chain.d.cts.map +1 -1
- package/dist/chains/chat_vector_db_chain.d.ts.map +1 -1
- package/dist/chains/chat_vector_db_chain.js +6 -8
- package/dist/chains/chat_vector_db_chain.js.map +1 -1
- package/dist/chains/combine_docs_chain.cjs +15 -24
- package/dist/chains/combine_docs_chain.cjs.map +1 -1
- package/dist/chains/combine_docs_chain.d.cts.map +1 -1
- package/dist/chains/combine_docs_chain.d.ts +1 -1
- package/dist/chains/combine_docs_chain.d.ts.map +1 -1
- package/dist/chains/combine_docs_chain.js +12 -21
- package/dist/chains/combine_docs_chain.js.map +1 -1
- package/dist/chains/combine_documents/base.cjs +5 -6
- package/dist/chains/combine_documents/base.cjs.map +1 -1
- package/dist/chains/combine_documents/base.js +2 -3
- package/dist/chains/combine_documents/base.js.map +1 -1
- package/dist/chains/combine_documents/index.cjs +3 -3
- package/dist/chains/combine_documents/index.js +2 -3
- package/dist/chains/combine_documents/reduce.cjs +5 -7
- package/dist/chains/combine_documents/reduce.cjs.map +1 -1
- package/dist/chains/combine_documents/reduce.d.cts +0 -1
- package/dist/chains/combine_documents/reduce.d.cts.map +1 -1
- package/dist/chains/combine_documents/reduce.d.ts +0 -1
- package/dist/chains/combine_documents/reduce.d.ts.map +1 -1
- package/dist/chains/combine_documents/reduce.js +4 -7
- package/dist/chains/combine_documents/reduce.js.map +1 -1
- package/dist/chains/combine_documents/stuff.cjs +6 -6
- package/dist/chains/combine_documents/stuff.cjs.map +1 -1
- package/dist/chains/combine_documents/stuff.d.cts +0 -1
- package/dist/chains/combine_documents/stuff.d.cts.map +1 -1
- package/dist/chains/combine_documents/stuff.d.ts +0 -1
- package/dist/chains/combine_documents/stuff.d.ts.map +1 -1
- package/dist/chains/combine_documents/stuff.js.map +1 -1
- package/dist/chains/constitutional_ai/constitutional_chain.cjs.map +1 -1
- package/dist/chains/constitutional_ai/constitutional_chain.d.cts +0 -1
- package/dist/chains/constitutional_ai/constitutional_chain.d.cts.map +1 -1
- package/dist/chains/constitutional_ai/constitutional_chain.d.ts +0 -1
- package/dist/chains/constitutional_ai/constitutional_chain.d.ts.map +1 -1
- package/dist/chains/constitutional_ai/constitutional_chain.js.map +1 -1
- package/dist/chains/constitutional_ai/constitutional_principle.cjs.map +1 -1
- package/dist/chains/constitutional_ai/constitutional_principle.d.cts +0 -1
- package/dist/chains/constitutional_ai/constitutional_principle.d.cts.map +1 -1
- package/dist/chains/constitutional_ai/constitutional_principle.d.ts +0 -1
- package/dist/chains/constitutional_ai/constitutional_principle.d.ts.map +1 -1
- package/dist/chains/constitutional_ai/constitutional_principle.js.map +1 -1
- package/dist/chains/constitutional_ai/constitutional_prompts.cjs +5 -5
- package/dist/chains/constitutional_ai/constitutional_prompts.cjs.map +1 -1
- package/dist/chains/constitutional_ai/constitutional_prompts.js.map +1 -1
- package/dist/chains/conversation.cjs +4 -4
- package/dist/chains/conversation.cjs.map +1 -1
- package/dist/chains/conversation.d.cts +0 -1
- package/dist/chains/conversation.d.cts.map +1 -1
- package/dist/chains/conversation.d.ts +0 -1
- package/dist/chains/conversation.d.ts.map +1 -1
- package/dist/chains/conversation.js +1 -1
- package/dist/chains/conversation.js.map +1 -1
- package/dist/chains/conversational_retrieval_chain.cjs +12 -14
- package/dist/chains/conversational_retrieval_chain.cjs.map +1 -1
- package/dist/chains/conversational_retrieval_chain.d.cts +2 -4
- package/dist/chains/conversational_retrieval_chain.d.cts.map +1 -1
- package/dist/chains/conversational_retrieval_chain.d.ts +3 -5
- package/dist/chains/conversational_retrieval_chain.d.ts.map +1 -1
- package/dist/chains/conversational_retrieval_chain.js +7 -9
- package/dist/chains/conversational_retrieval_chain.js.map +1 -1
- package/dist/chains/graph_qa/cypher.cjs +8 -10
- package/dist/chains/graph_qa/cypher.cjs.map +1 -1
- package/dist/chains/graph_qa/cypher.d.cts.map +1 -1
- package/dist/chains/graph_qa/cypher.d.ts.map +1 -1
- package/dist/chains/graph_qa/cypher.js +7 -10
- package/dist/chains/graph_qa/cypher.js.map +1 -1
- package/dist/chains/graph_qa/prompts.cjs +4 -4
- package/dist/chains/graph_qa/prompts.cjs.map +1 -1
- package/dist/chains/graph_qa/prompts.js.map +1 -1
- package/dist/chains/history_aware_retriever.cjs +7 -8
- package/dist/chains/history_aware_retriever.cjs.map +1 -1
- package/dist/chains/history_aware_retriever.d.cts +0 -1
- package/dist/chains/history_aware_retriever.d.cts.map +1 -1
- package/dist/chains/history_aware_retriever.d.ts +2 -3
- package/dist/chains/history_aware_retriever.d.ts.map +1 -1
- package/dist/chains/history_aware_retriever.js +3 -5
- package/dist/chains/history_aware_retriever.js.map +1 -1
- package/dist/chains/index.cjs +3 -3
- package/dist/chains/index.js +2 -3
- package/dist/chains/llm_chain.cjs +12 -15
- package/dist/chains/llm_chain.cjs.map +1 -1
- package/dist/chains/llm_chain.d.cts.map +1 -1
- package/dist/chains/llm_chain.d.ts +1 -1
- package/dist/chains/llm_chain.d.ts.map +1 -1
- package/dist/chains/llm_chain.js +3 -6
- package/dist/chains/llm_chain.js.map +1 -1
- package/dist/chains/load.cjs +3 -3
- package/dist/chains/load.cjs.map +1 -1
- package/dist/chains/load.d.cts +0 -1
- package/dist/chains/load.d.cts.map +1 -1
- package/dist/chains/load.d.ts +0 -1
- package/dist/chains/load.d.ts.map +1 -1
- package/dist/chains/load.js +2 -3
- package/dist/chains/load.js.map +1 -1
- package/dist/chains/openai_functions/base.cjs +8 -10
- package/dist/chains/openai_functions/base.cjs.map +1 -1
- package/dist/chains/openai_functions/base.d.cts +3 -7
- package/dist/chains/openai_functions/base.d.cts.map +1 -1
- package/dist/chains/openai_functions/base.d.ts +4 -8
- package/dist/chains/openai_functions/base.d.ts.map +1 -1
- package/dist/chains/openai_functions/base.js +5 -7
- package/dist/chains/openai_functions/base.js.map +1 -1
- package/dist/chains/openai_functions/extraction.cjs +5 -5
- package/dist/chains/openai_functions/extraction.cjs.map +1 -1
- package/dist/chains/openai_functions/extraction.d.cts +0 -1
- package/dist/chains/openai_functions/extraction.d.cts.map +1 -1
- package/dist/chains/openai_functions/extraction.d.ts +1 -2
- package/dist/chains/openai_functions/extraction.d.ts.map +1 -1
- package/dist/chains/openai_functions/extraction.js.map +1 -1
- package/dist/chains/openai_functions/index.cjs +3 -3
- package/dist/chains/openai_functions/index.js +2 -3
- package/dist/chains/openai_functions/openapi.cjs +12 -19
- package/dist/chains/openai_functions/openapi.cjs.map +1 -1
- package/dist/chains/openai_functions/openapi.d.cts +0 -2
- package/dist/chains/openai_functions/openapi.d.cts.map +1 -1
- package/dist/chains/openai_functions/openapi.d.ts +0 -2
- package/dist/chains/openai_functions/openapi.d.ts.map +1 -1
- package/dist/chains/openai_functions/openapi.js +9 -16
- package/dist/chains/openai_functions/openapi.js.map +1 -1
- package/dist/chains/openai_functions/tagging.cjs +5 -5
- package/dist/chains/openai_functions/tagging.cjs.map +1 -1
- package/dist/chains/openai_functions/tagging.d.cts +0 -1
- package/dist/chains/openai_functions/tagging.d.cts.map +1 -1
- package/dist/chains/openai_functions/tagging.d.ts +1 -2
- package/dist/chains/openai_functions/tagging.d.ts.map +1 -1
- package/dist/chains/openai_functions/tagging.js +1 -1
- package/dist/chains/openai_functions/tagging.js.map +1 -1
- package/dist/chains/openai_moderation.cjs +7 -7
- package/dist/chains/openai_moderation.cjs.map +1 -1
- package/dist/chains/openai_moderation.d.cts +0 -1
- package/dist/chains/openai_moderation.d.cts.map +1 -1
- package/dist/chains/openai_moderation.d.ts +0 -1
- package/dist/chains/openai_moderation.d.ts.map +1 -1
- package/dist/chains/openai_moderation.js.map +1 -1
- package/dist/chains/query_constructor/index.cjs +19 -25
- package/dist/chains/query_constructor/index.cjs.map +1 -1
- package/dist/chains/query_constructor/index.d.cts +0 -1
- package/dist/chains/query_constructor/index.d.cts.map +1 -1
- package/dist/chains/query_constructor/index.d.ts +0 -1
- package/dist/chains/query_constructor/index.d.ts.map +1 -1
- package/dist/chains/query_constructor/index.js +11 -18
- package/dist/chains/query_constructor/index.js.map +1 -1
- package/dist/chains/query_constructor/ir.cjs +7 -6
- package/dist/chains/query_constructor/ir.js +4 -4
- package/dist/chains/query_constructor/parser.cjs +8 -9
- package/dist/chains/query_constructor/parser.cjs.map +1 -1
- package/dist/chains/query_constructor/parser.d.cts +0 -1
- package/dist/chains/query_constructor/parser.d.cts.map +1 -1
- package/dist/chains/query_constructor/parser.d.ts +0 -1
- package/dist/chains/query_constructor/parser.d.ts.map +1 -1
- package/dist/chains/query_constructor/parser.js +1 -2
- package/dist/chains/query_constructor/parser.js.map +1 -1
- package/dist/chains/query_constructor/prompt.cjs +3 -3
- package/dist/chains/query_constructor/prompt.cjs.map +1 -1
- package/dist/chains/query_constructor/prompt.d.cts +0 -1
- package/dist/chains/query_constructor/prompt.d.cts.map +1 -1
- package/dist/chains/query_constructor/prompt.d.ts +0 -1
- package/dist/chains/query_constructor/prompt.d.ts.map +1 -1
- package/dist/chains/query_constructor/prompt.js.map +1 -1
- package/dist/chains/question_answering/load.cjs +32 -41
- package/dist/chains/question_answering/load.cjs.map +1 -1
- package/dist/chains/question_answering/load.d.cts +0 -1
- package/dist/chains/question_answering/load.d.cts.map +1 -1
- package/dist/chains/question_answering/load.d.ts +0 -1
- package/dist/chains/question_answering/load.d.ts.map +1 -1
- package/dist/chains/question_answering/load.js +32 -41
- package/dist/chains/question_answering/load.js.map +1 -1
- package/dist/chains/question_answering/map_reduce_prompts.cjs +13 -15
- package/dist/chains/question_answering/map_reduce_prompts.cjs.map +1 -1
- package/dist/chains/question_answering/map_reduce_prompts.js +4 -6
- package/dist/chains/question_answering/map_reduce_prompts.js.map +1 -1
- package/dist/chains/question_answering/refine_prompts.cjs +16 -18
- package/dist/chains/question_answering/refine_prompts.cjs.map +1 -1
- package/dist/chains/question_answering/refine_prompts.js +7 -9
- package/dist/chains/question_answering/refine_prompts.js.map +1 -1
- package/dist/chains/question_answering/stuff_prompts.cjs +8 -9
- package/dist/chains/question_answering/stuff_prompts.cjs.map +1 -1
- package/dist/chains/question_answering/stuff_prompts.js +2 -3
- package/dist/chains/question_answering/stuff_prompts.js.map +1 -1
- package/dist/chains/retrieval.cjs +7 -8
- package/dist/chains/retrieval.cjs.map +1 -1
- package/dist/chains/retrieval.d.cts +0 -1
- package/dist/chains/retrieval.d.cts.map +1 -1
- package/dist/chains/retrieval.d.ts +2 -3
- package/dist/chains/retrieval.d.ts.map +1 -1
- package/dist/chains/retrieval.js +3 -5
- package/dist/chains/retrieval.js.map +1 -1
- package/dist/chains/retrieval_qa.cjs.map +1 -1
- package/dist/chains/retrieval_qa.d.cts.map +1 -1
- package/dist/chains/retrieval_qa.d.ts.map +1 -1
- package/dist/chains/retrieval_qa.js.map +1 -1
- package/dist/chains/router/llm_router.cjs.map +1 -1
- package/dist/chains/router/llm_router.d.cts +0 -1
- package/dist/chains/router/llm_router.d.cts.map +1 -1
- package/dist/chains/router/llm_router.d.ts +0 -1
- package/dist/chains/router/llm_router.d.ts.map +1 -1
- package/dist/chains/router/llm_router.js.map +1 -1
- package/dist/chains/router/multi_prompt.cjs +8 -10
- package/dist/chains/router/multi_prompt.cjs.map +1 -1
- package/dist/chains/router/multi_prompt.d.cts +0 -1
- package/dist/chains/router/multi_prompt.d.cts.map +1 -1
- package/dist/chains/router/multi_prompt.d.ts +0 -1
- package/dist/chains/router/multi_prompt.d.ts.map +1 -1
- package/dist/chains/router/multi_prompt.js +3 -5
- package/dist/chains/router/multi_prompt.js.map +1 -1
- package/dist/chains/router/multi_prompt_prompt.cjs.map +1 -1
- package/dist/chains/router/multi_prompt_prompt.js.map +1 -1
- package/dist/chains/router/multi_retrieval_prompt.cjs.map +1 -1
- package/dist/chains/router/multi_retrieval_prompt.js.map +1 -1
- package/dist/chains/router/multi_retrieval_qa.cjs +15 -22
- package/dist/chains/router/multi_retrieval_qa.cjs.map +1 -1
- package/dist/chains/router/multi_retrieval_qa.d.cts +0 -1
- package/dist/chains/router/multi_retrieval_qa.d.cts.map +1 -1
- package/dist/chains/router/multi_retrieval_qa.d.ts +0 -1
- package/dist/chains/router/multi_retrieval_qa.d.ts.map +1 -1
- package/dist/chains/router/multi_retrieval_qa.js +11 -18
- package/dist/chains/router/multi_retrieval_qa.js.map +1 -1
- package/dist/chains/router/multi_route.cjs.map +1 -1
- package/dist/chains/router/multi_route.d.cts +0 -1
- package/dist/chains/router/multi_route.d.cts.map +1 -1
- package/dist/chains/router/multi_route.d.ts +0 -1
- package/dist/chains/router/multi_route.d.ts.map +1 -1
- package/dist/chains/router/multi_route.js.map +1 -1
- package/dist/chains/router/utils.cjs.map +1 -1
- package/dist/chains/router/utils.js.map +1 -1
- package/dist/chains/sequential_chain.cjs.map +1 -1
- package/dist/chains/sequential_chain.d.cts +0 -1
- package/dist/chains/sequential_chain.d.cts.map +1 -1
- package/dist/chains/sequential_chain.d.ts +0 -1
- package/dist/chains/sequential_chain.d.ts.map +1 -1
- package/dist/chains/sequential_chain.js.map +1 -1
- package/dist/chains/serde.d.cts +0 -1
- package/dist/chains/serde.d.cts.map +1 -1
- package/dist/chains/serde.d.ts +0 -1
- package/dist/chains/serde.d.ts.map +1 -1
- package/dist/chains/sql_db/index.cjs +3 -3
- package/dist/chains/sql_db/index.js +2 -3
- package/dist/chains/sql_db/sql_db_chain.cjs +19 -24
- package/dist/chains/sql_db/sql_db_chain.cjs.map +1 -1
- package/dist/chains/sql_db/sql_db_chain.d.cts +0 -1
- package/dist/chains/sql_db/sql_db_chain.d.cts.map +1 -1
- package/dist/chains/sql_db/sql_db_chain.d.ts +0 -1
- package/dist/chains/sql_db/sql_db_chain.d.ts.map +1 -1
- package/dist/chains/sql_db/sql_db_chain.js +13 -18
- package/dist/chains/sql_db/sql_db_chain.js.map +1 -1
- package/dist/chains/sql_db/sql_db_prompt.cjs +9 -9
- package/dist/chains/sql_db/sql_db_prompt.cjs.map +1 -1
- package/dist/chains/sql_db/sql_db_prompt.d.cts.map +1 -1
- package/dist/chains/sql_db/sql_db_prompt.d.ts.map +1 -1
- package/dist/chains/sql_db/sql_db_prompt.js.map +1 -1
- package/dist/chains/summarization/load.cjs +32 -41
- package/dist/chains/summarization/load.cjs.map +1 -1
- package/dist/chains/summarization/load.d.cts +0 -1
- package/dist/chains/summarization/load.d.cts.map +1 -1
- package/dist/chains/summarization/load.d.ts +0 -1
- package/dist/chains/summarization/load.d.ts.map +1 -1
- package/dist/chains/summarization/load.js +32 -41
- package/dist/chains/summarization/load.js.map +1 -1
- package/dist/chains/summarization/refine_prompts.cjs +3 -3
- package/dist/chains/summarization/refine_prompts.cjs.map +1 -1
- package/dist/chains/summarization/refine_prompts.js.map +1 -1
- package/dist/chains/summarization/stuff_prompts.cjs +3 -3
- package/dist/chains/summarization/stuff_prompts.cjs.map +1 -1
- package/dist/chains/summarization/stuff_prompts.js.map +1 -1
- package/dist/chains/transform.cjs.map +1 -1
- package/dist/chains/transform.d.cts +0 -1
- package/dist/chains/transform.d.cts.map +1 -1
- package/dist/chains/transform.d.ts +0 -1
- package/dist/chains/transform.d.ts.map +1 -1
- package/dist/chains/transform.js.map +1 -1
- package/dist/chains/vector_db_qa.cjs.map +1 -1
- package/dist/chains/vector_db_qa.d.cts.map +1 -1
- package/dist/chains/vector_db_qa.d.ts.map +1 -1
- package/dist/chains/vector_db_qa.js.map +1 -1
- package/dist/chat_models/universal.cjs +33 -39
- package/dist/chat_models/universal.cjs.map +1 -1
- package/dist/chat_models/universal.d.cts.map +1 -1
- package/dist/chat_models/universal.d.ts +1 -1
- package/dist/chat_models/universal.d.ts.map +1 -1
- package/dist/chat_models/universal.js +20 -27
- package/dist/chat_models/universal.js.map +1 -1
- package/dist/document.cjs +5 -5
- package/dist/document.js +2 -3
- package/dist/document_loaders/base.cjs +7 -6
- package/dist/document_loaders/base.js +4 -4
- package/dist/document_loaders/fs/buffer.cjs +7 -7
- package/dist/document_loaders/fs/buffer.cjs.map +1 -1
- package/dist/document_loaders/fs/buffer.d.cts +0 -1
- package/dist/document_loaders/fs/buffer.d.cts.map +1 -1
- package/dist/document_loaders/fs/buffer.d.ts +1 -2
- package/dist/document_loaders/fs/buffer.d.ts.map +1 -1
- package/dist/document_loaders/fs/buffer.js +2 -3
- package/dist/document_loaders/fs/buffer.js.map +1 -1
- package/dist/document_loaders/fs/directory.cjs +7 -7
- package/dist/document_loaders/fs/directory.cjs.map +1 -1
- package/dist/document_loaders/fs/directory.d.cts.map +1 -1
- package/dist/document_loaders/fs/directory.d.ts +1 -1
- package/dist/document_loaders/fs/directory.d.ts.map +1 -1
- package/dist/document_loaders/fs/directory.js +2 -3
- package/dist/document_loaders/fs/directory.js.map +1 -1
- package/dist/document_loaders/fs/json.cjs +7 -8
- package/dist/document_loaders/fs/json.cjs.map +1 -1
- package/dist/document_loaders/fs/json.d.cts +0 -1
- package/dist/document_loaders/fs/json.d.cts.map +1 -1
- package/dist/document_loaders/fs/json.d.ts +0 -1
- package/dist/document_loaders/fs/json.d.ts.map +1 -1
- package/dist/document_loaders/fs/json.js +4 -7
- package/dist/document_loaders/fs/json.js.map +1 -1
- package/dist/document_loaders/fs/multi_file.cjs +8 -9
- package/dist/document_loaders/fs/multi_file.cjs.map +1 -1
- package/dist/document_loaders/fs/multi_file.d.cts +0 -1
- package/dist/document_loaders/fs/multi_file.d.cts.map +1 -1
- package/dist/document_loaders/fs/multi_file.d.ts +0 -1
- package/dist/document_loaders/fs/multi_file.d.ts.map +1 -1
- package/dist/document_loaders/fs/multi_file.js +3 -5
- package/dist/document_loaders/fs/multi_file.js.map +1 -1
- package/dist/document_loaders/fs/text.cjs +9 -9
- package/dist/document_loaders/fs/text.cjs.map +1 -1
- package/dist/document_loaders/fs/text.d.cts +0 -1
- package/dist/document_loaders/fs/text.d.cts.map +1 -1
- package/dist/document_loaders/fs/text.d.ts +1 -2
- package/dist/document_loaders/fs/text.d.ts.map +1 -1
- package/dist/document_loaders/fs/text.js +3 -4
- package/dist/document_loaders/fs/text.js.map +1 -1
- package/dist/document_transformers/openai_functions.cjs +12 -14
- package/dist/document_transformers/openai_functions.cjs.map +1 -1
- package/dist/document_transformers/openai_functions.d.cts +0 -1
- package/dist/document_transformers/openai_functions.d.cts.map +1 -1
- package/dist/document_transformers/openai_functions.d.ts +1 -1
- package/dist/document_transformers/openai_functions.d.ts.map +1 -1
- package/dist/document_transformers/openai_functions.js +6 -9
- package/dist/document_transformers/openai_functions.js.map +1 -1
- package/dist/embeddings/cache_backed.cjs +7 -7
- package/dist/embeddings/cache_backed.cjs.map +1 -1
- package/dist/embeddings/cache_backed.d.cts +0 -1
- package/dist/embeddings/cache_backed.d.cts.map +1 -1
- package/dist/embeddings/cache_backed.d.ts +0 -1
- package/dist/embeddings/cache_backed.d.ts.map +1 -1
- package/dist/embeddings/cache_backed.js +2 -3
- package/dist/embeddings/cache_backed.js.map +1 -1
- package/dist/embeddings/fake.cjs +7 -6
- package/dist/embeddings/fake.js +4 -4
- package/dist/evaluation/agents/index.js +2 -0
- package/dist/evaluation/agents/prompt.cjs +15 -12
- package/dist/evaluation/agents/prompt.cjs.map +1 -1
- package/dist/evaluation/agents/prompt.js +3 -0
- package/dist/evaluation/agents/prompt.js.map +1 -1
- package/dist/evaluation/agents/trajectory.cjs +5 -5
- package/dist/evaluation/agents/trajectory.cjs.map +1 -1
- package/dist/evaluation/agents/trajectory.d.cts +2 -2
- package/dist/evaluation/agents/trajectory.d.cts.map +1 -1
- package/dist/evaluation/agents/trajectory.d.ts +2 -2
- package/dist/evaluation/agents/trajectory.d.ts.map +1 -1
- package/dist/evaluation/agents/trajectory.js.map +1 -1
- package/dist/evaluation/base.cjs.map +1 -1
- package/dist/evaluation/base.d.cts.map +1 -1
- package/dist/evaluation/base.d.ts.map +1 -1
- package/dist/evaluation/base.js.map +1 -1
- package/dist/evaluation/comparison/index.js +2 -0
- package/dist/evaluation/comparison/pairwise.cjs +16 -21
- package/dist/evaluation/comparison/pairwise.cjs.map +1 -1
- package/dist/evaluation/comparison/pairwise.d.cts +3 -3
- package/dist/evaluation/comparison/pairwise.d.cts.map +1 -1
- package/dist/evaluation/comparison/pairwise.d.ts +3 -3
- package/dist/evaluation/comparison/pairwise.d.ts.map +1 -1
- package/dist/evaluation/comparison/pairwise.js +11 -16
- package/dist/evaluation/comparison/pairwise.js.map +1 -1
- package/dist/evaluation/comparison/prompt.cjs +11 -4
- package/dist/evaluation/comparison/prompt.cjs.map +1 -1
- package/dist/evaluation/comparison/prompt.js +7 -0
- package/dist/evaluation/comparison/prompt.js.map +1 -1
- package/dist/evaluation/criteria/criteria.cjs +7 -9
- package/dist/evaluation/criteria/criteria.cjs.map +1 -1
- package/dist/evaluation/criteria/criteria.d.cts +3 -3
- package/dist/evaluation/criteria/criteria.d.cts.map +1 -1
- package/dist/evaluation/criteria/criteria.d.ts +3 -3
- package/dist/evaluation/criteria/criteria.d.ts.map +1 -1
- package/dist/evaluation/criteria/criteria.js +2 -4
- package/dist/evaluation/criteria/criteria.js.map +1 -1
- package/dist/evaluation/criteria/index.js +2 -0
- package/dist/evaluation/criteria/prompt.cjs +4 -4
- package/dist/evaluation/criteria/prompt.cjs.map +1 -1
- package/dist/evaluation/criteria/prompt.js.map +1 -1
- package/dist/evaluation/embedding_distance/base.cjs +5 -9
- package/dist/evaluation/embedding_distance/base.cjs.map +1 -1
- package/dist/evaluation/embedding_distance/base.d.cts +0 -1
- package/dist/evaluation/embedding_distance/base.d.cts.map +1 -1
- package/dist/evaluation/embedding_distance/base.d.ts +0 -1
- package/dist/evaluation/embedding_distance/base.d.ts.map +1 -1
- package/dist/evaluation/embedding_distance/base.js +5 -9
- package/dist/evaluation/embedding_distance/base.js.map +1 -1
- package/dist/evaluation/embedding_distance/index.js +2 -0
- package/dist/evaluation/index.cjs +3 -3
- package/dist/evaluation/index.js +2 -3
- package/dist/evaluation/loader.cjs +3 -3
- package/dist/evaluation/loader.cjs.map +1 -1
- package/dist/evaluation/loader.d.cts.map +1 -1
- package/dist/evaluation/loader.d.ts.map +1 -1
- package/dist/evaluation/loader.js.map +1 -1
- package/dist/evaluation/qa/eval_chain.cjs +1 -2
- package/dist/evaluation/qa/eval_chain.cjs.map +1 -1
- package/dist/evaluation/qa/eval_chain.d.cts.map +1 -1
- package/dist/evaluation/qa/eval_chain.d.ts.map +1 -1
- package/dist/evaluation/qa/eval_chain.js +1 -2
- package/dist/evaluation/qa/eval_chain.js.map +1 -1
- package/dist/evaluation/qa/index.js +2 -0
- package/dist/evaluation/qa/prompt.cjs +3 -3
- package/dist/evaluation/qa/prompt.cjs.map +1 -1
- package/dist/evaluation/qa/prompt.js.map +1 -1
- package/dist/evaluation/types.d.cts.map +1 -1
- package/dist/evaluation/types.d.ts.map +1 -1
- package/dist/experimental/autogpt/agent.cjs +18 -21
- package/dist/experimental/autogpt/agent.cjs.map +1 -1
- package/dist/experimental/autogpt/agent.d.cts +0 -1
- package/dist/experimental/autogpt/agent.d.cts.map +1 -1
- package/dist/experimental/autogpt/agent.d.ts +1 -2
- package/dist/experimental/autogpt/agent.d.ts.map +1 -1
- package/dist/experimental/autogpt/agent.js +12 -15
- package/dist/experimental/autogpt/agent.js.map +1 -1
- package/dist/experimental/autogpt/index.cjs +3 -3
- package/dist/experimental/autogpt/index.js +2 -3
- package/dist/experimental/autogpt/output_parser.cjs +3 -3
- package/dist/experimental/autogpt/output_parser.cjs.map +1 -1
- package/dist/experimental/autogpt/output_parser.d.cts +0 -1
- package/dist/experimental/autogpt/output_parser.d.cts.map +1 -1
- package/dist/experimental/autogpt/output_parser.d.ts +0 -1
- package/dist/experimental/autogpt/output_parser.d.ts.map +1 -1
- package/dist/experimental/autogpt/output_parser.js.map +1 -1
- package/dist/experimental/autogpt/prompt.cjs +13 -18
- package/dist/experimental/autogpt/prompt.cjs.map +1 -1
- package/dist/experimental/autogpt/prompt.d.cts +2 -2
- package/dist/experimental/autogpt/prompt.d.cts.map +1 -1
- package/dist/experimental/autogpt/prompt.d.ts +3 -3
- package/dist/experimental/autogpt/prompt.d.ts.map +1 -1
- package/dist/experimental/autogpt/prompt.js +7 -12
- package/dist/experimental/autogpt/prompt.js.map +1 -1
- package/dist/experimental/autogpt/prompt_generator.cjs +7 -11
- package/dist/experimental/autogpt/prompt_generator.cjs.map +1 -1
- package/dist/experimental/autogpt/prompt_generator.js +3 -7
- package/dist/experimental/autogpt/prompt_generator.js.map +1 -1
- package/dist/experimental/autogpt/schema.d.cts +0 -1
- package/dist/experimental/autogpt/schema.d.cts.map +1 -1
- package/dist/experimental/autogpt/schema.d.ts +0 -1
- package/dist/experimental/autogpt/schema.d.ts.map +1 -1
- package/dist/experimental/babyagi/agent.cjs +16 -20
- package/dist/experimental/babyagi/agent.cjs.map +1 -1
- package/dist/experimental/babyagi/agent.d.cts +0 -1
- package/dist/experimental/babyagi/agent.d.cts.map +1 -1
- package/dist/experimental/babyagi/agent.d.ts +0 -1
- package/dist/experimental/babyagi/agent.d.ts.map +1 -1
- package/dist/experimental/babyagi/agent.js +13 -17
- package/dist/experimental/babyagi/agent.js.map +1 -1
- package/dist/experimental/babyagi/index.cjs +3 -3
- package/dist/experimental/babyagi/index.js +2 -3
- package/dist/experimental/babyagi/task_creation.cjs +11 -13
- package/dist/experimental/babyagi/task_creation.cjs.map +1 -1
- package/dist/experimental/babyagi/task_creation.d.cts.map +1 -1
- package/dist/experimental/babyagi/task_creation.d.ts.map +1 -1
- package/dist/experimental/babyagi/task_creation.js +9 -11
- package/dist/experimental/babyagi/task_creation.js.map +1 -1
- package/dist/experimental/babyagi/task_execution.cjs +10 -12
- package/dist/experimental/babyagi/task_execution.cjs.map +1 -1
- package/dist/experimental/babyagi/task_execution.d.cts.map +1 -1
- package/dist/experimental/babyagi/task_execution.d.ts.map +1 -1
- package/dist/experimental/babyagi/task_execution.js +8 -10
- package/dist/experimental/babyagi/task_execution.js.map +1 -1
- package/dist/experimental/babyagi/task_prioritization.cjs +10 -12
- package/dist/experimental/babyagi/task_prioritization.cjs.map +1 -1
- package/dist/experimental/babyagi/task_prioritization.d.cts.map +1 -1
- package/dist/experimental/babyagi/task_prioritization.d.ts.map +1 -1
- package/dist/experimental/babyagi/task_prioritization.js +8 -10
- package/dist/experimental/babyagi/task_prioritization.js.map +1 -1
- package/dist/experimental/chains/violation_of_expectations/index.cjs +3 -3
- package/dist/experimental/chains/violation_of_expectations/index.js +2 -3
- package/dist/experimental/chains/violation_of_expectations/types.cjs.map +1 -1
- package/dist/experimental/chains/violation_of_expectations/types.d.cts +0 -1
- package/dist/experimental/chains/violation_of_expectations/types.d.cts.map +1 -1
- package/dist/experimental/chains/violation_of_expectations/types.d.ts +0 -1
- package/dist/experimental/chains/violation_of_expectations/types.d.ts.map +1 -1
- package/dist/experimental/chains/violation_of_expectations/types.js.map +1 -1
- package/dist/experimental/chains/violation_of_expectations/violation_of_expectations_chain.cjs +20 -30
- package/dist/experimental/chains/violation_of_expectations/violation_of_expectations_chain.cjs.map +1 -1
- package/dist/experimental/chains/violation_of_expectations/violation_of_expectations_chain.d.cts +0 -1
- package/dist/experimental/chains/violation_of_expectations/violation_of_expectations_chain.d.cts.map +1 -1
- package/dist/experimental/chains/violation_of_expectations/violation_of_expectations_chain.d.ts +1 -2
- package/dist/experimental/chains/violation_of_expectations/violation_of_expectations_chain.d.ts.map +1 -1
- package/dist/experimental/chains/violation_of_expectations/violation_of_expectations_chain.js +16 -26
- package/dist/experimental/chains/violation_of_expectations/violation_of_expectations_chain.js.map +1 -1
- package/dist/experimental/chains/violation_of_expectations/violation_of_expectations_prompt.cjs +6 -6
- package/dist/experimental/chains/violation_of_expectations/violation_of_expectations_prompt.cjs.map +1 -1
- package/dist/experimental/chains/violation_of_expectations/violation_of_expectations_prompt.js.map +1 -1
- package/dist/experimental/generative_agents/generative_agent.cjs +30 -43
- package/dist/experimental/generative_agents/generative_agent.cjs.map +1 -1
- package/dist/experimental/generative_agents/generative_agent.d.cts +0 -1
- package/dist/experimental/generative_agents/generative_agent.d.cts.map +1 -1
- package/dist/experimental/generative_agents/generative_agent.d.ts +0 -1
- package/dist/experimental/generative_agents/generative_agent.d.ts.map +1 -1
- package/dist/experimental/generative_agents/generative_agent.js +23 -36
- package/dist/experimental/generative_agents/generative_agent.js.map +1 -1
- package/dist/experimental/generative_agents/generative_agent_memory.cjs +17 -26
- package/dist/experimental/generative_agents/generative_agent_memory.cjs.map +1 -1
- package/dist/experimental/generative_agents/generative_agent_memory.d.cts.map +1 -1
- package/dist/experimental/generative_agents/generative_agent_memory.d.ts +1 -1
- package/dist/experimental/generative_agents/generative_agent_memory.d.ts.map +1 -1
- package/dist/experimental/generative_agents/generative_agent_memory.js +9 -18
- package/dist/experimental/generative_agents/generative_agent_memory.js.map +1 -1
- package/dist/experimental/generative_agents/index.cjs +3 -3
- package/dist/experimental/generative_agents/index.js +2 -3
- package/dist/experimental/masking/index.cjs +3 -3
- package/dist/experimental/masking/index.js +2 -3
- package/dist/experimental/masking/parser.cjs.map +1 -1
- package/dist/experimental/masking/parser.d.cts +0 -1
- package/dist/experimental/masking/parser.d.cts.map +1 -1
- package/dist/experimental/masking/parser.d.ts +0 -1
- package/dist/experimental/masking/parser.d.ts.map +1 -1
- package/dist/experimental/masking/parser.js.map +1 -1
- package/dist/experimental/masking/regex_masking_transformer.cjs +1 -2
- package/dist/experimental/masking/regex_masking_transformer.cjs.map +1 -1
- package/dist/experimental/masking/regex_masking_transformer.d.cts +0 -1
- package/dist/experimental/masking/regex_masking_transformer.d.cts.map +1 -1
- package/dist/experimental/masking/regex_masking_transformer.d.ts +0 -1
- package/dist/experimental/masking/regex_masking_transformer.d.ts.map +1 -1
- package/dist/experimental/masking/regex_masking_transformer.js +1 -2
- package/dist/experimental/masking/regex_masking_transformer.js.map +1 -1
- package/dist/experimental/masking/transformer.cjs.map +1 -1
- package/dist/experimental/masking/transformer.d.cts.map +1 -1
- package/dist/experimental/masking/transformer.d.ts.map +1 -1
- package/dist/experimental/masking/transformer.js.map +1 -1
- package/dist/experimental/masking/types.d.cts +0 -1
- package/dist/experimental/masking/types.d.cts.map +1 -1
- package/dist/experimental/masking/types.d.ts +0 -1
- package/dist/experimental/masking/types.d.ts.map +1 -1
- package/dist/experimental/openai_assistant/index.cjs +32 -40
- package/dist/experimental/openai_assistant/index.cjs.map +1 -1
- package/dist/experimental/openai_assistant/index.d.cts.map +1 -1
- package/dist/experimental/openai_assistant/index.d.ts.map +1 -1
- package/dist/experimental/openai_assistant/index.js +21 -30
- package/dist/experimental/openai_assistant/index.js.map +1 -1
- package/dist/experimental/openai_assistant/schema.d.cts.map +1 -1
- package/dist/experimental/openai_assistant/schema.d.ts.map +1 -1
- package/dist/experimental/openai_files/index.cjs +7 -7
- package/dist/experimental/openai_files/index.cjs.map +1 -1
- package/dist/experimental/openai_files/index.d.cts.map +1 -1
- package/dist/experimental/openai_files/index.d.ts.map +1 -1
- package/dist/experimental/openai_files/index.js +2 -3
- package/dist/experimental/openai_files/index.js.map +1 -1
- package/dist/experimental/plan_and_execute/agent_executor.cjs +3 -5
- package/dist/experimental/plan_and_execute/agent_executor.cjs.map +1 -1
- package/dist/experimental/plan_and_execute/agent_executor.d.cts +0 -1
- package/dist/experimental/plan_and_execute/agent_executor.d.cts.map +1 -1
- package/dist/experimental/plan_and_execute/agent_executor.d.ts +0 -1
- package/dist/experimental/plan_and_execute/agent_executor.d.ts.map +1 -1
- package/dist/experimental/plan_and_execute/agent_executor.js +3 -5
- package/dist/experimental/plan_and_execute/agent_executor.js.map +1 -1
- package/dist/experimental/plan_and_execute/base.cjs +1 -2
- package/dist/experimental/plan_and_execute/base.cjs.map +1 -1
- package/dist/experimental/plan_and_execute/base.d.cts +0 -1
- package/dist/experimental/plan_and_execute/base.d.cts.map +1 -1
- package/dist/experimental/plan_and_execute/base.d.ts +0 -1
- package/dist/experimental/plan_and_execute/base.d.ts.map +1 -1
- package/dist/experimental/plan_and_execute/base.js +1 -2
- package/dist/experimental/plan_and_execute/base.js.map +1 -1
- package/dist/experimental/plan_and_execute/index.cjs +3 -3
- package/dist/experimental/plan_and_execute/index.js +2 -3
- package/dist/experimental/plan_and_execute/outputParser.cjs +3 -3
- package/dist/experimental/plan_and_execute/outputParser.cjs.map +1 -1
- package/dist/experimental/plan_and_execute/outputParser.d.cts +0 -1
- package/dist/experimental/plan_and_execute/outputParser.d.cts.map +1 -1
- package/dist/experimental/plan_and_execute/outputParser.d.ts +0 -1
- package/dist/experimental/plan_and_execute/outputParser.d.ts.map +1 -1
- package/dist/experimental/plan_and_execute/outputParser.js.map +1 -1
- package/dist/experimental/plan_and_execute/prompt.cjs +3 -3
- package/dist/experimental/plan_and_execute/prompt.cjs.map +1 -1
- package/dist/experimental/plan_and_execute/prompt.js.map +1 -1
- package/dist/experimental/prompts/custom_format.cjs +6 -6
- package/dist/experimental/prompts/custom_format.cjs.map +1 -1
- package/dist/experimental/prompts/custom_format.d.cts.map +1 -1
- package/dist/experimental/prompts/custom_format.d.ts.map +1 -1
- package/dist/experimental/prompts/custom_format.js +3 -4
- package/dist/experimental/prompts/custom_format.js.map +1 -1
- package/dist/experimental/prompts/handlebars.cjs +6 -6
- package/dist/experimental/prompts/handlebars.cjs.map +1 -1
- package/dist/experimental/prompts/handlebars.d.cts.map +1 -1
- package/dist/experimental/prompts/handlebars.d.ts.map +1 -1
- package/dist/experimental/prompts/handlebars.js +3 -5
- package/dist/experimental/prompts/handlebars.js.map +1 -1
- package/dist/hub/base.cjs +2 -5
- package/dist/hub/base.cjs.map +1 -1
- package/dist/hub/base.d.cts +2 -5
- package/dist/hub/base.d.cts.map +1 -1
- package/dist/hub/base.d.ts +2 -5
- package/dist/hub/base.d.ts.map +1 -1
- package/dist/hub/base.js +2 -5
- package/dist/hub/base.js.map +1 -1
- package/dist/hub/index.cjs +2 -2
- package/dist/hub/index.cjs.map +1 -1
- package/dist/hub/index.d.cts +0 -1
- package/dist/hub/index.d.cts.map +1 -1
- package/dist/hub/index.d.ts +0 -1
- package/dist/hub/index.d.ts.map +1 -1
- package/dist/hub/index.js +1 -2
- package/dist/hub/index.js.map +1 -1
- package/dist/hub/node.cjs +7 -13
- package/dist/hub/node.cjs.map +1 -1
- package/dist/hub/node.d.cts +0 -1
- package/dist/hub/node.d.cts.map +1 -1
- package/dist/hub/node.d.ts +0 -1
- package/dist/hub/node.d.ts.map +1 -1
- package/dist/hub/node.js +6 -13
- package/dist/hub/node.js.map +1 -1
- package/dist/index.cjs +3 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/indexes/index.cjs +16 -16
- package/dist/indexes/index.js +2 -3
- package/dist/load/import_constants.cjs.map +1 -1
- package/dist/load/import_constants.js.map +1 -1
- package/dist/load/import_map.cjs +25 -26
- package/dist/load/import_map.cjs.map +1 -1
- package/dist/load/import_map.js +29 -30
- package/dist/load/import_map.js.map +1 -1
- package/dist/load/import_type.d.cts.map +1 -1
- package/dist/load/import_type.d.ts.map +1 -1
- package/dist/load/index.cjs +13 -3
- package/dist/load/index.cjs.map +1 -1
- package/dist/load/index.d.cts +9 -1
- package/dist/load/index.d.cts.map +1 -1
- package/dist/load/index.d.ts +9 -1
- package/dist/load/index.d.ts.map +1 -1
- package/dist/load/index.js +9 -0
- package/dist/load/index.js.map +1 -1
- package/dist/load/map_keys.d.cts.map +1 -1
- package/dist/load/map_keys.d.ts.map +1 -1
- package/dist/load/serializable.cjs +7 -6
- package/dist/load/serializable.js +4 -4
- package/dist/memory/buffer_memory.cjs +4 -8
- package/dist/memory/buffer_memory.cjs.map +1 -1
- package/dist/memory/buffer_memory.d.cts +0 -1
- package/dist/memory/buffer_memory.d.cts.map +1 -1
- package/dist/memory/buffer_memory.d.ts +0 -1
- package/dist/memory/buffer_memory.d.ts.map +1 -1
- package/dist/memory/buffer_memory.js +2 -6
- package/dist/memory/buffer_memory.js.map +1 -1
- package/dist/memory/buffer_token_memory.cjs +6 -10
- package/dist/memory/buffer_token_memory.cjs.map +1 -1
- package/dist/memory/buffer_token_memory.d.cts +0 -1
- package/dist/memory/buffer_token_memory.d.cts.map +1 -1
- package/dist/memory/buffer_token_memory.d.ts +0 -1
- package/dist/memory/buffer_token_memory.d.ts.map +1 -1
- package/dist/memory/buffer_token_memory.js +2 -6
- package/dist/memory/buffer_token_memory.js.map +1 -1
- package/dist/memory/buffer_window_memory.cjs +4 -8
- package/dist/memory/buffer_window_memory.cjs.map +1 -1
- package/dist/memory/buffer_window_memory.d.cts +0 -1
- package/dist/memory/buffer_window_memory.d.cts.map +1 -1
- package/dist/memory/buffer_window_memory.d.ts +0 -1
- package/dist/memory/buffer_window_memory.d.ts.map +1 -1
- package/dist/memory/buffer_window_memory.js +2 -6
- package/dist/memory/buffer_window_memory.js.map +1 -1
- package/dist/memory/chat_memory.cjs +9 -9
- package/dist/memory/chat_memory.cjs.map +1 -1
- package/dist/memory/chat_memory.d.cts +0 -1
- package/dist/memory/chat_memory.d.cts.map +1 -1
- package/dist/memory/chat_memory.d.ts +0 -1
- package/dist/memory/chat_memory.d.ts.map +1 -1
- package/dist/memory/chat_memory.js +2 -3
- package/dist/memory/chat_memory.js.map +1 -1
- package/dist/memory/combined_memory.cjs.map +1 -1
- package/dist/memory/combined_memory.d.cts +0 -1
- package/dist/memory/combined_memory.d.cts.map +1 -1
- package/dist/memory/combined_memory.d.ts +0 -1
- package/dist/memory/combined_memory.d.ts.map +1 -1
- package/dist/memory/combined_memory.js.map +1 -1
- package/dist/memory/entity_memory.cjs +7 -8
- package/dist/memory/entity_memory.cjs.map +1 -1
- package/dist/memory/entity_memory.d.cts +0 -1
- package/dist/memory/entity_memory.d.cts.map +1 -1
- package/dist/memory/entity_memory.d.ts +0 -1
- package/dist/memory/entity_memory.d.ts.map +1 -1
- package/dist/memory/entity_memory.js +1 -2
- package/dist/memory/entity_memory.js.map +1 -1
- package/dist/memory/index.cjs +16 -16
- package/dist/memory/index.js +2 -3
- package/dist/memory/prompt.cjs +6 -6
- package/dist/memory/prompt.cjs.map +1 -1
- package/dist/memory/prompt.d.cts +0 -1
- package/dist/memory/prompt.d.cts.map +1 -1
- package/dist/memory/prompt.d.ts +0 -1
- package/dist/memory/prompt.d.ts.map +1 -1
- package/dist/memory/prompt.js.map +1 -1
- package/dist/memory/stores/entity/base.cjs +3 -3
- package/dist/memory/stores/entity/base.cjs.map +1 -1
- package/dist/memory/stores/entity/base.d.cts +0 -1
- package/dist/memory/stores/entity/base.d.cts.map +1 -1
- package/dist/memory/stores/entity/base.d.ts +0 -1
- package/dist/memory/stores/entity/base.d.ts.map +1 -1
- package/dist/memory/stores/entity/base.js.map +1 -1
- package/dist/memory/stores/entity/in_memory.cjs.map +1 -1
- package/dist/memory/stores/entity/in_memory.js.map +1 -1
- package/dist/memory/summary.cjs +8 -13
- package/dist/memory/summary.cjs.map +1 -1
- package/dist/memory/summary.d.cts +0 -1
- package/dist/memory/summary.d.cts.map +1 -1
- package/dist/memory/summary.d.ts +1 -2
- package/dist/memory/summary.d.ts.map +1 -1
- package/dist/memory/summary.js +4 -9
- package/dist/memory/summary.js.map +1 -1
- package/dist/memory/summary_buffer.cjs +5 -5
- package/dist/memory/summary_buffer.cjs.map +1 -1
- package/dist/memory/summary_buffer.d.cts +0 -1
- package/dist/memory/summary_buffer.d.cts.map +1 -1
- package/dist/memory/summary_buffer.d.ts +0 -1
- package/dist/memory/summary_buffer.d.ts.map +1 -1
- package/dist/memory/summary_buffer.js.map +1 -1
- package/dist/memory/vector_store.cjs +6 -6
- package/dist/memory/vector_store.cjs.map +1 -1
- package/dist/memory/vector_store.d.cts.map +1 -1
- package/dist/memory/vector_store.d.ts.map +1 -1
- package/dist/memory/vector_store.js +1 -1
- package/dist/memory/vector_store.js.map +1 -1
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/client.d.cts +1242 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/client.d.cts.map +1 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/client.d.ts +1242 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/client.d.ts.map +1 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/evaluation/_runner.d.cts +4 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/evaluation/_runner.d.ts +4 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/evaluation/evaluate_comparative.d.cts +2 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/evaluation/evaluate_comparative.d.ts +2 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/evaluation/evaluator.d.cts +66 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/evaluation/evaluator.d.cts.map +1 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/evaluation/evaluator.d.ts +66 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/evaluation/evaluator.d.ts.map +1 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/evaluation/index.d.cts +4 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/evaluation/index.d.ts +4 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/evaluation/string_evaluator.d.cts +1 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/evaluation/string_evaluator.d.ts +1 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/index.d.cts +4 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/index.d.ts +4 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/run_trees.d.cts +145 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/run_trees.d.cts.map +1 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/run_trees.d.ts +145 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/run_trees.d.ts.map +1 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/schemas.d.cts +411 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/schemas.d.cts.map +1 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/schemas.d.ts +411 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/schemas.d.ts.map +1 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/singletons/traceable.d.cts +8 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/singletons/traceable.d.cts.map +1 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/singletons/traceable.d.ts +8 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/singletons/traceable.d.ts.map +1 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/singletons/types.d.cts +38 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/singletons/types.d.cts.map +1 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/singletons/types.d.ts +38 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/singletons/types.d.ts.map +1 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/utils/async_caller.d.cts +27 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/utils/async_caller.d.cts.map +1 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/utils/async_caller.d.ts +27 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/utils/async_caller.d.ts.map +1 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/utils/p-queue.d.cts +1 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/utils/p-queue.d.ts +1 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/utils/prompt_cache/index.d.cts +129 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/utils/prompt_cache/index.d.cts.map +1 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/utils/prompt_cache/index.d.ts +129 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/dist/utils/prompt_cache/index.d.ts.map +1 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/evaluation.d.cts +2 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/evaluation.d.ts +2 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/singletons/traceable.d.cts +2 -0
- package/dist/node_modules/.pnpm/langsmith@0.5.3_@opentelemetry_api@1.9.0_openai@5.23.2_ws@8.19.0_bufferutil@4.1.0__zod@4.3.6_/node_modules/langsmith/singletons/traceable.d.ts +2 -0
- package/dist/node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/index.d.cts +1 -0
- package/dist/node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/index.d.ts +1 -0
- package/dist/output_parsers/combining.cjs +4 -4
- package/dist/output_parsers/combining.cjs.map +1 -1
- package/dist/output_parsers/combining.d.cts +0 -1
- package/dist/output_parsers/combining.d.cts.map +1 -1
- package/dist/output_parsers/combining.d.ts +0 -1
- package/dist/output_parsers/combining.d.ts.map +1 -1
- package/dist/output_parsers/combining.js +1 -1
- package/dist/output_parsers/combining.js.map +1 -1
- package/dist/output_parsers/datetime.cjs +4 -4
- package/dist/output_parsers/datetime.cjs.map +1 -1
- package/dist/output_parsers/datetime.d.cts +0 -1
- package/dist/output_parsers/datetime.d.cts.map +1 -1
- package/dist/output_parsers/datetime.d.ts +0 -1
- package/dist/output_parsers/datetime.d.ts.map +1 -1
- package/dist/output_parsers/datetime.js.map +1 -1
- package/dist/output_parsers/expression.cjs +7 -9
- package/dist/output_parsers/expression.cjs.map +1 -1
- package/dist/output_parsers/expression.d.cts.map +1 -1
- package/dist/output_parsers/expression.d.ts.map +1 -1
- package/dist/output_parsers/expression.js +4 -7
- package/dist/output_parsers/expression.js.map +1 -1
- package/dist/output_parsers/expression_type_handlers/array_literal_expression_handler.cjs.map +1 -1
- package/dist/output_parsers/expression_type_handlers/array_literal_expression_handler.js.map +1 -1
- package/dist/output_parsers/expression_type_handlers/base.cjs +1 -2
- package/dist/output_parsers/expression_type_handlers/base.cjs.map +1 -1
- package/dist/output_parsers/expression_type_handlers/base.d.cts +0 -1
- package/dist/output_parsers/expression_type_handlers/base.d.cts.map +1 -1
- package/dist/output_parsers/expression_type_handlers/base.d.ts +0 -1
- package/dist/output_parsers/expression_type_handlers/base.d.ts.map +1 -1
- package/dist/output_parsers/expression_type_handlers/base.js +1 -2
- package/dist/output_parsers/expression_type_handlers/base.js.map +1 -1
- package/dist/output_parsers/expression_type_handlers/boolean_literal_handler.cjs.map +1 -1
- package/dist/output_parsers/expression_type_handlers/boolean_literal_handler.js.map +1 -1
- package/dist/output_parsers/expression_type_handlers/call_expression_handler.cjs.map +1 -1
- package/dist/output_parsers/expression_type_handlers/call_expression_handler.js.map +1 -1
- package/dist/output_parsers/expression_type_handlers/factory.cjs +1 -4
- package/dist/output_parsers/expression_type_handlers/factory.cjs.map +1 -1
- package/dist/output_parsers/expression_type_handlers/factory.d.cts +0 -1
- package/dist/output_parsers/expression_type_handlers/factory.d.cts.map +1 -1
- package/dist/output_parsers/expression_type_handlers/factory.d.ts +0 -1
- package/dist/output_parsers/expression_type_handlers/factory.d.ts.map +1 -1
- package/dist/output_parsers/expression_type_handlers/factory.js +1 -4
- package/dist/output_parsers/expression_type_handlers/factory.js.map +1 -1
- package/dist/output_parsers/expression_type_handlers/grammar/parser_grammar.cjs.map +1 -1
- package/dist/output_parsers/expression_type_handlers/grammar/parser_grammar.js.map +1 -1
- package/dist/output_parsers/expression_type_handlers/identifier_handler.cjs +1 -2
- package/dist/output_parsers/expression_type_handlers/identifier_handler.cjs.map +1 -1
- package/dist/output_parsers/expression_type_handlers/identifier_handler.js +1 -2
- package/dist/output_parsers/expression_type_handlers/identifier_handler.js.map +1 -1
- package/dist/output_parsers/expression_type_handlers/member_expression_handler.cjs.map +1 -1
- package/dist/output_parsers/expression_type_handlers/member_expression_handler.js.map +1 -1
- package/dist/output_parsers/expression_type_handlers/numeric_literal_handler.cjs.map +1 -1
- package/dist/output_parsers/expression_type_handlers/numeric_literal_handler.js.map +1 -1
- package/dist/output_parsers/expression_type_handlers/object_literal_expression_handler.cjs.map +1 -1
- package/dist/output_parsers/expression_type_handlers/object_literal_expression_handler.js.map +1 -1
- package/dist/output_parsers/expression_type_handlers/property_assignment_handler.cjs +2 -4
- package/dist/output_parsers/expression_type_handlers/property_assignment_handler.cjs.map +1 -1
- package/dist/output_parsers/expression_type_handlers/property_assignment_handler.js +2 -4
- package/dist/output_parsers/expression_type_handlers/property_assignment_handler.js.map +1 -1
- package/dist/output_parsers/expression_type_handlers/string_literal_handler.cjs +1 -2
- package/dist/output_parsers/expression_type_handlers/string_literal_handler.cjs.map +1 -1
- package/dist/output_parsers/expression_type_handlers/string_literal_handler.js +1 -2
- package/dist/output_parsers/expression_type_handlers/string_literal_handler.js.map +1 -1
- package/dist/output_parsers/expression_type_handlers/types.d.cts.map +1 -1
- package/dist/output_parsers/expression_type_handlers/types.d.ts.map +1 -1
- package/dist/output_parsers/fix.cjs +10 -16
- package/dist/output_parsers/fix.cjs.map +1 -1
- package/dist/output_parsers/fix.d.cts.map +1 -1
- package/dist/output_parsers/fix.d.ts.map +1 -1
- package/dist/output_parsers/fix.js +6 -12
- package/dist/output_parsers/fix.js.map +1 -1
- package/dist/output_parsers/http_response.cjs +5 -8
- package/dist/output_parsers/http_response.cjs.map +1 -1
- package/dist/output_parsers/http_response.d.cts.map +1 -1
- package/dist/output_parsers/http_response.d.ts +1 -1
- package/dist/output_parsers/http_response.d.ts.map +1 -1
- package/dist/output_parsers/http_response.js +1 -4
- package/dist/output_parsers/http_response.js.map +1 -1
- package/dist/output_parsers/index.cjs +10 -10
- package/dist/output_parsers/index.js +2 -3
- package/dist/output_parsers/noop.cjs +3 -3
- package/dist/output_parsers/noop.cjs.map +1 -1
- package/dist/output_parsers/noop.js.map +1 -1
- package/dist/output_parsers/openai_functions.cjs +15 -18
- package/dist/output_parsers/openai_functions.cjs.map +1 -1
- package/dist/output_parsers/openai_functions.d.cts +0 -1
- package/dist/output_parsers/openai_functions.d.cts.map +1 -1
- package/dist/output_parsers/openai_functions.d.ts +0 -1
- package/dist/output_parsers/openai_functions.d.ts.map +1 -1
- package/dist/output_parsers/openai_functions.js +6 -9
- package/dist/output_parsers/openai_functions.js.map +1 -1
- package/dist/output_parsers/openai_tools.cjs +5 -6
- package/dist/output_parsers/openai_tools.cjs.map +1 -1
- package/dist/output_parsers/openai_tools.d.cts +4 -9
- package/dist/output_parsers/openai_tools.d.cts.map +1 -1
- package/dist/output_parsers/openai_tools.d.ts +4 -9
- package/dist/output_parsers/openai_tools.d.ts.map +1 -1
- package/dist/output_parsers/openai_tools.js +1 -2
- package/dist/output_parsers/openai_tools.js.map +1 -1
- package/dist/output_parsers/prompts.cjs +3 -3
- package/dist/output_parsers/prompts.cjs.map +1 -1
- package/dist/output_parsers/prompts.js.map +1 -1
- package/dist/output_parsers/regex.cjs +4 -4
- package/dist/output_parsers/regex.cjs.map +1 -1
- package/dist/output_parsers/regex.d.cts.map +1 -1
- package/dist/output_parsers/regex.d.ts.map +1 -1
- package/dist/output_parsers/regex.js.map +1 -1
- package/dist/output_parsers/router.cjs +3 -3
- package/dist/output_parsers/router.cjs.map +1 -1
- package/dist/output_parsers/router.d.cts +0 -1
- package/dist/output_parsers/router.d.cts.map +1 -1
- package/dist/output_parsers/router.d.ts +0 -1
- package/dist/output_parsers/router.d.ts.map +1 -1
- package/dist/output_parsers/router.js.map +1 -1
- package/dist/output_parsers/structured.cjs +19 -20
- package/dist/output_parsers/structured.cjs.map +1 -1
- package/dist/output_parsers/structured.d.cts.map +1 -1
- package/dist/output_parsers/structured.d.ts.map +1 -1
- package/dist/output_parsers/structured.js +6 -7
- package/dist/output_parsers/structured.js.map +1 -1
- package/dist/retrievers/contextual_compression.cjs +6 -7
- package/dist/retrievers/contextual_compression.cjs.map +1 -1
- package/dist/retrievers/contextual_compression.d.cts +0 -1
- package/dist/retrievers/contextual_compression.d.cts.map +1 -1
- package/dist/retrievers/contextual_compression.d.ts +1 -2
- package/dist/retrievers/contextual_compression.d.ts.map +1 -1
- package/dist/retrievers/contextual_compression.js +3 -5
- package/dist/retrievers/contextual_compression.js.map +1 -1
- package/dist/retrievers/document_compressors/chain_extract.cjs +16 -19
- package/dist/retrievers/document_compressors/chain_extract.cjs.map +1 -1
- package/dist/retrievers/document_compressors/chain_extract.d.cts +0 -1
- package/dist/retrievers/document_compressors/chain_extract.d.cts.map +1 -1
- package/dist/retrievers/document_compressors/chain_extract.d.ts +1 -2
- package/dist/retrievers/document_compressors/chain_extract.d.ts.map +1 -1
- package/dist/retrievers/document_compressors/chain_extract.js +10 -14
- package/dist/retrievers/document_compressors/chain_extract.js.map +1 -1
- package/dist/retrievers/document_compressors/chain_extract_prompt.cjs.map +1 -1
- package/dist/retrievers/document_compressors/chain_extract_prompt.js.map +1 -1
- package/dist/retrievers/document_compressors/embeddings_filter.cjs +5 -5
- package/dist/retrievers/document_compressors/embeddings_filter.cjs.map +1 -1
- package/dist/retrievers/document_compressors/embeddings_filter.d.cts +0 -1
- package/dist/retrievers/document_compressors/embeddings_filter.d.cts.map +1 -1
- package/dist/retrievers/document_compressors/embeddings_filter.d.ts +0 -1
- package/dist/retrievers/document_compressors/embeddings_filter.d.ts.map +1 -1
- package/dist/retrievers/document_compressors/embeddings_filter.js +2 -3
- package/dist/retrievers/document_compressors/embeddings_filter.js.map +1 -1
- package/dist/retrievers/document_compressors/index.cjs +3 -3
- package/dist/retrievers/document_compressors/index.cjs.map +1 -1
- package/dist/retrievers/document_compressors/index.d.cts +0 -1
- package/dist/retrievers/document_compressors/index.d.cts.map +1 -1
- package/dist/retrievers/document_compressors/index.d.ts +1 -2
- package/dist/retrievers/document_compressors/index.d.ts.map +1 -1
- package/dist/retrievers/document_compressors/index.js +2 -3
- package/dist/retrievers/document_compressors/index.js.map +1 -1
- package/dist/retrievers/ensemble.cjs +7 -9
- package/dist/retrievers/ensemble.cjs.map +1 -1
- package/dist/retrievers/ensemble.d.cts.map +1 -1
- package/dist/retrievers/ensemble.d.ts +1 -1
- package/dist/retrievers/ensemble.d.ts.map +1 -1
- package/dist/retrievers/ensemble.js +4 -7
- package/dist/retrievers/ensemble.js.map +1 -1
- package/dist/retrievers/hyde.cjs +11 -13
- package/dist/retrievers/hyde.cjs.map +1 -1
- package/dist/retrievers/hyde.d.cts +0 -1
- package/dist/retrievers/hyde.d.cts.map +1 -1
- package/dist/retrievers/hyde.d.ts +1 -2
- package/dist/retrievers/hyde.d.ts.map +1 -1
- package/dist/retrievers/hyde.js +4 -7
- package/dist/retrievers/hyde.js.map +1 -1
- package/dist/retrievers/matryoshka_retriever.cjs +9 -9
- package/dist/retrievers/matryoshka_retriever.cjs.map +1 -1
- package/dist/retrievers/matryoshka_retriever.d.cts +0 -1
- package/dist/retrievers/matryoshka_retriever.d.cts.map +1 -1
- package/dist/retrievers/matryoshka_retriever.d.ts +0 -1
- package/dist/retrievers/matryoshka_retriever.d.ts.map +1 -1
- package/dist/retrievers/matryoshka_retriever.js +2 -3
- package/dist/retrievers/matryoshka_retriever.js.map +1 -1
- package/dist/retrievers/multi_query.cjs +15 -19
- package/dist/retrievers/multi_query.cjs.map +1 -1
- package/dist/retrievers/multi_query.d.cts.map +1 -1
- package/dist/retrievers/multi_query.d.ts +1 -1
- package/dist/retrievers/multi_query.d.ts.map +1 -1
- package/dist/retrievers/multi_query.js +8 -13
- package/dist/retrievers/multi_query.js.map +1 -1
- package/dist/retrievers/multi_vector.cjs +6 -7
- package/dist/retrievers/multi_vector.cjs.map +1 -1
- package/dist/retrievers/multi_vector.d.cts +0 -1
- package/dist/retrievers/multi_vector.d.cts.map +1 -1
- package/dist/retrievers/multi_vector.d.ts +0 -1
- package/dist/retrievers/multi_vector.d.ts.map +1 -1
- package/dist/retrievers/multi_vector.js +3 -5
- package/dist/retrievers/multi_vector.js.map +1 -1
- package/dist/retrievers/parent_document.cjs +8 -9
- package/dist/retrievers/parent_document.cjs.map +1 -1
- package/dist/retrievers/parent_document.d.cts.map +1 -1
- package/dist/retrievers/parent_document.d.ts +1 -1
- package/dist/retrievers/parent_document.d.ts.map +1 -1
- package/dist/retrievers/parent_document.js +4 -7
- package/dist/retrievers/parent_document.js.map +1 -1
- package/dist/retrievers/score_threshold.cjs +6 -7
- package/dist/retrievers/score_threshold.cjs.map +1 -1
- package/dist/retrievers/score_threshold.d.cts.map +1 -1
- package/dist/retrievers/score_threshold.d.ts.map +1 -1
- package/dist/retrievers/score_threshold.js +3 -5
- package/dist/retrievers/score_threshold.js.map +1 -1
- package/dist/retrievers/self_query/functional.cjs +5 -5
- package/dist/retrievers/self_query/functional.js +2 -3
- package/dist/retrievers/self_query/index.cjs +13 -13
- package/dist/retrievers/self_query/index.cjs.map +1 -1
- package/dist/retrievers/self_query/index.d.cts +0 -1
- package/dist/retrievers/self_query/index.d.cts.map +1 -1
- package/dist/retrievers/self_query/index.d.ts +1 -2
- package/dist/retrievers/self_query/index.d.ts.map +1 -1
- package/dist/retrievers/self_query/index.js +3 -4
- package/dist/retrievers/self_query/index.js.map +1 -1
- package/dist/retrievers/time_weighted.cjs +6 -7
- package/dist/retrievers/time_weighted.cjs.map +1 -1
- package/dist/retrievers/time_weighted.d.cts +0 -1
- package/dist/retrievers/time_weighted.d.cts.map +1 -1
- package/dist/retrievers/time_weighted.d.ts +1 -2
- package/dist/retrievers/time_weighted.d.ts.map +1 -1
- package/dist/retrievers/time_weighted.js +3 -5
- package/dist/retrievers/time_weighted.js.map +1 -1
- package/dist/schema/prompt_template.cjs +3 -3
- package/dist/schema/prompt_template.cjs.map +1 -1
- package/dist/schema/prompt_template.d.cts +0 -1
- package/dist/schema/prompt_template.d.cts.map +1 -1
- package/dist/schema/prompt_template.d.ts +1 -2
- package/dist/schema/prompt_template.d.ts.map +1 -1
- package/dist/schema/prompt_template.js +2 -3
- package/dist/schema/prompt_template.js.map +1 -1
- package/dist/schema/query_constructor.cjs +3 -3
- package/dist/schema/query_constructor.cjs.map +1 -1
- package/dist/schema/query_constructor.d.cts.map +1 -1
- package/dist/schema/query_constructor.d.ts.map +1 -1
- package/dist/schema/query_constructor.js +2 -3
- package/dist/schema/query_constructor.js.map +1 -1
- package/dist/smith/config.cjs.map +1 -1
- package/dist/smith/config.d.cts +10 -9
- package/dist/smith/config.d.cts.map +1 -1
- package/dist/smith/config.d.ts +10 -9
- package/dist/smith/config.d.ts.map +1 -1
- package/dist/smith/config.js.map +1 -1
- package/dist/smith/index.cjs +3 -3
- package/dist/smith/index.js +2 -3
- package/dist/smith/name_generation.cjs +1 -4
- package/dist/smith/name_generation.cjs.map +1 -1
- package/dist/smith/name_generation.js +1 -4
- package/dist/smith/name_generation.js.map +1 -1
- package/dist/smith/progress.cjs.map +1 -1
- package/dist/smith/progress.js.map +1 -1
- package/dist/smith/runner_utils.cjs +30 -37
- package/dist/smith/runner_utils.cjs.map +1 -1
- package/dist/smith/runner_utils.d.cts +2 -1
- package/dist/smith/runner_utils.d.cts.map +1 -1
- package/dist/smith/runner_utils.d.ts +2 -1
- package/dist/smith/runner_utils.d.ts.map +1 -1
- package/dist/smith/runner_utils.js +12 -19
- package/dist/smith/runner_utils.js.map +1 -1
- package/dist/sql_db.cjs +5 -5
- package/dist/sql_db.cjs.map +1 -1
- package/dist/sql_db.d.cts +0 -1
- package/dist/sql_db.d.cts.map +1 -1
- package/dist/sql_db.d.ts +0 -1
- package/dist/sql_db.d.ts.map +1 -1
- package/dist/sql_db.js +2 -3
- package/dist/sql_db.js.map +1 -1
- package/dist/storage/encoder_backed.cjs +9 -10
- package/dist/storage/encoder_backed.cjs.map +1 -1
- package/dist/storage/encoder_backed.d.cts +0 -1
- package/dist/storage/encoder_backed.d.cts.map +1 -1
- package/dist/storage/encoder_backed.d.ts +0 -1
- package/dist/storage/encoder_backed.d.ts.map +1 -1
- package/dist/storage/encoder_backed.js +4 -6
- package/dist/storage/encoder_backed.js.map +1 -1
- package/dist/storage/file_system.cjs +12 -11
- package/dist/storage/file_system.cjs.map +1 -1
- package/dist/storage/file_system.d.cts +0 -1
- package/dist/storage/file_system.d.cts.map +1 -1
- package/dist/storage/file_system.d.ts +0 -1
- package/dist/storage/file_system.d.ts.map +1 -1
- package/dist/storage/file_system.js +5 -7
- package/dist/storage/file_system.js.map +1 -1
- package/dist/storage/in_memory.cjs +5 -5
- package/dist/storage/in_memory.js +2 -3
- package/dist/stores/doc/base.cjs +3 -3
- package/dist/stores/doc/base.cjs.map +1 -1
- package/dist/stores/doc/base.d.cts +0 -1
- package/dist/stores/doc/base.d.cts.map +1 -1
- package/dist/stores/doc/base.d.ts +0 -1
- package/dist/stores/doc/base.d.ts.map +1 -1
- package/dist/stores/doc/base.js +2 -3
- package/dist/stores/doc/base.js.map +1 -1
- package/dist/stores/doc/in_memory.cjs +3 -3
- package/dist/stores/doc/in_memory.cjs.map +1 -1
- package/dist/stores/doc/in_memory.d.cts +0 -1
- package/dist/stores/doc/in_memory.d.cts.map +1 -1
- package/dist/stores/doc/in_memory.d.ts +0 -1
- package/dist/stores/doc/in_memory.d.ts.map +1 -1
- package/dist/stores/doc/in_memory.js +2 -3
- package/dist/stores/doc/in_memory.js.map +1 -1
- package/dist/stores/file/base.cjs +3 -3
- package/dist/stores/file/base.cjs.map +1 -1
- package/dist/stores/file/base.d.cts +0 -1
- package/dist/stores/file/base.d.cts.map +1 -1
- package/dist/stores/file/base.d.ts +0 -1
- package/dist/stores/file/base.d.ts.map +1 -1
- package/dist/stores/file/base.js.map +1 -1
- package/dist/stores/file/in_memory.cjs +3 -3
- package/dist/stores/file/in_memory.cjs.map +1 -1
- package/dist/stores/file/in_memory.d.cts +0 -1
- package/dist/stores/file/in_memory.d.cts.map +1 -1
- package/dist/stores/file/in_memory.d.ts +0 -1
- package/dist/stores/file/in_memory.d.ts.map +1 -1
- package/dist/stores/file/in_memory.js +2 -3
- package/dist/stores/file/in_memory.js.map +1 -1
- package/dist/stores/file/node.cjs +7 -6
- package/dist/stores/file/node.cjs.map +1 -1
- package/dist/stores/file/node.d.cts +0 -1
- package/dist/stores/file/node.d.cts.map +1 -1
- package/dist/stores/file/node.d.ts +0 -1
- package/dist/stores/file/node.d.ts.map +1 -1
- package/dist/stores/file/node.js +6 -7
- package/dist/stores/file/node.js.map +1 -1
- package/dist/stores/message/in_memory.cjs +5 -5
- package/dist/stores/message/in_memory.js +2 -3
- package/dist/text_splitter.cjs +7 -6
- package/dist/text_splitter.d.cts +3 -2
- package/dist/text_splitter.d.cts.map +1 -1
- package/dist/text_splitter.d.ts +3 -2
- package/dist/text_splitter.d.ts.map +1 -1
- package/dist/text_splitter.js +4 -4
- package/dist/tools/chain.cjs +6 -6
- package/dist/tools/chain.cjs.map +1 -1
- package/dist/tools/chain.d.cts +0 -1
- package/dist/tools/chain.d.cts.map +1 -1
- package/dist/tools/chain.d.ts +0 -1
- package/dist/tools/chain.d.ts.map +1 -1
- package/dist/tools/chain.js +3 -4
- package/dist/tools/chain.js.map +1 -1
- package/dist/tools/fs.cjs +6 -6
- package/dist/tools/fs.cjs.map +1 -1
- package/dist/tools/fs.d.cts +0 -1
- package/dist/tools/fs.d.cts.map +1 -1
- package/dist/tools/fs.d.ts +0 -1
- package/dist/tools/fs.d.ts.map +1 -1
- package/dist/tools/fs.js +1 -1
- package/dist/tools/fs.js.map +1 -1
- package/dist/tools/index.cjs +13 -13
- package/dist/tools/index.js +2 -3
- package/dist/tools/json.cjs +10 -11
- package/dist/tools/json.cjs.map +1 -1
- package/dist/tools/json.d.cts.map +1 -1
- package/dist/tools/json.d.ts.map +1 -1
- package/dist/tools/json.js +2 -4
- package/dist/tools/json.js.map +1 -1
- package/dist/tools/render.cjs +9 -9
- package/dist/tools/render.cjs.map +1 -1
- package/dist/tools/render.d.cts +0 -1
- package/dist/tools/render.d.cts.map +1 -1
- package/dist/tools/render.d.ts +0 -1
- package/dist/tools/render.d.ts.map +1 -1
- package/dist/tools/render.js +2 -3
- package/dist/tools/render.js.map +1 -1
- package/dist/tools/requests.cjs +7 -11
- package/dist/tools/requests.cjs.map +1 -1
- package/dist/tools/requests.d.cts.map +1 -1
- package/dist/tools/requests.d.ts.map +1 -1
- package/dist/tools/requests.js +3 -7
- package/dist/tools/requests.js.map +1 -1
- package/dist/tools/retriever.cjs +7 -8
- package/dist/tools/retriever.cjs.map +1 -1
- package/dist/tools/retriever.d.cts.map +1 -1
- package/dist/tools/retriever.d.ts.map +1 -1
- package/dist/tools/retriever.js +3 -5
- package/dist/tools/retriever.js.map +1 -1
- package/dist/tools/sql.cjs +11 -12
- package/dist/tools/sql.cjs.map +1 -1
- package/dist/tools/sql.d.cts +0 -1
- package/dist/tools/sql.d.cts.map +1 -1
- package/dist/tools/sql.d.ts +0 -1
- package/dist/tools/sql.d.ts.map +1 -1
- package/dist/tools/sql.js +3 -5
- package/dist/tools/sql.js.map +1 -1
- package/dist/tools/vectorstore.cjs +3 -3
- package/dist/tools/vectorstore.cjs.map +1 -1
- package/dist/tools/vectorstore.d.cts +0 -1
- package/dist/tools/vectorstore.d.cts.map +1 -1
- package/dist/tools/vectorstore.d.ts +0 -1
- package/dist/tools/vectorstore.d.ts.map +1 -1
- package/dist/tools/vectorstore.js.map +1 -1
- package/dist/tools/webbrowser.cjs +18 -23
- package/dist/tools/webbrowser.cjs.map +1 -1
- package/dist/tools/webbrowser.d.cts.map +1 -1
- package/dist/tools/webbrowser.d.ts +1 -1
- package/dist/tools/webbrowser.d.ts.map +1 -1
- package/dist/tools/webbrowser.js +9 -16
- package/dist/tools/webbrowser.js.map +1 -1
- package/dist/types/expression-parser.d.cts.map +1 -1
- package/dist/types/expression-parser.d.ts.map +1 -1
- package/dist/types/type-utils.d.cts.map +1 -1
- package/dist/types/type-utils.d.ts.map +1 -1
- package/dist/util/document.cjs +3 -3
- package/dist/util/document.cjs.map +1 -1
- package/dist/util/document.d.cts +0 -1
- package/dist/util/document.d.cts.map +1 -1
- package/dist/util/document.d.ts +0 -1
- package/dist/util/document.d.ts.map +1 -1
- package/dist/util/document.js +2 -3
- package/dist/util/document.js.map +1 -1
- package/dist/util/entrypoint_deprecation.js +2 -0
- package/dist/util/env.cjs +2 -2
- package/dist/util/env.js +2 -0
- package/dist/util/extname.cjs.map +1 -1
- package/dist/util/extname.js.map +1 -1
- package/dist/util/hub.cjs +9 -11
- package/dist/util/hub.cjs.map +1 -1
- package/dist/util/hub.js +5 -7
- package/dist/util/hub.js.map +1 -1
- package/dist/util/is-network-error/index.cjs +2 -3
- package/dist/util/is-network-error/index.cjs.map +1 -1
- package/dist/util/is-network-error/index.js +2 -3
- package/dist/util/is-network-error/index.js.map +1 -1
- package/dist/util/load.cjs +1 -2
- package/dist/util/load.cjs.map +1 -1
- package/dist/util/load.d.cts.map +1 -1
- package/dist/util/load.d.ts.map +1 -1
- package/dist/util/load.js +1 -2
- package/dist/util/load.js.map +1 -1
- package/dist/util/math.cjs +7 -6
- package/dist/util/math.js +4 -4
- package/dist/util/ml-distance/distances.cjs.map +1 -1
- package/dist/util/ml-distance/distances.js.map +1 -1
- package/dist/util/ml-distance/similarities.cjs.map +1 -1
- package/dist/util/ml-distance/similarities.d.cts.map +1 -1
- package/dist/util/ml-distance/similarities.d.ts.map +1 -1
- package/dist/util/ml-distance/similarities.js.map +1 -1
- package/dist/util/ml-distance-euclidean/euclidean.cjs.map +1 -1
- package/dist/util/ml-distance-euclidean/euclidean.js.map +1 -1
- package/dist/util/openapi.cjs +6 -7
- package/dist/util/openapi.cjs.map +1 -1
- package/dist/util/openapi.d.cts.map +1 -1
- package/dist/util/openapi.d.ts.map +1 -1
- package/dist/util/openapi.js +3 -5
- package/dist/util/openapi.js.map +1 -1
- package/dist/util/p-retry/index.cjs +2 -2
- package/dist/util/p-retry/index.cjs.map +1 -1
- package/dist/util/p-retry/index.js +2 -2
- package/dist/util/p-retry/index.js.map +1 -1
- package/dist/util/parse.cjs +3 -2
- package/dist/util/parse.cjs.map +1 -1
- package/dist/util/parse.js.map +1 -1
- package/dist/util/set.cjs.map +1 -1
- package/dist/util/set.js.map +1 -1
- package/dist/util/sql_utils.cjs +16 -28
- package/dist/util/sql_utils.cjs.map +1 -1
- package/dist/util/sql_utils.d.cts.map +1 -1
- package/dist/util/sql_utils.d.ts.map +1 -1
- package/dist/util/sql_utils.js +16 -28
- package/dist/util/sql_utils.js.map +1 -1
- package/dist/util/time.cjs +3 -3
- package/dist/util/time.cjs.map +1 -1
- package/dist/util/time.d.cts.map +1 -1
- package/dist/util/time.d.ts.map +1 -1
- package/dist/util/time.js +2 -3
- package/dist/util/time.js.map +1 -1
- package/dist/vectorstores/memory.cjs +15 -22
- package/dist/vectorstores/memory.cjs.map +1 -1
- package/dist/vectorstores/memory.d.cts +0 -1
- package/dist/vectorstores/memory.d.cts.map +1 -1
- package/dist/vectorstores/memory.d.ts +0 -1
- package/dist/vectorstores/memory.d.ts.map +1 -1
- package/dist/vectorstores/memory.js +9 -17
- package/dist/vectorstores/memory.js.map +1 -1
- package/package.json +18 -18
- package/dist/_virtual/rolldown_runtime.js +0 -25
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.cjs","names":["Serializable","value: Record<string, unknown> | undefined","preparedOutputs: Record<string, unknown>","fields: AgentExecutorIteratorInput","e: any","CallbackManager","runManager?: CallbackManagerForChainRun","nextStepOutput: AgentFinish | AgentStep[]","output","output: Record<string, string | AgentStep[]>","Tool","query: string","BaseChain","input: AgentExecutorInput","agent: BaseSingleActionAgent | BaseMultiActionAgent","Runnable","AgentRunnableSequence","RunnableSingleActionAgent","RunnableMultiActionAgent","isRunnableAgent","fields: AgentExecutorInput","iterations: number","inputs: ChainValues","config?: RunnableConfig","steps: AgentStep[]","finishStep: AgentFinish","OutputParserException","actions: AgentAction[]","ToolInputParsingException","nameToolMap: Record<string, ToolInterface>","intermediateSteps: AgentStep[]","result: AgentStep[]","output: AgentFinish","finalOutput: Record<string, unknown>","nextStepOutput: AgentStep","earlyStoppingMethod: StoppingMethod","inputs: Record<string, any>","options?: Partial<RunnableConfig>"],"sources":["../../src/agents/executor.ts"],"sourcesContent":["import {\n type StructuredToolInterface,\n type ToolInterface,\n ToolInputParsingException,\n Tool,\n} from \"@langchain/core/tools\";\nimport {\n Runnable,\n type RunnableConfig,\n patchConfig,\n} from \"@langchain/core/runnables\";\nimport { AgentAction, AgentFinish, AgentStep } from \"@langchain/core/agents\";\nimport { ChainValues } from \"@langchain/core/utils/types\";\nimport {\n CallbackManager,\n CallbackManagerForChainRun,\n Callbacks,\n} from \"@langchain/core/callbacks/manager\";\nimport { OutputParserException } from \"@langchain/core/output_parsers\";\nimport { Serializable } from \"@langchain/core/load/serializable\";\nimport { SerializedLLMChain } from \"../chains/serde.js\";\nimport { StoppingMethod } from \"./types.js\";\nimport {\n AgentRunnableSequence,\n BaseMultiActionAgent,\n BaseSingleActionAgent,\n RunnableMultiActionAgent,\n RunnableSingleActionAgent,\n isRunnableAgent,\n} from \"./agent.js\";\nimport { BaseChain, ChainInputs } from \"../chains/base.js\";\n\ninterface AgentExecutorIteratorInput {\n agentExecutor: AgentExecutor;\n inputs: Record<string, string>;\n config?: RunnableConfig;\n /** @deprecated Use \"config\" */\n callbacks?: Callbacks;\n /** @deprecated Use \"config\" */\n tags?: string[];\n /** @deprecated Use \"config\" */\n metadata?: Record<string, unknown>;\n runName?: string;\n runManager?: CallbackManagerForChainRun;\n}\n\nexport class AgentExecutorIterator\n extends Serializable\n implements AgentExecutorIteratorInput\n{\n lc_namespace = [\"langchain\", \"agents\", \"executor_iterator\"];\n\n agentExecutor: AgentExecutor;\n\n inputs: Record<string, string>;\n\n config?: RunnableConfig;\n\n /** @deprecated Use \"config\" */\n callbacks?: Callbacks;\n\n /** @deprecated Use \"config\" */\n tags: string[] | undefined;\n\n /** @deprecated Use \"config\" */\n metadata: Record<string, unknown> | undefined;\n\n /** @deprecated Use \"config\" */\n runName: string | undefined;\n\n private _finalOutputs: Record<string, unknown> | undefined;\n\n get finalOutputs(): Record<string, unknown> | undefined {\n return this._finalOutputs;\n }\n\n /** Intended to be used as a setter method, needs to be async. */\n async setFinalOutputs(value: Record<string, unknown> | undefined) {\n this._finalOutputs = undefined;\n if (value) {\n const preparedOutputs: Record<string, unknown> =\n await this.agentExecutor.prepOutputs(this.inputs, value, true);\n this._finalOutputs = preparedOutputs;\n }\n }\n\n runManager: CallbackManagerForChainRun | undefined;\n\n intermediateSteps: AgentStep[] = [];\n\n iterations = 0;\n\n get nameToToolMap(): Record<string, ToolInterface> {\n const toolMap = this.agentExecutor.tools.map((tool) => ({\n [tool.name]: tool,\n }));\n return Object.assign({}, ...toolMap);\n }\n\n constructor(fields: AgentExecutorIteratorInput) {\n super(fields);\n this.agentExecutor = fields.agentExecutor;\n this.inputs = fields.inputs;\n this.callbacks = fields.callbacks;\n this.tags = fields.tags;\n this.metadata = fields.metadata;\n this.runName = fields.runName;\n this.runManager = fields.runManager;\n this.config = fields.config;\n }\n\n /**\n * Reset the iterator to its initial state, clearing intermediate steps,\n * iterations, and the final output.\n */\n reset(): void {\n this.intermediateSteps = [];\n this.iterations = 0;\n this._finalOutputs = undefined;\n }\n\n updateIterations(): void {\n this.iterations += 1;\n }\n\n async *streamIterator() {\n this.reset();\n\n // Loop to handle iteration\n while (true) {\n try {\n if (this.iterations === 0) {\n await this.onFirstStep();\n }\n\n const result = await this._callNext();\n yield result;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } catch (e: any) {\n if (\n \"message\" in e &&\n e.message.startsWith(\"Final outputs already reached: \")\n ) {\n if (!this.finalOutputs) {\n throw e;\n }\n return this.finalOutputs;\n }\n if (this.runManager) {\n await this.runManager.handleChainError(e);\n }\n throw e;\n }\n }\n }\n\n /**\n * Perform any necessary setup for the first step\n * of the asynchronous iterator.\n */\n async onFirstStep(): Promise<void> {\n if (this.iterations === 0) {\n const callbackManager = await CallbackManager.configure(\n this.callbacks ?? this.config?.callbacks,\n this.agentExecutor.callbacks,\n this.tags ?? this.config?.tags,\n this.agentExecutor.tags,\n this.metadata ?? this.config?.metadata,\n this.agentExecutor.metadata,\n {\n verbose: this.agentExecutor.verbose,\n }\n );\n this.runManager = await callbackManager?.handleChainStart(\n this.agentExecutor.toJSON(),\n this.inputs,\n this.config?.runId,\n undefined,\n this.tags ?? this.config?.tags,\n this.metadata ?? this.config?.metadata,\n this.runName ?? this.config?.runName\n );\n if (this.config !== undefined) {\n delete this.config.runId;\n }\n }\n }\n\n /**\n * Execute the next step in the chain using the\n * AgentExecutor's _takeNextStep method.\n */\n async _executeNextStep(\n runManager?: CallbackManagerForChainRun\n ): Promise<AgentFinish | AgentStep[]> {\n return this.agentExecutor._takeNextStep(\n this.nameToToolMap,\n this.inputs,\n this.intermediateSteps,\n runManager,\n this.config\n );\n }\n\n /**\n * Process the output of the next step,\n * handling AgentFinish and tool return cases.\n */\n async _processNextStepOutput(\n nextStepOutput: AgentFinish | AgentStep[],\n runManager?: CallbackManagerForChainRun\n ): Promise<Record<string, string | AgentStep[]>> {\n if (\"returnValues\" in nextStepOutput) {\n const output = await this.agentExecutor._return(\n nextStepOutput as AgentFinish,\n this.intermediateSteps,\n runManager\n );\n if (this.runManager) {\n await this.runManager.handleChainEnd(output);\n }\n await this.setFinalOutputs(output);\n return output;\n }\n\n this.intermediateSteps = this.intermediateSteps.concat(\n nextStepOutput as AgentStep[]\n );\n\n let output: Record<string, string | AgentStep[]> = {};\n if (Array.isArray(nextStepOutput) && nextStepOutput.length === 1) {\n const nextStep = nextStepOutput[0];\n const toolReturn = await this.agentExecutor._getToolReturn(nextStep);\n if (toolReturn) {\n output = await this.agentExecutor._return(\n toolReturn,\n this.intermediateSteps,\n runManager\n );\n await this.runManager?.handleChainEnd(output);\n await this.setFinalOutputs(output);\n }\n }\n output = { intermediateSteps: nextStepOutput as AgentStep[] };\n return output;\n }\n\n async _stop(): Promise<Record<string, unknown>> {\n const output = await this.agentExecutor.agent.returnStoppedResponse(\n this.agentExecutor.earlyStoppingMethod,\n this.intermediateSteps,\n this.inputs\n );\n const returnedOutput = await this.agentExecutor._return(\n output,\n this.intermediateSteps,\n this.runManager\n );\n await this.setFinalOutputs(returnedOutput);\n await this.runManager?.handleChainEnd(returnedOutput);\n return returnedOutput;\n }\n\n async _callNext(): Promise<Record<string, unknown>> {\n // final output already reached: stopiteration (final output)\n if (this.finalOutputs) {\n throw new Error(\n `Final outputs already reached: ${JSON.stringify(\n this.finalOutputs,\n null,\n 2\n )}`\n );\n }\n // timeout/max iterations: stopiteration (stopped response)\n if (!this.agentExecutor.shouldContinueGetter(this.iterations)) {\n return this._stop();\n }\n const nextStepOutput = await this._executeNextStep(this.runManager);\n const output = await this._processNextStepOutput(\n nextStepOutput,\n this.runManager\n );\n this.updateIterations();\n return output;\n }\n}\n\ntype ExtractToolType<T> = T extends { ToolType: infer ToolInterface }\n ? ToolInterface\n : StructuredToolInterface;\n\n/**\n * Interface defining the structure of input data for creating an\n * AgentExecutor. It extends ChainInputs and includes additional\n * properties specific to agent execution.\n */\nexport interface AgentExecutorInput extends ChainInputs {\n agent:\n | BaseSingleActionAgent\n | BaseMultiActionAgent\n | Runnable<\n ChainValues & { steps?: AgentStep[] },\n AgentAction[] | AgentAction | AgentFinish\n >;\n tools: ExtractToolType<this[\"agent\"]>[];\n returnIntermediateSteps?: boolean;\n maxIterations?: number;\n earlyStoppingMethod?: StoppingMethod;\n handleParsingErrors?:\n | boolean\n | string\n | ((e: OutputParserException | ToolInputParsingException) => string);\n handleToolRuntimeErrors?: (e: Error) => string;\n}\n\n// TODO: Type properly with { intermediateSteps?: AgentStep[] };\nexport type AgentExecutorOutput = ChainValues;\n\n/**\n * Tool that just returns the query.\n * Used for exception tracking.\n */\nexport class ExceptionTool extends Tool {\n name = \"_Exception\";\n\n description = \"Exception tool\";\n\n async _call(query: string) {\n return query;\n }\n}\n\n/**\n * A chain managing an agent using tools.\n * @augments BaseChain\n * @example\n * ```typescript\n *\n * const executor = AgentExecutor.fromAgentAndTools({\n * agent: async () => loadAgentFromLangchainHub(),\n * tools: [new SerpAPI(), new Calculator()],\n * returnIntermediateSteps: true,\n * });\n *\n * const result = await executor.invoke({\n * input: `Who is Olivia Wilde's boyfriend? What is his current age raised to the 0.23 power?`,\n * });\n *\n * ```\n */\nexport class AgentExecutor extends BaseChain<ChainValues, AgentExecutorOutput> {\n static lc_name() {\n return \"AgentExecutor\";\n }\n\n get lc_namespace() {\n return [\"langchain\", \"agents\", \"executor\"];\n }\n\n agent: BaseSingleActionAgent | BaseMultiActionAgent;\n\n tools: this[\"agent\"][\"ToolType\"][];\n\n returnIntermediateSteps = false;\n\n maxIterations?: number = 15;\n\n earlyStoppingMethod: StoppingMethod = \"force\";\n\n // TODO: Update BaseChain implementation on breaking change to include this\n returnOnlyOutputs = true;\n\n /**\n * How to handle errors raised by the agent's output parser.\n Defaults to `False`, which raises the error.\n\n If `true`, the error will be sent back to the LLM as an observation.\n If a string, the string itself will be sent to the LLM as an observation.\n If a callable function, the function will be called with the exception\n as an argument, and the result of that function will be passed to the agent\n as an observation.\n */\n handleParsingErrors:\n | boolean\n | string\n | ((e: OutputParserException | ToolInputParsingException) => string) =\n false;\n\n handleToolRuntimeErrors?: (e: Error) => string;\n\n get inputKeys() {\n return this.agent.inputKeys;\n }\n\n get outputKeys() {\n return this.agent.returnValues;\n }\n\n constructor(input: AgentExecutorInput) {\n let agent: BaseSingleActionAgent | BaseMultiActionAgent;\n let returnOnlyOutputs = true;\n if (Runnable.isRunnable(input.agent)) {\n if (AgentRunnableSequence.isAgentRunnableSequence(input.agent)) {\n if (input.agent.singleAction) {\n agent = new RunnableSingleActionAgent({\n runnable: input.agent,\n streamRunnable: input.agent.streamRunnable,\n });\n } else {\n agent = new RunnableMultiActionAgent({\n runnable: input.agent,\n streamRunnable: input.agent.streamRunnable,\n });\n }\n } else {\n agent = new RunnableMultiActionAgent({ runnable: input.agent });\n }\n // TODO: Update BaseChain implementation on breaking change\n returnOnlyOutputs = false;\n } else {\n if (isRunnableAgent(input.agent)) {\n returnOnlyOutputs = false;\n }\n agent = input.agent;\n }\n\n super(input);\n this.agent = agent;\n this.tools = input.tools;\n this.handleParsingErrors =\n input.handleParsingErrors ?? this.handleParsingErrors;\n this.handleToolRuntimeErrors = input.handleToolRuntimeErrors;\n this.returnOnlyOutputs = returnOnlyOutputs;\n if (this.agent._agentActionType() === \"multi\") {\n for (const tool of this.tools) {\n if (tool.returnDirect) {\n throw new Error(\n `Tool with return direct ${tool.name} not supported for multi-action agent.`\n );\n }\n }\n }\n this.returnIntermediateSteps =\n input.returnIntermediateSteps ?? this.returnIntermediateSteps;\n this.maxIterations = input.maxIterations ?? this.maxIterations;\n this.earlyStoppingMethod =\n input.earlyStoppingMethod ?? this.earlyStoppingMethod;\n }\n\n /** Create from agent and a list of tools. */\n static fromAgentAndTools(fields: AgentExecutorInput): AgentExecutor {\n return new AgentExecutor(fields);\n }\n\n get shouldContinueGetter() {\n return this.shouldContinue.bind(this);\n }\n\n /**\n * Method that checks if the agent execution should continue based on the\n * number of iterations.\n * @param iterations The current number of iterations.\n * @returns A boolean indicating whether the agent execution should continue.\n */\n private shouldContinue(iterations: number): boolean {\n return this.maxIterations === undefined || iterations < this.maxIterations;\n }\n\n /** @ignore */\n async _call(\n inputs: ChainValues,\n runManager?: CallbackManagerForChainRun,\n config?: RunnableConfig\n ): Promise<AgentExecutorOutput> {\n const toolsByName = Object.fromEntries(\n this.tools.map((t) => [t.name.toLowerCase(), t])\n );\n const steps: AgentStep[] = [];\n let iterations = 0;\n\n const getOutput = async (\n finishStep: AgentFinish\n ): Promise<AgentExecutorOutput> => {\n const { returnValues } = finishStep;\n const additional = await this.agent.prepareForOutput(returnValues, steps);\n\n await runManager?.handleAgentEnd(finishStep);\n\n let response;\n\n if (this.returnIntermediateSteps) {\n response = { ...returnValues, intermediateSteps: steps, ...additional };\n } else {\n response = { ...returnValues, ...additional };\n }\n if (!this.returnOnlyOutputs) {\n response = { ...inputs, ...response };\n }\n return response;\n };\n\n while (this.shouldContinue(iterations)) {\n let output;\n try {\n output = await this.agent.plan(\n steps,\n inputs,\n runManager?.getChild(),\n config\n );\n } catch (e) {\n // eslint-disable-next-line no-instanceof/no-instanceof\n if (e instanceof OutputParserException) {\n let observation;\n let text = e.message;\n if (this.handleParsingErrors === true) {\n if (e.sendToLLM) {\n observation = e.observation;\n text = e.llmOutput ?? \"\";\n } else {\n observation = \"Invalid or incomplete response\";\n }\n } else if (typeof this.handleParsingErrors === \"string\") {\n observation = this.handleParsingErrors;\n } else if (typeof this.handleParsingErrors === \"function\") {\n observation = this.handleParsingErrors(e);\n } else {\n throw e;\n }\n output = {\n tool: \"_Exception\",\n toolInput: observation,\n log: text,\n } as AgentAction;\n } else {\n throw e;\n }\n }\n // Check if the agent has finished\n if (\"returnValues\" in output) {\n return getOutput(output);\n }\n\n let actions: AgentAction[];\n if (Array.isArray(output)) {\n actions = output as AgentAction[];\n } else {\n actions = [output as AgentAction];\n }\n\n const newSteps = await Promise.all(\n actions.map(async (action) => {\n await runManager?.handleAgentAction(action);\n const tool =\n action.tool === \"_Exception\"\n ? new ExceptionTool()\n : toolsByName[action.tool?.toLowerCase()];\n let observation;\n try {\n observation = tool\n ? await tool.invoke(\n action.toolInput,\n patchConfig(config, { callbacks: runManager?.getChild() })\n )\n : `${action.tool} is not a valid tool, try another one.`;\n if (typeof observation !== \"string\") {\n throw new Error(\n \"Received unsupported non-string response from tool call.\"\n );\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } catch (e: any) {\n // eslint-disable-next-line no-instanceof/no-instanceof\n if (e instanceof ToolInputParsingException) {\n if (this.handleParsingErrors === true) {\n observation =\n \"Invalid or incomplete tool input. Please try again.\";\n } else if (typeof this.handleParsingErrors === \"string\") {\n observation = this.handleParsingErrors;\n } else if (typeof this.handleParsingErrors === \"function\") {\n observation = this.handleParsingErrors(e);\n } else {\n throw e;\n }\n observation = await new ExceptionTool().call(\n observation,\n runManager?.getChild()\n );\n return { action, observation: observation ?? \"\" };\n } else if (this.handleToolRuntimeErrors !== undefined) {\n observation = this.handleToolRuntimeErrors(e);\n }\n }\n\n return { action, observation: observation ?? \"\" };\n })\n );\n\n steps.push(...newSteps);\n\n const lastStep = steps[steps.length - 1];\n const lastTool = toolsByName[lastStep.action.tool?.toLowerCase()];\n\n if (lastTool?.returnDirect) {\n return getOutput({\n returnValues: { [this.agent.returnValues[0]]: lastStep.observation },\n log: \"\",\n });\n }\n\n iterations += 1;\n }\n\n const finish = await this.agent.returnStoppedResponse(\n this.earlyStoppingMethod,\n steps,\n inputs\n );\n\n return getOutput(finish);\n }\n\n async _takeNextStep(\n nameToolMap: Record<string, ToolInterface>,\n inputs: ChainValues,\n intermediateSteps: AgentStep[],\n runManager?: CallbackManagerForChainRun,\n config?: RunnableConfig\n ): Promise<AgentFinish | AgentStep[]> {\n let output;\n try {\n output = await this.agent.plan(\n intermediateSteps,\n inputs,\n runManager?.getChild(),\n config\n );\n } catch (e) {\n // eslint-disable-next-line no-instanceof/no-instanceof\n if (e instanceof OutputParserException) {\n let observation;\n let text = e.message;\n if (this.handleParsingErrors === true) {\n if (e.sendToLLM) {\n observation = e.observation;\n text = e.llmOutput ?? \"\";\n } else {\n observation = \"Invalid or incomplete response\";\n }\n } else if (typeof this.handleParsingErrors === \"string\") {\n observation = this.handleParsingErrors;\n } else if (typeof this.handleParsingErrors === \"function\") {\n observation = this.handleParsingErrors(e);\n } else {\n throw e;\n }\n output = {\n tool: \"_Exception\",\n toolInput: observation,\n log: text,\n } as AgentAction;\n } else {\n throw e;\n }\n }\n\n if (\"returnValues\" in output) {\n return output;\n }\n\n let actions: AgentAction[];\n if (Array.isArray(output)) {\n actions = output as AgentAction[];\n } else {\n actions = [output as AgentAction];\n }\n\n const result: AgentStep[] = [];\n for (const agentAction of actions) {\n let observation = \"\";\n if (runManager) {\n await runManager?.handleAgentAction(agentAction);\n }\n if (agentAction.tool in nameToolMap) {\n const tool = nameToolMap[agentAction.tool];\n try {\n observation = await tool.call(\n agentAction.toolInput,\n runManager?.getChild()\n );\n if (typeof observation !== \"string\") {\n throw new Error(\n \"Received unsupported non-string response from tool call.\"\n );\n }\n } catch (e) {\n // eslint-disable-next-line no-instanceof/no-instanceof\n if (e instanceof ToolInputParsingException) {\n if (this.handleParsingErrors === true) {\n observation =\n \"Invalid or incomplete tool input. Please try again.\";\n } else if (typeof this.handleParsingErrors === \"string\") {\n observation = this.handleParsingErrors;\n } else if (typeof this.handleParsingErrors === \"function\") {\n observation = this.handleParsingErrors(e);\n } else {\n throw e;\n }\n observation = await new ExceptionTool().call(\n observation,\n runManager?.getChild()\n );\n }\n }\n } else {\n observation = `${\n agentAction.tool\n } is not a valid tool, try another available tool: ${Object.keys(\n nameToolMap\n ).join(\", \")}`;\n }\n result.push({\n action: agentAction,\n observation,\n });\n }\n return result;\n }\n\n async _return(\n output: AgentFinish,\n intermediateSteps: AgentStep[],\n runManager?: CallbackManagerForChainRun\n ): Promise<AgentExecutorOutput> {\n if (runManager) {\n await runManager.handleAgentEnd(output);\n }\n const finalOutput: Record<string, unknown> = output.returnValues;\n if (this.returnIntermediateSteps) {\n finalOutput.intermediateSteps = intermediateSteps;\n }\n return finalOutput;\n }\n\n async _getToolReturn(nextStepOutput: AgentStep): Promise<AgentFinish | null> {\n const { action, observation } = nextStepOutput;\n const nameToolMap = Object.fromEntries(\n this.tools.map((t) => [t.name.toLowerCase(), t])\n );\n const [returnValueKey = \"output\"] = this.agent.returnValues;\n // Invalid tools won't be in the map, so we return False.\n if (action.tool in nameToolMap) {\n if (nameToolMap[action.tool].returnDirect) {\n return {\n returnValues: { [returnValueKey]: observation },\n log: \"\",\n };\n }\n }\n return null;\n }\n\n _returnStoppedResponse(earlyStoppingMethod: StoppingMethod) {\n if (earlyStoppingMethod === \"force\") {\n return {\n returnValues: {\n output: \"Agent stopped due to iteration limit or time limit.\",\n },\n log: \"\",\n } as AgentFinish;\n }\n throw new Error(\n `Got unsupported early_stopping_method: ${earlyStoppingMethod}`\n );\n }\n\n async *_streamIterator(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n inputs: Record<string, any>,\n options?: Partial<RunnableConfig>\n ): AsyncGenerator<ChainValues> {\n const agentExecutorIterator = new AgentExecutorIterator({\n inputs,\n agentExecutor: this,\n config: options,\n // TODO: Deprecate these other parameters\n metadata: options?.metadata,\n tags: options?.tags,\n callbacks: options?.callbacks,\n });\n const iterator = agentExecutorIterator.streamIterator();\n for await (const step of iterator) {\n if (!step) {\n continue;\n }\n yield step;\n }\n }\n\n _chainType() {\n return \"agent_executor\" as const;\n }\n\n serialize(): SerializedLLMChain {\n throw new Error(\"Cannot serialize an AgentExecutor\");\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"executor.cjs","names":["Serializable","CallbackManager","Tool","BaseChain","Runnable","AgentRunnableSequence","RunnableSingleActionAgent","RunnableMultiActionAgent","isRunnableAgent","OutputParserException","ToolInputParsingException"],"sources":["../../src/agents/executor.ts"],"sourcesContent":["import {\n type StructuredToolInterface,\n type ToolInterface,\n ToolInputParsingException,\n Tool,\n} from \"@langchain/core/tools\";\nimport {\n Runnable,\n type RunnableConfig,\n patchConfig,\n} from \"@langchain/core/runnables\";\nimport { AgentAction, AgentFinish, AgentStep } from \"@langchain/core/agents\";\nimport { ChainValues } from \"@langchain/core/utils/types\";\nimport {\n CallbackManager,\n CallbackManagerForChainRun,\n Callbacks,\n} from \"@langchain/core/callbacks/manager\";\nimport { OutputParserException } from \"@langchain/core/output_parsers\";\nimport { Serializable } from \"@langchain/core/load/serializable\";\nimport { SerializedLLMChain } from \"../chains/serde.js\";\nimport { StoppingMethod } from \"./types.js\";\nimport {\n AgentRunnableSequence,\n BaseMultiActionAgent,\n BaseSingleActionAgent,\n RunnableMultiActionAgent,\n RunnableSingleActionAgent,\n isRunnableAgent,\n} from \"./agent.js\";\nimport { BaseChain, ChainInputs } from \"../chains/base.js\";\n\ninterface AgentExecutorIteratorInput {\n agentExecutor: AgentExecutor;\n inputs: Record<string, string>;\n config?: RunnableConfig;\n /** @deprecated Use \"config\" */\n callbacks?: Callbacks;\n /** @deprecated Use \"config\" */\n tags?: string[];\n /** @deprecated Use \"config\" */\n metadata?: Record<string, unknown>;\n runName?: string;\n runManager?: CallbackManagerForChainRun;\n}\n\nexport class AgentExecutorIterator\n extends Serializable\n implements AgentExecutorIteratorInput\n{\n lc_namespace = [\"langchain\", \"agents\", \"executor_iterator\"];\n\n agentExecutor: AgentExecutor;\n\n inputs: Record<string, string>;\n\n config?: RunnableConfig;\n\n /** @deprecated Use \"config\" */\n callbacks?: Callbacks;\n\n /** @deprecated Use \"config\" */\n tags: string[] | undefined;\n\n /** @deprecated Use \"config\" */\n metadata: Record<string, unknown> | undefined;\n\n /** @deprecated Use \"config\" */\n runName: string | undefined;\n\n private _finalOutputs: Record<string, unknown> | undefined;\n\n get finalOutputs(): Record<string, unknown> | undefined {\n return this._finalOutputs;\n }\n\n /** Intended to be used as a setter method, needs to be async. */\n async setFinalOutputs(value: Record<string, unknown> | undefined) {\n this._finalOutputs = undefined;\n if (value) {\n const preparedOutputs: Record<string, unknown> =\n await this.agentExecutor.prepOutputs(this.inputs, value, true);\n this._finalOutputs = preparedOutputs;\n }\n }\n\n runManager: CallbackManagerForChainRun | undefined;\n\n intermediateSteps: AgentStep[] = [];\n\n iterations = 0;\n\n get nameToToolMap(): Record<string, ToolInterface> {\n const toolMap = this.agentExecutor.tools.map((tool) => ({\n [tool.name]: tool,\n }));\n return Object.assign({}, ...toolMap);\n }\n\n constructor(fields: AgentExecutorIteratorInput) {\n super(fields);\n this.agentExecutor = fields.agentExecutor;\n this.inputs = fields.inputs;\n this.callbacks = fields.callbacks;\n this.tags = fields.tags;\n this.metadata = fields.metadata;\n this.runName = fields.runName;\n this.runManager = fields.runManager;\n this.config = fields.config;\n }\n\n /**\n * Reset the iterator to its initial state, clearing intermediate steps,\n * iterations, and the final output.\n */\n reset(): void {\n this.intermediateSteps = [];\n this.iterations = 0;\n this._finalOutputs = undefined;\n }\n\n updateIterations(): void {\n this.iterations += 1;\n }\n\n async *streamIterator() {\n this.reset();\n\n // Loop to handle iteration\n while (true) {\n try {\n if (this.iterations === 0) {\n await this.onFirstStep();\n }\n\n const result = await this._callNext();\n yield result;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } catch (e: any) {\n if (\n \"message\" in e &&\n e.message.startsWith(\"Final outputs already reached: \")\n ) {\n if (!this.finalOutputs) {\n throw e;\n }\n return this.finalOutputs;\n }\n if (this.runManager) {\n await this.runManager.handleChainError(e);\n }\n throw e;\n }\n }\n }\n\n /**\n * Perform any necessary setup for the first step\n * of the asynchronous iterator.\n */\n async onFirstStep(): Promise<void> {\n if (this.iterations === 0) {\n const callbackManager = await CallbackManager.configure(\n this.callbacks ?? this.config?.callbacks,\n this.agentExecutor.callbacks,\n this.tags ?? this.config?.tags,\n this.agentExecutor.tags,\n this.metadata ?? this.config?.metadata,\n this.agentExecutor.metadata,\n {\n verbose: this.agentExecutor.verbose,\n }\n );\n this.runManager = await callbackManager?.handleChainStart(\n this.agentExecutor.toJSON(),\n this.inputs,\n this.config?.runId,\n undefined,\n this.tags ?? this.config?.tags,\n this.metadata ?? this.config?.metadata,\n this.runName ?? this.config?.runName\n );\n if (this.config !== undefined) {\n delete this.config.runId;\n }\n }\n }\n\n /**\n * Execute the next step in the chain using the\n * AgentExecutor's _takeNextStep method.\n */\n async _executeNextStep(\n runManager?: CallbackManagerForChainRun\n ): Promise<AgentFinish | AgentStep[]> {\n return this.agentExecutor._takeNextStep(\n this.nameToToolMap,\n this.inputs,\n this.intermediateSteps,\n runManager,\n this.config\n );\n }\n\n /**\n * Process the output of the next step,\n * handling AgentFinish and tool return cases.\n */\n async _processNextStepOutput(\n nextStepOutput: AgentFinish | AgentStep[],\n runManager?: CallbackManagerForChainRun\n ): Promise<Record<string, string | AgentStep[]>> {\n if (\"returnValues\" in nextStepOutput) {\n const output = await this.agentExecutor._return(\n nextStepOutput as AgentFinish,\n this.intermediateSteps,\n runManager\n );\n if (this.runManager) {\n await this.runManager.handleChainEnd(output);\n }\n await this.setFinalOutputs(output);\n return output;\n }\n\n this.intermediateSteps = this.intermediateSteps.concat(\n nextStepOutput as AgentStep[]\n );\n\n let output: Record<string, string | AgentStep[]> = {};\n if (Array.isArray(nextStepOutput) && nextStepOutput.length === 1) {\n const nextStep = nextStepOutput[0];\n const toolReturn = await this.agentExecutor._getToolReturn(nextStep);\n if (toolReturn) {\n output = await this.agentExecutor._return(\n toolReturn,\n this.intermediateSteps,\n runManager\n );\n await this.runManager?.handleChainEnd(output);\n await this.setFinalOutputs(output);\n }\n }\n output = { intermediateSteps: nextStepOutput as AgentStep[] };\n return output;\n }\n\n async _stop(): Promise<Record<string, unknown>> {\n const output = await this.agentExecutor.agent.returnStoppedResponse(\n this.agentExecutor.earlyStoppingMethod,\n this.intermediateSteps,\n this.inputs\n );\n const returnedOutput = await this.agentExecutor._return(\n output,\n this.intermediateSteps,\n this.runManager\n );\n await this.setFinalOutputs(returnedOutput);\n await this.runManager?.handleChainEnd(returnedOutput);\n return returnedOutput;\n }\n\n async _callNext(): Promise<Record<string, unknown>> {\n // final output already reached: stopiteration (final output)\n if (this.finalOutputs) {\n throw new Error(\n `Final outputs already reached: ${JSON.stringify(\n this.finalOutputs,\n null,\n 2\n )}`\n );\n }\n // timeout/max iterations: stopiteration (stopped response)\n if (!this.agentExecutor.shouldContinueGetter(this.iterations)) {\n return this._stop();\n }\n const nextStepOutput = await this._executeNextStep(this.runManager);\n const output = await this._processNextStepOutput(\n nextStepOutput,\n this.runManager\n );\n this.updateIterations();\n return output;\n }\n}\n\ntype ExtractToolType<T> = T extends { ToolType: infer ToolInterface }\n ? ToolInterface\n : StructuredToolInterface;\n\n/**\n * Interface defining the structure of input data for creating an\n * AgentExecutor. It extends ChainInputs and includes additional\n * properties specific to agent execution.\n */\nexport interface AgentExecutorInput extends ChainInputs {\n agent:\n | BaseSingleActionAgent\n | BaseMultiActionAgent\n | Runnable<\n ChainValues & { steps?: AgentStep[] },\n AgentAction[] | AgentAction | AgentFinish\n >;\n tools: ExtractToolType<this[\"agent\"]>[];\n returnIntermediateSteps?: boolean;\n maxIterations?: number;\n earlyStoppingMethod?: StoppingMethod;\n handleParsingErrors?:\n | boolean\n | string\n | ((e: OutputParserException | ToolInputParsingException) => string);\n handleToolRuntimeErrors?: (e: Error) => string;\n}\n\n// TODO: Type properly with { intermediateSteps?: AgentStep[] };\nexport type AgentExecutorOutput = ChainValues;\n\n/**\n * Tool that just returns the query.\n * Used for exception tracking.\n */\nexport class ExceptionTool extends Tool {\n name = \"_Exception\";\n\n description = \"Exception tool\";\n\n async _call(query: string) {\n return query;\n }\n}\n\n/**\n * A chain managing an agent using tools.\n * @augments BaseChain\n * @example\n * ```typescript\n *\n * const executor = AgentExecutor.fromAgentAndTools({\n * agent: async () => loadAgentFromLangchainHub(),\n * tools: [new SerpAPI(), new Calculator()],\n * returnIntermediateSteps: true,\n * });\n *\n * const result = await executor.invoke({\n * input: `Who is Olivia Wilde's boyfriend? What is his current age raised to the 0.23 power?`,\n * });\n *\n * ```\n */\nexport class AgentExecutor extends BaseChain<ChainValues, AgentExecutorOutput> {\n static lc_name() {\n return \"AgentExecutor\";\n }\n\n get lc_namespace() {\n return [\"langchain\", \"agents\", \"executor\"];\n }\n\n agent: BaseSingleActionAgent | BaseMultiActionAgent;\n\n tools: this[\"agent\"][\"ToolType\"][];\n\n returnIntermediateSteps = false;\n\n maxIterations?: number = 15;\n\n earlyStoppingMethod: StoppingMethod = \"force\";\n\n // TODO: Update BaseChain implementation on breaking change to include this\n returnOnlyOutputs = true;\n\n /**\n * How to handle errors raised by the agent's output parser.\n Defaults to `False`, which raises the error.\n\n If `true`, the error will be sent back to the LLM as an observation.\n If a string, the string itself will be sent to the LLM as an observation.\n If a callable function, the function will be called with the exception\n as an argument, and the result of that function will be passed to the agent\n as an observation.\n */\n handleParsingErrors:\n | boolean\n | string\n | ((e: OutputParserException | ToolInputParsingException) => string) =\n false;\n\n handleToolRuntimeErrors?: (e: Error) => string;\n\n get inputKeys() {\n return this.agent.inputKeys;\n }\n\n get outputKeys() {\n return this.agent.returnValues;\n }\n\n constructor(input: AgentExecutorInput) {\n let agent: BaseSingleActionAgent | BaseMultiActionAgent;\n let returnOnlyOutputs = true;\n if (Runnable.isRunnable(input.agent)) {\n if (AgentRunnableSequence.isAgentRunnableSequence(input.agent)) {\n if (input.agent.singleAction) {\n agent = new RunnableSingleActionAgent({\n runnable: input.agent,\n streamRunnable: input.agent.streamRunnable,\n });\n } else {\n agent = new RunnableMultiActionAgent({\n runnable: input.agent,\n streamRunnable: input.agent.streamRunnable,\n });\n }\n } else {\n agent = new RunnableMultiActionAgent({ runnable: input.agent });\n }\n // TODO: Update BaseChain implementation on breaking change\n returnOnlyOutputs = false;\n } else {\n if (isRunnableAgent(input.agent)) {\n returnOnlyOutputs = false;\n }\n agent = input.agent;\n }\n\n super(input);\n this.agent = agent;\n this.tools = input.tools;\n this.handleParsingErrors =\n input.handleParsingErrors ?? this.handleParsingErrors;\n this.handleToolRuntimeErrors = input.handleToolRuntimeErrors;\n this.returnOnlyOutputs = returnOnlyOutputs;\n if (this.agent._agentActionType() === \"multi\") {\n for (const tool of this.tools) {\n if (tool.returnDirect) {\n throw new Error(\n `Tool with return direct ${tool.name} not supported for multi-action agent.`\n );\n }\n }\n }\n this.returnIntermediateSteps =\n input.returnIntermediateSteps ?? this.returnIntermediateSteps;\n this.maxIterations = input.maxIterations ?? this.maxIterations;\n this.earlyStoppingMethod =\n input.earlyStoppingMethod ?? this.earlyStoppingMethod;\n }\n\n /** Create from agent and a list of tools. */\n static fromAgentAndTools(fields: AgentExecutorInput): AgentExecutor {\n return new AgentExecutor(fields);\n }\n\n get shouldContinueGetter() {\n return this.shouldContinue.bind(this);\n }\n\n /**\n * Method that checks if the agent execution should continue based on the\n * number of iterations.\n * @param iterations The current number of iterations.\n * @returns A boolean indicating whether the agent execution should continue.\n */\n private shouldContinue(iterations: number): boolean {\n return this.maxIterations === undefined || iterations < this.maxIterations;\n }\n\n /** @ignore */\n async _call(\n inputs: ChainValues,\n runManager?: CallbackManagerForChainRun,\n config?: RunnableConfig\n ): Promise<AgentExecutorOutput> {\n const toolsByName = Object.fromEntries(\n this.tools.map((t) => [t.name.toLowerCase(), t])\n );\n const steps: AgentStep[] = [];\n let iterations = 0;\n\n const getOutput = async (\n finishStep: AgentFinish\n ): Promise<AgentExecutorOutput> => {\n const { returnValues } = finishStep;\n const additional = await this.agent.prepareForOutput(returnValues, steps);\n\n await runManager?.handleAgentEnd(finishStep);\n\n let response;\n\n if (this.returnIntermediateSteps) {\n response = { ...returnValues, intermediateSteps: steps, ...additional };\n } else {\n response = { ...returnValues, ...additional };\n }\n if (!this.returnOnlyOutputs) {\n response = { ...inputs, ...response };\n }\n return response;\n };\n\n while (this.shouldContinue(iterations)) {\n let output;\n try {\n output = await this.agent.plan(\n steps,\n inputs,\n runManager?.getChild(),\n config\n );\n } catch (e) {\n // eslint-disable-next-line no-instanceof/no-instanceof\n if (e instanceof OutputParserException) {\n let observation;\n let text = e.message;\n if (this.handleParsingErrors === true) {\n if (e.sendToLLM) {\n observation = e.observation;\n text = e.llmOutput ?? \"\";\n } else {\n observation = \"Invalid or incomplete response\";\n }\n } else if (typeof this.handleParsingErrors === \"string\") {\n observation = this.handleParsingErrors;\n } else if (typeof this.handleParsingErrors === \"function\") {\n observation = this.handleParsingErrors(e);\n } else {\n throw e;\n }\n output = {\n tool: \"_Exception\",\n toolInput: observation,\n log: text,\n } as AgentAction;\n } else {\n throw e;\n }\n }\n // Check if the agent has finished\n if (\"returnValues\" in output) {\n return getOutput(output);\n }\n\n let actions: AgentAction[];\n if (Array.isArray(output)) {\n actions = output as AgentAction[];\n } else {\n actions = [output as AgentAction];\n }\n\n const newSteps = await Promise.all(\n actions.map(async (action) => {\n await runManager?.handleAgentAction(action);\n const tool =\n action.tool === \"_Exception\"\n ? new ExceptionTool()\n : toolsByName[action.tool?.toLowerCase()];\n let observation;\n try {\n observation = tool\n ? await tool.invoke(\n action.toolInput,\n patchConfig(config, { callbacks: runManager?.getChild() })\n )\n : `${action.tool} is not a valid tool, try another one.`;\n if (typeof observation !== \"string\") {\n throw new Error(\n \"Received unsupported non-string response from tool call.\"\n );\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } catch (e: any) {\n // eslint-disable-next-line no-instanceof/no-instanceof\n if (e instanceof ToolInputParsingException) {\n if (this.handleParsingErrors === true) {\n observation =\n \"Invalid or incomplete tool input. Please try again.\";\n } else if (typeof this.handleParsingErrors === \"string\") {\n observation = this.handleParsingErrors;\n } else if (typeof this.handleParsingErrors === \"function\") {\n observation = this.handleParsingErrors(e);\n } else {\n throw e;\n }\n observation = await new ExceptionTool().call(\n observation,\n runManager?.getChild()\n );\n return { action, observation: observation ?? \"\" };\n } else if (this.handleToolRuntimeErrors !== undefined) {\n observation = this.handleToolRuntimeErrors(e);\n }\n }\n\n return { action, observation: observation ?? \"\" };\n })\n );\n\n steps.push(...newSteps);\n\n const lastStep = steps[steps.length - 1];\n const lastTool = toolsByName[lastStep.action.tool?.toLowerCase()];\n\n if (lastTool?.returnDirect) {\n return getOutput({\n returnValues: { [this.agent.returnValues[0]]: lastStep.observation },\n log: \"\",\n });\n }\n\n iterations += 1;\n }\n\n const finish = await this.agent.returnStoppedResponse(\n this.earlyStoppingMethod,\n steps,\n inputs\n );\n\n return getOutput(finish);\n }\n\n async _takeNextStep(\n nameToolMap: Record<string, ToolInterface>,\n inputs: ChainValues,\n intermediateSteps: AgentStep[],\n runManager?: CallbackManagerForChainRun,\n config?: RunnableConfig\n ): Promise<AgentFinish | AgentStep[]> {\n let output;\n try {\n output = await this.agent.plan(\n intermediateSteps,\n inputs,\n runManager?.getChild(),\n config\n );\n } catch (e) {\n // eslint-disable-next-line no-instanceof/no-instanceof\n if (e instanceof OutputParserException) {\n let observation;\n let text = e.message;\n if (this.handleParsingErrors === true) {\n if (e.sendToLLM) {\n observation = e.observation;\n text = e.llmOutput ?? \"\";\n } else {\n observation = \"Invalid or incomplete response\";\n }\n } else if (typeof this.handleParsingErrors === \"string\") {\n observation = this.handleParsingErrors;\n } else if (typeof this.handleParsingErrors === \"function\") {\n observation = this.handleParsingErrors(e);\n } else {\n throw e;\n }\n output = {\n tool: \"_Exception\",\n toolInput: observation,\n log: text,\n } as AgentAction;\n } else {\n throw e;\n }\n }\n\n if (\"returnValues\" in output) {\n return output;\n }\n\n let actions: AgentAction[];\n if (Array.isArray(output)) {\n actions = output as AgentAction[];\n } else {\n actions = [output as AgentAction];\n }\n\n const result: AgentStep[] = [];\n for (const agentAction of actions) {\n let observation = \"\";\n if (runManager) {\n await runManager?.handleAgentAction(agentAction);\n }\n if (agentAction.tool in nameToolMap) {\n const tool = nameToolMap[agentAction.tool];\n try {\n observation = await tool.call(\n agentAction.toolInput,\n runManager?.getChild()\n );\n if (typeof observation !== \"string\") {\n throw new Error(\n \"Received unsupported non-string response from tool call.\"\n );\n }\n } catch (e) {\n // eslint-disable-next-line no-instanceof/no-instanceof\n if (e instanceof ToolInputParsingException) {\n if (this.handleParsingErrors === true) {\n observation =\n \"Invalid or incomplete tool input. Please try again.\";\n } else if (typeof this.handleParsingErrors === \"string\") {\n observation = this.handleParsingErrors;\n } else if (typeof this.handleParsingErrors === \"function\") {\n observation = this.handleParsingErrors(e);\n } else {\n throw e;\n }\n observation = await new ExceptionTool().call(\n observation,\n runManager?.getChild()\n );\n }\n }\n } else {\n observation = `${\n agentAction.tool\n } is not a valid tool, try another available tool: ${Object.keys(\n nameToolMap\n ).join(\", \")}`;\n }\n result.push({\n action: agentAction,\n observation,\n });\n }\n return result;\n }\n\n async _return(\n output: AgentFinish,\n intermediateSteps: AgentStep[],\n runManager?: CallbackManagerForChainRun\n ): Promise<AgentExecutorOutput> {\n if (runManager) {\n await runManager.handleAgentEnd(output);\n }\n const finalOutput: Record<string, unknown> = output.returnValues;\n if (this.returnIntermediateSteps) {\n finalOutput.intermediateSteps = intermediateSteps;\n }\n return finalOutput;\n }\n\n async _getToolReturn(nextStepOutput: AgentStep): Promise<AgentFinish | null> {\n const { action, observation } = nextStepOutput;\n const nameToolMap = Object.fromEntries(\n this.tools.map((t) => [t.name.toLowerCase(), t])\n );\n const [returnValueKey = \"output\"] = this.agent.returnValues;\n // Invalid tools won't be in the map, so we return False.\n if (action.tool in nameToolMap) {\n if (nameToolMap[action.tool].returnDirect) {\n return {\n returnValues: { [returnValueKey]: observation },\n log: \"\",\n };\n }\n }\n return null;\n }\n\n _returnStoppedResponse(earlyStoppingMethod: StoppingMethod) {\n if (earlyStoppingMethod === \"force\") {\n return {\n returnValues: {\n output: \"Agent stopped due to iteration limit or time limit.\",\n },\n log: \"\",\n } as AgentFinish;\n }\n throw new Error(\n `Got unsupported early_stopping_method: ${earlyStoppingMethod}`\n );\n }\n\n async *_streamIterator(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n inputs: Record<string, any>,\n options?: Partial<RunnableConfig>\n ): AsyncGenerator<ChainValues> {\n const agentExecutorIterator = new AgentExecutorIterator({\n inputs,\n agentExecutor: this,\n config: options,\n // TODO: Deprecate these other parameters\n metadata: options?.metadata,\n tags: options?.tags,\n callbacks: options?.callbacks,\n });\n const iterator = agentExecutorIterator.streamIterator();\n for await (const step of iterator) {\n if (!step) {\n continue;\n }\n yield step;\n }\n }\n\n _chainType() {\n return \"agent_executor\" as const;\n }\n\n serialize(): SerializedLLMChain {\n throw new Error(\"Cannot serialize an AgentExecutor\");\n }\n}\n"],"mappings":"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"}
|
|
@@ -11,7 +11,6 @@ import { StructuredToolInterface, Tool, ToolInputParsingException, ToolInterface
|
|
|
11
11
|
import { Serializable } from "@langchain/core/load/serializable";
|
|
12
12
|
|
|
13
13
|
//#region src/agents/executor.d.ts
|
|
14
|
-
|
|
15
14
|
type ExtractToolType<T> = T extends {
|
|
16
15
|
ToolType: infer ToolInterface;
|
|
17
16
|
} ? ToolInterface : StructuredToolInterface;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.d.cts","names":[
|
|
1
|
+
{"version":3,"file":"executor.d.cts","names":[],"sources":["../../src/agents/executor.ts"],"mappings":";;;;;;;;;;;;;KAgSK,eAAA,MAAqB,CAAA;EAAY,QAAA;AAAA,IAClC,aAAA,GACA,uBAAA;;AA6DJ;;;;UAtDiB,kBAAA,SAA2B,WAAA;EAC1C,KAAA,EACI,qBAAA,GACA,oBAAA,GACA,QAAA,CACE,WAAA;IAAgB,KAAA,GAAQ,SAAA;EAAA,GACxB,WAAA,KAAgB,WAAA,GAAc,WAAA;EAEpC,KAAA,EAAO,eAAA;EACP,uBAAA;EACA,aAAA;EACA,mBAAA,GAAsB,cAAA;EACtB,mBAAA,wBAGM,CAAA,EAAG,qBAAA,GAAwB,yBAAA;EACjC,uBAAA,IAA2B,CAAA,EAAG,KAAA;AAAA;AAAA,KAIpB,mBAAA,GAAsB,WAAA;;;;;;;;;;;;;;;;;;;cAkCrB,aAAA,SAAsB,SAAA,CAAU,WAAA,EAAa,mBAAA;EAAA,OACjD,OAAA,CAAA;EAAA,IAIH,YAAA,CAAA;EAIJ,KAAA,EAAO,qBAAA,GAAwB,oBAAA;EAE/B,KAAA;EAEA,uBAAA;EAEA,aAAA;EAEA,mBAAA,EAAqB,cAAA;EAGrB,iBAAA;EAXA;;;;;;;;;EAuBA,mBAAA,uBAGM,CAAA,EAAG,qBAAA,GAAwB,yBAAA;EAGjC,uBAAA,IAA2B,CAAA,EAAG,KAAA;EAAA,IAE1B,SAAA,CAAA;EAAA,IAIA,UAAA,CAAA;EAIJ,WAAA,CAAY,KAAA,EAAO,kBAAA;EAVQ;EAAA,OA8DpB,iBAAA,CAAkB,MAAA,EAAQ,kBAAA,GAAqB,aAAA;EAAA,IAIlD,oBAAA,CAAA,IAAoB,UAAA;EAxDxB;;;;;;EAAA,QAkEQ,cAAA;EAVJ;EAeE,KAAA,CACJ,MAAA,EAAQ,WAAA,EACR,UAAA,GAAa,0BAAA,EACb,MAAA,GAAS,cAAA,GACR,OAAA,CAAQ,mBAAA;EAqJL,aAAA,CACJ,WAAA,EAAa,MAAA,SAAe,aAAA,GAC5B,MAAA,EAAQ,WAAA,EACR,iBAAA,EAAmB,SAAA,IACnB,UAAA,GAAa,0BAAA,EACb,MAAA,GAAS,cAAA,GACR,OAAA,CAAQ,WAAA,GAAc,SAAA;EAqGnB,OAAA,CACJ,MAAA,EAAQ,WAAA,EACR,iBAAA,EAAmB,SAAA,IACnB,UAAA,GAAa,0BAAA,GACZ,OAAA,CAAQ,mBAAA;EAWL,cAAA,CAAe,cAAA,EAAgB,SAAA,GAAY,OAAA,CAAQ,WAAA;EAkBzD,sBAAA,CAAuB,mBAAA,EAAqB,cAAA,GAAc,WAAA;EAcnD,eAAA,CAEL,MAAA,EAAQ,MAAA,eACR,OAAA,GAAU,OAAA,CAAQ,cAAA,IACjB,cAAA,CAAe,WAAA;EAmBlB,UAAA,CAAA;EAIA,SAAA,CAAA,GAAa,kBAAA;AAAA"}
|
|
@@ -11,7 +11,6 @@ import { ChainValues } from "@langchain/core/utils/types";
|
|
|
11
11
|
import { AgentAction, AgentFinish, AgentStep } from "@langchain/core/agents";
|
|
12
12
|
|
|
13
13
|
//#region src/agents/executor.d.ts
|
|
14
|
-
|
|
15
14
|
type ExtractToolType<T> = T extends {
|
|
16
15
|
ToolType: infer ToolInterface;
|
|
17
16
|
} ? ToolInterface : StructuredToolInterface;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.d.ts","names":[
|
|
1
|
+
{"version":3,"file":"executor.d.ts","names":[],"sources":["../../src/agents/executor.ts"],"mappings":";;;;;;;;;;;;;KAgSK,eAAA,MAAqB,CAAA;EAAY,QAAA;AAAA,IAClC,aAAA,GACA,uBAAA;;AA6DJ;;;;UAtDiB,kBAAA,SAA2B,WAAA;EAC1C,KAAA,EACI,qBAAA,GACA,oBAAA,GACA,QAAA,CACE,WAAA;IAAgB,KAAA,GAAQ,SAAA;EAAA,GACxB,WAAA,KAAgB,WAAA,GAAc,WAAA;EAEpC,KAAA,EAAO,eAAA;EACP,uBAAA;EACA,aAAA;EACA,mBAAA,GAAsB,cAAA;EACtB,mBAAA,wBAGM,CAAA,EAAG,qBAAA,GAAwB,yBAAA;EACjC,uBAAA,IAA2B,CAAA,EAAG,KAAA;AAAA;AAAA,KAIpB,mBAAA,GAAsB,WAAA;;;;;;;;;;;;;;;;;;;cAkCrB,aAAA,SAAsB,SAAA,CAAU,WAAA,EAAa,mBAAA;EAAA,OACjD,OAAA,CAAA;EAAA,IAIH,YAAA,CAAA;EAIJ,KAAA,EAAO,qBAAA,GAAwB,oBAAA;EAE/B,KAAA;EAEA,uBAAA;EAEA,aAAA;EAEA,mBAAA,EAAqB,cAAA;EAGrB,iBAAA;EAXA;;;;;;;;;EAuBA,mBAAA,uBAGM,CAAA,EAAG,qBAAA,GAAwB,yBAAA;EAGjC,uBAAA,IAA2B,CAAA,EAAG,KAAA;EAAA,IAE1B,SAAA,CAAA;EAAA,IAIA,UAAA,CAAA;EAIJ,WAAA,CAAY,KAAA,EAAO,kBAAA;EAVQ;EAAA,OA8DpB,iBAAA,CAAkB,MAAA,EAAQ,kBAAA,GAAqB,aAAA;EAAA,IAIlD,oBAAA,CAAA,IAAoB,UAAA;EAxDxB;;;;;;EAAA,QAkEQ,cAAA;EAVJ;EAeE,KAAA,CACJ,MAAA,EAAQ,WAAA,EACR,UAAA,GAAa,0BAAA,EACb,MAAA,GAAS,cAAA,GACR,OAAA,CAAQ,mBAAA;EAqJL,aAAA,CACJ,WAAA,EAAa,MAAA,SAAe,aAAA,GAC5B,MAAA,EAAQ,WAAA,EACR,iBAAA,EAAmB,SAAA,IACnB,UAAA,GAAa,0BAAA,EACb,MAAA,GAAS,cAAA,GACR,OAAA,CAAQ,WAAA,GAAc,SAAA;EAqGnB,OAAA,CACJ,MAAA,EAAQ,WAAA,EACR,iBAAA,EAAmB,SAAA,IACnB,UAAA,GAAa,0BAAA,GACZ,OAAA,CAAQ,mBAAA;EAWL,cAAA,CAAe,cAAA,EAAgB,SAAA,GAAY,OAAA,CAAQ,WAAA;EAkBzD,sBAAA,CAAuB,mBAAA,EAAqB,cAAA,GAAc,WAAA;EAcnD,eAAA,CAEL,MAAA,EAAQ,MAAA,eACR,OAAA,GAAU,OAAA,CAAQ,cAAA,IACjB,cAAA,CAAe,WAAA;EAmBlB,UAAA,CAAA;EAIA,SAAA,CAAA,GAAa,kBAAA;AAAA"}
|
package/dist/agents/executor.js
CHANGED
|
@@ -31,10 +31,7 @@ var AgentExecutorIterator = class extends Serializable {
|
|
|
31
31
|
/** Intended to be used as a setter method, needs to be async. */
|
|
32
32
|
async setFinalOutputs(value) {
|
|
33
33
|
this._finalOutputs = void 0;
|
|
34
|
-
if (value)
|
|
35
|
-
const preparedOutputs = await this.agentExecutor.prepOutputs(this.inputs, value, true);
|
|
36
|
-
this._finalOutputs = preparedOutputs;
|
|
37
|
-
}
|
|
34
|
+
if (value) this._finalOutputs = await this.agentExecutor.prepOutputs(this.inputs, value, true);
|
|
38
35
|
}
|
|
39
36
|
runManager;
|
|
40
37
|
intermediateSteps = [];
|
|
@@ -70,8 +67,7 @@ var AgentExecutorIterator = class extends Serializable {
|
|
|
70
67
|
this.reset();
|
|
71
68
|
while (true) try {
|
|
72
69
|
if (this.iterations === 0) await this.onFirstStep();
|
|
73
|
-
|
|
74
|
-
yield result;
|
|
70
|
+
yield await this._callNext();
|
|
75
71
|
} catch (e) {
|
|
76
72
|
if ("message" in e && e.message.startsWith("Final outputs already reached: ")) {
|
|
77
73
|
if (!this.finalOutputs) throw e;
|
|
@@ -87,8 +83,7 @@ var AgentExecutorIterator = class extends Serializable {
|
|
|
87
83
|
*/
|
|
88
84
|
async onFirstStep() {
|
|
89
85
|
if (this.iterations === 0) {
|
|
90
|
-
|
|
91
|
-
this.runManager = await callbackManager?.handleChainStart(this.agentExecutor.toJSON(), this.inputs, this.config?.runId, void 0, this.tags ?? this.config?.tags, this.metadata ?? this.config?.metadata, this.runName ?? this.config?.runName);
|
|
86
|
+
this.runManager = await (await CallbackManager.configure(this.callbacks ?? this.config?.callbacks, this.agentExecutor.callbacks, this.tags ?? this.config?.tags, this.agentExecutor.tags, this.metadata ?? this.config?.metadata, this.agentExecutor.metadata, { verbose: this.agentExecutor.verbose }))?.handleChainStart(this.agentExecutor.toJSON(), this.inputs, this.config?.runId, void 0, this.tags ?? this.config?.tags, this.metadata ?? this.config?.metadata, this.runName ?? this.config?.runName);
|
|
92
87
|
if (this.config !== void 0) delete this.config.runId;
|
|
93
88
|
}
|
|
94
89
|
}
|
|
@@ -105,10 +100,10 @@ var AgentExecutorIterator = class extends Serializable {
|
|
|
105
100
|
*/
|
|
106
101
|
async _processNextStepOutput(nextStepOutput, runManager) {
|
|
107
102
|
if ("returnValues" in nextStepOutput) {
|
|
108
|
-
const output
|
|
109
|
-
if (this.runManager) await this.runManager.handleChainEnd(output
|
|
110
|
-
await this.setFinalOutputs(output
|
|
111
|
-
return output
|
|
103
|
+
const output = await this.agentExecutor._return(nextStepOutput, this.intermediateSteps, runManager);
|
|
104
|
+
if (this.runManager) await this.runManager.handleChainEnd(output);
|
|
105
|
+
await this.setFinalOutputs(output);
|
|
106
|
+
return output;
|
|
112
107
|
}
|
|
113
108
|
this.intermediateSteps = this.intermediateSteps.concat(nextStepOutput);
|
|
114
109
|
let output = {};
|
|
@@ -329,15 +324,13 @@ var AgentExecutor = class AgentExecutor extends BaseChain {
|
|
|
329
324
|
}));
|
|
330
325
|
steps.push(...newSteps);
|
|
331
326
|
const lastStep = steps[steps.length - 1];
|
|
332
|
-
|
|
333
|
-
if (lastTool?.returnDirect) return getOutput({
|
|
327
|
+
if (toolsByName[lastStep.action.tool?.toLowerCase()]?.returnDirect) return getOutput({
|
|
334
328
|
returnValues: { [this.agent.returnValues[0]]: lastStep.observation },
|
|
335
329
|
log: ""
|
|
336
330
|
});
|
|
337
331
|
iterations += 1;
|
|
338
332
|
}
|
|
339
|
-
|
|
340
|
-
return getOutput(finish);
|
|
333
|
+
return getOutput(await this.agent.returnStoppedResponse(this.earlyStoppingMethod, steps, inputs));
|
|
341
334
|
}
|
|
342
335
|
async _takeNextStep(nameToolMap, inputs, intermediateSteps, runManager, config) {
|
|
343
336
|
let output;
|
|
@@ -417,15 +410,14 @@ var AgentExecutor = class AgentExecutor extends BaseChain {
|
|
|
417
410
|
throw new Error(`Got unsupported early_stopping_method: ${earlyStoppingMethod}`);
|
|
418
411
|
}
|
|
419
412
|
async *_streamIterator(inputs, options) {
|
|
420
|
-
const
|
|
413
|
+
const iterator = new AgentExecutorIterator({
|
|
421
414
|
inputs,
|
|
422
415
|
agentExecutor: this,
|
|
423
416
|
config: options,
|
|
424
417
|
metadata: options?.metadata,
|
|
425
418
|
tags: options?.tags,
|
|
426
419
|
callbacks: options?.callbacks
|
|
427
|
-
});
|
|
428
|
-
const iterator = agentExecutorIterator.streamIterator();
|
|
420
|
+
}).streamIterator();
|
|
429
421
|
for await (const step of iterator) {
|
|
430
422
|
if (!step) continue;
|
|
431
423
|
yield step;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.js","names":["value: Record<string, unknown> | undefined","preparedOutputs: Record<string, unknown>","fields: AgentExecutorIteratorInput","e: any","runManager?: CallbackManagerForChainRun","nextStepOutput: AgentFinish | AgentStep[]","output","output: Record<string, string | AgentStep[]>","query: string","input: AgentExecutorInput","agent: BaseSingleActionAgent | BaseMultiActionAgent","fields: AgentExecutorInput","iterations: number","inputs: ChainValues","config?: RunnableConfig","steps: AgentStep[]","finishStep: AgentFinish","actions: AgentAction[]","nameToolMap: Record<string, ToolInterface>","intermediateSteps: AgentStep[]","result: AgentStep[]","output: AgentFinish","finalOutput: Record<string, unknown>","nextStepOutput: AgentStep","earlyStoppingMethod: StoppingMethod","inputs: Record<string, any>","options?: Partial<RunnableConfig>"],"sources":["../../src/agents/executor.ts"],"sourcesContent":["import {\n type StructuredToolInterface,\n type ToolInterface,\n ToolInputParsingException,\n Tool,\n} from \"@langchain/core/tools\";\nimport {\n Runnable,\n type RunnableConfig,\n patchConfig,\n} from \"@langchain/core/runnables\";\nimport { AgentAction, AgentFinish, AgentStep } from \"@langchain/core/agents\";\nimport { ChainValues } from \"@langchain/core/utils/types\";\nimport {\n CallbackManager,\n CallbackManagerForChainRun,\n Callbacks,\n} from \"@langchain/core/callbacks/manager\";\nimport { OutputParserException } from \"@langchain/core/output_parsers\";\nimport { Serializable } from \"@langchain/core/load/serializable\";\nimport { SerializedLLMChain } from \"../chains/serde.js\";\nimport { StoppingMethod } from \"./types.js\";\nimport {\n AgentRunnableSequence,\n BaseMultiActionAgent,\n BaseSingleActionAgent,\n RunnableMultiActionAgent,\n RunnableSingleActionAgent,\n isRunnableAgent,\n} from \"./agent.js\";\nimport { BaseChain, ChainInputs } from \"../chains/base.js\";\n\ninterface AgentExecutorIteratorInput {\n agentExecutor: AgentExecutor;\n inputs: Record<string, string>;\n config?: RunnableConfig;\n /** @deprecated Use \"config\" */\n callbacks?: Callbacks;\n /** @deprecated Use \"config\" */\n tags?: string[];\n /** @deprecated Use \"config\" */\n metadata?: Record<string, unknown>;\n runName?: string;\n runManager?: CallbackManagerForChainRun;\n}\n\nexport class AgentExecutorIterator\n extends Serializable\n implements AgentExecutorIteratorInput\n{\n lc_namespace = [\"langchain\", \"agents\", \"executor_iterator\"];\n\n agentExecutor: AgentExecutor;\n\n inputs: Record<string, string>;\n\n config?: RunnableConfig;\n\n /** @deprecated Use \"config\" */\n callbacks?: Callbacks;\n\n /** @deprecated Use \"config\" */\n tags: string[] | undefined;\n\n /** @deprecated Use \"config\" */\n metadata: Record<string, unknown> | undefined;\n\n /** @deprecated Use \"config\" */\n runName: string | undefined;\n\n private _finalOutputs: Record<string, unknown> | undefined;\n\n get finalOutputs(): Record<string, unknown> | undefined {\n return this._finalOutputs;\n }\n\n /** Intended to be used as a setter method, needs to be async. */\n async setFinalOutputs(value: Record<string, unknown> | undefined) {\n this._finalOutputs = undefined;\n if (value) {\n const preparedOutputs: Record<string, unknown> =\n await this.agentExecutor.prepOutputs(this.inputs, value, true);\n this._finalOutputs = preparedOutputs;\n }\n }\n\n runManager: CallbackManagerForChainRun | undefined;\n\n intermediateSteps: AgentStep[] = [];\n\n iterations = 0;\n\n get nameToToolMap(): Record<string, ToolInterface> {\n const toolMap = this.agentExecutor.tools.map((tool) => ({\n [tool.name]: tool,\n }));\n return Object.assign({}, ...toolMap);\n }\n\n constructor(fields: AgentExecutorIteratorInput) {\n super(fields);\n this.agentExecutor = fields.agentExecutor;\n this.inputs = fields.inputs;\n this.callbacks = fields.callbacks;\n this.tags = fields.tags;\n this.metadata = fields.metadata;\n this.runName = fields.runName;\n this.runManager = fields.runManager;\n this.config = fields.config;\n }\n\n /**\n * Reset the iterator to its initial state, clearing intermediate steps,\n * iterations, and the final output.\n */\n reset(): void {\n this.intermediateSteps = [];\n this.iterations = 0;\n this._finalOutputs = undefined;\n }\n\n updateIterations(): void {\n this.iterations += 1;\n }\n\n async *streamIterator() {\n this.reset();\n\n // Loop to handle iteration\n while (true) {\n try {\n if (this.iterations === 0) {\n await this.onFirstStep();\n }\n\n const result = await this._callNext();\n yield result;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } catch (e: any) {\n if (\n \"message\" in e &&\n e.message.startsWith(\"Final outputs already reached: \")\n ) {\n if (!this.finalOutputs) {\n throw e;\n }\n return this.finalOutputs;\n }\n if (this.runManager) {\n await this.runManager.handleChainError(e);\n }\n throw e;\n }\n }\n }\n\n /**\n * Perform any necessary setup for the first step\n * of the asynchronous iterator.\n */\n async onFirstStep(): Promise<void> {\n if (this.iterations === 0) {\n const callbackManager = await CallbackManager.configure(\n this.callbacks ?? this.config?.callbacks,\n this.agentExecutor.callbacks,\n this.tags ?? this.config?.tags,\n this.agentExecutor.tags,\n this.metadata ?? this.config?.metadata,\n this.agentExecutor.metadata,\n {\n verbose: this.agentExecutor.verbose,\n }\n );\n this.runManager = await callbackManager?.handleChainStart(\n this.agentExecutor.toJSON(),\n this.inputs,\n this.config?.runId,\n undefined,\n this.tags ?? this.config?.tags,\n this.metadata ?? this.config?.metadata,\n this.runName ?? this.config?.runName\n );\n if (this.config !== undefined) {\n delete this.config.runId;\n }\n }\n }\n\n /**\n * Execute the next step in the chain using the\n * AgentExecutor's _takeNextStep method.\n */\n async _executeNextStep(\n runManager?: CallbackManagerForChainRun\n ): Promise<AgentFinish | AgentStep[]> {\n return this.agentExecutor._takeNextStep(\n this.nameToToolMap,\n this.inputs,\n this.intermediateSteps,\n runManager,\n this.config\n );\n }\n\n /**\n * Process the output of the next step,\n * handling AgentFinish and tool return cases.\n */\n async _processNextStepOutput(\n nextStepOutput: AgentFinish | AgentStep[],\n runManager?: CallbackManagerForChainRun\n ): Promise<Record<string, string | AgentStep[]>> {\n if (\"returnValues\" in nextStepOutput) {\n const output = await this.agentExecutor._return(\n nextStepOutput as AgentFinish,\n this.intermediateSteps,\n runManager\n );\n if (this.runManager) {\n await this.runManager.handleChainEnd(output);\n }\n await this.setFinalOutputs(output);\n return output;\n }\n\n this.intermediateSteps = this.intermediateSteps.concat(\n nextStepOutput as AgentStep[]\n );\n\n let output: Record<string, string | AgentStep[]> = {};\n if (Array.isArray(nextStepOutput) && nextStepOutput.length === 1) {\n const nextStep = nextStepOutput[0];\n const toolReturn = await this.agentExecutor._getToolReturn(nextStep);\n if (toolReturn) {\n output = await this.agentExecutor._return(\n toolReturn,\n this.intermediateSteps,\n runManager\n );\n await this.runManager?.handleChainEnd(output);\n await this.setFinalOutputs(output);\n }\n }\n output = { intermediateSteps: nextStepOutput as AgentStep[] };\n return output;\n }\n\n async _stop(): Promise<Record<string, unknown>> {\n const output = await this.agentExecutor.agent.returnStoppedResponse(\n this.agentExecutor.earlyStoppingMethod,\n this.intermediateSteps,\n this.inputs\n );\n const returnedOutput = await this.agentExecutor._return(\n output,\n this.intermediateSteps,\n this.runManager\n );\n await this.setFinalOutputs(returnedOutput);\n await this.runManager?.handleChainEnd(returnedOutput);\n return returnedOutput;\n }\n\n async _callNext(): Promise<Record<string, unknown>> {\n // final output already reached: stopiteration (final output)\n if (this.finalOutputs) {\n throw new Error(\n `Final outputs already reached: ${JSON.stringify(\n this.finalOutputs,\n null,\n 2\n )}`\n );\n }\n // timeout/max iterations: stopiteration (stopped response)\n if (!this.agentExecutor.shouldContinueGetter(this.iterations)) {\n return this._stop();\n }\n const nextStepOutput = await this._executeNextStep(this.runManager);\n const output = await this._processNextStepOutput(\n nextStepOutput,\n this.runManager\n );\n this.updateIterations();\n return output;\n }\n}\n\ntype ExtractToolType<T> = T extends { ToolType: infer ToolInterface }\n ? ToolInterface\n : StructuredToolInterface;\n\n/**\n * Interface defining the structure of input data for creating an\n * AgentExecutor. It extends ChainInputs and includes additional\n * properties specific to agent execution.\n */\nexport interface AgentExecutorInput extends ChainInputs {\n agent:\n | BaseSingleActionAgent\n | BaseMultiActionAgent\n | Runnable<\n ChainValues & { steps?: AgentStep[] },\n AgentAction[] | AgentAction | AgentFinish\n >;\n tools: ExtractToolType<this[\"agent\"]>[];\n returnIntermediateSteps?: boolean;\n maxIterations?: number;\n earlyStoppingMethod?: StoppingMethod;\n handleParsingErrors?:\n | boolean\n | string\n | ((e: OutputParserException | ToolInputParsingException) => string);\n handleToolRuntimeErrors?: (e: Error) => string;\n}\n\n// TODO: Type properly with { intermediateSteps?: AgentStep[] };\nexport type AgentExecutorOutput = ChainValues;\n\n/**\n * Tool that just returns the query.\n * Used for exception tracking.\n */\nexport class ExceptionTool extends Tool {\n name = \"_Exception\";\n\n description = \"Exception tool\";\n\n async _call(query: string) {\n return query;\n }\n}\n\n/**\n * A chain managing an agent using tools.\n * @augments BaseChain\n * @example\n * ```typescript\n *\n * const executor = AgentExecutor.fromAgentAndTools({\n * agent: async () => loadAgentFromLangchainHub(),\n * tools: [new SerpAPI(), new Calculator()],\n * returnIntermediateSteps: true,\n * });\n *\n * const result = await executor.invoke({\n * input: `Who is Olivia Wilde's boyfriend? What is his current age raised to the 0.23 power?`,\n * });\n *\n * ```\n */\nexport class AgentExecutor extends BaseChain<ChainValues, AgentExecutorOutput> {\n static lc_name() {\n return \"AgentExecutor\";\n }\n\n get lc_namespace() {\n return [\"langchain\", \"agents\", \"executor\"];\n }\n\n agent: BaseSingleActionAgent | BaseMultiActionAgent;\n\n tools: this[\"agent\"][\"ToolType\"][];\n\n returnIntermediateSteps = false;\n\n maxIterations?: number = 15;\n\n earlyStoppingMethod: StoppingMethod = \"force\";\n\n // TODO: Update BaseChain implementation on breaking change to include this\n returnOnlyOutputs = true;\n\n /**\n * How to handle errors raised by the agent's output parser.\n Defaults to `False`, which raises the error.\n\n If `true`, the error will be sent back to the LLM as an observation.\n If a string, the string itself will be sent to the LLM as an observation.\n If a callable function, the function will be called with the exception\n as an argument, and the result of that function will be passed to the agent\n as an observation.\n */\n handleParsingErrors:\n | boolean\n | string\n | ((e: OutputParserException | ToolInputParsingException) => string) =\n false;\n\n handleToolRuntimeErrors?: (e: Error) => string;\n\n get inputKeys() {\n return this.agent.inputKeys;\n }\n\n get outputKeys() {\n return this.agent.returnValues;\n }\n\n constructor(input: AgentExecutorInput) {\n let agent: BaseSingleActionAgent | BaseMultiActionAgent;\n let returnOnlyOutputs = true;\n if (Runnable.isRunnable(input.agent)) {\n if (AgentRunnableSequence.isAgentRunnableSequence(input.agent)) {\n if (input.agent.singleAction) {\n agent = new RunnableSingleActionAgent({\n runnable: input.agent,\n streamRunnable: input.agent.streamRunnable,\n });\n } else {\n agent = new RunnableMultiActionAgent({\n runnable: input.agent,\n streamRunnable: input.agent.streamRunnable,\n });\n }\n } else {\n agent = new RunnableMultiActionAgent({ runnable: input.agent });\n }\n // TODO: Update BaseChain implementation on breaking change\n returnOnlyOutputs = false;\n } else {\n if (isRunnableAgent(input.agent)) {\n returnOnlyOutputs = false;\n }\n agent = input.agent;\n }\n\n super(input);\n this.agent = agent;\n this.tools = input.tools;\n this.handleParsingErrors =\n input.handleParsingErrors ?? this.handleParsingErrors;\n this.handleToolRuntimeErrors = input.handleToolRuntimeErrors;\n this.returnOnlyOutputs = returnOnlyOutputs;\n if (this.agent._agentActionType() === \"multi\") {\n for (const tool of this.tools) {\n if (tool.returnDirect) {\n throw new Error(\n `Tool with return direct ${tool.name} not supported for multi-action agent.`\n );\n }\n }\n }\n this.returnIntermediateSteps =\n input.returnIntermediateSteps ?? this.returnIntermediateSteps;\n this.maxIterations = input.maxIterations ?? this.maxIterations;\n this.earlyStoppingMethod =\n input.earlyStoppingMethod ?? this.earlyStoppingMethod;\n }\n\n /** Create from agent and a list of tools. */\n static fromAgentAndTools(fields: AgentExecutorInput): AgentExecutor {\n return new AgentExecutor(fields);\n }\n\n get shouldContinueGetter() {\n return this.shouldContinue.bind(this);\n }\n\n /**\n * Method that checks if the agent execution should continue based on the\n * number of iterations.\n * @param iterations The current number of iterations.\n * @returns A boolean indicating whether the agent execution should continue.\n */\n private shouldContinue(iterations: number): boolean {\n return this.maxIterations === undefined || iterations < this.maxIterations;\n }\n\n /** @ignore */\n async _call(\n inputs: ChainValues,\n runManager?: CallbackManagerForChainRun,\n config?: RunnableConfig\n ): Promise<AgentExecutorOutput> {\n const toolsByName = Object.fromEntries(\n this.tools.map((t) => [t.name.toLowerCase(), t])\n );\n const steps: AgentStep[] = [];\n let iterations = 0;\n\n const getOutput = async (\n finishStep: AgentFinish\n ): Promise<AgentExecutorOutput> => {\n const { returnValues } = finishStep;\n const additional = await this.agent.prepareForOutput(returnValues, steps);\n\n await runManager?.handleAgentEnd(finishStep);\n\n let response;\n\n if (this.returnIntermediateSteps) {\n response = { ...returnValues, intermediateSteps: steps, ...additional };\n } else {\n response = { ...returnValues, ...additional };\n }\n if (!this.returnOnlyOutputs) {\n response = { ...inputs, ...response };\n }\n return response;\n };\n\n while (this.shouldContinue(iterations)) {\n let output;\n try {\n output = await this.agent.plan(\n steps,\n inputs,\n runManager?.getChild(),\n config\n );\n } catch (e) {\n // eslint-disable-next-line no-instanceof/no-instanceof\n if (e instanceof OutputParserException) {\n let observation;\n let text = e.message;\n if (this.handleParsingErrors === true) {\n if (e.sendToLLM) {\n observation = e.observation;\n text = e.llmOutput ?? \"\";\n } else {\n observation = \"Invalid or incomplete response\";\n }\n } else if (typeof this.handleParsingErrors === \"string\") {\n observation = this.handleParsingErrors;\n } else if (typeof this.handleParsingErrors === \"function\") {\n observation = this.handleParsingErrors(e);\n } else {\n throw e;\n }\n output = {\n tool: \"_Exception\",\n toolInput: observation,\n log: text,\n } as AgentAction;\n } else {\n throw e;\n }\n }\n // Check if the agent has finished\n if (\"returnValues\" in output) {\n return getOutput(output);\n }\n\n let actions: AgentAction[];\n if (Array.isArray(output)) {\n actions = output as AgentAction[];\n } else {\n actions = [output as AgentAction];\n }\n\n const newSteps = await Promise.all(\n actions.map(async (action) => {\n await runManager?.handleAgentAction(action);\n const tool =\n action.tool === \"_Exception\"\n ? new ExceptionTool()\n : toolsByName[action.tool?.toLowerCase()];\n let observation;\n try {\n observation = tool\n ? await tool.invoke(\n action.toolInput,\n patchConfig(config, { callbacks: runManager?.getChild() })\n )\n : `${action.tool} is not a valid tool, try another one.`;\n if (typeof observation !== \"string\") {\n throw new Error(\n \"Received unsupported non-string response from tool call.\"\n );\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } catch (e: any) {\n // eslint-disable-next-line no-instanceof/no-instanceof\n if (e instanceof ToolInputParsingException) {\n if (this.handleParsingErrors === true) {\n observation =\n \"Invalid or incomplete tool input. Please try again.\";\n } else if (typeof this.handleParsingErrors === \"string\") {\n observation = this.handleParsingErrors;\n } else if (typeof this.handleParsingErrors === \"function\") {\n observation = this.handleParsingErrors(e);\n } else {\n throw e;\n }\n observation = await new ExceptionTool().call(\n observation,\n runManager?.getChild()\n );\n return { action, observation: observation ?? \"\" };\n } else if (this.handleToolRuntimeErrors !== undefined) {\n observation = this.handleToolRuntimeErrors(e);\n }\n }\n\n return { action, observation: observation ?? \"\" };\n })\n );\n\n steps.push(...newSteps);\n\n const lastStep = steps[steps.length - 1];\n const lastTool = toolsByName[lastStep.action.tool?.toLowerCase()];\n\n if (lastTool?.returnDirect) {\n return getOutput({\n returnValues: { [this.agent.returnValues[0]]: lastStep.observation },\n log: \"\",\n });\n }\n\n iterations += 1;\n }\n\n const finish = await this.agent.returnStoppedResponse(\n this.earlyStoppingMethod,\n steps,\n inputs\n );\n\n return getOutput(finish);\n }\n\n async _takeNextStep(\n nameToolMap: Record<string, ToolInterface>,\n inputs: ChainValues,\n intermediateSteps: AgentStep[],\n runManager?: CallbackManagerForChainRun,\n config?: RunnableConfig\n ): Promise<AgentFinish | AgentStep[]> {\n let output;\n try {\n output = await this.agent.plan(\n intermediateSteps,\n inputs,\n runManager?.getChild(),\n config\n );\n } catch (e) {\n // eslint-disable-next-line no-instanceof/no-instanceof\n if (e instanceof OutputParserException) {\n let observation;\n let text = e.message;\n if (this.handleParsingErrors === true) {\n if (e.sendToLLM) {\n observation = e.observation;\n text = e.llmOutput ?? \"\";\n } else {\n observation = \"Invalid or incomplete response\";\n }\n } else if (typeof this.handleParsingErrors === \"string\") {\n observation = this.handleParsingErrors;\n } else if (typeof this.handleParsingErrors === \"function\") {\n observation = this.handleParsingErrors(e);\n } else {\n throw e;\n }\n output = {\n tool: \"_Exception\",\n toolInput: observation,\n log: text,\n } as AgentAction;\n } else {\n throw e;\n }\n }\n\n if (\"returnValues\" in output) {\n return output;\n }\n\n let actions: AgentAction[];\n if (Array.isArray(output)) {\n actions = output as AgentAction[];\n } else {\n actions = [output as AgentAction];\n }\n\n const result: AgentStep[] = [];\n for (const agentAction of actions) {\n let observation = \"\";\n if (runManager) {\n await runManager?.handleAgentAction(agentAction);\n }\n if (agentAction.tool in nameToolMap) {\n const tool = nameToolMap[agentAction.tool];\n try {\n observation = await tool.call(\n agentAction.toolInput,\n runManager?.getChild()\n );\n if (typeof observation !== \"string\") {\n throw new Error(\n \"Received unsupported non-string response from tool call.\"\n );\n }\n } catch (e) {\n // eslint-disable-next-line no-instanceof/no-instanceof\n if (e instanceof ToolInputParsingException) {\n if (this.handleParsingErrors === true) {\n observation =\n \"Invalid or incomplete tool input. Please try again.\";\n } else if (typeof this.handleParsingErrors === \"string\") {\n observation = this.handleParsingErrors;\n } else if (typeof this.handleParsingErrors === \"function\") {\n observation = this.handleParsingErrors(e);\n } else {\n throw e;\n }\n observation = await new ExceptionTool().call(\n observation,\n runManager?.getChild()\n );\n }\n }\n } else {\n observation = `${\n agentAction.tool\n } is not a valid tool, try another available tool: ${Object.keys(\n nameToolMap\n ).join(\", \")}`;\n }\n result.push({\n action: agentAction,\n observation,\n });\n }\n return result;\n }\n\n async _return(\n output: AgentFinish,\n intermediateSteps: AgentStep[],\n runManager?: CallbackManagerForChainRun\n ): Promise<AgentExecutorOutput> {\n if (runManager) {\n await runManager.handleAgentEnd(output);\n }\n const finalOutput: Record<string, unknown> = output.returnValues;\n if (this.returnIntermediateSteps) {\n finalOutput.intermediateSteps = intermediateSteps;\n }\n return finalOutput;\n }\n\n async _getToolReturn(nextStepOutput: AgentStep): Promise<AgentFinish | null> {\n const { action, observation } = nextStepOutput;\n const nameToolMap = Object.fromEntries(\n this.tools.map((t) => [t.name.toLowerCase(), t])\n );\n const [returnValueKey = \"output\"] = this.agent.returnValues;\n // Invalid tools won't be in the map, so we return False.\n if (action.tool in nameToolMap) {\n if (nameToolMap[action.tool].returnDirect) {\n return {\n returnValues: { [returnValueKey]: observation },\n log: \"\",\n };\n }\n }\n return null;\n }\n\n _returnStoppedResponse(earlyStoppingMethod: StoppingMethod) {\n if (earlyStoppingMethod === \"force\") {\n return {\n returnValues: {\n output: \"Agent stopped due to iteration limit or time limit.\",\n },\n log: \"\",\n } as AgentFinish;\n }\n throw new Error(\n `Got unsupported early_stopping_method: ${earlyStoppingMethod}`\n );\n }\n\n async *_streamIterator(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n inputs: Record<string, any>,\n options?: Partial<RunnableConfig>\n ): AsyncGenerator<ChainValues> {\n const agentExecutorIterator = new AgentExecutorIterator({\n inputs,\n agentExecutor: this,\n config: options,\n // TODO: Deprecate these other parameters\n metadata: options?.metadata,\n tags: options?.tags,\n callbacks: options?.callbacks,\n });\n const iterator = agentExecutorIterator.streamIterator();\n for await (const step of iterator) {\n if (!step) {\n continue;\n }\n yield step;\n }\n }\n\n _chainType() {\n return \"agent_executor\" as const;\n }\n\n serialize(): SerializedLLMChain {\n throw new Error(\"Cannot serialize an AgentExecutor\");\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"executor.js","names":[],"sources":["../../src/agents/executor.ts"],"sourcesContent":["import {\n type StructuredToolInterface,\n type ToolInterface,\n ToolInputParsingException,\n Tool,\n} from \"@langchain/core/tools\";\nimport {\n Runnable,\n type RunnableConfig,\n patchConfig,\n} from \"@langchain/core/runnables\";\nimport { AgentAction, AgentFinish, AgentStep } from \"@langchain/core/agents\";\nimport { ChainValues } from \"@langchain/core/utils/types\";\nimport {\n CallbackManager,\n CallbackManagerForChainRun,\n Callbacks,\n} from \"@langchain/core/callbacks/manager\";\nimport { OutputParserException } from \"@langchain/core/output_parsers\";\nimport { Serializable } from \"@langchain/core/load/serializable\";\nimport { SerializedLLMChain } from \"../chains/serde.js\";\nimport { StoppingMethod } from \"./types.js\";\nimport {\n AgentRunnableSequence,\n BaseMultiActionAgent,\n BaseSingleActionAgent,\n RunnableMultiActionAgent,\n RunnableSingleActionAgent,\n isRunnableAgent,\n} from \"./agent.js\";\nimport { BaseChain, ChainInputs } from \"../chains/base.js\";\n\ninterface AgentExecutorIteratorInput {\n agentExecutor: AgentExecutor;\n inputs: Record<string, string>;\n config?: RunnableConfig;\n /** @deprecated Use \"config\" */\n callbacks?: Callbacks;\n /** @deprecated Use \"config\" */\n tags?: string[];\n /** @deprecated Use \"config\" */\n metadata?: Record<string, unknown>;\n runName?: string;\n runManager?: CallbackManagerForChainRun;\n}\n\nexport class AgentExecutorIterator\n extends Serializable\n implements AgentExecutorIteratorInput\n{\n lc_namespace = [\"langchain\", \"agents\", \"executor_iterator\"];\n\n agentExecutor: AgentExecutor;\n\n inputs: Record<string, string>;\n\n config?: RunnableConfig;\n\n /** @deprecated Use \"config\" */\n callbacks?: Callbacks;\n\n /** @deprecated Use \"config\" */\n tags: string[] | undefined;\n\n /** @deprecated Use \"config\" */\n metadata: Record<string, unknown> | undefined;\n\n /** @deprecated Use \"config\" */\n runName: string | undefined;\n\n private _finalOutputs: Record<string, unknown> | undefined;\n\n get finalOutputs(): Record<string, unknown> | undefined {\n return this._finalOutputs;\n }\n\n /** Intended to be used as a setter method, needs to be async. */\n async setFinalOutputs(value: Record<string, unknown> | undefined) {\n this._finalOutputs = undefined;\n if (value) {\n const preparedOutputs: Record<string, unknown> =\n await this.agentExecutor.prepOutputs(this.inputs, value, true);\n this._finalOutputs = preparedOutputs;\n }\n }\n\n runManager: CallbackManagerForChainRun | undefined;\n\n intermediateSteps: AgentStep[] = [];\n\n iterations = 0;\n\n get nameToToolMap(): Record<string, ToolInterface> {\n const toolMap = this.agentExecutor.tools.map((tool) => ({\n [tool.name]: tool,\n }));\n return Object.assign({}, ...toolMap);\n }\n\n constructor(fields: AgentExecutorIteratorInput) {\n super(fields);\n this.agentExecutor = fields.agentExecutor;\n this.inputs = fields.inputs;\n this.callbacks = fields.callbacks;\n this.tags = fields.tags;\n this.metadata = fields.metadata;\n this.runName = fields.runName;\n this.runManager = fields.runManager;\n this.config = fields.config;\n }\n\n /**\n * Reset the iterator to its initial state, clearing intermediate steps,\n * iterations, and the final output.\n */\n reset(): void {\n this.intermediateSteps = [];\n this.iterations = 0;\n this._finalOutputs = undefined;\n }\n\n updateIterations(): void {\n this.iterations += 1;\n }\n\n async *streamIterator() {\n this.reset();\n\n // Loop to handle iteration\n while (true) {\n try {\n if (this.iterations === 0) {\n await this.onFirstStep();\n }\n\n const result = await this._callNext();\n yield result;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } catch (e: any) {\n if (\n \"message\" in e &&\n e.message.startsWith(\"Final outputs already reached: \")\n ) {\n if (!this.finalOutputs) {\n throw e;\n }\n return this.finalOutputs;\n }\n if (this.runManager) {\n await this.runManager.handleChainError(e);\n }\n throw e;\n }\n }\n }\n\n /**\n * Perform any necessary setup for the first step\n * of the asynchronous iterator.\n */\n async onFirstStep(): Promise<void> {\n if (this.iterations === 0) {\n const callbackManager = await CallbackManager.configure(\n this.callbacks ?? this.config?.callbacks,\n this.agentExecutor.callbacks,\n this.tags ?? this.config?.tags,\n this.agentExecutor.tags,\n this.metadata ?? this.config?.metadata,\n this.agentExecutor.metadata,\n {\n verbose: this.agentExecutor.verbose,\n }\n );\n this.runManager = await callbackManager?.handleChainStart(\n this.agentExecutor.toJSON(),\n this.inputs,\n this.config?.runId,\n undefined,\n this.tags ?? this.config?.tags,\n this.metadata ?? this.config?.metadata,\n this.runName ?? this.config?.runName\n );\n if (this.config !== undefined) {\n delete this.config.runId;\n }\n }\n }\n\n /**\n * Execute the next step in the chain using the\n * AgentExecutor's _takeNextStep method.\n */\n async _executeNextStep(\n runManager?: CallbackManagerForChainRun\n ): Promise<AgentFinish | AgentStep[]> {\n return this.agentExecutor._takeNextStep(\n this.nameToToolMap,\n this.inputs,\n this.intermediateSteps,\n runManager,\n this.config\n );\n }\n\n /**\n * Process the output of the next step,\n * handling AgentFinish and tool return cases.\n */\n async _processNextStepOutput(\n nextStepOutput: AgentFinish | AgentStep[],\n runManager?: CallbackManagerForChainRun\n ): Promise<Record<string, string | AgentStep[]>> {\n if (\"returnValues\" in nextStepOutput) {\n const output = await this.agentExecutor._return(\n nextStepOutput as AgentFinish,\n this.intermediateSteps,\n runManager\n );\n if (this.runManager) {\n await this.runManager.handleChainEnd(output);\n }\n await this.setFinalOutputs(output);\n return output;\n }\n\n this.intermediateSteps = this.intermediateSteps.concat(\n nextStepOutput as AgentStep[]\n );\n\n let output: Record<string, string | AgentStep[]> = {};\n if (Array.isArray(nextStepOutput) && nextStepOutput.length === 1) {\n const nextStep = nextStepOutput[0];\n const toolReturn = await this.agentExecutor._getToolReturn(nextStep);\n if (toolReturn) {\n output = await this.agentExecutor._return(\n toolReturn,\n this.intermediateSteps,\n runManager\n );\n await this.runManager?.handleChainEnd(output);\n await this.setFinalOutputs(output);\n }\n }\n output = { intermediateSteps: nextStepOutput as AgentStep[] };\n return output;\n }\n\n async _stop(): Promise<Record<string, unknown>> {\n const output = await this.agentExecutor.agent.returnStoppedResponse(\n this.agentExecutor.earlyStoppingMethod,\n this.intermediateSteps,\n this.inputs\n );\n const returnedOutput = await this.agentExecutor._return(\n output,\n this.intermediateSteps,\n this.runManager\n );\n await this.setFinalOutputs(returnedOutput);\n await this.runManager?.handleChainEnd(returnedOutput);\n return returnedOutput;\n }\n\n async _callNext(): Promise<Record<string, unknown>> {\n // final output already reached: stopiteration (final output)\n if (this.finalOutputs) {\n throw new Error(\n `Final outputs already reached: ${JSON.stringify(\n this.finalOutputs,\n null,\n 2\n )}`\n );\n }\n // timeout/max iterations: stopiteration (stopped response)\n if (!this.agentExecutor.shouldContinueGetter(this.iterations)) {\n return this._stop();\n }\n const nextStepOutput = await this._executeNextStep(this.runManager);\n const output = await this._processNextStepOutput(\n nextStepOutput,\n this.runManager\n );\n this.updateIterations();\n return output;\n }\n}\n\ntype ExtractToolType<T> = T extends { ToolType: infer ToolInterface }\n ? ToolInterface\n : StructuredToolInterface;\n\n/**\n * Interface defining the structure of input data for creating an\n * AgentExecutor. It extends ChainInputs and includes additional\n * properties specific to agent execution.\n */\nexport interface AgentExecutorInput extends ChainInputs {\n agent:\n | BaseSingleActionAgent\n | BaseMultiActionAgent\n | Runnable<\n ChainValues & { steps?: AgentStep[] },\n AgentAction[] | AgentAction | AgentFinish\n >;\n tools: ExtractToolType<this[\"agent\"]>[];\n returnIntermediateSteps?: boolean;\n maxIterations?: number;\n earlyStoppingMethod?: StoppingMethod;\n handleParsingErrors?:\n | boolean\n | string\n | ((e: OutputParserException | ToolInputParsingException) => string);\n handleToolRuntimeErrors?: (e: Error) => string;\n}\n\n// TODO: Type properly with { intermediateSteps?: AgentStep[] };\nexport type AgentExecutorOutput = ChainValues;\n\n/**\n * Tool that just returns the query.\n * Used for exception tracking.\n */\nexport class ExceptionTool extends Tool {\n name = \"_Exception\";\n\n description = \"Exception tool\";\n\n async _call(query: string) {\n return query;\n }\n}\n\n/**\n * A chain managing an agent using tools.\n * @augments BaseChain\n * @example\n * ```typescript\n *\n * const executor = AgentExecutor.fromAgentAndTools({\n * agent: async () => loadAgentFromLangchainHub(),\n * tools: [new SerpAPI(), new Calculator()],\n * returnIntermediateSteps: true,\n * });\n *\n * const result = await executor.invoke({\n * input: `Who is Olivia Wilde's boyfriend? What is his current age raised to the 0.23 power?`,\n * });\n *\n * ```\n */\nexport class AgentExecutor extends BaseChain<ChainValues, AgentExecutorOutput> {\n static lc_name() {\n return \"AgentExecutor\";\n }\n\n get lc_namespace() {\n return [\"langchain\", \"agents\", \"executor\"];\n }\n\n agent: BaseSingleActionAgent | BaseMultiActionAgent;\n\n tools: this[\"agent\"][\"ToolType\"][];\n\n returnIntermediateSteps = false;\n\n maxIterations?: number = 15;\n\n earlyStoppingMethod: StoppingMethod = \"force\";\n\n // TODO: Update BaseChain implementation on breaking change to include this\n returnOnlyOutputs = true;\n\n /**\n * How to handle errors raised by the agent's output parser.\n Defaults to `False`, which raises the error.\n\n If `true`, the error will be sent back to the LLM as an observation.\n If a string, the string itself will be sent to the LLM as an observation.\n If a callable function, the function will be called with the exception\n as an argument, and the result of that function will be passed to the agent\n as an observation.\n */\n handleParsingErrors:\n | boolean\n | string\n | ((e: OutputParserException | ToolInputParsingException) => string) =\n false;\n\n handleToolRuntimeErrors?: (e: Error) => string;\n\n get inputKeys() {\n return this.agent.inputKeys;\n }\n\n get outputKeys() {\n return this.agent.returnValues;\n }\n\n constructor(input: AgentExecutorInput) {\n let agent: BaseSingleActionAgent | BaseMultiActionAgent;\n let returnOnlyOutputs = true;\n if (Runnable.isRunnable(input.agent)) {\n if (AgentRunnableSequence.isAgentRunnableSequence(input.agent)) {\n if (input.agent.singleAction) {\n agent = new RunnableSingleActionAgent({\n runnable: input.agent,\n streamRunnable: input.agent.streamRunnable,\n });\n } else {\n agent = new RunnableMultiActionAgent({\n runnable: input.agent,\n streamRunnable: input.agent.streamRunnable,\n });\n }\n } else {\n agent = new RunnableMultiActionAgent({ runnable: input.agent });\n }\n // TODO: Update BaseChain implementation on breaking change\n returnOnlyOutputs = false;\n } else {\n if (isRunnableAgent(input.agent)) {\n returnOnlyOutputs = false;\n }\n agent = input.agent;\n }\n\n super(input);\n this.agent = agent;\n this.tools = input.tools;\n this.handleParsingErrors =\n input.handleParsingErrors ?? this.handleParsingErrors;\n this.handleToolRuntimeErrors = input.handleToolRuntimeErrors;\n this.returnOnlyOutputs = returnOnlyOutputs;\n if (this.agent._agentActionType() === \"multi\") {\n for (const tool of this.tools) {\n if (tool.returnDirect) {\n throw new Error(\n `Tool with return direct ${tool.name} not supported for multi-action agent.`\n );\n }\n }\n }\n this.returnIntermediateSteps =\n input.returnIntermediateSteps ?? this.returnIntermediateSteps;\n this.maxIterations = input.maxIterations ?? this.maxIterations;\n this.earlyStoppingMethod =\n input.earlyStoppingMethod ?? this.earlyStoppingMethod;\n }\n\n /** Create from agent and a list of tools. */\n static fromAgentAndTools(fields: AgentExecutorInput): AgentExecutor {\n return new AgentExecutor(fields);\n }\n\n get shouldContinueGetter() {\n return this.shouldContinue.bind(this);\n }\n\n /**\n * Method that checks if the agent execution should continue based on the\n * number of iterations.\n * @param iterations The current number of iterations.\n * @returns A boolean indicating whether the agent execution should continue.\n */\n private shouldContinue(iterations: number): boolean {\n return this.maxIterations === undefined || iterations < this.maxIterations;\n }\n\n /** @ignore */\n async _call(\n inputs: ChainValues,\n runManager?: CallbackManagerForChainRun,\n config?: RunnableConfig\n ): Promise<AgentExecutorOutput> {\n const toolsByName = Object.fromEntries(\n this.tools.map((t) => [t.name.toLowerCase(), t])\n );\n const steps: AgentStep[] = [];\n let iterations = 0;\n\n const getOutput = async (\n finishStep: AgentFinish\n ): Promise<AgentExecutorOutput> => {\n const { returnValues } = finishStep;\n const additional = await this.agent.prepareForOutput(returnValues, steps);\n\n await runManager?.handleAgentEnd(finishStep);\n\n let response;\n\n if (this.returnIntermediateSteps) {\n response = { ...returnValues, intermediateSteps: steps, ...additional };\n } else {\n response = { ...returnValues, ...additional };\n }\n if (!this.returnOnlyOutputs) {\n response = { ...inputs, ...response };\n }\n return response;\n };\n\n while (this.shouldContinue(iterations)) {\n let output;\n try {\n output = await this.agent.plan(\n steps,\n inputs,\n runManager?.getChild(),\n config\n );\n } catch (e) {\n // eslint-disable-next-line no-instanceof/no-instanceof\n if (e instanceof OutputParserException) {\n let observation;\n let text = e.message;\n if (this.handleParsingErrors === true) {\n if (e.sendToLLM) {\n observation = e.observation;\n text = e.llmOutput ?? \"\";\n } else {\n observation = \"Invalid or incomplete response\";\n }\n } else if (typeof this.handleParsingErrors === \"string\") {\n observation = this.handleParsingErrors;\n } else if (typeof this.handleParsingErrors === \"function\") {\n observation = this.handleParsingErrors(e);\n } else {\n throw e;\n }\n output = {\n tool: \"_Exception\",\n toolInput: observation,\n log: text,\n } as AgentAction;\n } else {\n throw e;\n }\n }\n // Check if the agent has finished\n if (\"returnValues\" in output) {\n return getOutput(output);\n }\n\n let actions: AgentAction[];\n if (Array.isArray(output)) {\n actions = output as AgentAction[];\n } else {\n actions = [output as AgentAction];\n }\n\n const newSteps = await Promise.all(\n actions.map(async (action) => {\n await runManager?.handleAgentAction(action);\n const tool =\n action.tool === \"_Exception\"\n ? new ExceptionTool()\n : toolsByName[action.tool?.toLowerCase()];\n let observation;\n try {\n observation = tool\n ? await tool.invoke(\n action.toolInput,\n patchConfig(config, { callbacks: runManager?.getChild() })\n )\n : `${action.tool} is not a valid tool, try another one.`;\n if (typeof observation !== \"string\") {\n throw new Error(\n \"Received unsupported non-string response from tool call.\"\n );\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } catch (e: any) {\n // eslint-disable-next-line no-instanceof/no-instanceof\n if (e instanceof ToolInputParsingException) {\n if (this.handleParsingErrors === true) {\n observation =\n \"Invalid or incomplete tool input. Please try again.\";\n } else if (typeof this.handleParsingErrors === \"string\") {\n observation = this.handleParsingErrors;\n } else if (typeof this.handleParsingErrors === \"function\") {\n observation = this.handleParsingErrors(e);\n } else {\n throw e;\n }\n observation = await new ExceptionTool().call(\n observation,\n runManager?.getChild()\n );\n return { action, observation: observation ?? \"\" };\n } else if (this.handleToolRuntimeErrors !== undefined) {\n observation = this.handleToolRuntimeErrors(e);\n }\n }\n\n return { action, observation: observation ?? \"\" };\n })\n );\n\n steps.push(...newSteps);\n\n const lastStep = steps[steps.length - 1];\n const lastTool = toolsByName[lastStep.action.tool?.toLowerCase()];\n\n if (lastTool?.returnDirect) {\n return getOutput({\n returnValues: { [this.agent.returnValues[0]]: lastStep.observation },\n log: \"\",\n });\n }\n\n iterations += 1;\n }\n\n const finish = await this.agent.returnStoppedResponse(\n this.earlyStoppingMethod,\n steps,\n inputs\n );\n\n return getOutput(finish);\n }\n\n async _takeNextStep(\n nameToolMap: Record<string, ToolInterface>,\n inputs: ChainValues,\n intermediateSteps: AgentStep[],\n runManager?: CallbackManagerForChainRun,\n config?: RunnableConfig\n ): Promise<AgentFinish | AgentStep[]> {\n let output;\n try {\n output = await this.agent.plan(\n intermediateSteps,\n inputs,\n runManager?.getChild(),\n config\n );\n } catch (e) {\n // eslint-disable-next-line no-instanceof/no-instanceof\n if (e instanceof OutputParserException) {\n let observation;\n let text = e.message;\n if (this.handleParsingErrors === true) {\n if (e.sendToLLM) {\n observation = e.observation;\n text = e.llmOutput ?? \"\";\n } else {\n observation = \"Invalid or incomplete response\";\n }\n } else if (typeof this.handleParsingErrors === \"string\") {\n observation = this.handleParsingErrors;\n } else if (typeof this.handleParsingErrors === \"function\") {\n observation = this.handleParsingErrors(e);\n } else {\n throw e;\n }\n output = {\n tool: \"_Exception\",\n toolInput: observation,\n log: text,\n } as AgentAction;\n } else {\n throw e;\n }\n }\n\n if (\"returnValues\" in output) {\n return output;\n }\n\n let actions: AgentAction[];\n if (Array.isArray(output)) {\n actions = output as AgentAction[];\n } else {\n actions = [output as AgentAction];\n }\n\n const result: AgentStep[] = [];\n for (const agentAction of actions) {\n let observation = \"\";\n if (runManager) {\n await runManager?.handleAgentAction(agentAction);\n }\n if (agentAction.tool in nameToolMap) {\n const tool = nameToolMap[agentAction.tool];\n try {\n observation = await tool.call(\n agentAction.toolInput,\n runManager?.getChild()\n );\n if (typeof observation !== \"string\") {\n throw new Error(\n \"Received unsupported non-string response from tool call.\"\n );\n }\n } catch (e) {\n // eslint-disable-next-line no-instanceof/no-instanceof\n if (e instanceof ToolInputParsingException) {\n if (this.handleParsingErrors === true) {\n observation =\n \"Invalid or incomplete tool input. Please try again.\";\n } else if (typeof this.handleParsingErrors === \"string\") {\n observation = this.handleParsingErrors;\n } else if (typeof this.handleParsingErrors === \"function\") {\n observation = this.handleParsingErrors(e);\n } else {\n throw e;\n }\n observation = await new ExceptionTool().call(\n observation,\n runManager?.getChild()\n );\n }\n }\n } else {\n observation = `${\n agentAction.tool\n } is not a valid tool, try another available tool: ${Object.keys(\n nameToolMap\n ).join(\", \")}`;\n }\n result.push({\n action: agentAction,\n observation,\n });\n }\n return result;\n }\n\n async _return(\n output: AgentFinish,\n intermediateSteps: AgentStep[],\n runManager?: CallbackManagerForChainRun\n ): Promise<AgentExecutorOutput> {\n if (runManager) {\n await runManager.handleAgentEnd(output);\n }\n const finalOutput: Record<string, unknown> = output.returnValues;\n if (this.returnIntermediateSteps) {\n finalOutput.intermediateSteps = intermediateSteps;\n }\n return finalOutput;\n }\n\n async _getToolReturn(nextStepOutput: AgentStep): Promise<AgentFinish | null> {\n const { action, observation } = nextStepOutput;\n const nameToolMap = Object.fromEntries(\n this.tools.map((t) => [t.name.toLowerCase(), t])\n );\n const [returnValueKey = \"output\"] = this.agent.returnValues;\n // Invalid tools won't be in the map, so we return False.\n if (action.tool in nameToolMap) {\n if (nameToolMap[action.tool].returnDirect) {\n return {\n returnValues: { [returnValueKey]: observation },\n log: \"\",\n };\n }\n }\n return null;\n }\n\n _returnStoppedResponse(earlyStoppingMethod: StoppingMethod) {\n if (earlyStoppingMethod === \"force\") {\n return {\n returnValues: {\n output: \"Agent stopped due to iteration limit or time limit.\",\n },\n log: \"\",\n } as AgentFinish;\n }\n throw new Error(\n `Got unsupported early_stopping_method: ${earlyStoppingMethod}`\n );\n }\n\n async *_streamIterator(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n inputs: Record<string, any>,\n options?: Partial<RunnableConfig>\n ): AsyncGenerator<ChainValues> {\n const agentExecutorIterator = new AgentExecutorIterator({\n inputs,\n agentExecutor: this,\n config: options,\n // TODO: Deprecate these other parameters\n metadata: options?.metadata,\n tags: options?.tags,\n callbacks: options?.callbacks,\n });\n const iterator = agentExecutorIterator.streamIterator();\n for await (const step of iterator) {\n if (!step) {\n continue;\n }\n yield step;\n }\n }\n\n _chainType() {\n return \"agent_executor\" as const;\n }\n\n serialize(): SerializedLLMChain {\n throw new Error(\"Cannot serialize an AgentExecutor\");\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
+
const require_runtime = require('../../_virtual/_rolldown/runtime.cjs');
|
|
2
3
|
|
|
3
4
|
//#region src/agents/format_scratchpad/log.ts
|
|
4
|
-
var log_exports = {};
|
|
5
|
-
require_rolldown_runtime.__export(log_exports, { formatLogToString: () => formatLogToString });
|
|
5
|
+
var log_exports = /* @__PURE__ */ require_runtime.__exportAll({ formatLogToString: () => formatLogToString });
|
|
6
6
|
/**
|
|
7
7
|
* Construct the scratchpad that lets the agent continue its thought process.
|
|
8
8
|
* @param intermediateSteps
|
|
@@ -11,12 +11,11 @@ require_rolldown_runtime.__export(log_exports, { formatLogToString: () => format
|
|
|
11
11
|
* @returns a string with the formatted observations and agent logs
|
|
12
12
|
*/
|
|
13
13
|
function formatLogToString(intermediateSteps, observationPrefix = "Observation: ", llmPrefix = "Thought: ") {
|
|
14
|
-
|
|
14
|
+
return intermediateSteps.reduce((thoughts, { action, observation }) => thoughts + [
|
|
15
15
|
action.log,
|
|
16
16
|
`\n${observationPrefix}${observation}`,
|
|
17
17
|
llmPrefix
|
|
18
18
|
].join("\n"), "");
|
|
19
|
-
return formattedSteps;
|
|
20
19
|
}
|
|
21
20
|
|
|
22
21
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"log.cjs","names":[
|
|
1
|
+
{"version":3,"file":"log.cjs","names":[],"sources":["../../../src/agents/format_scratchpad/log.ts"],"sourcesContent":["import { AgentStep } from \"@langchain/core/agents\";\n\n/**\n * Construct the scratchpad that lets the agent continue its thought process.\n * @param intermediateSteps\n * @param observationPrefix\n * @param llmPrefix\n * @returns a string with the formatted observations and agent logs\n */\nexport function formatLogToString(\n intermediateSteps: AgentStep[],\n observationPrefix = \"Observation: \",\n llmPrefix = \"Thought: \"\n): string {\n const formattedSteps = intermediateSteps.reduce(\n (thoughts, { action, observation }) =>\n thoughts +\n [action.log, `\\n${observationPrefix}${observation}`, llmPrefix].join(\n \"\\n\"\n ),\n \"\"\n );\n return formattedSteps;\n}\n"],"mappings":";;;;;;;;;;;;AASA,SAAgB,kBACd,mBACA,oBAAoB,iBACpB,YAAY,aACJ;AASR,QARuB,kBAAkB,QACtC,UAAU,EAAE,QAAQ,kBACnB,WACA;EAAC,OAAO;EAAK,KAAK,oBAAoB;EAAe;EAAU,CAAC,KAC9D,KACD,EACH,GACD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"log.d.cts","names":[
|
|
1
|
+
{"version":3,"file":"log.d.cts","names":[],"sources":["../../../src/agents/format_scratchpad/log.ts"],"mappings":";;;;;AASA;;;;;iBAAgB,iBAAA,CACd,iBAAA,EAAmB,SAAA,IACnB,iBAAA,WACA,SAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"log.d.ts","names":[
|
|
1
|
+
{"version":3,"file":"log.d.ts","names":[],"sources":["../../../src/agents/format_scratchpad/log.ts"],"mappings":";;;;;AASA;;;;;iBAAgB,iBAAA,CACd,iBAAA,EAAmB,SAAA,IACnB,iBAAA,WACA,SAAA"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { __exportAll } from "../../_virtual/_rolldown/runtime.js";
|
|
2
2
|
|
|
3
3
|
//#region src/agents/format_scratchpad/log.ts
|
|
4
|
-
var log_exports = {};
|
|
5
|
-
__export(log_exports, { formatLogToString: () => formatLogToString });
|
|
4
|
+
var log_exports = /* @__PURE__ */ __exportAll({ formatLogToString: () => formatLogToString });
|
|
6
5
|
/**
|
|
7
6
|
* Construct the scratchpad that lets the agent continue its thought process.
|
|
8
7
|
* @param intermediateSteps
|
|
@@ -11,12 +10,11 @@ __export(log_exports, { formatLogToString: () => formatLogToString });
|
|
|
11
10
|
* @returns a string with the formatted observations and agent logs
|
|
12
11
|
*/
|
|
13
12
|
function formatLogToString(intermediateSteps, observationPrefix = "Observation: ", llmPrefix = "Thought: ") {
|
|
14
|
-
|
|
13
|
+
return intermediateSteps.reduce((thoughts, { action, observation }) => thoughts + [
|
|
15
14
|
action.log,
|
|
16
15
|
`\n${observationPrefix}${observation}`,
|
|
17
16
|
llmPrefix
|
|
18
17
|
].join("\n"), "");
|
|
19
|
-
return formattedSteps;
|
|
20
18
|
}
|
|
21
19
|
|
|
22
20
|
//#endregion
|