@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":"prompt.cjs","names":[],"sources":["../../../src/agents/react/prompt.ts"],"sourcesContent":["export const FORMAT_INSTRUCTIONS = `Use the following format:\n\nQuestion: the input question you must answer\nThought: you should always think about what to do\nAction: the action to take, should be one of [{tool_names}]\nAction Input: the input to the action\nObservation: the result of the action\n... (this Thought/Action/Action Input/Observation can repeat N times)\nThought: I now know the final answer\nFinal Answer: the final answer to the original input question`;\n"],"mappings":";;AAAA,MAAa,sBAAsB
|
|
1
|
+
{"version":3,"file":"prompt.cjs","names":[],"sources":["../../../src/agents/react/prompt.ts"],"sourcesContent":["export const FORMAT_INSTRUCTIONS = `Use the following format:\n\nQuestion: the input question you must answer\nThought: you should always think about what to do\nAction: the action to take, should be one of [{tool_names}]\nAction Input: the input to the action\nObservation: the result of the action\n... (this Thought/Action/Action Input/Observation can repeat N times)\nThought: I now know the final answer\nFinal Answer: the final answer to the original input question`;\n"],"mappings":";;AAAA,MAAa,sBAAsB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt.js","names":[],"sources":["../../../src/agents/react/prompt.ts"],"sourcesContent":["export const FORMAT_INSTRUCTIONS = `Use the following format:\n\nQuestion: the input question you must answer\nThought: you should always think about what to do\nAction: the action to take, should be one of [{tool_names}]\nAction Input: the input to the action\nObservation: the result of the action\n... (this Thought/Action/Action Input/Observation can repeat N times)\nThought: I now know the final answer\nFinal Answer: the final answer to the original input question`;\n"],"mappings":";AAAA,MAAa,sBAAsB
|
|
1
|
+
{"version":3,"file":"prompt.js","names":[],"sources":["../../../src/agents/react/prompt.ts"],"sourcesContent":["export const FORMAT_INSTRUCTIONS = `Use the following format:\n\nQuestion: the input question you must answer\nThought: you should always think about what to do\nAction: the action to take, should be one of [{tool_names}]\nAction Input: the input to the action\nObservation: the result of the action\n... (this Thought/Action/Action Input/Observation can repeat N times)\nThought: I now know the final answer\nFinal Answer: the final answer to the original input question`;\n"],"mappings":";AAAA,MAAa,sBAAsB"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
const
|
|
1
|
+
const require_runtime = require('../../_virtual/_rolldown/runtime.cjs');
|
|
2
|
+
const require_agents_format_scratchpad_log = require('../format_scratchpad/log.cjs');
|
|
2
3
|
const require_agent = require('../agent.cjs');
|
|
3
4
|
const require_llm_chain = require('../../chains/llm_chain.cjs');
|
|
4
5
|
const require_prompt = require('./prompt.cjs');
|
|
5
6
|
const require_outputParser = require('./outputParser.cjs');
|
|
6
7
|
const require_tools_render = require('../../tools/render.cjs');
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
const __langchain_core_utils_json_schema = require_rolldown_runtime.__toESM(require("@langchain/core/utils/json_schema"));
|
|
8
|
+
let _langchain_core_prompts = require("@langchain/core/prompts");
|
|
9
|
+
let _langchain_core_runnables = require("@langchain/core/runnables");
|
|
10
|
+
let _langchain_core_language_models_base = require("@langchain/core/language_models/base");
|
|
11
|
+
let _langchain_core_utils_function_calling = require("@langchain/core/utils/function_calling");
|
|
12
|
+
let _langchain_core_utils_types = require("@langchain/core/utils/types");
|
|
13
|
+
let _langchain_core_utils_json_schema = require("@langchain/core/utils/json_schema");
|
|
14
14
|
|
|
15
15
|
//#region src/agents/structured_chat/index.ts
|
|
16
16
|
/**
|
|
@@ -86,7 +86,7 @@ var StructuredChatAgent = class StructuredChatAgent extends require_agent.Agent
|
|
|
86
86
|
*/
|
|
87
87
|
static createToolSchemasString(tools) {
|
|
88
88
|
return tools.map((tool) => {
|
|
89
|
-
const jsonSchema = (0,
|
|
89
|
+
const jsonSchema = (0, _langchain_core_utils_types.isInteropZodSchema)(tool.schema) ? (0, _langchain_core_utils_json_schema.toJsonSchema)(tool.schema) : tool.schema;
|
|
90
90
|
return `${tool.name}: ${tool.description}, args: ${JSON.stringify(jsonSchema?.properties)}`;
|
|
91
91
|
}).join("\n");
|
|
92
92
|
}
|
|
@@ -102,14 +102,13 @@ var StructuredChatAgent = class StructuredChatAgent extends require_agent.Agent
|
|
|
102
102
|
*/
|
|
103
103
|
static createPrompt(tools, args) {
|
|
104
104
|
const { prefix = require_prompt.PREFIX, suffix = require_prompt.SUFFIX, inputVariables = ["input", "agent_scratchpad"], humanMessageTemplate = "{input}\n\n{agent_scratchpad}", memoryPrompts = [] } = args ?? {};
|
|
105
|
-
const template = [
|
|
106
|
-
prefix,
|
|
107
|
-
require_prompt.FORMAT_INSTRUCTIONS,
|
|
108
|
-
suffix
|
|
109
|
-
].join("\n\n");
|
|
110
105
|
const messages = [
|
|
111
|
-
new
|
|
112
|
-
template
|
|
106
|
+
new _langchain_core_prompts.SystemMessagePromptTemplate(new _langchain_core_prompts.PromptTemplate({
|
|
107
|
+
template: [
|
|
108
|
+
prefix,
|
|
109
|
+
require_prompt.FORMAT_INSTRUCTIONS,
|
|
110
|
+
suffix
|
|
111
|
+
].join("\n\n"),
|
|
113
112
|
inputVariables,
|
|
114
113
|
partialVariables: {
|
|
115
114
|
tool_schemas: StructuredChatAgent.createToolSchemasString(tools),
|
|
@@ -117,12 +116,12 @@ var StructuredChatAgent = class StructuredChatAgent extends require_agent.Agent
|
|
|
117
116
|
}
|
|
118
117
|
})),
|
|
119
118
|
...memoryPrompts,
|
|
120
|
-
new
|
|
119
|
+
new _langchain_core_prompts.HumanMessagePromptTemplate(new _langchain_core_prompts.PromptTemplate({
|
|
121
120
|
template: humanMessageTemplate,
|
|
122
121
|
inputVariables
|
|
123
122
|
}))
|
|
124
123
|
];
|
|
125
|
-
return
|
|
124
|
+
return _langchain_core_prompts.ChatPromptTemplate.fromMessages(messages);
|
|
126
125
|
}
|
|
127
126
|
/**
|
|
128
127
|
* Creates a StructuredChatAgent from an LLM and a list of tools.
|
|
@@ -140,13 +139,12 @@ var StructuredChatAgent = class StructuredChatAgent extends require_agent.Agent
|
|
|
140
139
|
llm,
|
|
141
140
|
toolNames: tools.map((tool) => tool.name)
|
|
142
141
|
});
|
|
143
|
-
const chain = new require_llm_chain.LLMChain({
|
|
144
|
-
prompt,
|
|
145
|
-
llm,
|
|
146
|
-
callbacks: args?.callbacks
|
|
147
|
-
});
|
|
148
142
|
return new StructuredChatAgent({
|
|
149
|
-
llmChain:
|
|
143
|
+
llmChain: new require_llm_chain.LLMChain({
|
|
144
|
+
prompt,
|
|
145
|
+
llm,
|
|
146
|
+
callbacks: args?.callbacks
|
|
147
|
+
}),
|
|
150
148
|
outputParser,
|
|
151
149
|
allowedTools: tools.map((t) => t.name)
|
|
152
150
|
});
|
|
@@ -216,16 +214,16 @@ async function createStructuredChatAgent({ llm, tools, prompt, streamRunnable })
|
|
|
216
214
|
].filter((v) => !prompt.inputVariables.includes(v));
|
|
217
215
|
if (missingVariables.length > 0) throw new Error(`Provided prompt is missing required input variables: ${JSON.stringify(missingVariables)}`);
|
|
218
216
|
let toolNames = [];
|
|
219
|
-
if (tools.every(
|
|
220
|
-
else if (tools.every(
|
|
217
|
+
if (tools.every(_langchain_core_language_models_base.isOpenAITool)) toolNames = tools.map((tool) => tool.function.name);
|
|
218
|
+
else if (tools.every(_langchain_core_utils_function_calling.isStructuredTool)) toolNames = tools.map((tool) => tool.name);
|
|
221
219
|
else throw new Error("All tools must be either OpenAI or Structured tools, not a mix.");
|
|
222
220
|
const partialedPrompt = await prompt.partial({
|
|
223
221
|
tools: require_tools_render.renderTextDescriptionAndArgs(tools),
|
|
224
222
|
tool_names: toolNames.join(", ")
|
|
225
223
|
});
|
|
226
224
|
const llmWithStop = llm.withConfig({ stop: ["Observation"] });
|
|
227
|
-
|
|
228
|
-
|
|
225
|
+
return require_agent.AgentRunnableSequence.fromRunnables([
|
|
226
|
+
_langchain_core_runnables.RunnablePassthrough.assign({ agent_scratchpad: (input) => require_agents_format_scratchpad_log.formatLogToString(input.steps) }),
|
|
229
227
|
partialedPrompt,
|
|
230
228
|
llmWithStop,
|
|
231
229
|
require_outputParser.StructuredChatOutputParserWithRetries.fromLLM(llm, { toolNames })
|
|
@@ -234,7 +232,6 @@ async function createStructuredChatAgent({ llm, tools, prompt, streamRunnable })
|
|
|
234
232
|
streamRunnable,
|
|
235
233
|
singleAction: true
|
|
236
234
|
});
|
|
237
|
-
return agent;
|
|
238
235
|
}
|
|
239
236
|
|
|
240
237
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","names":["Agent","input: StructuredChatAgentInput","tools: StructuredToolInterface[]","fields?: OutputParserArgs & {\n toolNames: string[];\n }","StructuredChatOutputParserWithRetries","steps: AgentStep[]","args?: StructuredChatCreatePromptArgs","PREFIX","SUFFIX","FORMAT_INSTRUCTIONS","SystemMessagePromptTemplate","PromptTemplate","HumanMessagePromptTemplate","ChatPromptTemplate","llm: BaseLanguageModelInterface","args?: StructuredChatCreatePromptArgs & AgentArgs","LLMChain","toolNames: string[]","isOpenAITool","isStructuredTool","renderTextDescriptionAndArgs","AgentRunnableSequence","RunnablePassthrough","input: { steps: AgentStep[] }","formatLogToString"],"sources":["../../../src/agents/structured_chat/index.ts"],"sourcesContent":["import type { StructuredToolInterface } from \"@langchain/core/tools\";\nimport {\n isOpenAITool,\n type BaseLanguageModel,\n type BaseLanguageModelInterface,\n type ToolDefinition,\n} from \"@langchain/core/language_models/base\";\nimport { RunnablePassthrough } from \"@langchain/core/runnables\";\nimport type { BasePromptTemplate } from \"@langchain/core/prompts\";\nimport {\n BaseMessagePromptTemplate,\n ChatPromptTemplate,\n HumanMessagePromptTemplate,\n SystemMessagePromptTemplate,\n PromptTemplate,\n} from \"@langchain/core/prompts\";\nimport { AgentStep } from \"@langchain/core/agents\";\nimport { isStructuredTool } from \"@langchain/core/utils/function_calling\";\nimport { isInteropZodSchema } from \"@langchain/core/utils/types\";\nimport {\n type JsonSchema7Type,\n toJsonSchema,\n} from \"@langchain/core/utils/json_schema\";\nimport { LLMChain } from \"../../chains/llm_chain.js\";\nimport { Optional } from \"../../types/type-utils.js\";\nimport {\n Agent,\n AgentArgs,\n AgentRunnableSequence,\n OutputParserArgs,\n} from \"../agent.js\";\nimport { AgentInput } from \"../types.js\";\nimport { StructuredChatOutputParserWithRetries } from \"./outputParser.js\";\nimport { FORMAT_INSTRUCTIONS, PREFIX, SUFFIX } from \"./prompt.js\";\nimport { renderTextDescriptionAndArgs } from \"../../tools/render.js\";\nimport { formatLogToString } from \"../format_scratchpad/log.js\";\n\n/**\n * Interface for arguments used to create a prompt for a\n * StructuredChatAgent.\n */\nexport interface StructuredChatCreatePromptArgs {\n /** String to put after the list of tools. */\n suffix?: string;\n /** String to put before the list of tools. */\n prefix?: string;\n /** String to use directly as the human message template. */\n humanMessageTemplate?: string;\n /** List of input variables the final prompt will expect. */\n inputVariables?: string[];\n /** List of historical prompts from memory. */\n memoryPrompts?: BaseMessagePromptTemplate[];\n}\n\n/**\n * Type for input data for creating a StructuredChatAgent, with the\n * 'outputParser' property made optional.\n */\nexport type StructuredChatAgentInput = Optional<AgentInput, \"outputParser\">;\n\n/**\n * Agent that interoperates with Structured Tools using React logic.\n * @augments Agent\n */\nexport class StructuredChatAgent extends Agent {\n static lc_name() {\n return \"StructuredChatAgent\";\n }\n\n lc_namespace = [\"langchain\", \"agents\", \"structured_chat\"];\n\n constructor(input: StructuredChatAgentInput) {\n const outputParser =\n input?.outputParser ?? StructuredChatAgent.getDefaultOutputParser();\n super({ ...input, outputParser });\n }\n\n _agentType() {\n return \"structured-chat-zero-shot-react-description\" as const;\n }\n\n observationPrefix() {\n return \"Observation: \";\n }\n\n llmPrefix() {\n return \"Thought:\";\n }\n\n _stop(): string[] {\n return [\"Observation:\"];\n }\n\n /**\n * Validates that all provided tools have a description. Throws an error\n * if any tool lacks a description.\n * @param tools Array of StructuredTool instances to validate.\n */\n static validateTools(tools: StructuredToolInterface[]) {\n const descriptionlessTool = tools.find((tool) => !tool.description);\n if (descriptionlessTool) {\n const msg =\n `Got a tool ${descriptionlessTool.name} without a description.` +\n ` This agent requires descriptions for all tools.`;\n throw new Error(msg);\n }\n }\n\n /**\n * Returns a default output parser for the StructuredChatAgent. If an LLM\n * is provided, it creates an output parser with retry logic from the LLM.\n * @param fields Optional fields to customize the output parser. Can include an LLM and a list of tool names.\n * @returns An instance of StructuredChatOutputParserWithRetries.\n */\n static getDefaultOutputParser(\n fields?: OutputParserArgs & {\n toolNames: string[];\n }\n ) {\n if (fields?.llm) {\n return StructuredChatOutputParserWithRetries.fromLLM(fields.llm, {\n toolNames: fields.toolNames,\n });\n }\n return new StructuredChatOutputParserWithRetries({\n toolNames: fields?.toolNames,\n });\n }\n\n /**\n * Constructs the agent's scratchpad from a list of steps. If the agent's\n * scratchpad is not empty, it prepends a message indicating that the\n * agent has not seen any previous work.\n * @param steps Array of AgentStep instances to construct the scratchpad from.\n * @returns A Promise that resolves to a string representing the agent's scratchpad.\n */\n async constructScratchPad(steps: AgentStep[]): Promise<string> {\n const agentScratchpad = await super.constructScratchPad(steps);\n if (agentScratchpad) {\n return `This was your previous work (but I haven't seen any of it! I only see what you return as final answer):\\n${agentScratchpad}`;\n }\n return agentScratchpad;\n }\n\n /**\n * Creates a string representation of the schemas of the provided tools.\n * @param tools Array of StructuredTool instances to create the schemas string from.\n * @returns A string representing the schemas of the provided tools.\n */\n static createToolSchemasString(tools: StructuredToolInterface[]) {\n return tools\n .map((tool) => {\n const jsonSchema = (\n isInteropZodSchema(tool.schema)\n ? toJsonSchema(tool.schema)\n : tool.schema\n ) as { properties?: Record<string, JsonSchema7Type> } | undefined;\n return `${tool.name}: ${tool.description}, args: ${JSON.stringify(\n jsonSchema?.properties\n )}`;\n })\n .join(\"\\n\");\n }\n\n /**\n * Create prompt in the style of the agent.\n *\n * @param tools - List of tools the agent will have access to, used to format the prompt.\n * @param args - Arguments to create the prompt with.\n * @param args.suffix - String to put after the list of tools.\n * @param args.prefix - String to put before the list of tools.\n * @param args.inputVariables List of input variables the final prompt will expect.\n * @param args.memoryPrompts List of historical prompts from memory.\n */\n static createPrompt(\n tools: StructuredToolInterface[],\n args?: StructuredChatCreatePromptArgs\n ) {\n const {\n prefix = PREFIX,\n suffix = SUFFIX,\n inputVariables = [\"input\", \"agent_scratchpad\"],\n humanMessageTemplate = \"{input}\\n\\n{agent_scratchpad}\",\n memoryPrompts = [],\n } = args ?? {};\n const template = [prefix, FORMAT_INSTRUCTIONS, suffix].join(\"\\n\\n\");\n const messages = [\n new SystemMessagePromptTemplate(\n new PromptTemplate({\n template,\n inputVariables,\n partialVariables: {\n tool_schemas: StructuredChatAgent.createToolSchemasString(tools),\n tool_names: tools.map((tool) => tool.name).join(\", \"),\n },\n })\n ),\n ...memoryPrompts,\n new HumanMessagePromptTemplate(\n new PromptTemplate({\n template: humanMessageTemplate,\n inputVariables,\n })\n ),\n ];\n return ChatPromptTemplate.fromMessages(messages);\n }\n\n /**\n * Creates a StructuredChatAgent from an LLM and a list of tools.\n * Validates the tools, creates a prompt, and sets up an LLM chain for the\n * agent.\n * @param llm BaseLanguageModel instance to create the agent from.\n * @param tools Array of StructuredTool instances to create the agent from.\n * @param args Optional arguments to customize the creation of the agent. Can include arguments for creating the prompt and AgentArgs.\n * @returns A new instance of StructuredChatAgent.\n */\n static fromLLMAndTools(\n llm: BaseLanguageModelInterface,\n tools: StructuredToolInterface[],\n args?: StructuredChatCreatePromptArgs & AgentArgs\n ) {\n StructuredChatAgent.validateTools(tools);\n const prompt = StructuredChatAgent.createPrompt(tools, args);\n const outputParser =\n args?.outputParser ??\n StructuredChatAgent.getDefaultOutputParser({\n llm,\n toolNames: tools.map((tool) => tool.name),\n });\n const chain = new LLMChain({\n prompt,\n llm,\n callbacks: args?.callbacks,\n });\n\n return new StructuredChatAgent({\n llmChain: chain,\n outputParser,\n allowedTools: tools.map((t) => t.name),\n });\n }\n}\n\n/**\n * Params used by the createStructuredChatAgent function.\n */\nexport type CreateStructuredChatAgentParams = {\n /** LLM to use as the agent. */\n llm: BaseLanguageModelInterface;\n /** Tools this agent has access to. */\n tools: (StructuredToolInterface | ToolDefinition)[];\n /**\n * The prompt to use. Must have input keys for\n * `tools`, `tool_names`, and `agent_scratchpad`.\n */\n prompt: BasePromptTemplate;\n /**\n * Whether to invoke the underlying model in streaming mode,\n * allowing streaming of intermediate steps. Defaults to true.\n */\n streamRunnable?: boolean;\n};\n\n/**\n * Create an agent aimed at supporting tools with multiple inputs.\n * @param params Params required to create the agent. Includes an LLM, tools, and prompt.\n * @returns A runnable sequence representing an agent. It takes as input all the same input\n * variables as the prompt passed in does. It returns as output either an\n * AgentAction or AgentFinish.\n *\n * @example\n * ```typescript\n * import { AgentExecutor, createStructuredChatAgent } from \"langchain/agents\";\n * import { pull } from \"langchain/hub\";\n * import type { ChatPromptTemplate } from \"@langchain/core/prompts\";\n * import { AIMessage, HumanMessage } from \"@langchain/core/messages\";\n *\n * import { ChatOpenAI } from \"@langchain/openai\";\n *\n * // Define the tools the agent will have access to.\n * const tools = [...];\n *\n * // Get the prompt to use - you can modify this!\n * // If you want to see the prompt in full, you can at:\n * // https://smith.langchain.com/hub/hwchase17/structured-chat-agent\n * const prompt = await pull<ChatPromptTemplate>(\n * \"hwchase17/structured-chat-agent\"\n * );\n *\n * const llm = new ChatOpenAI({\n * temperature: 0,\n * model: \"gpt-3.5-turbo-1106\",\n * });\n *\n * const agent = await createStructuredChatAgent({\n * llm,\n * tools,\n * prompt,\n * });\n *\n * const agentExecutor = new AgentExecutor({\n * agent,\n * tools,\n * });\n *\n * const result = await agentExecutor.invoke({\n * input: \"what is LangChain?\",\n * });\n *\n * // With chat history\n * const result2 = await agentExecutor.invoke({\n * input: \"what's my name?\",\n * chat_history: [\n * new HumanMessage(\"hi! my name is cob\"),\n * new AIMessage(\"Hello Cob! How can I assist you today?\"),\n * ],\n * });\n * ```\n */\nexport async function createStructuredChatAgent({\n llm,\n tools,\n prompt,\n streamRunnable,\n}: CreateStructuredChatAgentParams) {\n const missingVariables = [\"tools\", \"tool_names\", \"agent_scratchpad\"].filter(\n (v) => !prompt.inputVariables.includes(v)\n );\n if (missingVariables.length > 0) {\n throw new Error(\n `Provided prompt is missing required input variables: ${JSON.stringify(\n missingVariables\n )}`\n );\n }\n let toolNames: string[] = [];\n if (tools.every(isOpenAITool)) {\n toolNames = tools.map((tool) => tool.function.name);\n } else if (tools.every(isStructuredTool)) {\n toolNames = tools.map((tool) => tool.name);\n } else {\n throw new Error(\n \"All tools must be either OpenAI or Structured tools, not a mix.\"\n );\n }\n const partialedPrompt = await prompt.partial({\n tools: renderTextDescriptionAndArgs(tools),\n tool_names: toolNames.join(\", \"),\n });\n // TODO: Add .bind to core runnable interface.\n const llmWithStop = (llm as BaseLanguageModel).withConfig({\n stop: [\"Observation\"],\n });\n const agent = AgentRunnableSequence.fromRunnables(\n [\n RunnablePassthrough.assign({\n agent_scratchpad: (input: { steps: AgentStep[] }) =>\n formatLogToString(input.steps),\n }),\n partialedPrompt,\n llmWithStop,\n StructuredChatOutputParserWithRetries.fromLLM(llm, {\n toolNames,\n }),\n ],\n {\n name: \"StructuredChatAgent\",\n streamRunnable,\n singleAction: true,\n }\n );\n return agent;\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.cjs","names":["Agent","StructuredChatOutputParserWithRetries","PREFIX","SUFFIX","SystemMessagePromptTemplate","PromptTemplate","FORMAT_INSTRUCTIONS","HumanMessagePromptTemplate","ChatPromptTemplate","LLMChain","isOpenAITool","isStructuredTool","renderTextDescriptionAndArgs","AgentRunnableSequence","RunnablePassthrough","formatLogToString"],"sources":["../../../src/agents/structured_chat/index.ts"],"sourcesContent":["import type { StructuredToolInterface } from \"@langchain/core/tools\";\nimport {\n isOpenAITool,\n type BaseLanguageModel,\n type BaseLanguageModelInterface,\n type ToolDefinition,\n} from \"@langchain/core/language_models/base\";\nimport { RunnablePassthrough } from \"@langchain/core/runnables\";\nimport type { BasePromptTemplate } from \"@langchain/core/prompts\";\nimport {\n BaseMessagePromptTemplate,\n ChatPromptTemplate,\n HumanMessagePromptTemplate,\n SystemMessagePromptTemplate,\n PromptTemplate,\n} from \"@langchain/core/prompts\";\nimport { AgentStep } from \"@langchain/core/agents\";\nimport { isStructuredTool } from \"@langchain/core/utils/function_calling\";\nimport { isInteropZodSchema } from \"@langchain/core/utils/types\";\nimport {\n type JsonSchema7Type,\n toJsonSchema,\n} from \"@langchain/core/utils/json_schema\";\nimport { LLMChain } from \"../../chains/llm_chain.js\";\nimport { Optional } from \"../../types/type-utils.js\";\nimport {\n Agent,\n AgentArgs,\n AgentRunnableSequence,\n OutputParserArgs,\n} from \"../agent.js\";\nimport { AgentInput } from \"../types.js\";\nimport { StructuredChatOutputParserWithRetries } from \"./outputParser.js\";\nimport { FORMAT_INSTRUCTIONS, PREFIX, SUFFIX } from \"./prompt.js\";\nimport { renderTextDescriptionAndArgs } from \"../../tools/render.js\";\nimport { formatLogToString } from \"../format_scratchpad/log.js\";\n\n/**\n * Interface for arguments used to create a prompt for a\n * StructuredChatAgent.\n */\nexport interface StructuredChatCreatePromptArgs {\n /** String to put after the list of tools. */\n suffix?: string;\n /** String to put before the list of tools. */\n prefix?: string;\n /** String to use directly as the human message template. */\n humanMessageTemplate?: string;\n /** List of input variables the final prompt will expect. */\n inputVariables?: string[];\n /** List of historical prompts from memory. */\n memoryPrompts?: BaseMessagePromptTemplate[];\n}\n\n/**\n * Type for input data for creating a StructuredChatAgent, with the\n * 'outputParser' property made optional.\n */\nexport type StructuredChatAgentInput = Optional<AgentInput, \"outputParser\">;\n\n/**\n * Agent that interoperates with Structured Tools using React logic.\n * @augments Agent\n */\nexport class StructuredChatAgent extends Agent {\n static lc_name() {\n return \"StructuredChatAgent\";\n }\n\n lc_namespace = [\"langchain\", \"agents\", \"structured_chat\"];\n\n constructor(input: StructuredChatAgentInput) {\n const outputParser =\n input?.outputParser ?? StructuredChatAgent.getDefaultOutputParser();\n super({ ...input, outputParser });\n }\n\n _agentType() {\n return \"structured-chat-zero-shot-react-description\" as const;\n }\n\n observationPrefix() {\n return \"Observation: \";\n }\n\n llmPrefix() {\n return \"Thought:\";\n }\n\n _stop(): string[] {\n return [\"Observation:\"];\n }\n\n /**\n * Validates that all provided tools have a description. Throws an error\n * if any tool lacks a description.\n * @param tools Array of StructuredTool instances to validate.\n */\n static validateTools(tools: StructuredToolInterface[]) {\n const descriptionlessTool = tools.find((tool) => !tool.description);\n if (descriptionlessTool) {\n const msg =\n `Got a tool ${descriptionlessTool.name} without a description.` +\n ` This agent requires descriptions for all tools.`;\n throw new Error(msg);\n }\n }\n\n /**\n * Returns a default output parser for the StructuredChatAgent. If an LLM\n * is provided, it creates an output parser with retry logic from the LLM.\n * @param fields Optional fields to customize the output parser. Can include an LLM and a list of tool names.\n * @returns An instance of StructuredChatOutputParserWithRetries.\n */\n static getDefaultOutputParser(\n fields?: OutputParserArgs & {\n toolNames: string[];\n }\n ) {\n if (fields?.llm) {\n return StructuredChatOutputParserWithRetries.fromLLM(fields.llm, {\n toolNames: fields.toolNames,\n });\n }\n return new StructuredChatOutputParserWithRetries({\n toolNames: fields?.toolNames,\n });\n }\n\n /**\n * Constructs the agent's scratchpad from a list of steps. If the agent's\n * scratchpad is not empty, it prepends a message indicating that the\n * agent has not seen any previous work.\n * @param steps Array of AgentStep instances to construct the scratchpad from.\n * @returns A Promise that resolves to a string representing the agent's scratchpad.\n */\n async constructScratchPad(steps: AgentStep[]): Promise<string> {\n const agentScratchpad = await super.constructScratchPad(steps);\n if (agentScratchpad) {\n return `This was your previous work (but I haven't seen any of it! I only see what you return as final answer):\\n${agentScratchpad}`;\n }\n return agentScratchpad;\n }\n\n /**\n * Creates a string representation of the schemas of the provided tools.\n * @param tools Array of StructuredTool instances to create the schemas string from.\n * @returns A string representing the schemas of the provided tools.\n */\n static createToolSchemasString(tools: StructuredToolInterface[]) {\n return tools\n .map((tool) => {\n const jsonSchema = (\n isInteropZodSchema(tool.schema)\n ? toJsonSchema(tool.schema)\n : tool.schema\n ) as { properties?: Record<string, JsonSchema7Type> } | undefined;\n return `${tool.name}: ${tool.description}, args: ${JSON.stringify(\n jsonSchema?.properties\n )}`;\n })\n .join(\"\\n\");\n }\n\n /**\n * Create prompt in the style of the agent.\n *\n * @param tools - List of tools the agent will have access to, used to format the prompt.\n * @param args - Arguments to create the prompt with.\n * @param args.suffix - String to put after the list of tools.\n * @param args.prefix - String to put before the list of tools.\n * @param args.inputVariables List of input variables the final prompt will expect.\n * @param args.memoryPrompts List of historical prompts from memory.\n */\n static createPrompt(\n tools: StructuredToolInterface[],\n args?: StructuredChatCreatePromptArgs\n ) {\n const {\n prefix = PREFIX,\n suffix = SUFFIX,\n inputVariables = [\"input\", \"agent_scratchpad\"],\n humanMessageTemplate = \"{input}\\n\\n{agent_scratchpad}\",\n memoryPrompts = [],\n } = args ?? {};\n const template = [prefix, FORMAT_INSTRUCTIONS, suffix].join(\"\\n\\n\");\n const messages = [\n new SystemMessagePromptTemplate(\n new PromptTemplate({\n template,\n inputVariables,\n partialVariables: {\n tool_schemas: StructuredChatAgent.createToolSchemasString(tools),\n tool_names: tools.map((tool) => tool.name).join(\", \"),\n },\n })\n ),\n ...memoryPrompts,\n new HumanMessagePromptTemplate(\n new PromptTemplate({\n template: humanMessageTemplate,\n inputVariables,\n })\n ),\n ];\n return ChatPromptTemplate.fromMessages(messages);\n }\n\n /**\n * Creates a StructuredChatAgent from an LLM and a list of tools.\n * Validates the tools, creates a prompt, and sets up an LLM chain for the\n * agent.\n * @param llm BaseLanguageModel instance to create the agent from.\n * @param tools Array of StructuredTool instances to create the agent from.\n * @param args Optional arguments to customize the creation of the agent. Can include arguments for creating the prompt and AgentArgs.\n * @returns A new instance of StructuredChatAgent.\n */\n static fromLLMAndTools(\n llm: BaseLanguageModelInterface,\n tools: StructuredToolInterface[],\n args?: StructuredChatCreatePromptArgs & AgentArgs\n ) {\n StructuredChatAgent.validateTools(tools);\n const prompt = StructuredChatAgent.createPrompt(tools, args);\n const outputParser =\n args?.outputParser ??\n StructuredChatAgent.getDefaultOutputParser({\n llm,\n toolNames: tools.map((tool) => tool.name),\n });\n const chain = new LLMChain({\n prompt,\n llm,\n callbacks: args?.callbacks,\n });\n\n return new StructuredChatAgent({\n llmChain: chain,\n outputParser,\n allowedTools: tools.map((t) => t.name),\n });\n }\n}\n\n/**\n * Params used by the createStructuredChatAgent function.\n */\nexport type CreateStructuredChatAgentParams = {\n /** LLM to use as the agent. */\n llm: BaseLanguageModelInterface;\n /** Tools this agent has access to. */\n tools: (StructuredToolInterface | ToolDefinition)[];\n /**\n * The prompt to use. Must have input keys for\n * `tools`, `tool_names`, and `agent_scratchpad`.\n */\n prompt: BasePromptTemplate;\n /**\n * Whether to invoke the underlying model in streaming mode,\n * allowing streaming of intermediate steps. Defaults to true.\n */\n streamRunnable?: boolean;\n};\n\n/**\n * Create an agent aimed at supporting tools with multiple inputs.\n * @param params Params required to create the agent. Includes an LLM, tools, and prompt.\n * @returns A runnable sequence representing an agent. It takes as input all the same input\n * variables as the prompt passed in does. It returns as output either an\n * AgentAction or AgentFinish.\n *\n * @example\n * ```typescript\n * import { AgentExecutor, createStructuredChatAgent } from \"langchain/agents\";\n * import { pull } from \"langchain/hub\";\n * import type { ChatPromptTemplate } from \"@langchain/core/prompts\";\n * import { AIMessage, HumanMessage } from \"@langchain/core/messages\";\n *\n * import { ChatOpenAI } from \"@langchain/openai\";\n *\n * // Define the tools the agent will have access to.\n * const tools = [...];\n *\n * // Get the prompt to use - you can modify this!\n * // If you want to see the prompt in full, you can at:\n * // https://smith.langchain.com/hub/hwchase17/structured-chat-agent\n * const prompt = await pull<ChatPromptTemplate>(\n * \"hwchase17/structured-chat-agent\"\n * );\n *\n * const llm = new ChatOpenAI({\n * temperature: 0,\n * model: \"gpt-3.5-turbo-1106\",\n * });\n *\n * const agent = await createStructuredChatAgent({\n * llm,\n * tools,\n * prompt,\n * });\n *\n * const agentExecutor = new AgentExecutor({\n * agent,\n * tools,\n * });\n *\n * const result = await agentExecutor.invoke({\n * input: \"what is LangChain?\",\n * });\n *\n * // With chat history\n * const result2 = await agentExecutor.invoke({\n * input: \"what's my name?\",\n * chat_history: [\n * new HumanMessage(\"hi! my name is cob\"),\n * new AIMessage(\"Hello Cob! How can I assist you today?\"),\n * ],\n * });\n * ```\n */\nexport async function createStructuredChatAgent({\n llm,\n tools,\n prompt,\n streamRunnable,\n}: CreateStructuredChatAgentParams) {\n const missingVariables = [\"tools\", \"tool_names\", \"agent_scratchpad\"].filter(\n (v) => !prompt.inputVariables.includes(v)\n );\n if (missingVariables.length > 0) {\n throw new Error(\n `Provided prompt is missing required input variables: ${JSON.stringify(\n missingVariables\n )}`\n );\n }\n let toolNames: string[] = [];\n if (tools.every(isOpenAITool)) {\n toolNames = tools.map((tool) => tool.function.name);\n } else if (tools.every(isStructuredTool)) {\n toolNames = tools.map((tool) => tool.name);\n } else {\n throw new Error(\n \"All tools must be either OpenAI or Structured tools, not a mix.\"\n );\n }\n const partialedPrompt = await prompt.partial({\n tools: renderTextDescriptionAndArgs(tools),\n tool_names: toolNames.join(\", \"),\n });\n // TODO: Add .bind to core runnable interface.\n const llmWithStop = (llm as BaseLanguageModel).withConfig({\n stop: [\"Observation\"],\n });\n const agent = AgentRunnableSequence.fromRunnables(\n [\n RunnablePassthrough.assign({\n agent_scratchpad: (input: { steps: AgentStep[] }) =>\n formatLogToString(input.steps),\n }),\n partialedPrompt,\n llmWithStop,\n StructuredChatOutputParserWithRetries.fromLLM(llm, {\n toolNames,\n }),\n ],\n {\n name: \"StructuredChatAgent\",\n streamRunnable,\n singleAction: true,\n }\n );\n return agent;\n}\n"],"mappings":"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"}
|
|
@@ -9,7 +9,6 @@ import { BaseLanguageModelInterface, ToolDefinition } from "@langchain/core/lang
|
|
|
9
9
|
import { StructuredToolInterface } from "@langchain/core/tools";
|
|
10
10
|
|
|
11
11
|
//#region src/agents/structured_chat/index.d.ts
|
|
12
|
-
|
|
13
12
|
/**
|
|
14
13
|
* Interface for arguments used to create a prompt for a
|
|
15
14
|
* StructuredChatAgent.
|
|
@@ -98,9 +97,7 @@ declare class StructuredChatAgent extends Agent {
|
|
|
98
97
|
* Params used by the createStructuredChatAgent function.
|
|
99
98
|
*/
|
|
100
99
|
type CreateStructuredChatAgentParams = {
|
|
101
|
-
/** LLM to use as the agent. */
|
|
102
|
-
llm: BaseLanguageModelInterface;
|
|
103
|
-
/** Tools this agent has access to. */
|
|
100
|
+
/** LLM to use as the agent. */llm: BaseLanguageModelInterface; /** Tools this agent has access to. */
|
|
104
101
|
tools: (StructuredToolInterface | ToolDefinition)[];
|
|
105
102
|
/**
|
|
106
103
|
* The prompt to use. Must have input keys for
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.cts","names":[
|
|
1
|
+
{"version":3,"file":"index.d.cts","names":[],"sources":["../../../src/agents/structured_chat/index.ts"],"mappings":";;;;;;;;;;;;;AAyCA;;UAAiB,8BAAA;EAU0B;EARzC,MAAA;EAEA;EAAA,MAAA;EAIA;EAFA,oBAAA;EAIgB;EAFhB,cAAA;EAEyC;EAAzC,aAAA,GAAgB,yBAAA;AAAA;;;;AAalB;KANY,wBAAA,GAA2B,QAAA,CAAS,UAAA;;;;;cAMnC,mBAAA,SAA4B,KAAA;EAAA,OAChC,OAAA,CAAA;EAIP,YAAA;EAEA,WAAA,CAAY,KAAA,EAAO,wBAAA;EAMnB,UAAA,CAAA;EAIA,iBAAA,CAAA;EAIA,SAAA,CAAA;EAIA,KAAA,CAAA;EAkIS;;;;;EAAA,OAzHF,aAAA,CAAc,KAAA,EAAO,uBAAA;EAlCgB;;;;;;EAAA,OAkDrC,sBAAA,CACL,MAAA,GAAS,gBAAA;IACP,SAAA;EAAA,IACD,qCAAA;EAhCH;;;;;;;EAmDM,mBAAA,CAAoB,KAAA,EAAO,SAAA,KAAc,OAAA;EArB7C;;;;;EAAA,OAkCK,uBAAA,CAAwB,KAAA,EAAO,uBAAA;EAA/B;;;;;;;;;;EAAA,OAyBA,YAAA,CACL,KAAA,EAAO,uBAAA,IACP,IAAA,GAAO,8BAAA,GAA8B,kBAAA;EA0CrC;;;;;;;;;EAAA,OADK,eAAA,CACL,GAAA,EAAK,0BAAA,EACL,KAAA,EAAO,uBAAA,IACP,IAAA,GAAO,8BAAA,GAAiC,SAAA,GAAS,mBAAA;AAAA;;;;KA2BzC,+BAAA;EASF,+BAPR,GAAA,EAAK,0BAAA,EAOqB;EAL1B,KAAA,GAAQ,uBAAA,GAA0B,cAAA;EAF7B;;;;EAOL,MAAA,EAAQ,kBAAA;EAAA;;;;EAKR,cAAA;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA2DoB,yBAAA,CAAA;EACpB,GAAA;EACA,KAAA;EACA,MAAA;EACA;AAAA,GACC,+BAAA,GAA+B,OAAA,CAAA,qBAAA"}
|
|
@@ -5,11 +5,10 @@ import { StructuredChatOutputParserWithRetries } from "./outputParser.js";
|
|
|
5
5
|
import { BaseMessagePromptTemplate, BasePromptTemplate, ChatPromptTemplate } from "@langchain/core/prompts";
|
|
6
6
|
import { StructuredToolInterface } from "@langchain/core/tools";
|
|
7
7
|
import { BaseLanguageModelInterface, ToolDefinition } from "@langchain/core/language_models/base";
|
|
8
|
-
import * as
|
|
8
|
+
import * as _langchain_core_agents0 from "@langchain/core/agents";
|
|
9
9
|
import { AgentStep } from "@langchain/core/agents";
|
|
10
10
|
|
|
11
11
|
//#region src/agents/structured_chat/index.d.ts
|
|
12
|
-
|
|
13
12
|
/**
|
|
14
13
|
* Interface for arguments used to create a prompt for a
|
|
15
14
|
* StructuredChatAgent.
|
|
@@ -98,9 +97,7 @@ declare class StructuredChatAgent extends Agent {
|
|
|
98
97
|
* Params used by the createStructuredChatAgent function.
|
|
99
98
|
*/
|
|
100
99
|
type CreateStructuredChatAgentParams = {
|
|
101
|
-
/** LLM to use as the agent. */
|
|
102
|
-
llm: BaseLanguageModelInterface;
|
|
103
|
-
/** Tools this agent has access to. */
|
|
100
|
+
/** LLM to use as the agent. */llm: BaseLanguageModelInterface; /** Tools this agent has access to. */
|
|
104
101
|
tools: (StructuredToolInterface | ToolDefinition)[];
|
|
105
102
|
/**
|
|
106
103
|
* The prompt to use. Must have input keys for
|
|
@@ -176,7 +173,7 @@ declare function createStructuredChatAgent({
|
|
|
176
173
|
streamRunnable
|
|
177
174
|
}: CreateStructuredChatAgentParams): Promise<AgentRunnableSequence<{
|
|
178
175
|
steps: AgentStep[];
|
|
179
|
-
},
|
|
176
|
+
}, _langchain_core_agents0.AgentAction | _langchain_core_agents0.AgentFinish>>;
|
|
180
177
|
//#endregion
|
|
181
178
|
export { CreateStructuredChatAgentParams, StructuredChatAgent, StructuredChatAgentInput, StructuredChatCreatePromptArgs, createStructuredChatAgent };
|
|
182
179
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/agents/structured_chat/index.ts"],"mappings":";;;;;;;;;;;;;AAyCA;;UAAiB,8BAAA;EAU0B;EARzC,MAAA;EAEA;EAAA,MAAA;EAIA;EAFA,oBAAA;EAIgB;EAFhB,cAAA;EAEyC;EAAzC,aAAA,GAAgB,yBAAA;AAAA;;;;AAalB;KANY,wBAAA,GAA2B,QAAA,CAAS,UAAA;;;;;cAMnC,mBAAA,SAA4B,KAAA;EAAA,OAChC,OAAA,CAAA;EAIP,YAAA;EAEA,WAAA,CAAY,KAAA,EAAO,wBAAA;EAMnB,UAAA,CAAA;EAIA,iBAAA,CAAA;EAIA,SAAA,CAAA;EAIA,KAAA,CAAA;EAkIS;;;;;EAAA,OAzHF,aAAA,CAAc,KAAA,EAAO,uBAAA;EAlCgB;;;;;;EAAA,OAkDrC,sBAAA,CACL,MAAA,GAAS,gBAAA;IACP,SAAA;EAAA,IACD,qCAAA;EAhCH;;;;;;;EAmDM,mBAAA,CAAoB,KAAA,EAAO,SAAA,KAAc,OAAA;EArB7C;;;;;EAAA,OAkCK,uBAAA,CAAwB,KAAA,EAAO,uBAAA;EAA/B;;;;;;;;;;EAAA,OAyBA,YAAA,CACL,KAAA,EAAO,uBAAA,IACP,IAAA,GAAO,8BAAA,GAA8B,kBAAA;EA0CrC;;;;;;;;;EAAA,OADK,eAAA,CACL,GAAA,EAAK,0BAAA,EACL,KAAA,EAAO,uBAAA,IACP,IAAA,GAAO,8BAAA,GAAiC,SAAA,GAAS,mBAAA;AAAA;;;;KA2BzC,+BAAA;EASF,+BAPR,GAAA,EAAK,0BAAA,EAOqB;EAL1B,KAAA,GAAQ,uBAAA,GAA0B,cAAA;EAF7B;;;;EAOL,MAAA,EAAQ,kBAAA;EAAA;;;;EAKR,cAAA;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA2DoB,yBAAA,CAAA;EACpB,GAAA;EACA,KAAA;EACA,MAAA;EACA;AAAA,GACC,+BAAA,GAA+B,OAAA,CAAA,qBAAA"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
+
import { formatLogToString } from "../format_scratchpad/log.js";
|
|
1
2
|
import { Agent, AgentRunnableSequence } from "../agent.js";
|
|
2
3
|
import { LLMChain } from "../../chains/llm_chain.js";
|
|
3
4
|
import { FORMAT_INSTRUCTIONS, PREFIX, SUFFIX } from "./prompt.js";
|
|
4
5
|
import { StructuredChatOutputParserWithRetries } from "./outputParser.js";
|
|
5
6
|
import { renderTextDescriptionAndArgs } from "../../tools/render.js";
|
|
6
|
-
import { formatLogToString } from "../format_scratchpad/log.js";
|
|
7
7
|
import { ChatPromptTemplate, HumanMessagePromptTemplate, PromptTemplate, SystemMessagePromptTemplate } from "@langchain/core/prompts";
|
|
8
8
|
import { RunnablePassthrough } from "@langchain/core/runnables";
|
|
9
9
|
import { isOpenAITool } from "@langchain/core/language_models/base";
|
|
@@ -101,14 +101,13 @@ var StructuredChatAgent = class StructuredChatAgent extends Agent {
|
|
|
101
101
|
*/
|
|
102
102
|
static createPrompt(tools, args) {
|
|
103
103
|
const { prefix = PREFIX, suffix = SUFFIX, inputVariables = ["input", "agent_scratchpad"], humanMessageTemplate = "{input}\n\n{agent_scratchpad}", memoryPrompts = [] } = args ?? {};
|
|
104
|
-
const template = [
|
|
105
|
-
prefix,
|
|
106
|
-
FORMAT_INSTRUCTIONS,
|
|
107
|
-
suffix
|
|
108
|
-
].join("\n\n");
|
|
109
104
|
const messages = [
|
|
110
105
|
new SystemMessagePromptTemplate(new PromptTemplate({
|
|
111
|
-
template
|
|
106
|
+
template: [
|
|
107
|
+
prefix,
|
|
108
|
+
FORMAT_INSTRUCTIONS,
|
|
109
|
+
suffix
|
|
110
|
+
].join("\n\n"),
|
|
112
111
|
inputVariables,
|
|
113
112
|
partialVariables: {
|
|
114
113
|
tool_schemas: StructuredChatAgent.createToolSchemasString(tools),
|
|
@@ -139,13 +138,12 @@ var StructuredChatAgent = class StructuredChatAgent extends Agent {
|
|
|
139
138
|
llm,
|
|
140
139
|
toolNames: tools.map((tool) => tool.name)
|
|
141
140
|
});
|
|
142
|
-
const chain = new LLMChain({
|
|
143
|
-
prompt,
|
|
144
|
-
llm,
|
|
145
|
-
callbacks: args?.callbacks
|
|
146
|
-
});
|
|
147
141
|
return new StructuredChatAgent({
|
|
148
|
-
llmChain:
|
|
142
|
+
llmChain: new LLMChain({
|
|
143
|
+
prompt,
|
|
144
|
+
llm,
|
|
145
|
+
callbacks: args?.callbacks
|
|
146
|
+
}),
|
|
149
147
|
outputParser,
|
|
150
148
|
allowedTools: tools.map((t) => t.name)
|
|
151
149
|
});
|
|
@@ -223,7 +221,7 @@ async function createStructuredChatAgent({ llm, tools, prompt, streamRunnable })
|
|
|
223
221
|
tool_names: toolNames.join(", ")
|
|
224
222
|
});
|
|
225
223
|
const llmWithStop = llm.withConfig({ stop: ["Observation"] });
|
|
226
|
-
|
|
224
|
+
return AgentRunnableSequence.fromRunnables([
|
|
227
225
|
RunnablePassthrough.assign({ agent_scratchpad: (input) => formatLogToString(input.steps) }),
|
|
228
226
|
partialedPrompt,
|
|
229
227
|
llmWithStop,
|
|
@@ -233,7 +231,6 @@ async function createStructuredChatAgent({ llm, tools, prompt, streamRunnable })
|
|
|
233
231
|
streamRunnable,
|
|
234
232
|
singleAction: true
|
|
235
233
|
});
|
|
236
|
-
return agent;
|
|
237
234
|
}
|
|
238
235
|
|
|
239
236
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["input: StructuredChatAgentInput","tools: StructuredToolInterface[]","fields?: OutputParserArgs & {\n toolNames: string[];\n }","steps: AgentStep[]","args?: StructuredChatCreatePromptArgs","llm: BaseLanguageModelInterface","args?: StructuredChatCreatePromptArgs & AgentArgs","toolNames: string[]","input: { steps: AgentStep[] }"],"sources":["../../../src/agents/structured_chat/index.ts"],"sourcesContent":["import type { StructuredToolInterface } from \"@langchain/core/tools\";\nimport {\n isOpenAITool,\n type BaseLanguageModel,\n type BaseLanguageModelInterface,\n type ToolDefinition,\n} from \"@langchain/core/language_models/base\";\nimport { RunnablePassthrough } from \"@langchain/core/runnables\";\nimport type { BasePromptTemplate } from \"@langchain/core/prompts\";\nimport {\n BaseMessagePromptTemplate,\n ChatPromptTemplate,\n HumanMessagePromptTemplate,\n SystemMessagePromptTemplate,\n PromptTemplate,\n} from \"@langchain/core/prompts\";\nimport { AgentStep } from \"@langchain/core/agents\";\nimport { isStructuredTool } from \"@langchain/core/utils/function_calling\";\nimport { isInteropZodSchema } from \"@langchain/core/utils/types\";\nimport {\n type JsonSchema7Type,\n toJsonSchema,\n} from \"@langchain/core/utils/json_schema\";\nimport { LLMChain } from \"../../chains/llm_chain.js\";\nimport { Optional } from \"../../types/type-utils.js\";\nimport {\n Agent,\n AgentArgs,\n AgentRunnableSequence,\n OutputParserArgs,\n} from \"../agent.js\";\nimport { AgentInput } from \"../types.js\";\nimport { StructuredChatOutputParserWithRetries } from \"./outputParser.js\";\nimport { FORMAT_INSTRUCTIONS, PREFIX, SUFFIX } from \"./prompt.js\";\nimport { renderTextDescriptionAndArgs } from \"../../tools/render.js\";\nimport { formatLogToString } from \"../format_scratchpad/log.js\";\n\n/**\n * Interface for arguments used to create a prompt for a\n * StructuredChatAgent.\n */\nexport interface StructuredChatCreatePromptArgs {\n /** String to put after the list of tools. */\n suffix?: string;\n /** String to put before the list of tools. */\n prefix?: string;\n /** String to use directly as the human message template. */\n humanMessageTemplate?: string;\n /** List of input variables the final prompt will expect. */\n inputVariables?: string[];\n /** List of historical prompts from memory. */\n memoryPrompts?: BaseMessagePromptTemplate[];\n}\n\n/**\n * Type for input data for creating a StructuredChatAgent, with the\n * 'outputParser' property made optional.\n */\nexport type StructuredChatAgentInput = Optional<AgentInput, \"outputParser\">;\n\n/**\n * Agent that interoperates with Structured Tools using React logic.\n * @augments Agent\n */\nexport class StructuredChatAgent extends Agent {\n static lc_name() {\n return \"StructuredChatAgent\";\n }\n\n lc_namespace = [\"langchain\", \"agents\", \"structured_chat\"];\n\n constructor(input: StructuredChatAgentInput) {\n const outputParser =\n input?.outputParser ?? StructuredChatAgent.getDefaultOutputParser();\n super({ ...input, outputParser });\n }\n\n _agentType() {\n return \"structured-chat-zero-shot-react-description\" as const;\n }\n\n observationPrefix() {\n return \"Observation: \";\n }\n\n llmPrefix() {\n return \"Thought:\";\n }\n\n _stop(): string[] {\n return [\"Observation:\"];\n }\n\n /**\n * Validates that all provided tools have a description. Throws an error\n * if any tool lacks a description.\n * @param tools Array of StructuredTool instances to validate.\n */\n static validateTools(tools: StructuredToolInterface[]) {\n const descriptionlessTool = tools.find((tool) => !tool.description);\n if (descriptionlessTool) {\n const msg =\n `Got a tool ${descriptionlessTool.name} without a description.` +\n ` This agent requires descriptions for all tools.`;\n throw new Error(msg);\n }\n }\n\n /**\n * Returns a default output parser for the StructuredChatAgent. If an LLM\n * is provided, it creates an output parser with retry logic from the LLM.\n * @param fields Optional fields to customize the output parser. Can include an LLM and a list of tool names.\n * @returns An instance of StructuredChatOutputParserWithRetries.\n */\n static getDefaultOutputParser(\n fields?: OutputParserArgs & {\n toolNames: string[];\n }\n ) {\n if (fields?.llm) {\n return StructuredChatOutputParserWithRetries.fromLLM(fields.llm, {\n toolNames: fields.toolNames,\n });\n }\n return new StructuredChatOutputParserWithRetries({\n toolNames: fields?.toolNames,\n });\n }\n\n /**\n * Constructs the agent's scratchpad from a list of steps. If the agent's\n * scratchpad is not empty, it prepends a message indicating that the\n * agent has not seen any previous work.\n * @param steps Array of AgentStep instances to construct the scratchpad from.\n * @returns A Promise that resolves to a string representing the agent's scratchpad.\n */\n async constructScratchPad(steps: AgentStep[]): Promise<string> {\n const agentScratchpad = await super.constructScratchPad(steps);\n if (agentScratchpad) {\n return `This was your previous work (but I haven't seen any of it! I only see what you return as final answer):\\n${agentScratchpad}`;\n }\n return agentScratchpad;\n }\n\n /**\n * Creates a string representation of the schemas of the provided tools.\n * @param tools Array of StructuredTool instances to create the schemas string from.\n * @returns A string representing the schemas of the provided tools.\n */\n static createToolSchemasString(tools: StructuredToolInterface[]) {\n return tools\n .map((tool) => {\n const jsonSchema = (\n isInteropZodSchema(tool.schema)\n ? toJsonSchema(tool.schema)\n : tool.schema\n ) as { properties?: Record<string, JsonSchema7Type> } | undefined;\n return `${tool.name}: ${tool.description}, args: ${JSON.stringify(\n jsonSchema?.properties\n )}`;\n })\n .join(\"\\n\");\n }\n\n /**\n * Create prompt in the style of the agent.\n *\n * @param tools - List of tools the agent will have access to, used to format the prompt.\n * @param args - Arguments to create the prompt with.\n * @param args.suffix - String to put after the list of tools.\n * @param args.prefix - String to put before the list of tools.\n * @param args.inputVariables List of input variables the final prompt will expect.\n * @param args.memoryPrompts List of historical prompts from memory.\n */\n static createPrompt(\n tools: StructuredToolInterface[],\n args?: StructuredChatCreatePromptArgs\n ) {\n const {\n prefix = PREFIX,\n suffix = SUFFIX,\n inputVariables = [\"input\", \"agent_scratchpad\"],\n humanMessageTemplate = \"{input}\\n\\n{agent_scratchpad}\",\n memoryPrompts = [],\n } = args ?? {};\n const template = [prefix, FORMAT_INSTRUCTIONS, suffix].join(\"\\n\\n\");\n const messages = [\n new SystemMessagePromptTemplate(\n new PromptTemplate({\n template,\n inputVariables,\n partialVariables: {\n tool_schemas: StructuredChatAgent.createToolSchemasString(tools),\n tool_names: tools.map((tool) => tool.name).join(\", \"),\n },\n })\n ),\n ...memoryPrompts,\n new HumanMessagePromptTemplate(\n new PromptTemplate({\n template: humanMessageTemplate,\n inputVariables,\n })\n ),\n ];\n return ChatPromptTemplate.fromMessages(messages);\n }\n\n /**\n * Creates a StructuredChatAgent from an LLM and a list of tools.\n * Validates the tools, creates a prompt, and sets up an LLM chain for the\n * agent.\n * @param llm BaseLanguageModel instance to create the agent from.\n * @param tools Array of StructuredTool instances to create the agent from.\n * @param args Optional arguments to customize the creation of the agent. Can include arguments for creating the prompt and AgentArgs.\n * @returns A new instance of StructuredChatAgent.\n */\n static fromLLMAndTools(\n llm: BaseLanguageModelInterface,\n tools: StructuredToolInterface[],\n args?: StructuredChatCreatePromptArgs & AgentArgs\n ) {\n StructuredChatAgent.validateTools(tools);\n const prompt = StructuredChatAgent.createPrompt(tools, args);\n const outputParser =\n args?.outputParser ??\n StructuredChatAgent.getDefaultOutputParser({\n llm,\n toolNames: tools.map((tool) => tool.name),\n });\n const chain = new LLMChain({\n prompt,\n llm,\n callbacks: args?.callbacks,\n });\n\n return new StructuredChatAgent({\n llmChain: chain,\n outputParser,\n allowedTools: tools.map((t) => t.name),\n });\n }\n}\n\n/**\n * Params used by the createStructuredChatAgent function.\n */\nexport type CreateStructuredChatAgentParams = {\n /** LLM to use as the agent. */\n llm: BaseLanguageModelInterface;\n /** Tools this agent has access to. */\n tools: (StructuredToolInterface | ToolDefinition)[];\n /**\n * The prompt to use. Must have input keys for\n * `tools`, `tool_names`, and `agent_scratchpad`.\n */\n prompt: BasePromptTemplate;\n /**\n * Whether to invoke the underlying model in streaming mode,\n * allowing streaming of intermediate steps. Defaults to true.\n */\n streamRunnable?: boolean;\n};\n\n/**\n * Create an agent aimed at supporting tools with multiple inputs.\n * @param params Params required to create the agent. Includes an LLM, tools, and prompt.\n * @returns A runnable sequence representing an agent. It takes as input all the same input\n * variables as the prompt passed in does. It returns as output either an\n * AgentAction or AgentFinish.\n *\n * @example\n * ```typescript\n * import { AgentExecutor, createStructuredChatAgent } from \"langchain/agents\";\n * import { pull } from \"langchain/hub\";\n * import type { ChatPromptTemplate } from \"@langchain/core/prompts\";\n * import { AIMessage, HumanMessage } from \"@langchain/core/messages\";\n *\n * import { ChatOpenAI } from \"@langchain/openai\";\n *\n * // Define the tools the agent will have access to.\n * const tools = [...];\n *\n * // Get the prompt to use - you can modify this!\n * // If you want to see the prompt in full, you can at:\n * // https://smith.langchain.com/hub/hwchase17/structured-chat-agent\n * const prompt = await pull<ChatPromptTemplate>(\n * \"hwchase17/structured-chat-agent\"\n * );\n *\n * const llm = new ChatOpenAI({\n * temperature: 0,\n * model: \"gpt-3.5-turbo-1106\",\n * });\n *\n * const agent = await createStructuredChatAgent({\n * llm,\n * tools,\n * prompt,\n * });\n *\n * const agentExecutor = new AgentExecutor({\n * agent,\n * tools,\n * });\n *\n * const result = await agentExecutor.invoke({\n * input: \"what is LangChain?\",\n * });\n *\n * // With chat history\n * const result2 = await agentExecutor.invoke({\n * input: \"what's my name?\",\n * chat_history: [\n * new HumanMessage(\"hi! my name is cob\"),\n * new AIMessage(\"Hello Cob! How can I assist you today?\"),\n * ],\n * });\n * ```\n */\nexport async function createStructuredChatAgent({\n llm,\n tools,\n prompt,\n streamRunnable,\n}: CreateStructuredChatAgentParams) {\n const missingVariables = [\"tools\", \"tool_names\", \"agent_scratchpad\"].filter(\n (v) => !prompt.inputVariables.includes(v)\n );\n if (missingVariables.length > 0) {\n throw new Error(\n `Provided prompt is missing required input variables: ${JSON.stringify(\n missingVariables\n )}`\n );\n }\n let toolNames: string[] = [];\n if (tools.every(isOpenAITool)) {\n toolNames = tools.map((tool) => tool.function.name);\n } else if (tools.every(isStructuredTool)) {\n toolNames = tools.map((tool) => tool.name);\n } else {\n throw new Error(\n \"All tools must be either OpenAI or Structured tools, not a mix.\"\n );\n }\n const partialedPrompt = await prompt.partial({\n tools: renderTextDescriptionAndArgs(tools),\n tool_names: toolNames.join(\", \"),\n });\n // TODO: Add .bind to core runnable interface.\n const llmWithStop = (llm as BaseLanguageModel).withConfig({\n stop: [\"Observation\"],\n });\n const agent = AgentRunnableSequence.fromRunnables(\n [\n RunnablePassthrough.assign({\n agent_scratchpad: (input: { steps: AgentStep[] }) =>\n formatLogToString(input.steps),\n }),\n partialedPrompt,\n llmWithStop,\n StructuredChatOutputParserWithRetries.fromLLM(llm, {\n toolNames,\n }),\n ],\n {\n name: \"StructuredChatAgent\",\n streamRunnable,\n singleAction: true,\n }\n );\n return agent;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAgEA,IAAa,sBAAb,MAAa,4BAA4B,MAAM;CAC7C,OAAO,UAAU;AACf,SAAO;CACR;CAED,eAAe;EAAC;EAAa;EAAU;CAAkB;CAEzD,YAAYA,OAAiC;EAC3C,MAAM,eACJ,OAAO,gBAAgB,oBAAoB,wBAAwB;EACrE,MAAM;GAAE,GAAG;GAAO;EAAc,EAAC;CAClC;CAED,aAAa;AACX,SAAO;CACR;CAED,oBAAoB;AAClB,SAAO;CACR;CAED,YAAY;AACV,SAAO;CACR;CAED,QAAkB;AAChB,SAAO,CAAC,cAAe;CACxB;;;;;;CAOD,OAAO,cAAcC,OAAkC;EACrD,MAAM,sBAAsB,MAAM,KAAK,CAAC,SAAS,CAAC,KAAK,YAAY;AACnE,MAAI,qBAAqB;GACvB,MAAM,MACJ,CAAC,WAAW,EAAE,oBAAoB,KAAK,uEAAuB,CACZ;AACpD,SAAM,IAAI,MAAM;EACjB;CACF;;;;;;;CAQD,OAAO,uBACLC,QAGA;AACA,MAAI,QAAQ,IACV,QAAO,sCAAsC,QAAQ,OAAO,KAAK,EAC/D,WAAW,OAAO,UACnB,EAAC;AAEJ,SAAO,IAAI,sCAAsC,EAC/C,WAAW,QAAQ,UACpB;CACF;;;;;;;;CASD,MAAM,oBAAoBC,OAAqC;EAC7D,MAAM,kBAAkB,MAAM,MAAM,oBAAoB,MAAM;AAC9D,MAAI,gBACF,QAAO,CAAC,yGAAyG,EAAE,iBAAiB;AAEtI,SAAO;CACR;;;;;;CAOD,OAAO,wBAAwBF,OAAkC;AAC/D,SAAO,MACJ,IAAI,CAAC,SAAS;GACb,MAAM,aACJ,mBAAmB,KAAK,OAAO,GAC3B,aAAa,KAAK,OAAO,GACzB,KAAK;AAEX,UAAO,GAAG,KAAK,KAAK,EAAE,EAAE,KAAK,YAAY,QAAQ,EAAE,KAAK,UACtD,YAAY,WACb,EAAE;EACJ,EAAC,CACD,KAAK,KAAK;CACd;;;;;;;;;;;CAYD,OAAO,aACLA,OACAG,MACA;EACA,MAAM,EACJ,SAAS,QACT,SAAS,QACT,iBAAiB,CAAC,SAAS,kBAAmB,GAC9C,uBAAuB,iCACvB,gBAAgB,CAAE,GACnB,GAAG,QAAQ,CAAE;EACd,MAAM,WAAW;GAAC;GAAQ;GAAqB;EAAO,EAAC,KAAK,OAAO;EACnE,MAAM,WAAW;GACf,IAAI,4BACF,IAAI,eAAe;IACjB;IACA;IACA,kBAAkB;KAChB,cAAc,oBAAoB,wBAAwB,MAAM;KAChE,YAAY,MAAM,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC,KAAK,KAAK;IACtD;GACF;GAEH,GAAG;GACH,IAAI,2BACF,IAAI,eAAe;IACjB,UAAU;IACV;GACD;EAEJ;AACD,SAAO,mBAAmB,aAAa,SAAS;CACjD;;;;;;;;;;CAWD,OAAO,gBACLC,KACAJ,OACAK,MACA;EACA,oBAAoB,cAAc,MAAM;EACxC,MAAM,SAAS,oBAAoB,aAAa,OAAO,KAAK;EAC5D,MAAM,eACJ,MAAM,gBACN,oBAAoB,uBAAuB;GACzC;GACA,WAAW,MAAM,IAAI,CAAC,SAAS,KAAK,KAAK;EAC1C,EAAC;EACJ,MAAM,QAAQ,IAAI,SAAS;GACzB;GACA;GACA,WAAW,MAAM;EAClB;AAED,SAAO,IAAI,oBAAoB;GAC7B,UAAU;GACV;GACA,cAAc,MAAM,IAAI,CAAC,MAAM,EAAE,KAAK;EACvC;CACF;AACF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8ED,eAAsB,0BAA0B,EAC9C,KACA,OACA,QACA,gBACgC,EAAE;CAClC,MAAM,mBAAmB;EAAC;EAAS;EAAc;CAAmB,EAAC,OACnE,CAAC,MAAM,CAAC,OAAO,eAAe,SAAS,EAAE,CAC1C;AACD,KAAI,iBAAiB,SAAS,EAC5B,OAAM,IAAI,MACR,CAAC,qDAAqD,EAAE,KAAK,UAC3D,iBACD,EAAE;CAGP,IAAIC,YAAsB,CAAE;AAC5B,KAAI,MAAM,MAAM,aAAa,EAC3B,YAAY,MAAM,IAAI,CAAC,SAAS,KAAK,SAAS,KAAK;UAC1C,MAAM,MAAM,iBAAiB,EACtC,YAAY,MAAM,IAAI,CAAC,SAAS,KAAK,KAAK;KAE1C,OAAM,IAAI,MACR;CAGJ,MAAM,kBAAkB,MAAM,OAAO,QAAQ;EAC3C,OAAO,6BAA6B,MAAM;EAC1C,YAAY,UAAU,KAAK,KAAK;CACjC,EAAC;CAEF,MAAM,cAAe,IAA0B,WAAW,EACxD,MAAM,CAAC,aAAc,EACtB,EAAC;CACF,MAAM,QAAQ,sBAAsB,cAClC;EACE,oBAAoB,OAAO,EACzB,kBAAkB,CAACC,UACjB,kBAAkB,MAAM,MAAM,CACjC,EAAC;EACF;EACA;EACA,sCAAsC,QAAQ,KAAK,EACjD,UACD,EAAC;CACH,GACD;EACE,MAAM;EACN;EACA,cAAc;CACf,EACF;AACD,QAAO;AACR"}
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../src/agents/structured_chat/index.ts"],"sourcesContent":["import type { StructuredToolInterface } from \"@langchain/core/tools\";\nimport {\n isOpenAITool,\n type BaseLanguageModel,\n type BaseLanguageModelInterface,\n type ToolDefinition,\n} from \"@langchain/core/language_models/base\";\nimport { RunnablePassthrough } from \"@langchain/core/runnables\";\nimport type { BasePromptTemplate } from \"@langchain/core/prompts\";\nimport {\n BaseMessagePromptTemplate,\n ChatPromptTemplate,\n HumanMessagePromptTemplate,\n SystemMessagePromptTemplate,\n PromptTemplate,\n} from \"@langchain/core/prompts\";\nimport { AgentStep } from \"@langchain/core/agents\";\nimport { isStructuredTool } from \"@langchain/core/utils/function_calling\";\nimport { isInteropZodSchema } from \"@langchain/core/utils/types\";\nimport {\n type JsonSchema7Type,\n toJsonSchema,\n} from \"@langchain/core/utils/json_schema\";\nimport { LLMChain } from \"../../chains/llm_chain.js\";\nimport { Optional } from \"../../types/type-utils.js\";\nimport {\n Agent,\n AgentArgs,\n AgentRunnableSequence,\n OutputParserArgs,\n} from \"../agent.js\";\nimport { AgentInput } from \"../types.js\";\nimport { StructuredChatOutputParserWithRetries } from \"./outputParser.js\";\nimport { FORMAT_INSTRUCTIONS, PREFIX, SUFFIX } from \"./prompt.js\";\nimport { renderTextDescriptionAndArgs } from \"../../tools/render.js\";\nimport { formatLogToString } from \"../format_scratchpad/log.js\";\n\n/**\n * Interface for arguments used to create a prompt for a\n * StructuredChatAgent.\n */\nexport interface StructuredChatCreatePromptArgs {\n /** String to put after the list of tools. */\n suffix?: string;\n /** String to put before the list of tools. */\n prefix?: string;\n /** String to use directly as the human message template. */\n humanMessageTemplate?: string;\n /** List of input variables the final prompt will expect. */\n inputVariables?: string[];\n /** List of historical prompts from memory. */\n memoryPrompts?: BaseMessagePromptTemplate[];\n}\n\n/**\n * Type for input data for creating a StructuredChatAgent, with the\n * 'outputParser' property made optional.\n */\nexport type StructuredChatAgentInput = Optional<AgentInput, \"outputParser\">;\n\n/**\n * Agent that interoperates with Structured Tools using React logic.\n * @augments Agent\n */\nexport class StructuredChatAgent extends Agent {\n static lc_name() {\n return \"StructuredChatAgent\";\n }\n\n lc_namespace = [\"langchain\", \"agents\", \"structured_chat\"];\n\n constructor(input: StructuredChatAgentInput) {\n const outputParser =\n input?.outputParser ?? StructuredChatAgent.getDefaultOutputParser();\n super({ ...input, outputParser });\n }\n\n _agentType() {\n return \"structured-chat-zero-shot-react-description\" as const;\n }\n\n observationPrefix() {\n return \"Observation: \";\n }\n\n llmPrefix() {\n return \"Thought:\";\n }\n\n _stop(): string[] {\n return [\"Observation:\"];\n }\n\n /**\n * Validates that all provided tools have a description. Throws an error\n * if any tool lacks a description.\n * @param tools Array of StructuredTool instances to validate.\n */\n static validateTools(tools: StructuredToolInterface[]) {\n const descriptionlessTool = tools.find((tool) => !tool.description);\n if (descriptionlessTool) {\n const msg =\n `Got a tool ${descriptionlessTool.name} without a description.` +\n ` This agent requires descriptions for all tools.`;\n throw new Error(msg);\n }\n }\n\n /**\n * Returns a default output parser for the StructuredChatAgent. If an LLM\n * is provided, it creates an output parser with retry logic from the LLM.\n * @param fields Optional fields to customize the output parser. Can include an LLM and a list of tool names.\n * @returns An instance of StructuredChatOutputParserWithRetries.\n */\n static getDefaultOutputParser(\n fields?: OutputParserArgs & {\n toolNames: string[];\n }\n ) {\n if (fields?.llm) {\n return StructuredChatOutputParserWithRetries.fromLLM(fields.llm, {\n toolNames: fields.toolNames,\n });\n }\n return new StructuredChatOutputParserWithRetries({\n toolNames: fields?.toolNames,\n });\n }\n\n /**\n * Constructs the agent's scratchpad from a list of steps. If the agent's\n * scratchpad is not empty, it prepends a message indicating that the\n * agent has not seen any previous work.\n * @param steps Array of AgentStep instances to construct the scratchpad from.\n * @returns A Promise that resolves to a string representing the agent's scratchpad.\n */\n async constructScratchPad(steps: AgentStep[]): Promise<string> {\n const agentScratchpad = await super.constructScratchPad(steps);\n if (agentScratchpad) {\n return `This was your previous work (but I haven't seen any of it! I only see what you return as final answer):\\n${agentScratchpad}`;\n }\n return agentScratchpad;\n }\n\n /**\n * Creates a string representation of the schemas of the provided tools.\n * @param tools Array of StructuredTool instances to create the schemas string from.\n * @returns A string representing the schemas of the provided tools.\n */\n static createToolSchemasString(tools: StructuredToolInterface[]) {\n return tools\n .map((tool) => {\n const jsonSchema = (\n isInteropZodSchema(tool.schema)\n ? toJsonSchema(tool.schema)\n : tool.schema\n ) as { properties?: Record<string, JsonSchema7Type> } | undefined;\n return `${tool.name}: ${tool.description}, args: ${JSON.stringify(\n jsonSchema?.properties\n )}`;\n })\n .join(\"\\n\");\n }\n\n /**\n * Create prompt in the style of the agent.\n *\n * @param tools - List of tools the agent will have access to, used to format the prompt.\n * @param args - Arguments to create the prompt with.\n * @param args.suffix - String to put after the list of tools.\n * @param args.prefix - String to put before the list of tools.\n * @param args.inputVariables List of input variables the final prompt will expect.\n * @param args.memoryPrompts List of historical prompts from memory.\n */\n static createPrompt(\n tools: StructuredToolInterface[],\n args?: StructuredChatCreatePromptArgs\n ) {\n const {\n prefix = PREFIX,\n suffix = SUFFIX,\n inputVariables = [\"input\", \"agent_scratchpad\"],\n humanMessageTemplate = \"{input}\\n\\n{agent_scratchpad}\",\n memoryPrompts = [],\n } = args ?? {};\n const template = [prefix, FORMAT_INSTRUCTIONS, suffix].join(\"\\n\\n\");\n const messages = [\n new SystemMessagePromptTemplate(\n new PromptTemplate({\n template,\n inputVariables,\n partialVariables: {\n tool_schemas: StructuredChatAgent.createToolSchemasString(tools),\n tool_names: tools.map((tool) => tool.name).join(\", \"),\n },\n })\n ),\n ...memoryPrompts,\n new HumanMessagePromptTemplate(\n new PromptTemplate({\n template: humanMessageTemplate,\n inputVariables,\n })\n ),\n ];\n return ChatPromptTemplate.fromMessages(messages);\n }\n\n /**\n * Creates a StructuredChatAgent from an LLM and a list of tools.\n * Validates the tools, creates a prompt, and sets up an LLM chain for the\n * agent.\n * @param llm BaseLanguageModel instance to create the agent from.\n * @param tools Array of StructuredTool instances to create the agent from.\n * @param args Optional arguments to customize the creation of the agent. Can include arguments for creating the prompt and AgentArgs.\n * @returns A new instance of StructuredChatAgent.\n */\n static fromLLMAndTools(\n llm: BaseLanguageModelInterface,\n tools: StructuredToolInterface[],\n args?: StructuredChatCreatePromptArgs & AgentArgs\n ) {\n StructuredChatAgent.validateTools(tools);\n const prompt = StructuredChatAgent.createPrompt(tools, args);\n const outputParser =\n args?.outputParser ??\n StructuredChatAgent.getDefaultOutputParser({\n llm,\n toolNames: tools.map((tool) => tool.name),\n });\n const chain = new LLMChain({\n prompt,\n llm,\n callbacks: args?.callbacks,\n });\n\n return new StructuredChatAgent({\n llmChain: chain,\n outputParser,\n allowedTools: tools.map((t) => t.name),\n });\n }\n}\n\n/**\n * Params used by the createStructuredChatAgent function.\n */\nexport type CreateStructuredChatAgentParams = {\n /** LLM to use as the agent. */\n llm: BaseLanguageModelInterface;\n /** Tools this agent has access to. */\n tools: (StructuredToolInterface | ToolDefinition)[];\n /**\n * The prompt to use. Must have input keys for\n * `tools`, `tool_names`, and `agent_scratchpad`.\n */\n prompt: BasePromptTemplate;\n /**\n * Whether to invoke the underlying model in streaming mode,\n * allowing streaming of intermediate steps. Defaults to true.\n */\n streamRunnable?: boolean;\n};\n\n/**\n * Create an agent aimed at supporting tools with multiple inputs.\n * @param params Params required to create the agent. Includes an LLM, tools, and prompt.\n * @returns A runnable sequence representing an agent. It takes as input all the same input\n * variables as the prompt passed in does. It returns as output either an\n * AgentAction or AgentFinish.\n *\n * @example\n * ```typescript\n * import { AgentExecutor, createStructuredChatAgent } from \"langchain/agents\";\n * import { pull } from \"langchain/hub\";\n * import type { ChatPromptTemplate } from \"@langchain/core/prompts\";\n * import { AIMessage, HumanMessage } from \"@langchain/core/messages\";\n *\n * import { ChatOpenAI } from \"@langchain/openai\";\n *\n * // Define the tools the agent will have access to.\n * const tools = [...];\n *\n * // Get the prompt to use - you can modify this!\n * // If you want to see the prompt in full, you can at:\n * // https://smith.langchain.com/hub/hwchase17/structured-chat-agent\n * const prompt = await pull<ChatPromptTemplate>(\n * \"hwchase17/structured-chat-agent\"\n * );\n *\n * const llm = new ChatOpenAI({\n * temperature: 0,\n * model: \"gpt-3.5-turbo-1106\",\n * });\n *\n * const agent = await createStructuredChatAgent({\n * llm,\n * tools,\n * prompt,\n * });\n *\n * const agentExecutor = new AgentExecutor({\n * agent,\n * tools,\n * });\n *\n * const result = await agentExecutor.invoke({\n * input: \"what is LangChain?\",\n * });\n *\n * // With chat history\n * const result2 = await agentExecutor.invoke({\n * input: \"what's my name?\",\n * chat_history: [\n * new HumanMessage(\"hi! my name is cob\"),\n * new AIMessage(\"Hello Cob! How can I assist you today?\"),\n * ],\n * });\n * ```\n */\nexport async function createStructuredChatAgent({\n llm,\n tools,\n prompt,\n streamRunnable,\n}: CreateStructuredChatAgentParams) {\n const missingVariables = [\"tools\", \"tool_names\", \"agent_scratchpad\"].filter(\n (v) => !prompt.inputVariables.includes(v)\n );\n if (missingVariables.length > 0) {\n throw new Error(\n `Provided prompt is missing required input variables: ${JSON.stringify(\n missingVariables\n )}`\n );\n }\n let toolNames: string[] = [];\n if (tools.every(isOpenAITool)) {\n toolNames = tools.map((tool) => tool.function.name);\n } else if (tools.every(isStructuredTool)) {\n toolNames = tools.map((tool) => tool.name);\n } else {\n throw new Error(\n \"All tools must be either OpenAI or Structured tools, not a mix.\"\n );\n }\n const partialedPrompt = await prompt.partial({\n tools: renderTextDescriptionAndArgs(tools),\n tool_names: toolNames.join(\", \"),\n });\n // TODO: Add .bind to core runnable interface.\n const llmWithStop = (llm as BaseLanguageModel).withConfig({\n stop: [\"Observation\"],\n });\n const agent = AgentRunnableSequence.fromRunnables(\n [\n RunnablePassthrough.assign({\n agent_scratchpad: (input: { steps: AgentStep[] }) =>\n formatLogToString(input.steps),\n }),\n partialedPrompt,\n llmWithStop,\n StructuredChatOutputParserWithRetries.fromLLM(llm, {\n toolNames,\n }),\n ],\n {\n name: \"StructuredChatAgent\",\n streamRunnable,\n singleAction: true,\n }\n );\n return agent;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAgEA,IAAa,sBAAb,MAAa,4BAA4B,MAAM;CAC7C,OAAO,UAAU;AACf,SAAO;;CAGT,eAAe;EAAC;EAAa;EAAU;EAAkB;CAEzD,YAAY,OAAiC;EAC3C,MAAM,eACJ,OAAO,gBAAgB,oBAAoB,wBAAwB;AACrE,QAAM;GAAE,GAAG;GAAO;GAAc,CAAC;;CAGnC,aAAa;AACX,SAAO;;CAGT,oBAAoB;AAClB,SAAO;;CAGT,YAAY;AACV,SAAO;;CAGT,QAAkB;AAChB,SAAO,CAAC,eAAe;;;;;;;CAQzB,OAAO,cAAc,OAAkC;EACrD,MAAM,sBAAsB,MAAM,MAAM,SAAS,CAAC,KAAK,YAAY;AACnE,MAAI,qBAAqB;GACvB,MAAM,MACJ,cAAc,oBAAoB,KAAK;AAEzC,SAAM,IAAI,MAAM,IAAI;;;;;;;;;CAUxB,OAAO,uBACL,QAGA;AACA,MAAI,QAAQ,IACV,QAAO,sCAAsC,QAAQ,OAAO,KAAK,EAC/D,WAAW,OAAO,WACnB,CAAC;AAEJ,SAAO,IAAI,sCAAsC,EAC/C,WAAW,QAAQ,WACpB,CAAC;;;;;;;;;CAUJ,MAAM,oBAAoB,OAAqC;EAC7D,MAAM,kBAAkB,MAAM,MAAM,oBAAoB,MAAM;AAC9D,MAAI,gBACF,QAAO,4GAA4G;AAErH,SAAO;;;;;;;CAQT,OAAO,wBAAwB,OAAkC;AAC/D,SAAO,MACJ,KAAK,SAAS;GACb,MAAM,aACJ,mBAAmB,KAAK,OAAO,GAC3B,aAAa,KAAK,OAAO,GACzB,KAAK;AAEX,UAAO,GAAG,KAAK,KAAK,IAAI,KAAK,YAAY,UAAU,KAAK,UACtD,YAAY,WACb;IACD,CACD,KAAK,KAAK;;;;;;;;;;;;CAaf,OAAO,aACL,OACA,MACA;EACA,MAAM,EACJ,SAAS,QACT,SAAS,QACT,iBAAiB,CAAC,SAAS,mBAAmB,EAC9C,uBAAuB,iCACvB,gBAAgB,EAAE,KAChB,QAAQ,EAAE;EAEd,MAAM,WAAW;GACf,IAAI,4BACF,IAAI,eAAe;IACjB,UAJW;KAAC;KAAQ;KAAqB;KAAO,CAAC,KAAK,OAAO;IAK7D;IACA,kBAAkB;KAChB,cAAc,oBAAoB,wBAAwB,MAAM;KAChE,YAAY,MAAM,KAAK,SAAS,KAAK,KAAK,CAAC,KAAK,KAAK;KACtD;IACF,CAAC,CACH;GACD,GAAG;GACH,IAAI,2BACF,IAAI,eAAe;IACjB,UAAU;IACV;IACD,CAAC,CACH;GACF;AACD,SAAO,mBAAmB,aAAa,SAAS;;;;;;;;;;;CAYlD,OAAO,gBACL,KACA,OACA,MACA;AACA,sBAAoB,cAAc,MAAM;EACxC,MAAM,SAAS,oBAAoB,aAAa,OAAO,KAAK;EAC5D,MAAM,eACJ,MAAM,gBACN,oBAAoB,uBAAuB;GACzC;GACA,WAAW,MAAM,KAAK,SAAS,KAAK,KAAK;GAC1C,CAAC;AAOJ,SAAO,IAAI,oBAAoB;GAC7B,UAPY,IAAI,SAAS;IACzB;IACA;IACA,WAAW,MAAM;IAClB,CAAC;GAIA;GACA,cAAc,MAAM,KAAK,MAAM,EAAE,KAAK;GACvC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgFN,eAAsB,0BAA0B,EAC9C,KACA,OACA,QACA,kBACkC;CAClC,MAAM,mBAAmB;EAAC;EAAS;EAAc;EAAmB,CAAC,QAClE,MAAM,CAAC,OAAO,eAAe,SAAS,EAAE,CAC1C;AACD,KAAI,iBAAiB,SAAS,EAC5B,OAAM,IAAI,MACR,wDAAwD,KAAK,UAC3D,iBACD,GACF;CAEH,IAAI,YAAsB,EAAE;AAC5B,KAAI,MAAM,MAAM,aAAa,CAC3B,aAAY,MAAM,KAAK,SAAS,KAAK,SAAS,KAAK;UAC1C,MAAM,MAAM,iBAAiB,CACtC,aAAY,MAAM,KAAK,SAAS,KAAK,KAAK;KAE1C,OAAM,IAAI,MACR,kEACD;CAEH,MAAM,kBAAkB,MAAM,OAAO,QAAQ;EAC3C,OAAO,6BAA6B,MAAM;EAC1C,YAAY,UAAU,KAAK,KAAK;EACjC,CAAC;CAEF,MAAM,cAAe,IAA0B,WAAW,EACxD,MAAM,CAAC,cAAc,EACtB,CAAC;AAmBF,QAlBc,sBAAsB,cAClC;EACE,oBAAoB,OAAO,EACzB,mBAAmB,UACjB,kBAAkB,MAAM,MAAM,EACjC,CAAC;EACF;EACA;EACA,sCAAsC,QAAQ,KAAK,EACjD,WACD,CAAC;EACH,EACD;EACE,MAAM;EACN;EACA,cAAc;EACf,CACF"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
const
|
|
1
|
+
const require_runtime = require('../../_virtual/_rolldown/runtime.cjs');
|
|
2
2
|
const require_types = require('../types.cjs');
|
|
3
3
|
const require_fix = require('../../output_parsers/fix.cjs');
|
|
4
4
|
const require_prompt = require('./prompt.cjs');
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
let _langchain_core_prompts = require("@langchain/core/prompts");
|
|
6
|
+
let _langchain_core_output_parsers = require("@langchain/core/output_parsers");
|
|
7
7
|
|
|
8
8
|
//#region src/agents/structured_chat/outputParser.ts
|
|
9
9
|
/**
|
|
@@ -33,11 +33,9 @@ var StructuredChatOutputParser = class extends require_types.AgentActionOutputPa
|
|
|
33
33
|
*/
|
|
34
34
|
async parse(text) {
|
|
35
35
|
try {
|
|
36
|
-
const
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
const response = JSON.parse(actionMatch[1].trim());
|
|
40
|
-
const { action, action_input } = response;
|
|
36
|
+
const actionMatch = /```(?:json)?(.*)(```)/gs.exec(text);
|
|
37
|
+
if (actionMatch === null) throw new _langchain_core_output_parsers.OutputParserException(`Could not parse an action. The agent action must be within a markdown code block, and "action" must be a provided tool or "Final Answer"`);
|
|
38
|
+
const { action, action_input } = JSON.parse(actionMatch[1].trim());
|
|
41
39
|
if (action === "Final Answer") return {
|
|
42
40
|
returnValues: { output: action_input },
|
|
43
41
|
log: text
|
|
@@ -48,7 +46,7 @@ var StructuredChatOutputParser = class extends require_types.AgentActionOutputPa
|
|
|
48
46
|
log: text
|
|
49
47
|
};
|
|
50
48
|
} catch (e) {
|
|
51
|
-
throw new
|
|
49
|
+
throw new _langchain_core_output_parsers.OutputParserException(`Failed to parse. Text: "${text}". Error: ${e}`);
|
|
52
50
|
}
|
|
53
51
|
}
|
|
54
52
|
/**
|
|
@@ -57,7 +55,7 @@ var StructuredChatOutputParser = class extends require_types.AgentActionOutputPa
|
|
|
57
55
|
* @returns A string representing the format instructions.
|
|
58
56
|
*/
|
|
59
57
|
getFormatInstructions() {
|
|
60
|
-
return (0,
|
|
58
|
+
return (0, _langchain_core_prompts.renderTemplate)(require_prompt.AGENT_ACTION_FORMAT_INSTRUCTIONS, "f-string", { tool_names: this.toolNames.join(", ") });
|
|
61
59
|
}
|
|
62
60
|
};
|
|
63
61
|
/**
|
|
@@ -109,7 +107,7 @@ var StructuredChatOutputParserWithRetries = class StructuredChatOutputParserWith
|
|
|
109
107
|
* @returns A string representing the format instructions.
|
|
110
108
|
*/
|
|
111
109
|
getFormatInstructions() {
|
|
112
|
-
return (0,
|
|
110
|
+
return (0, _langchain_core_prompts.renderTemplate)(require_prompt.FORMAT_INSTRUCTIONS, "f-string", { tool_names: this.toolNames.join(", ") });
|
|
113
111
|
}
|
|
114
112
|
/**
|
|
115
113
|
* Creates a new `StructuredChatOutputParserWithRetries` instance from a
|
|
@@ -121,10 +119,9 @@ var StructuredChatOutputParserWithRetries = class StructuredChatOutputParserWith
|
|
|
121
119
|
*/
|
|
122
120
|
static fromLLM(llm, options) {
|
|
123
121
|
const baseParser = options.baseParser ?? new StructuredChatOutputParser({ toolNames: options.toolNames ?? [] });
|
|
124
|
-
const outputFixingParser = require_fix.OutputFixingParser.fromLLM(llm, baseParser);
|
|
125
122
|
return new StructuredChatOutputParserWithRetries({
|
|
126
123
|
baseParser,
|
|
127
|
-
outputFixingParser,
|
|
124
|
+
outputFixingParser: require_fix.OutputFixingParser.fromLLM(llm, baseParser),
|
|
128
125
|
toolNames: options.toolNames
|
|
129
126
|
});
|
|
130
127
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"outputParser.cjs","names":["AgentActionOutputParser","
|
|
1
|
+
{"version":3,"file":"outputParser.cjs","names":["AgentActionOutputParser","OutputParserException","AGENT_ACTION_FORMAT_INSTRUCTIONS","FORMAT_INSTRUCTIONS","OutputFixingParser"],"sources":["../../../src/agents/structured_chat/outputParser.ts"],"sourcesContent":["import type { BaseLanguageModelInterface } from \"@langchain/core/language_models/base\";\nimport { Callbacks } from \"@langchain/core/callbacks/manager\";\nimport { AgentAction, AgentFinish } from \"@langchain/core/agents\";\nimport { OutputParserException } from \"@langchain/core/output_parsers\";\nimport { renderTemplate } from \"@langchain/core/prompts\";\nimport { AgentActionOutputParser } from \"../types.js\";\nimport {\n AGENT_ACTION_FORMAT_INSTRUCTIONS,\n FORMAT_INSTRUCTIONS,\n} from \"./prompt.js\";\nimport { OutputFixingParser } from \"../../output_parsers/fix.js\";\n\n/**\n * A class that provides a custom implementation for parsing the output of\n * a StructuredChatAgent action. It extends the `AgentActionOutputParser`\n * class and extracts the action and action input from the text output,\n * returning an `AgentAction` or `AgentFinish` object.\n */\nexport class StructuredChatOutputParser extends AgentActionOutputParser {\n lc_namespace = [\"langchain\", \"agents\", \"structured_chat\"];\n\n private toolNames: string[];\n\n constructor(fields: { toolNames: string[] }) {\n super(...arguments);\n this.toolNames = fields.toolNames;\n }\n\n /**\n * Parses the given text and returns an `AgentAction` or `AgentFinish`\n * object. If an `OutputFixingParser` is provided, it is used for parsing;\n * otherwise, the base parser is used.\n * @param text The text to parse.\n * @param callbacks Optional callbacks for asynchronous operations.\n * @returns A Promise that resolves to an `AgentAction` or `AgentFinish` object.\n */\n async parse(text: string): Promise<AgentAction | AgentFinish> {\n try {\n const regex = /```(?:json)?(.*)(```)/gs;\n const actionMatch = regex.exec(text);\n if (actionMatch === null) {\n throw new OutputParserException(\n `Could not parse an action. The agent action must be within a markdown code block, and \"action\" must be a provided tool or \"Final Answer\"`\n );\n }\n const response = JSON.parse(actionMatch[1].trim());\n const { action, action_input } = response;\n\n if (action === \"Final Answer\") {\n return { returnValues: { output: action_input }, log: text };\n }\n return { tool: action, toolInput: action_input || {}, log: text };\n } catch (e) {\n throw new OutputParserException(\n `Failed to parse. Text: \"${text}\". Error: ${e}`\n );\n }\n }\n\n /**\n * Returns the format instructions for parsing the output of an agent\n * action in the style of the StructuredChatAgent.\n * @returns A string representing the format instructions.\n */\n getFormatInstructions(): string {\n return renderTemplate(AGENT_ACTION_FORMAT_INSTRUCTIONS, \"f-string\", {\n tool_names: this.toolNames.join(\", \"),\n });\n }\n}\n\n/**\n * An interface for the arguments used to construct a\n * `StructuredChatOutputParserWithRetries` instance.\n */\nexport interface StructuredChatOutputParserArgs {\n baseParser?: StructuredChatOutputParser;\n outputFixingParser?: OutputFixingParser<AgentAction | AgentFinish>;\n toolNames?: string[];\n}\n\n/**\n * A class that provides a wrapper around the `StructuredChatOutputParser`\n * and `OutputFixingParser` classes. It extends the\n * `AgentActionOutputParser` class and allows for retrying the output\n * parsing using the `OutputFixingParser` if it is provided.\n * @example\n * ```typescript\n * const outputParser = new StructuredChatOutputParserWithRetries.fromLLM(\n * new ChatOpenAI({ model: \"gpt-4o-mini\", temperature: 0 }),\n * {\n * toolNames: [\"calculator\", \"random-number-generator\"],\n * },\n * );\n * const result = await outputParser.parse(\n * \"What is a random number between 5 and 10 raised to the second power?\"\n * );\n * ```\n */\nexport class StructuredChatOutputParserWithRetries extends AgentActionOutputParser {\n lc_namespace = [\"langchain\", \"agents\", \"structured_chat\"];\n\n private baseParser: StructuredChatOutputParser;\n\n private outputFixingParser?: OutputFixingParser<AgentAction | AgentFinish>;\n\n private toolNames: string[] = [];\n\n constructor(fields: StructuredChatOutputParserArgs) {\n super(fields);\n this.toolNames = fields.toolNames ?? this.toolNames;\n this.baseParser =\n fields?.baseParser ??\n new StructuredChatOutputParser({ toolNames: this.toolNames });\n this.outputFixingParser = fields?.outputFixingParser;\n }\n\n /**\n * Parses the given text and returns an `AgentAction` or `AgentFinish`\n * object. Throws an `OutputParserException` if the parsing fails.\n * @param text The text to parse.\n * @returns A Promise that resolves to an `AgentAction` or `AgentFinish` object.\n */\n async parse(\n text: string,\n callbacks?: Callbacks\n ): Promise<AgentAction | AgentFinish> {\n if (this.outputFixingParser !== undefined) {\n return this.outputFixingParser.parse(text, callbacks);\n }\n return this.baseParser.parse(text);\n }\n\n /**\n * Returns the format instructions for parsing the output of an agent\n * action in the style of the StructuredChatAgent.\n * @returns A string representing the format instructions.\n */\n getFormatInstructions(): string {\n return renderTemplate(FORMAT_INSTRUCTIONS, \"f-string\", {\n tool_names: this.toolNames.join(\", \"),\n });\n }\n\n /**\n * Creates a new `StructuredChatOutputParserWithRetries` instance from a\n * `BaseLanguageModel` and options. The options can include a base parser\n * and tool names.\n * @param llm A `BaseLanguageModel` instance.\n * @param options Options for creating a `StructuredChatOutputParserWithRetries` instance.\n * @returns A new `StructuredChatOutputParserWithRetries` instance.\n */\n static fromLLM(\n llm: BaseLanguageModelInterface,\n options: Omit<StructuredChatOutputParserArgs, \"outputFixingParser\">\n ): StructuredChatOutputParserWithRetries {\n const baseParser =\n options.baseParser ??\n new StructuredChatOutputParser({ toolNames: options.toolNames ?? [] });\n const outputFixingParser = OutputFixingParser.fromLLM(llm, baseParser);\n return new StructuredChatOutputParserWithRetries({\n baseParser,\n outputFixingParser,\n toolNames: options.toolNames,\n });\n }\n}\n"],"mappings":";;;;;;;;;;;;;;AAkBA,IAAa,6BAAb,cAAgDA,sCAAwB;CACtE,eAAe;EAAC;EAAa;EAAU;EAAkB;CAEzD,AAAQ;CAER,YAAY,QAAiC;AAC3C,QAAM,GAAG,UAAU;AACnB,OAAK,YAAY,OAAO;;;;;;;;;;CAW1B,MAAM,MAAM,MAAkD;AAC5D,MAAI;GAEF,MAAM,cADQ,0BACY,KAAK,KAAK;AACpC,OAAI,gBAAgB,KAClB,OAAM,IAAIC,qDACR,2IACD;GAGH,MAAM,EAAE,QAAQ,iBADC,KAAK,MAAM,YAAY,GAAG,MAAM,CAAC;AAGlD,OAAI,WAAW,eACb,QAAO;IAAE,cAAc,EAAE,QAAQ,cAAc;IAAE,KAAK;IAAM;AAE9D,UAAO;IAAE,MAAM;IAAQ,WAAW,gBAAgB,EAAE;IAAE,KAAK;IAAM;WAC1D,GAAG;AACV,SAAM,IAAIA,qDACR,2BAA2B,KAAK,YAAY,IAC7C;;;;;;;;CASL,wBAAgC;AAC9B,qDAAsBC,iDAAkC,YAAY,EAClE,YAAY,KAAK,UAAU,KAAK,KAAK,EACtC,CAAC;;;;;;;;;;;;;;;;;;;;;AAgCN,IAAa,wCAAb,MAAa,8CAA8CF,sCAAwB;CACjF,eAAe;EAAC;EAAa;EAAU;EAAkB;CAEzD,AAAQ;CAER,AAAQ;CAER,AAAQ,YAAsB,EAAE;CAEhC,YAAY,QAAwC;AAClD,QAAM,OAAO;AACb,OAAK,YAAY,OAAO,aAAa,KAAK;AAC1C,OAAK,aACH,QAAQ,cACR,IAAI,2BAA2B,EAAE,WAAW,KAAK,WAAW,CAAC;AAC/D,OAAK,qBAAqB,QAAQ;;;;;;;;CASpC,MAAM,MACJ,MACA,WACoC;AACpC,MAAI,KAAK,uBAAuB,OAC9B,QAAO,KAAK,mBAAmB,MAAM,MAAM,UAAU;AAEvD,SAAO,KAAK,WAAW,MAAM,KAAK;;;;;;;CAQpC,wBAAgC;AAC9B,qDAAsBG,oCAAqB,YAAY,EACrD,YAAY,KAAK,UAAU,KAAK,KAAK,EACtC,CAAC;;;;;;;;;;CAWJ,OAAO,QACL,KACA,SACuC;EACvC,MAAM,aACJ,QAAQ,cACR,IAAI,2BAA2B,EAAE,WAAW,QAAQ,aAAa,EAAE,EAAE,CAAC;AAExE,SAAO,IAAI,sCAAsC;GAC/C;GACA,oBAHyBC,+BAAmB,QAAQ,KAAK,WAAW;GAIpE,WAAW,QAAQ;GACpB,CAAC"}
|
|
@@ -5,7 +5,6 @@ import { BaseLanguageModelInterface } from "@langchain/core/language_models/base
|
|
|
5
5
|
import { Callbacks } from "@langchain/core/callbacks/manager";
|
|
6
6
|
|
|
7
7
|
//#region src/agents/structured_chat/outputParser.d.ts
|
|
8
|
-
|
|
9
8
|
/**
|
|
10
9
|
* A class that provides a custom implementation for parsing the output of
|
|
11
10
|
* a StructuredChatAgent action. It extends the `AgentActionOutputParser`
|