langchain 1.0.0-alpha.4 → 1.0.0-alpha.6
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/dist/agents/ReactAgent.cjs +5 -5
- package/dist/agents/ReactAgent.cjs.map +1 -1
- package/dist/agents/ReactAgent.d.cts +1 -3
- package/dist/agents/ReactAgent.d.cts.map +1 -1
- package/dist/agents/ReactAgent.d.ts +1 -3
- package/dist/agents/ReactAgent.d.ts.map +1 -1
- package/dist/agents/ReactAgent.js +6 -6
- package/dist/agents/ReactAgent.js.map +1 -1
- package/dist/agents/RunnableCallable.cjs +5 -0
- package/dist/agents/RunnableCallable.cjs.map +1 -1
- package/dist/agents/RunnableCallable.d.cts +2 -0
- package/dist/agents/RunnableCallable.d.cts.map +1 -1
- package/dist/agents/RunnableCallable.d.ts +2 -0
- package/dist/agents/RunnableCallable.d.ts.map +1 -1
- package/dist/agents/RunnableCallable.js +5 -0
- package/dist/agents/RunnableCallable.js.map +1 -1
- package/dist/agents/annotation.cjs.map +1 -1
- package/dist/agents/annotation.d.cts +5 -7
- package/dist/agents/annotation.d.cts.map +1 -1
- package/dist/agents/annotation.d.ts +4 -6
- package/dist/agents/annotation.d.ts.map +1 -1
- package/dist/agents/annotation.js.map +1 -1
- package/dist/agents/createAgent.cjs +10 -0
- package/dist/agents/createAgent.cjs.map +1 -0
- package/dist/agents/createAgent.js +10 -0
- package/dist/agents/createAgent.js.map +1 -0
- package/dist/agents/index.cjs +23 -4
- package/dist/agents/index.cjs.map +1 -1
- package/dist/agents/index.d.cts +84 -21
- package/dist/agents/index.d.cts.map +1 -1
- package/dist/agents/index.d.ts +84 -21
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js +23 -4
- package/dist/agents/index.js.map +1 -1
- package/dist/agents/middlewareAgent/ReactAgent.cjs +255 -0
- package/dist/agents/middlewareAgent/ReactAgent.cjs.map +1 -0
- package/dist/agents/middlewareAgent/ReactAgent.d.cts +67 -0
- package/dist/agents/middlewareAgent/ReactAgent.d.cts.map +1 -0
- package/dist/agents/middlewareAgent/ReactAgent.d.ts +67 -0
- package/dist/agents/middlewareAgent/ReactAgent.d.ts.map +1 -0
- package/dist/agents/middlewareAgent/ReactAgent.js +254 -0
- package/dist/agents/middlewareAgent/ReactAgent.js.map +1 -0
- package/dist/agents/middlewareAgent/annotation.cjs +39 -0
- package/dist/agents/middlewareAgent/annotation.cjs.map +1 -0
- package/dist/agents/middlewareAgent/annotation.js +38 -0
- package/dist/agents/middlewareAgent/annotation.js.map +1 -0
- package/dist/agents/middlewareAgent/index.cjs +11 -0
- package/dist/agents/middlewareAgent/index.cjs.map +1 -0
- package/dist/agents/middlewareAgent/index.js +11 -0
- package/dist/agents/middlewareAgent/index.js.map +1 -0
- package/dist/agents/middlewareAgent/middleware/hitl.cjs +235 -0
- package/dist/agents/middlewareAgent/middleware/hitl.cjs.map +1 -0
- package/dist/agents/middlewareAgent/middleware/hitl.d.cts +199 -0
- package/dist/agents/middlewareAgent/middleware/hitl.d.cts.map +1 -0
- package/dist/agents/middlewareAgent/middleware/hitl.d.ts +199 -0
- package/dist/agents/middlewareAgent/middleware/hitl.d.ts.map +1 -0
- package/dist/agents/middlewareAgent/middleware/hitl.js +234 -0
- package/dist/agents/middlewareAgent/middleware/hitl.js.map +1 -0
- package/dist/agents/middlewareAgent/middleware/index.cjs +26 -0
- package/dist/agents/middlewareAgent/middleware/index.cjs.map +1 -0
- package/dist/agents/middlewareAgent/middleware/index.d.cts +4 -0
- package/dist/agents/middlewareAgent/middleware/index.d.ts +4 -0
- package/dist/agents/middlewareAgent/middleware/index.js +17 -0
- package/dist/agents/middlewareAgent/middleware/index.js.map +1 -0
- package/dist/agents/middlewareAgent/middleware/promptCaching.cjs +182 -0
- package/dist/agents/middlewareAgent/middleware/promptCaching.cjs.map +1 -0
- package/dist/agents/middlewareAgent/middleware/promptCaching.d.cts +152 -0
- package/dist/agents/middlewareAgent/middleware/promptCaching.d.cts.map +1 -0
- package/dist/agents/middlewareAgent/middleware/promptCaching.d.ts +152 -0
- package/dist/agents/middlewareAgent/middleware/promptCaching.d.ts.map +1 -0
- package/dist/agents/middlewareAgent/middleware/promptCaching.js +181 -0
- package/dist/agents/middlewareAgent/middleware/promptCaching.js.map +1 -0
- package/dist/agents/middlewareAgent/middleware/summarization.cjs +262 -0
- package/dist/agents/middlewareAgent/middleware/summarization.cjs.map +1 -0
- package/dist/agents/middlewareAgent/middleware/summarization.d.cts +89 -0
- package/dist/agents/middlewareAgent/middleware/summarization.d.cts.map +1 -0
- package/dist/agents/middlewareAgent/middleware/summarization.d.ts +89 -0
- package/dist/agents/middlewareAgent/middleware/summarization.d.ts.map +1 -0
- package/dist/agents/middlewareAgent/middleware/summarization.js +260 -0
- package/dist/agents/middlewareAgent/middleware/summarization.js.map +1 -0
- package/dist/agents/middlewareAgent/middleware.cjs +47 -0
- package/dist/agents/middlewareAgent/middleware.cjs.map +1 -0
- package/dist/agents/middlewareAgent/middleware.d.cts +46 -0
- package/dist/agents/middlewareAgent/middleware.d.cts.map +1 -0
- package/dist/agents/middlewareAgent/middleware.d.ts +46 -0
- package/dist/agents/middlewareAgent/middleware.d.ts.map +1 -0
- package/dist/agents/middlewareAgent/middleware.js +46 -0
- package/dist/agents/middlewareAgent/middleware.js.map +1 -0
- package/dist/agents/middlewareAgent/nodes/AfterModalNode.cjs +29 -0
- package/dist/agents/middlewareAgent/nodes/AfterModalNode.cjs.map +1 -0
- package/dist/agents/middlewareAgent/nodes/AfterModalNode.js +29 -0
- package/dist/agents/middlewareAgent/nodes/AfterModalNode.js.map +1 -0
- package/dist/agents/middlewareAgent/nodes/AgentNode.cjs +325 -0
- package/dist/agents/middlewareAgent/nodes/AgentNode.cjs.map +1 -0
- package/dist/agents/middlewareAgent/nodes/AgentNode.js +324 -0
- package/dist/agents/middlewareAgent/nodes/AgentNode.js.map +1 -0
- package/dist/agents/middlewareAgent/nodes/BeforeModalNode.cjs +27 -0
- package/dist/agents/middlewareAgent/nodes/BeforeModalNode.cjs.map +1 -0
- package/dist/agents/middlewareAgent/nodes/BeforeModalNode.js +27 -0
- package/dist/agents/middlewareAgent/nodes/BeforeModalNode.js.map +1 -0
- package/dist/agents/middlewareAgent/nodes/middleware.cjs +73 -0
- package/dist/agents/middlewareAgent/nodes/middleware.cjs.map +1 -0
- package/dist/agents/middlewareAgent/nodes/middleware.js +73 -0
- package/dist/agents/middlewareAgent/nodes/middleware.js.map +1 -0
- package/dist/agents/middlewareAgent/nodes/utils.cjs +74 -0
- package/dist/agents/middlewareAgent/nodes/utils.cjs.map +1 -0
- package/dist/agents/middlewareAgent/nodes/utils.js +70 -0
- package/dist/agents/middlewareAgent/nodes/utils.js.map +1 -0
- package/dist/agents/middlewareAgent/types.d.cts +380 -0
- package/dist/agents/middlewareAgent/types.d.cts.map +1 -0
- package/dist/agents/middlewareAgent/types.d.ts +380 -0
- package/dist/agents/middlewareAgent/types.d.ts.map +1 -0
- package/dist/agents/nodes/AgentNode.cjs +4 -4
- package/dist/agents/nodes/AgentNode.cjs.map +1 -1
- package/dist/agents/nodes/AgentNode.js +4 -4
- package/dist/agents/nodes/AgentNode.js.map +1 -1
- package/dist/agents/nodes/ToolNode.cjs +3 -3
- package/dist/agents/nodes/ToolNode.cjs.map +1 -1
- package/dist/agents/nodes/ToolNode.d.cts +4 -5
- package/dist/agents/nodes/ToolNode.d.cts.map +1 -1
- package/dist/agents/nodes/ToolNode.d.ts +1 -2
- package/dist/agents/nodes/ToolNode.d.ts.map +1 -1
- package/dist/agents/nodes/ToolNode.js +4 -4
- package/dist/agents/nodes/ToolNode.js.map +1 -1
- package/dist/agents/responses.cjs +1 -1
- package/dist/agents/responses.cjs.map +1 -1
- package/dist/agents/responses.d.cts.map +1 -1
- package/dist/agents/responses.d.ts.map +1 -1
- package/dist/agents/responses.js +1 -1
- package/dist/agents/responses.js.map +1 -1
- package/dist/agents/types.d.cts +5 -7
- package/dist/agents/types.d.cts.map +1 -1
- package/dist/agents/types.d.ts +1 -3
- package/dist/agents/types.d.ts.map +1 -1
- package/dist/agents/utils.cjs +6 -6
- package/dist/agents/utils.cjs.map +1 -1
- package/dist/agents/utils.js +7 -7
- package/dist/agents/utils.js.map +1 -1
- package/dist/agents/withAgentName.cjs.map +1 -1
- package/dist/agents/withAgentName.js.map +1 -1
- package/dist/chains/api/api_chain.d.cts +1 -1
- package/dist/chains/api/prompts.cjs.map +1 -1
- package/dist/chains/api/prompts.js.map +1 -1
- package/dist/chains/base.d.cts +1 -1
- package/dist/chains/combine_docs_chain.d.cts +1 -1
- package/dist/chains/combine_documents/stuff.d.cts +1 -1
- package/dist/chains/constitutional_ai/constitutional_chain.cjs.map +1 -1
- package/dist/chains/constitutional_ai/constitutional_chain.js.map +1 -1
- package/dist/chains/conversational_retrieval_chain.d.cts +1 -1
- package/dist/chains/graph_qa/cypher.d.cts +1 -1
- package/dist/chains/history_aware_retriever.d.cts +2 -2
- package/dist/chains/index.cjs +0 -3
- package/dist/chains/index.cjs.map +1 -1
- package/dist/chains/index.d.cts +1 -2
- package/dist/chains/index.d.ts +1 -2
- package/dist/chains/index.js +1 -3
- package/dist/chains/index.js.map +1 -1
- package/dist/chains/llm_chain.d.cts +3 -3
- package/dist/chains/openai_functions/base.d.cts +3 -3
- package/dist/chains/openai_functions/extraction.cjs.map +1 -1
- package/dist/chains/openai_functions/extraction.d.cts +1 -3
- package/dist/chains/openai_functions/extraction.d.cts.map +1 -1
- package/dist/chains/openai_functions/extraction.d.ts +1 -3
- 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 +0 -5
- package/dist/chains/openai_functions/index.cjs.map +1 -1
- package/dist/chains/openai_functions/index.d.cts +1 -2
- package/dist/chains/openai_functions/index.d.ts +1 -2
- package/dist/chains/openai_functions/index.js +1 -4
- package/dist/chains/openai_functions/index.js.map +1 -1
- package/dist/chains/openai_functions/openapi.cjs +4 -4
- package/dist/chains/openai_functions/openapi.cjs.map +1 -1
- package/dist/chains/openai_functions/openapi.d.cts +2 -2
- package/dist/chains/openai_functions/openapi.js +4 -4
- package/dist/chains/openai_functions/openapi.js.map +1 -1
- package/dist/chains/openai_functions/tagging.cjs.map +1 -1
- package/dist/chains/openai_functions/tagging.d.cts +2 -4
- package/dist/chains/openai_functions/tagging.d.cts.map +1 -1
- package/dist/chains/openai_functions/tagging.d.ts +1 -3
- package/dist/chains/openai_functions/tagging.d.ts.map +1 -1
- package/dist/chains/openai_functions/tagging.js.map +1 -1
- package/dist/chains/query_constructor/index.cjs +4 -4
- package/dist/chains/query_constructor/index.cjs.map +1 -1
- package/dist/chains/query_constructor/index.d.cts +5 -3
- package/dist/chains/query_constructor/index.d.cts.map +1 -1
- package/dist/chains/query_constructor/index.d.ts +4 -2
- package/dist/chains/query_constructor/index.d.ts.map +1 -1
- package/dist/chains/query_constructor/index.js +1 -1
- package/dist/chains/query_constructor/index.js.map +1 -1
- package/dist/chains/question_answering/map_reduce_prompts.cjs.map +1 -1
- package/dist/chains/question_answering/map_reduce_prompts.js.map +1 -1
- package/dist/chains/question_answering/refine_prompts.cjs.map +1 -1
- package/dist/chains/question_answering/refine_prompts.js.map +1 -1
- package/dist/chains/question_answering/stuff_prompts.cjs.map +1 -1
- package/dist/chains/question_answering/stuff_prompts.js.map +1 -1
- package/dist/chains/retrieval.d.cts +1 -1
- package/dist/chains/router/llm_router.d.cts +1 -1
- package/dist/chains/router/multi_prompt.cjs +4 -4
- package/dist/chains/router/multi_prompt.cjs.map +1 -1
- package/dist/chains/router/multi_prompt.js +1 -1
- package/dist/chains/router/multi_prompt.js.map +1 -1
- package/dist/chains/router/multi_retrieval_qa.cjs +4 -4
- package/dist/chains/router/multi_retrieval_qa.cjs.map +1 -1
- package/dist/chains/router/multi_retrieval_qa.js +1 -1
- package/dist/chains/router/multi_retrieval_qa.js.map +1 -1
- package/dist/chains/sql_db/sql_db_chain.d.cts +2 -2
- 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/stuff_prompts.cjs.map +1 -1
- package/dist/chains/summarization/stuff_prompts.js.map +1 -1
- package/dist/chat_models/universal.cjs +8 -5
- package/dist/chat_models/universal.cjs.map +1 -1
- package/dist/chat_models/universal.d.cts +4 -4
- package/dist/chat_models/universal.d.cts.map +1 -1
- package/dist/chat_models/universal.d.ts +2 -2
- package/dist/chat_models/universal.d.ts.map +1 -1
- package/dist/chat_models/universal.js +8 -5
- package/dist/chat_models/universal.js.map +1 -1
- package/dist/document_loaders/fs/directory.cjs.map +1 -1
- package/dist/document_loaders/fs/directory.d.cts +0 -1
- package/dist/document_loaders/fs/directory.d.cts.map +1 -1
- package/dist/document_loaders/fs/directory.d.ts +0 -1
- package/dist/document_loaders/fs/directory.d.ts.map +1 -1
- package/dist/document_loaders/fs/directory.js.map +1 -1
- package/dist/document_loaders/fs/json.cjs +7 -1
- package/dist/document_loaders/fs/json.cjs.map +1 -1
- package/dist/document_loaders/fs/json.js +7 -1
- package/dist/document_loaders/fs/json.js.map +1 -1
- package/dist/embeddings/cache_backed.cjs +1 -1
- package/dist/embeddings/cache_backed.cjs.map +1 -1
- package/dist/embeddings/cache_backed.d.cts +1 -1
- package/dist/embeddings/cache_backed.d.ts +1 -1
- package/dist/embeddings/cache_backed.js +2 -2
- package/dist/embeddings/cache_backed.js.map +1 -1
- package/dist/evaluation/agents/trajectory.d.cts +3 -3
- package/dist/evaluation/agents/trajectory.d.cts.map +1 -1
- package/dist/evaluation/agents/trajectory.d.ts.map +1 -1
- package/dist/evaluation/comparison/pairwise.d.cts +1 -1
- package/dist/evaluation/comparison/pairwise.d.cts.map +1 -1
- package/dist/evaluation/criteria/criteria.d.cts +1 -1
- package/dist/evaluation/criteria/criteria.d.cts.map +1 -1
- package/dist/evaluation/criteria/criteria.d.ts.map +1 -1
- package/dist/evaluation/embedding_distance/base.cjs +2 -4
- package/dist/evaluation/embedding_distance/base.cjs.map +1 -1
- package/dist/evaluation/embedding_distance/base.js +2 -3
- package/dist/evaluation/embedding_distance/base.js.map +1 -1
- package/dist/evaluation/loader.cjs +7 -12
- package/dist/evaluation/loader.cjs.map +1 -1
- package/dist/evaluation/loader.d.cts +8 -2
- package/dist/evaluation/loader.d.cts.map +1 -1
- package/dist/evaluation/loader.d.ts +8 -2
- package/dist/evaluation/loader.d.ts.map +1 -1
- package/dist/evaluation/loader.js +7 -12
- package/dist/evaluation/loader.js.map +1 -1
- package/dist/evaluation/qa/eval_chain.d.cts +1 -1
- package/dist/hub/base.cjs.map +1 -1
- package/dist/hub/base.js.map +1 -1
- package/dist/index.cjs +3 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +5 -4
- package/dist/index.d.ts +3 -2
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/langchain-core/dist/load/serializable.d.cts.map +1 -1
- package/dist/langchain-core/dist/messages/base.d.cts +24 -33
- package/dist/langchain-core/dist/messages/base.d.cts.map +1 -1
- package/dist/langchain-core/dist/messages/content/index.d.cts +1 -1
- package/dist/langchain-core/dist/messages/content/index.d.cts.map +1 -1
- package/dist/langchain-core/dist/messages/message.d.cts +598 -0
- package/dist/langchain-core/dist/messages/message.d.cts.map +1 -0
- package/dist/langchain-core/dist/messages/metadata.d.cts +97 -0
- package/dist/langchain-core/dist/messages/metadata.d.cts.map +1 -0
- package/dist/langchain-core/dist/messages/utils.d.cts +75 -0
- package/dist/langchain-core/dist/messages/utils.d.cts.map +1 -0
- package/dist/langchain-core/dist/prompt_values.d.cts.map +1 -1
- package/dist/libs/langchain-core/dist/load/serializable.d.ts.map +1 -1
- package/dist/libs/langchain-core/dist/messages/base.d.ts +24 -33
- package/dist/libs/langchain-core/dist/messages/base.d.ts.map +1 -1
- package/dist/libs/langchain-core/dist/messages/content/index.d.ts +1 -1
- package/dist/libs/langchain-core/dist/messages/content/index.d.ts.map +1 -1
- package/dist/libs/langchain-core/dist/messages/message.d.ts +598 -0
- package/dist/libs/langchain-core/dist/messages/message.d.ts.map +1 -0
- package/dist/libs/langchain-core/dist/messages/metadata.d.ts +97 -0
- package/dist/libs/langchain-core/dist/messages/metadata.d.ts.map +1 -0
- package/dist/libs/langchain-core/dist/messages/utils.d.ts +75 -0
- package/dist/libs/langchain-core/dist/messages/utils.d.ts.map +1 -0
- package/dist/libs/langchain-core/dist/prompt_values.d.ts.map +1 -1
- package/dist/libs/langchain-core/dist/utils/types/index.d.ts +2 -0
- package/dist/libs/langchain-core/dist/utils/types/index.d.ts.map +1 -1
- package/dist/libs/langchain-core/dist/utils/types/zod.d.ts +1 -0
- package/dist/load/import_map.cjs +2 -13
- package/dist/load/import_map.cjs.map +1 -1
- package/dist/load/import_map.js +2 -13
- package/dist/load/import_map.js.map +1 -1
- package/dist/memory/prompt.cjs.map +1 -1
- package/dist/memory/prompt.d.cts.map +1 -1
- package/dist/memory/prompt.d.ts.map +1 -1
- package/dist/memory/prompt.js.map +1 -1
- package/dist/memory/summary.d.cts +1 -1
- package/dist/output_parsers/combining.cjs +1 -1
- package/dist/output_parsers/combining.cjs.map +1 -1
- package/dist/output_parsers/combining.js +1 -1
- package/dist/output_parsers/combining.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 -1
- package/dist/output_parsers/expression_type_handlers/base.cjs.map +1 -1
- package/dist/output_parsers/expression_type_handlers/base.js +1 -1
- package/dist/output_parsers/expression_type_handlers/base.js.map +1 -1
- package/dist/output_parsers/fix.d.cts +1 -1
- package/dist/output_parsers/http_response.d.cts +1 -1
- package/dist/output_parsers/regex.cjs.map +1 -1
- package/dist/output_parsers/regex.js.map +1 -1
- package/dist/output_parsers/structured.cjs +4 -4
- package/dist/output_parsers/structured.cjs.map +1 -1
- package/dist/output_parsers/structured.d.cts +2 -2
- package/dist/output_parsers/structured.d.cts.map +1 -1
- package/dist/output_parsers/structured.d.ts +1 -1
- package/dist/output_parsers/structured.d.ts.map +1 -1
- package/dist/output_parsers/structured.js +2 -2
- package/dist/output_parsers/structured.js.map +1 -1
- package/dist/retrievers/ensemble.cjs.map +1 -1
- package/dist/retrievers/ensemble.js.map +1 -1
- package/dist/storage/file_system.cjs +1 -1
- package/dist/storage/file_system.cjs.map +1 -1
- package/dist/storage/file_system.js +1 -1
- package/dist/storage/file_system.js.map +1 -1
- package/dist/tools/fs.cjs +5 -5
- package/dist/tools/fs.cjs.map +1 -1
- package/dist/tools/fs.d.cts +1 -1
- package/dist/tools/fs.d.cts.map +1 -1
- package/dist/tools/fs.d.ts +1 -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/json.d.cts +1 -1
- package/dist/tools/retriever.cjs +2 -2
- package/dist/tools/retriever.cjs.map +1 -1
- package/dist/tools/retriever.d.cts +2 -2
- package/dist/tools/retriever.d.cts.map +1 -1
- package/dist/tools/retriever.d.ts +1 -1
- package/dist/tools/retriever.d.ts.map +1 -1
- package/dist/tools/retriever.js +1 -1
- package/dist/tools/retriever.js.map +1 -1
- package/dist/tools/sql.cjs +1 -2
- package/dist/tools/sql.cjs.map +1 -1
- package/dist/tools/sql.d.cts +1 -1
- package/dist/tools/sql.d.cts.map +1 -1
- package/dist/tools/sql.d.ts +1 -1
- package/dist/tools/sql.d.ts.map +1 -1
- package/dist/tools/sql.js +1 -2
- package/dist/tools/sql.js.map +1 -1
- package/dist/tools/vectorstore.d.cts +1 -1
- package/dist/tools/webbrowser.d.cts +1 -1
- package/dist/types/expression-parser.d.cts +2 -0
- package/dist/types/expression-parser.d.cts.map +1 -1
- package/dist/types/expression-parser.d.ts +2 -0
- package/dist/types/expression-parser.d.ts.map +1 -1
- package/dist/util/hub.cjs +1 -1
- package/dist/util/hub.js +1 -1
- package/dist/util/openapi.cjs +1 -1
- package/dist/util/openapi.cjs.map +1 -1
- package/dist/util/openapi.js +1 -1
- package/dist/util/openapi.js.map +1 -1
- package/package.json +21 -16
- package/dist/chains/openai_functions/structured_output.cjs +0 -107
- package/dist/chains/openai_functions/structured_output.cjs.map +0 -1
- package/dist/chains/openai_functions/structured_output.d.cts +0 -38
- package/dist/chains/openai_functions/structured_output.d.cts.map +0 -1
- package/dist/chains/openai_functions/structured_output.d.ts +0 -38
- package/dist/chains/openai_functions/structured_output.d.ts.map +0 -1
- package/dist/chains/openai_functions/structured_output.js +0 -105
- package/dist/chains/openai_functions/structured_output.js.map +0 -1
- package/dist/chains/openai_moderation.cjs +0 -107
- package/dist/chains/openai_moderation.cjs.map +0 -1
- package/dist/chains/openai_moderation.d.cts +0 -74
- package/dist/chains/openai_moderation.d.cts.map +0 -1
- package/dist/chains/openai_moderation.d.ts +0 -74
- package/dist/chains/openai_moderation.d.ts.map +0 -1
- package/dist/chains/openai_moderation.js +0 -106
- package/dist/chains/openai_moderation.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","names":["distanceType: EmbeddingDistanceType","distanceFunctions: { [key in EmbeddingDistanceType]: VectorFunction }","X: number[]","Y: number[]","vectors: number[][]","distanceMetric: EmbeddingDistanceType","fields: EmbeddingDistanceEvalChainInput","args: StringEvaluatorArgs","config: Callbacks | BaseCallbackConfig | undefined","values: ChainValues","_runManager: CallbackManagerForChainRun | undefined","args: PairwiseStringEvaluatorArgs","config?: Callbacks | BaseCallbackConfig"],"sources":["../../../src/evaluation/embedding_distance/base.ts"],"sourcesContent":["import type { EmbeddingsInterface } from \"@langchain/core/embeddings\";\nimport { ChainValues } from \"@langchain/core/utils/types\";\nimport {
|
|
1
|
+
{"version":3,"file":"base.js","names":["distanceType: EmbeddingDistanceType","distanceFunctions: { [key in EmbeddingDistanceType]: VectorFunction }","X: number[]","Y: number[]","vectors: number[][]","distanceMetric: EmbeddingDistanceType","fields: EmbeddingDistanceEvalChainInput","args: StringEvaluatorArgs","config: Callbacks | BaseCallbackConfig | undefined","values: ChainValues","_runManager: CallbackManagerForChainRun | undefined","args: PairwiseStringEvaluatorArgs","config?: Callbacks | BaseCallbackConfig"],"sources":["../../../src/evaluation/embedding_distance/base.ts"],"sourcesContent":["import type { EmbeddingsInterface } from \"@langchain/core/embeddings\";\nimport { ChainValues } from \"@langchain/core/utils/types\";\nimport {\n CallbackManagerForChainRun,\n Callbacks,\n BaseCallbackConfig,\n} from \"@langchain/core/callbacks/manager\";\nimport {\n PairwiseStringEvaluator,\n PairwiseStringEvaluatorArgs,\n StringEvaluator,\n StringEvaluatorArgs,\n} from \"../base.js\";\nimport { cosine } from \"../../util/ml-distance/similarities.js\";\nimport { chebyshev, manhattan } from \"../../util/ml-distance/distances.js\";\nimport { euclidean } from \"../../util/ml-distance-euclidean/euclidean.js\";\n\n/**\n *\n * Embedding Distance Metric.\n *\n * COSINE: Cosine distance metric.\n * EUCLIDEAN: Euclidean distance metric.\n * MANHATTAN: Manhattan distance metric.\n * CHEBYSHEV: Chebyshev distance metric.\n * HAMMING: Hamming distance metric.\n */\nexport type EmbeddingDistanceType =\n | \"cosine\"\n | \"euclidean\"\n | \"manhattan\"\n | \"chebyshev\";\n\n/**\n * Embedding Distance Evaluation Chain Input.\n */\nexport interface EmbeddingDistanceEvalChainInput {\n /**\n * The embedding objects to vectorize the outputs.\n */\n embedding?: EmbeddingsInterface;\n\n /**\n * The distance metric to use\n * for comparing the embeddings.\n */\n distanceMetric?: EmbeddingDistanceType;\n}\n\ntype VectorFunction = (xVector: number[], yVector: number[]) => number;\n\n/**\n * Get the distance function for the given distance type.\n * @param distance The distance type.\n * @return The distance function.\n */\nexport function getDistanceCalculationFunction(\n distanceType: EmbeddingDistanceType\n): VectorFunction {\n const distanceFunctions: { [key in EmbeddingDistanceType]: VectorFunction } =\n {\n cosine: (X: number[], Y: number[]) => 1.0 - cosine(X, Y),\n euclidean,\n manhattan,\n chebyshev,\n };\n\n return distanceFunctions[distanceType];\n}\n\n/**\n * Compute the score based on the distance metric.\n * @param vectors The input vectors.\n * @param distanceMetric The distance metric.\n * @return The computed score.\n */\nexport function computeEvaluationScore(\n vectors: number[][],\n distanceMetric: EmbeddingDistanceType\n): number {\n const metricFunction = getDistanceCalculationFunction(distanceMetric);\n return metricFunction(vectors[0], vectors[1]);\n}\n\n/**\n * Use embedding distances to score semantic difference between\n * a prediction and reference.\n */\nexport class EmbeddingDistanceEvalChain\n extends StringEvaluator\n implements EmbeddingDistanceEvalChainInput\n{\n requiresReference = true;\n\n requiresInput = false;\n\n outputKey = \"score\";\n\n embedding?: EmbeddingsInterface;\n\n distanceMetric: EmbeddingDistanceType = \"cosine\";\n\n constructor(fields: EmbeddingDistanceEvalChainInput) {\n super();\n this.embedding = fields?.embedding;\n this.distanceMetric = fields?.distanceMetric || \"cosine\";\n }\n\n _chainType() {\n return `embedding_${this.distanceMetric}_distance` as const;\n }\n\n async _evaluateStrings(\n args: StringEvaluatorArgs,\n config: Callbacks | BaseCallbackConfig | undefined\n ): Promise<ChainValues> {\n const result = await this.call(args, config);\n\n return { [this.outputKey]: result[this.outputKey] };\n }\n\n get inputKeys(): string[] {\n return [\"reference\", \"prediction\"];\n }\n\n get outputKeys(): string[] {\n return [this.outputKey];\n }\n\n async _call(\n values: ChainValues,\n _runManager: CallbackManagerForChainRun | undefined\n ): Promise<ChainValues> {\n const { prediction, reference } = values;\n\n if (!this.embedding) throw new Error(\"Embedding is undefined\");\n\n const vectors = await this.embedding.embedDocuments([\n prediction,\n reference,\n ]);\n\n const score = computeEvaluationScore(vectors, this.distanceMetric);\n\n return { [this.outputKey]: score };\n }\n}\n\n/**\n * Use embedding distances to score semantic difference between two predictions.\n */\nexport class PairwiseEmbeddingDistanceEvalChain\n extends PairwiseStringEvaluator\n implements EmbeddingDistanceEvalChainInput\n{\n requiresReference = false;\n\n requiresInput = false;\n\n outputKey = \"score\";\n\n embedding?: EmbeddingsInterface;\n\n distanceMetric: EmbeddingDistanceType = \"cosine\";\n\n constructor(fields: EmbeddingDistanceEvalChainInput) {\n super();\n this.embedding = fields?.embedding;\n this.distanceMetric = fields?.distanceMetric || \"cosine\";\n }\n\n _chainType() {\n return `pairwise_embedding_${this.distanceMetric}_distance` as const;\n }\n\n async _evaluateStringPairs(\n args: PairwiseStringEvaluatorArgs,\n config?: Callbacks | BaseCallbackConfig\n ): Promise<ChainValues> {\n const result = await this.call(args, config);\n\n return { [this.outputKey]: result[this.outputKey] };\n }\n\n get inputKeys(): string[] {\n return [\"prediction\", \"predictionB\"];\n }\n\n get outputKeys(): string[] {\n return [this.outputKey];\n }\n\n async _call(\n values: ChainValues,\n _runManager: CallbackManagerForChainRun | undefined\n ): Promise<ChainValues> {\n const { prediction, predictionB } = values;\n\n if (!this.embedding) throw new Error(\"Embedding is undefined\");\n\n const vectors = await this.embedding.embedDocuments([\n prediction,\n predictionB,\n ]);\n\n const score = computeEvaluationScore(vectors, this.distanceMetric);\n\n return { [this.outputKey]: score };\n }\n}\n"],"mappings":";;;;;;;;;;;AAwDA,SAAgB,+BACdA,cACgB;CAChB,MAAMC,oBACJ;EACE,QAAQ,CAACC,GAAaC,MAAgB,IAAM,OAAO,GAAG,EAAE;EACxD;EACA;EACA;CACD;AAEH,QAAO,kBAAkB;AAC1B;;;;;;;AAQD,SAAgB,uBACdC,SACAC,gBACQ;CACR,MAAM,iBAAiB,+BAA+B,eAAe;AACrE,QAAO,eAAe,QAAQ,IAAI,QAAQ,GAAG;AAC9C;;;;;AAMD,IAAa,6BAAb,cACU,gBAEV;CACE,oBAAoB;CAEpB,gBAAgB;CAEhB,YAAY;CAEZ;CAEA,iBAAwC;CAExC,YAAYC,QAAyC;EACnD,OAAO;EACP,KAAK,YAAY,QAAQ;EACzB,KAAK,iBAAiB,QAAQ,kBAAkB;CACjD;CAED,aAAa;AACX,SAAO,CAAC,UAAU,EAAE,KAAK,eAAe,SAAS,CAAC;CACnD;CAED,MAAM,iBACJC,MACAC,QACsB;EACtB,MAAM,SAAS,MAAM,KAAK,KAAK,MAAM,OAAO;AAE5C,SAAO,GAAG,KAAK,YAAY,OAAO,KAAK,WAAY;CACpD;CAED,IAAI,YAAsB;AACxB,SAAO,CAAC,aAAa,YAAa;CACnC;CAED,IAAI,aAAuB;AACzB,SAAO,CAAC,KAAK,SAAU;CACxB;CAED,MAAM,MACJC,QACAC,aACsB;EACtB,MAAM,EAAE,YAAY,WAAW,GAAG;AAElC,MAAI,CAAC,KAAK,UAAW,OAAM,IAAI,MAAM;EAErC,MAAM,UAAU,MAAM,KAAK,UAAU,eAAe,CAClD,YACA,SACD,EAAC;EAEF,MAAM,QAAQ,uBAAuB,SAAS,KAAK,eAAe;AAElE,SAAO,GAAG,KAAK,YAAY,MAAO;CACnC;AACF;;;;AAKD,IAAa,qCAAb,cACU,wBAEV;CACE,oBAAoB;CAEpB,gBAAgB;CAEhB,YAAY;CAEZ;CAEA,iBAAwC;CAExC,YAAYJ,QAAyC;EACnD,OAAO;EACP,KAAK,YAAY,QAAQ;EACzB,KAAK,iBAAiB,QAAQ,kBAAkB;CACjD;CAED,aAAa;AACX,SAAO,CAAC,mBAAmB,EAAE,KAAK,eAAe,SAAS,CAAC;CAC5D;CAED,MAAM,qBACJK,MACAC,QACsB;EACtB,MAAM,SAAS,MAAM,KAAK,KAAK,MAAM,OAAO;AAE5C,SAAO,GAAG,KAAK,YAAY,OAAO,KAAK,WAAY;CACpD;CAED,IAAI,YAAsB;AACxB,SAAO,CAAC,cAAc,aAAc;CACrC;CAED,IAAI,aAAuB;AACzB,SAAO,CAAC,KAAK,SAAU;CACxB;CAED,MAAM,MACJH,QACAC,aACsB;EACtB,MAAM,EAAE,YAAY,aAAa,GAAG;AAEpC,MAAI,CAAC,KAAK,UAAW,OAAM,IAAI,MAAM;EAErC,MAAM,UAAU,MAAM,KAAK,UAAU,eAAe,CAClD,YACA,WACD,EAAC;EAEF,MAAM,QAAQ,uBAAuB,SAAS,KAAK,eAAe;AAElE,SAAO,GAAG,KAAK,YAAY,MAAO;CACnC;AACF"}
|
|
@@ -8,7 +8,6 @@ require('./embedding_distance/index.cjs');
|
|
|
8
8
|
const require_pairwise = require('./comparison/pairwise.cjs');
|
|
9
9
|
require('./comparison/index.cjs');
|
|
10
10
|
const __langchain_core_language_models_chat_models = require_rolldown_runtime.__toESM(require("@langchain/core/language_models/chat_models"));
|
|
11
|
-
const __langchain_openai = require_rolldown_runtime.__toESM(require("@langchain/openai"));
|
|
12
11
|
|
|
13
12
|
//#region src/evaluation/loader.ts
|
|
14
13
|
/**
|
|
@@ -20,28 +19,24 @@ const __langchain_openai = require_rolldown_runtime.__toESM(require("@langchain/
|
|
|
20
19
|
* - agentTools A list of tools available to the agent,for TrajectoryEvalChain.
|
|
21
20
|
*/
|
|
22
21
|
async function loadEvaluator(type, options) {
|
|
23
|
-
const { llm, chainOptions, criteria, agentTools } = options
|
|
24
|
-
const llm_ = llm ?? new __langchain_openai.ChatOpenAI({
|
|
25
|
-
model: "gpt-4",
|
|
26
|
-
temperature: 0
|
|
27
|
-
});
|
|
22
|
+
const { llm, chainOptions, criteria, agentTools } = options;
|
|
28
23
|
let evaluator;
|
|
29
24
|
switch (type) {
|
|
30
25
|
case "criteria":
|
|
31
|
-
evaluator = await require_criteria.CriteriaEvalChain.fromLLM(
|
|
26
|
+
evaluator = await require_criteria.CriteriaEvalChain.fromLLM(llm, criteria, chainOptions);
|
|
32
27
|
break;
|
|
33
28
|
case "labeled_criteria":
|
|
34
|
-
evaluator = await require_criteria.LabeledCriteriaEvalChain.fromLLM(
|
|
29
|
+
evaluator = await require_criteria.LabeledCriteriaEvalChain.fromLLM(llm, criteria, chainOptions);
|
|
35
30
|
break;
|
|
36
31
|
case "pairwise_string":
|
|
37
|
-
evaluator = await require_pairwise.PairwiseStringEvalChain.fromLLM(
|
|
32
|
+
evaluator = await require_pairwise.PairwiseStringEvalChain.fromLLM(llm, criteria, chainOptions);
|
|
38
33
|
break;
|
|
39
34
|
case "labeled_pairwise_string":
|
|
40
|
-
evaluator = await require_pairwise.LabeledPairwiseStringEvalChain.fromLLM(
|
|
35
|
+
evaluator = await require_pairwise.LabeledPairwiseStringEvalChain.fromLLM(llm, criteria, chainOptions);
|
|
41
36
|
break;
|
|
42
37
|
case "trajectory":
|
|
43
|
-
if (!(
|
|
44
|
-
evaluator = await require_trajectory.TrajectoryEvalChain.fromLLM(
|
|
38
|
+
if (!(llm instanceof __langchain_core_language_models_chat_models.BaseChatModel)) throw new Error("LLM must be an instance of a base chat model.");
|
|
39
|
+
evaluator = await require_trajectory.TrajectoryEvalChain.fromLLM(llm, agentTools, chainOptions);
|
|
45
40
|
break;
|
|
46
41
|
case "embedding_distance":
|
|
47
42
|
evaluator = new require_base.EmbeddingDistanceEvalChain({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.cjs","names":["type: T","options
|
|
1
|
+
{"version":3,"file":"loader.cjs","names":["type: T","options: LoadEvaluatorOptions","evaluator: unknown","CriteriaEvalChain","LabeledCriteriaEvalChain","PairwiseStringEvalChain","LabeledPairwiseStringEvalChain","BaseChatModel","TrajectoryEvalChain","EmbeddingDistanceEvalChain","PairwiseEmbeddingDistanceEvalChain"],"sources":["../../src/evaluation/loader.ts"],"sourcesContent":["import type { BaseLanguageModelInterface } from \"@langchain/core/language_models/base\";\nimport type { StructuredToolInterface } from \"@langchain/core/tools\";\nimport { BaseChatModel } from \"@langchain/core/language_models/chat_models\";\nimport {\n CriteriaLike,\n CriteriaEvalChain,\n LabeledCriteriaEvalChain,\n} from \"./criteria/index.js\";\nimport type { EvaluatorType } from \"./types.js\";\nimport { LLMEvalChainInput } from \"./base.js\";\nimport {\n LabeledPairwiseStringEvalChain,\n PairwiseStringEvalChain,\n} from \"./comparison/index.js\";\nimport {\n EmbeddingDistanceEvalChain,\n EmbeddingDistanceEvalChainInput,\n PairwiseEmbeddingDistanceEvalChain,\n} from \"./embedding_distance/index.js\";\nimport { TrajectoryEvalChain } from \"./agents/index.js\";\n\nexport type LoadEvaluatorOptions = EmbeddingDistanceEvalChainInput & {\n /**\n * The language model to use for the evaluator.\n */\n llm: BaseLanguageModelInterface;\n /**\n * The options to pass to the evaluator chain.\n */\n chainOptions?: Partial<Omit<LLMEvalChainInput, \"llm\">>;\n /**\n * The criteria to use for the evaluator.\n */\n criteria?: CriteriaLike;\n\n /**\n * A list of tools available to the agent, for TrajectoryEvalChain.\n */\n agentTools?: StructuredToolInterface[];\n};\n\n/**\n * Load the requested evaluation chain specified by a string\n * @param type The type of evaluator to load.\n * @param options\n * - llm The language model to use for the evaluator.\n * - criteria The criteria to use for the evaluator.\n * - agentTools A list of tools available to the agent,for TrajectoryEvalChain.\n */\nexport async function loadEvaluator<T extends keyof EvaluatorType>(\n type: T,\n options: LoadEvaluatorOptions\n): Promise<EvaluatorType[T]> {\n const { llm, chainOptions, criteria, agentTools } = options;\n\n let evaluator: unknown;\n switch (type) {\n case \"criteria\":\n evaluator = await CriteriaEvalChain.fromLLM(llm, criteria, chainOptions);\n break;\n case \"labeled_criteria\":\n evaluator = await LabeledCriteriaEvalChain.fromLLM(\n llm,\n criteria,\n chainOptions\n );\n break;\n case \"pairwise_string\":\n evaluator = await PairwiseStringEvalChain.fromLLM(\n llm,\n criteria,\n chainOptions\n );\n break;\n case \"labeled_pairwise_string\":\n evaluator = await LabeledPairwiseStringEvalChain.fromLLM(\n llm,\n criteria,\n chainOptions\n );\n break;\n case \"trajectory\":\n // eslint-disable-next-line no-instanceof/no-instanceof\n if (!(llm instanceof BaseChatModel)) {\n throw new Error(\"LLM must be an instance of a base chat model.\");\n }\n evaluator = await TrajectoryEvalChain.fromLLM(\n llm,\n agentTools,\n chainOptions\n );\n break;\n case \"embedding_distance\":\n evaluator = new EmbeddingDistanceEvalChain({\n embedding: options?.embedding,\n distanceMetric: options?.distanceMetric,\n });\n break;\n case \"pairwise_embedding_distance\":\n evaluator = new PairwiseEmbeddingDistanceEvalChain({});\n break;\n default:\n throw new Error(`Unknown type: ${type}`);\n }\n\n return evaluator as EvaluatorType[T];\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAiDA,eAAsB,cACpBA,MACAC,SAC2B;CAC3B,MAAM,EAAE,KAAK,cAAc,UAAU,YAAY,GAAG;CAEpD,IAAIC;AACJ,SAAQ,MAAR;EACE,KAAK;GACH,YAAY,MAAMC,mCAAkB,QAAQ,KAAK,UAAU,aAAa;AACxE;EACF,KAAK;GACH,YAAY,MAAMC,0CAAyB,QACzC,KACA,UACA,aACD;AACD;EACF,KAAK;GACH,YAAY,MAAMC,yCAAwB,QACxC,KACA,UACA,aACD;AACD;EACF,KAAK;GACH,YAAY,MAAMC,gDAA+B,QAC/C,KACA,UACA,aACD;AACD;EACF,KAAK;AAEH,OAAI,EAAE,eAAeC,4DACnB,OAAM,IAAI,MAAM;GAElB,YAAY,MAAMC,uCAAoB,QACpC,KACA,YACA,aACD;AACD;EACF,KAAK;GACH,YAAY,IAAIC,wCAA2B;IACzC,WAAW,SAAS;IACpB,gBAAgB,SAAS;GAC1B;AACD;EACF,KAAK;GACH,YAAY,IAAIC,gDAAmC,CAAE;AACrD;EACF,QACE,OAAM,IAAI,MAAM,CAAC,cAAc,EAAE,MAAM;CAC1C;AAED,QAAO;AACR"}
|
|
@@ -7,7 +7,13 @@ import { StructuredToolInterface } from "@langchain/core/tools";
|
|
|
7
7
|
|
|
8
8
|
//#region src/evaluation/loader.d.ts
|
|
9
9
|
type LoadEvaluatorOptions = EmbeddingDistanceEvalChainInput & {
|
|
10
|
-
|
|
10
|
+
/**
|
|
11
|
+
* The language model to use for the evaluator.
|
|
12
|
+
*/
|
|
13
|
+
llm: BaseLanguageModelInterface;
|
|
14
|
+
/**
|
|
15
|
+
* The options to pass to the evaluator chain.
|
|
16
|
+
*/
|
|
11
17
|
chainOptions?: Partial<Omit<LLMEvalChainInput, "llm">>;
|
|
12
18
|
/**
|
|
13
19
|
* The criteria to use for the evaluator.
|
|
@@ -26,7 +32,7 @@ type LoadEvaluatorOptions = EmbeddingDistanceEvalChainInput & {
|
|
|
26
32
|
* - criteria The criteria to use for the evaluator.
|
|
27
33
|
* - agentTools A list of tools available to the agent,for TrajectoryEvalChain.
|
|
28
34
|
*/
|
|
29
|
-
declare function loadEvaluator<T extends keyof EvaluatorType>(type: T, options
|
|
35
|
+
declare function loadEvaluator<T extends keyof EvaluatorType>(type: T, options: LoadEvaluatorOptions): Promise<EvaluatorType[T]>;
|
|
30
36
|
//#endregion
|
|
31
37
|
export { LoadEvaluatorOptions, loadEvaluator };
|
|
32
38
|
//# sourceMappingURL=loader.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.d.cts","names":["BaseLanguageModelInterface","StructuredToolInterface","CriteriaLike","EvaluatorType","LLMEvalChainInput","EmbeddingDistanceEvalChainInput","LoadEvaluatorOptions","Omit","Partial","loadEvaluator","T","Promise"],"sources":["../../src/evaluation/loader.d.ts"],"sourcesContent":["import type { BaseLanguageModelInterface } from \"@langchain/core/language_models/base\";\nimport type { StructuredToolInterface } from \"@langchain/core/tools\";\nimport { CriteriaLike } from \"./criteria/index.js\";\nimport type { EvaluatorType } from \"./types.js\";\nimport { LLMEvalChainInput } from \"./base.js\";\nimport { EmbeddingDistanceEvalChainInput } from \"./embedding_distance/index.js\";\nexport type LoadEvaluatorOptions = EmbeddingDistanceEvalChainInput & {\n llm
|
|
1
|
+
{"version":3,"file":"loader.d.cts","names":["BaseLanguageModelInterface","StructuredToolInterface","CriteriaLike","EvaluatorType","LLMEvalChainInput","EmbeddingDistanceEvalChainInput","LoadEvaluatorOptions","Omit","Partial","loadEvaluator","T","Promise"],"sources":["../../src/evaluation/loader.d.ts"],"sourcesContent":["import type { BaseLanguageModelInterface } from \"@langchain/core/language_models/base\";\nimport type { StructuredToolInterface } from \"@langchain/core/tools\";\nimport { CriteriaLike } from \"./criteria/index.js\";\nimport type { EvaluatorType } from \"./types.js\";\nimport { LLMEvalChainInput } from \"./base.js\";\nimport { EmbeddingDistanceEvalChainInput } from \"./embedding_distance/index.js\";\nexport type LoadEvaluatorOptions = EmbeddingDistanceEvalChainInput & {\n /**\n * The language model to use for the evaluator.\n */\n llm: BaseLanguageModelInterface;\n /**\n * The options to pass to the evaluator chain.\n */\n chainOptions?: Partial<Omit<LLMEvalChainInput, \"llm\">>;\n /**\n * The criteria to use for the evaluator.\n */\n criteria?: CriteriaLike;\n /**\n * A list of tools available to the agent, for TrajectoryEvalChain.\n */\n agentTools?: StructuredToolInterface[];\n};\n/**\n * Load the requested evaluation chain specified by a string\n * @param type The type of evaluator to load.\n * @param options\n * - llm The language model to use for the evaluator.\n * - criteria The criteria to use for the evaluator.\n * - agentTools A list of tools available to the agent,for TrajectoryEvalChain.\n */\nexport declare function loadEvaluator<T extends keyof EvaluatorType>(type: T, options: LoadEvaluatorOptions): Promise<EvaluatorType[T]>;\n"],"mappings":";;;;;;;;KAMYM,oBAAAA,GAAuBD;;AAAnC;;EAAgC,GAAGA,EAI1BL,0BAJ0BK;EAA+B;;;EAQnC,YAAZG,CAAAA,EAAAA,OAAAA,CAAQD,IAARC,CAAaJ,iBAAbI,EAAAA,KAAAA,CAAAA,CAAAA;EAAO;;AAQc;EAUhBC,QAAAA,CAAAA,EAdTP,YAcsB;EAAA;;;EAAuC,UAAWI,CAAAA,EAVtEL,uBAUsEK,EAAAA;CAAoB;;;AAAU;;;;;;iBAA7FG,8BAA8BN,qBAAqBO,YAAYJ,uBAAuBK,QAAQR,cAAcO"}
|
|
@@ -7,7 +7,13 @@ import { BaseLanguageModelInterface } from "@langchain/core/language_models/base
|
|
|
7
7
|
|
|
8
8
|
//#region src/evaluation/loader.d.ts
|
|
9
9
|
type LoadEvaluatorOptions = EmbeddingDistanceEvalChainInput & {
|
|
10
|
-
|
|
10
|
+
/**
|
|
11
|
+
* The language model to use for the evaluator.
|
|
12
|
+
*/
|
|
13
|
+
llm: BaseLanguageModelInterface;
|
|
14
|
+
/**
|
|
15
|
+
* The options to pass to the evaluator chain.
|
|
16
|
+
*/
|
|
11
17
|
chainOptions?: Partial<Omit<LLMEvalChainInput, "llm">>;
|
|
12
18
|
/**
|
|
13
19
|
* The criteria to use for the evaluator.
|
|
@@ -26,7 +32,7 @@ type LoadEvaluatorOptions = EmbeddingDistanceEvalChainInput & {
|
|
|
26
32
|
* - criteria The criteria to use for the evaluator.
|
|
27
33
|
* - agentTools A list of tools available to the agent,for TrajectoryEvalChain.
|
|
28
34
|
*/
|
|
29
|
-
declare function loadEvaluator<T extends keyof EvaluatorType>(type: T, options
|
|
35
|
+
declare function loadEvaluator<T extends keyof EvaluatorType>(type: T, options: LoadEvaluatorOptions): Promise<EvaluatorType[T]>;
|
|
30
36
|
//#endregion
|
|
31
37
|
export { LoadEvaluatorOptions, loadEvaluator };
|
|
32
38
|
//# sourceMappingURL=loader.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.d.ts","names":["BaseLanguageModelInterface","StructuredToolInterface","CriteriaLike","EvaluatorType","LLMEvalChainInput","EmbeddingDistanceEvalChainInput","LoadEvaluatorOptions","Omit","Partial","loadEvaluator","T","Promise"],"sources":["../../src/evaluation/loader.d.ts"],"sourcesContent":["import type { BaseLanguageModelInterface } from \"@langchain/core/language_models/base\";\nimport type { StructuredToolInterface } from \"@langchain/core/tools\";\nimport { CriteriaLike } from \"./criteria/index.js\";\nimport type { EvaluatorType } from \"./types.js\";\nimport { LLMEvalChainInput } from \"./base.js\";\nimport { EmbeddingDistanceEvalChainInput } from \"./embedding_distance/index.js\";\nexport type LoadEvaluatorOptions = EmbeddingDistanceEvalChainInput & {\n llm
|
|
1
|
+
{"version":3,"file":"loader.d.ts","names":["BaseLanguageModelInterface","StructuredToolInterface","CriteriaLike","EvaluatorType","LLMEvalChainInput","EmbeddingDistanceEvalChainInput","LoadEvaluatorOptions","Omit","Partial","loadEvaluator","T","Promise"],"sources":["../../src/evaluation/loader.d.ts"],"sourcesContent":["import type { BaseLanguageModelInterface } from \"@langchain/core/language_models/base\";\nimport type { StructuredToolInterface } from \"@langchain/core/tools\";\nimport { CriteriaLike } from \"./criteria/index.js\";\nimport type { EvaluatorType } from \"./types.js\";\nimport { LLMEvalChainInput } from \"./base.js\";\nimport { EmbeddingDistanceEvalChainInput } from \"./embedding_distance/index.js\";\nexport type LoadEvaluatorOptions = EmbeddingDistanceEvalChainInput & {\n /**\n * The language model to use for the evaluator.\n */\n llm: BaseLanguageModelInterface;\n /**\n * The options to pass to the evaluator chain.\n */\n chainOptions?: Partial<Omit<LLMEvalChainInput, \"llm\">>;\n /**\n * The criteria to use for the evaluator.\n */\n criteria?: CriteriaLike;\n /**\n * A list of tools available to the agent, for TrajectoryEvalChain.\n */\n agentTools?: StructuredToolInterface[];\n};\n/**\n * Load the requested evaluation chain specified by a string\n * @param type The type of evaluator to load.\n * @param options\n * - llm The language model to use for the evaluator.\n * - criteria The criteria to use for the evaluator.\n * - agentTools A list of tools available to the agent,for TrajectoryEvalChain.\n */\nexport declare function loadEvaluator<T extends keyof EvaluatorType>(type: T, options: LoadEvaluatorOptions): Promise<EvaluatorType[T]>;\n"],"mappings":";;;;;;;;KAMYM,oBAAAA,GAAuBD;;AAAnC;;EAAgC,GAAGA,EAI1BL,0BAJ0BK;EAA+B;;;EAQnC,YAAZG,CAAAA,EAAAA,OAAAA,CAAQD,IAARC,CAAaJ,iBAAbI,EAAAA,KAAAA,CAAAA,CAAAA;EAAO;;AAQc;EAUhBC,QAAAA,CAAAA,EAdTP,YAcsB;EAAA;;;EAAuC,UAAWI,CAAAA,EAVtEL,uBAUsEK,EAAAA;CAAoB;;;AAAU;;;;;;iBAA7FG,8BAA8BN,qBAAqBO,YAAYJ,uBAAuBK,QAAQR,cAAcO"}
|
|
@@ -7,7 +7,6 @@ import "./embedding_distance/index.js";
|
|
|
7
7
|
import { LabeledPairwiseStringEvalChain, PairwiseStringEvalChain } from "./comparison/pairwise.js";
|
|
8
8
|
import "./comparison/index.js";
|
|
9
9
|
import { BaseChatModel } from "@langchain/core/language_models/chat_models";
|
|
10
|
-
import { ChatOpenAI } from "@langchain/openai";
|
|
11
10
|
|
|
12
11
|
//#region src/evaluation/loader.ts
|
|
13
12
|
/**
|
|
@@ -19,28 +18,24 @@ import { ChatOpenAI } from "@langchain/openai";
|
|
|
19
18
|
* - agentTools A list of tools available to the agent,for TrajectoryEvalChain.
|
|
20
19
|
*/
|
|
21
20
|
async function loadEvaluator(type, options) {
|
|
22
|
-
const { llm, chainOptions, criteria, agentTools } = options
|
|
23
|
-
const llm_ = llm ?? new ChatOpenAI({
|
|
24
|
-
model: "gpt-4",
|
|
25
|
-
temperature: 0
|
|
26
|
-
});
|
|
21
|
+
const { llm, chainOptions, criteria, agentTools } = options;
|
|
27
22
|
let evaluator;
|
|
28
23
|
switch (type) {
|
|
29
24
|
case "criteria":
|
|
30
|
-
evaluator = await CriteriaEvalChain.fromLLM(
|
|
25
|
+
evaluator = await CriteriaEvalChain.fromLLM(llm, criteria, chainOptions);
|
|
31
26
|
break;
|
|
32
27
|
case "labeled_criteria":
|
|
33
|
-
evaluator = await LabeledCriteriaEvalChain.fromLLM(
|
|
28
|
+
evaluator = await LabeledCriteriaEvalChain.fromLLM(llm, criteria, chainOptions);
|
|
34
29
|
break;
|
|
35
30
|
case "pairwise_string":
|
|
36
|
-
evaluator = await PairwiseStringEvalChain.fromLLM(
|
|
31
|
+
evaluator = await PairwiseStringEvalChain.fromLLM(llm, criteria, chainOptions);
|
|
37
32
|
break;
|
|
38
33
|
case "labeled_pairwise_string":
|
|
39
|
-
evaluator = await LabeledPairwiseStringEvalChain.fromLLM(
|
|
34
|
+
evaluator = await LabeledPairwiseStringEvalChain.fromLLM(llm, criteria, chainOptions);
|
|
40
35
|
break;
|
|
41
36
|
case "trajectory":
|
|
42
|
-
if (!(
|
|
43
|
-
evaluator = await TrajectoryEvalChain.fromLLM(
|
|
37
|
+
if (!(llm instanceof BaseChatModel)) throw new Error("LLM must be an instance of a base chat model.");
|
|
38
|
+
evaluator = await TrajectoryEvalChain.fromLLM(llm, agentTools, chainOptions);
|
|
44
39
|
break;
|
|
45
40
|
case "embedding_distance":
|
|
46
41
|
evaluator = new EmbeddingDistanceEvalChain({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.js","names":["type: T","options
|
|
1
|
+
{"version":3,"file":"loader.js","names":["type: T","options: LoadEvaluatorOptions","evaluator: unknown"],"sources":["../../src/evaluation/loader.ts"],"sourcesContent":["import type { BaseLanguageModelInterface } from \"@langchain/core/language_models/base\";\nimport type { StructuredToolInterface } from \"@langchain/core/tools\";\nimport { BaseChatModel } from \"@langchain/core/language_models/chat_models\";\nimport {\n CriteriaLike,\n CriteriaEvalChain,\n LabeledCriteriaEvalChain,\n} from \"./criteria/index.js\";\nimport type { EvaluatorType } from \"./types.js\";\nimport { LLMEvalChainInput } from \"./base.js\";\nimport {\n LabeledPairwiseStringEvalChain,\n PairwiseStringEvalChain,\n} from \"./comparison/index.js\";\nimport {\n EmbeddingDistanceEvalChain,\n EmbeddingDistanceEvalChainInput,\n PairwiseEmbeddingDistanceEvalChain,\n} from \"./embedding_distance/index.js\";\nimport { TrajectoryEvalChain } from \"./agents/index.js\";\n\nexport type LoadEvaluatorOptions = EmbeddingDistanceEvalChainInput & {\n /**\n * The language model to use for the evaluator.\n */\n llm: BaseLanguageModelInterface;\n /**\n * The options to pass to the evaluator chain.\n */\n chainOptions?: Partial<Omit<LLMEvalChainInput, \"llm\">>;\n /**\n * The criteria to use for the evaluator.\n */\n criteria?: CriteriaLike;\n\n /**\n * A list of tools available to the agent, for TrajectoryEvalChain.\n */\n agentTools?: StructuredToolInterface[];\n};\n\n/**\n * Load the requested evaluation chain specified by a string\n * @param type The type of evaluator to load.\n * @param options\n * - llm The language model to use for the evaluator.\n * - criteria The criteria to use for the evaluator.\n * - agentTools A list of tools available to the agent,for TrajectoryEvalChain.\n */\nexport async function loadEvaluator<T extends keyof EvaluatorType>(\n type: T,\n options: LoadEvaluatorOptions\n): Promise<EvaluatorType[T]> {\n const { llm, chainOptions, criteria, agentTools } = options;\n\n let evaluator: unknown;\n switch (type) {\n case \"criteria\":\n evaluator = await CriteriaEvalChain.fromLLM(llm, criteria, chainOptions);\n break;\n case \"labeled_criteria\":\n evaluator = await LabeledCriteriaEvalChain.fromLLM(\n llm,\n criteria,\n chainOptions\n );\n break;\n case \"pairwise_string\":\n evaluator = await PairwiseStringEvalChain.fromLLM(\n llm,\n criteria,\n chainOptions\n );\n break;\n case \"labeled_pairwise_string\":\n evaluator = await LabeledPairwiseStringEvalChain.fromLLM(\n llm,\n criteria,\n chainOptions\n );\n break;\n case \"trajectory\":\n // eslint-disable-next-line no-instanceof/no-instanceof\n if (!(llm instanceof BaseChatModel)) {\n throw new Error(\"LLM must be an instance of a base chat model.\");\n }\n evaluator = await TrajectoryEvalChain.fromLLM(\n llm,\n agentTools,\n chainOptions\n );\n break;\n case \"embedding_distance\":\n evaluator = new EmbeddingDistanceEvalChain({\n embedding: options?.embedding,\n distanceMetric: options?.distanceMetric,\n });\n break;\n case \"pairwise_embedding_distance\":\n evaluator = new PairwiseEmbeddingDistanceEvalChain({});\n break;\n default:\n throw new Error(`Unknown type: ${type}`);\n }\n\n return evaluator as EvaluatorType[T];\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAiDA,eAAsB,cACpBA,MACAC,SAC2B;CAC3B,MAAM,EAAE,KAAK,cAAc,UAAU,YAAY,GAAG;CAEpD,IAAIC;AACJ,SAAQ,MAAR;EACE,KAAK;GACH,YAAY,MAAM,kBAAkB,QAAQ,KAAK,UAAU,aAAa;AACxE;EACF,KAAK;GACH,YAAY,MAAM,yBAAyB,QACzC,KACA,UACA,aACD;AACD;EACF,KAAK;GACH,YAAY,MAAM,wBAAwB,QACxC,KACA,UACA,aACD;AACD;EACF,KAAK;GACH,YAAY,MAAM,+BAA+B,QAC/C,KACA,UACA,aACD;AACD;EACF,KAAK;AAEH,OAAI,EAAE,eAAe,eACnB,OAAM,IAAI,MAAM;GAElB,YAAY,MAAM,oBAAoB,QACpC,KACA,YACA,aACD;AACD;EACF,KAAK;GACH,YAAY,IAAI,2BAA2B;IACzC,WAAW,SAAS;IACpB,gBAAgB,SAAS;GAC1B;AACD;EACF,KAAK;GACH,YAAY,IAAI,mCAAmC,CAAE;AACrD;EACF,QACE,OAAM,IAAI,MAAM,CAAC,cAAc,EAAE,MAAM;CAC1C;AAED,QAAO;AACR"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { LLMChain, LLMChainInput } from "../../chains/llm_chain.cjs";
|
|
2
2
|
import { BaseLanguageModelInterface } from "@langchain/core/language_models/base";
|
|
3
|
-
import { PromptTemplate } from "@langchain/core/prompts";
|
|
4
3
|
import { ChainValues } from "@langchain/core/utils/types";
|
|
4
|
+
import { PromptTemplate } from "@langchain/core/prompts";
|
|
5
5
|
|
|
6
6
|
//#region src/evaluation/qa/eval_chain.d.ts
|
|
7
7
|
interface EvaluateArgs {
|
package/dist/hub/base.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.cjs","names":["repoFullName: string","runnable: Runnable","options?: {\n apiKey?: string;\n apiUrl?: string;\n parentCommitHash?: string;\n /** @deprecated Use isPublic instead. */\n newRepoIsPublic?: boolean;\n isPublic?: boolean;\n /** @deprecated Use description instead. */\n newRepoDescription?: string;\n description?: string;\n readme?: string;\n tags?: string[];\n }","ownerRepoCommit: string","options?: { apiKey?: string; apiUrl?: string; includeModel?: boolean }","varName: string","message: any","modelClass?: new (...args: any[]) => BaseLanguageModel","modelImportMap: Record<string, any>","optionalImportMap: Record<string, any>","loadedSequence: T"],"sources":["../../src/hub/base.ts"],"sourcesContent":["import type { BaseLanguageModel } from \"@langchain/core/language_models/base\";\nimport type { Runnable } from \"@langchain/core/runnables\";\n\nimport type { Client, ClientConfig } from \"langsmith\";\nimport type { PromptCommit } from \"langsmith/schemas\";\n\n/**\n * Push a prompt to the hub.\n * If the specified repo doesn't already exist, it will be created.\n * @param repoFullName The full name of the repo.\n * @param runnable The prompt to push.\n * @param options\n * @returns The URL of the newly pushed prompt in the hub.\n */\nexport async function basePush(\n repoFullName: string,\n runnable: Runnable,\n options?: {\n apiKey?: string;\n apiUrl?: string;\n parentCommitHash?: string;\n /** @deprecated Use isPublic instead. */\n newRepoIsPublic?: boolean;\n isPublic?: boolean;\n /** @deprecated Use description instead. */\n newRepoDescription?: string;\n description?: string;\n readme?: string;\n tags?: string[];\n }\n): Promise<string> {\n const Client = await loadLangSmith();\n const client = new Client(options);\n const payloadOptions = {\n object: runnable,\n parentCommitHash: options?.parentCommitHash,\n isPublic: options?.isPublic ?? options?.newRepoIsPublic,\n description: options?.description ?? options?.newRepoDescription,\n readme: options?.readme,\n tags: options?.tags,\n };\n return client.pushPrompt(repoFullName, payloadOptions);\n}\n\nexport async function basePull(\n ownerRepoCommit: string,\n options?: { apiKey?: string; apiUrl?: string; includeModel?: boolean }\n): Promise<PromptCommit> {\n const Client = await loadLangSmith();\n const client = new Client(options);\n\n const promptObject = await client.pullPromptCommit(ownerRepoCommit, {\n includeModel: options?.includeModel,\n });\n\n if (promptObject.manifest.kwargs?.metadata === undefined) {\n promptObject.manifest.kwargs = {\n ...promptObject.manifest.kwargs,\n metadata: {},\n };\n }\n\n promptObject.manifest.kwargs.metadata = {\n ...promptObject.manifest.kwargs.metadata,\n lc_hub_owner: promptObject.owner,\n lc_hub_repo: promptObject.repo,\n lc_hub_commit_hash: promptObject.commit_hash,\n };\n\n // Some nested mustache prompts have improperly parsed variables that include a dot.\n if (promptObject.manifest.kwargs.template_format === \"mustache\") {\n const stripDotNotation = (varName: string) => varName.split(\".\")[0];\n\n const { input_variables } = promptObject.manifest.kwargs;\n if (Array.isArray(input_variables)) {\n promptObject.manifest.kwargs.input_variables =\n input_variables.map(stripDotNotation);\n }\n\n const { messages } = promptObject.manifest.kwargs;\n if (Array.isArray(messages)) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n promptObject.manifest.kwargs.messages = messages.map((message: any) => {\n const nestedVars = message?.kwargs?.prompt?.kwargs?.input_variables;\n if (Array.isArray(nestedVars)) {\n // eslint-disable-next-line no-param-reassign\n message.kwargs.prompt.kwargs.input_variables =\n nestedVars.map(stripDotNotation);\n }\n return message;\n });\n }\n }\n return promptObject;\n}\n\nexport function generateModelImportMap(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n modelClass?: new (...args: any[]) => BaseLanguageModel\n) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const modelImportMap: Record<string, any> = {};\n if (modelClass !== undefined) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const modelLcName = (modelClass as any)?.lc_name();\n let importMapKey;\n if (modelLcName === \"ChatOpenAI\") {\n importMapKey = \"chat_models__openai\";\n } else if (modelLcName === \"ChatAnthropic\") {\n importMapKey = \"chat_models__anthropic\";\n } else if (modelLcName === \"ChatAzureOpenAI\") {\n importMapKey = \"chat_models__openai\";\n } else if (modelLcName === \"ChatVertexAI\") {\n importMapKey = \"chat_models__vertexai\";\n } else if (modelLcName === \"ChatGoogleGenerativeAI\") {\n importMapKey = \"chat_models__google_genai\";\n } else if (modelLcName === \"ChatBedrockConverse\") {\n importMapKey = \"chat_models__chat_bedrock_converse\";\n } else if (modelLcName === \"ChatMistral\") {\n importMapKey = \"chat_models__mistralai\";\n } else if (modelLcName === \"ChatFireworks\") {\n importMapKey = \"chat_models__fireworks\";\n } else if (modelLcName === \"ChatGroq\") {\n importMapKey = \"chat_models__groq\";\n } else {\n throw new Error(\"Received unsupported model class when pulling prompt.\");\n }\n modelImportMap[importMapKey] = {\n ...modelImportMap[importMapKey],\n [modelLcName]: modelClass,\n };\n }\n return modelImportMap;\n}\n\nexport function generateOptionalImportMap(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n modelClass?: new (...args: any[]) => BaseLanguageModel\n) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const optionalImportMap: Record<string, any> = {};\n if (modelClass !== undefined) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const modelLcName = (modelClass as any)?.lc_name();\n let optionalImportMapKey;\n if (modelLcName === \"ChatGoogleGenerativeAI\") {\n optionalImportMapKey = \"langchain_google_genai/chat_models\";\n } else if (modelLcName === \"ChatBedrockConverse\") {\n optionalImportMapKey = \"langchain_aws/chat_models\";\n } else if (modelLcName === \"ChatGroq\") {\n optionalImportMapKey = \"langchain_groq/chat_models\";\n }\n if (optionalImportMapKey !== undefined) {\n optionalImportMap[optionalImportMapKey] = {\n [modelLcName]: modelClass,\n };\n }\n }\n return optionalImportMap;\n}\n\nexport function bindOutputSchema<T extends Runnable>(loadedSequence: T) {\n if (\n \"first\" in loadedSequence &&\n loadedSequence.first !== null &&\n typeof loadedSequence.first === \"object\" &&\n \"schema\" in loadedSequence.first &&\n \"last\" in loadedSequence &&\n loadedSequence.last !== null &&\n typeof loadedSequence.last === \"object\" &&\n \"bound\" in loadedSequence.last &&\n loadedSequence.last.bound !== null &&\n typeof loadedSequence.last.bound === \"object\" &&\n \"withStructuredOutput\" in loadedSequence.last.bound &&\n typeof loadedSequence.last.bound.withStructuredOutput === \"function\"\n ) {\n // eslint-disable-next-line no-param-reassign\n loadedSequence.last.bound = loadedSequence.last.bound.withStructuredOutput(\n loadedSequence.first.schema\n );\n }\n return loadedSequence;\n}\n\n/**\n * Dynamically load the LangSmith client.\n * @returns The LangSmith client.\n */\nasync function loadLangSmith(): Promise<new (config?: ClientConfig) => Client> {\n try {\n const { Client } = await import(\"langsmith\");\n return Client;\n } catch (error) {\n // eslint-disable-next-line no-instanceof/no-instanceof\n const errorMessage = error instanceof Error ? error.message : String(error);\n throw new Error(\n `Error loading \"langsmith\" package, install it via \\`npm install langsmith\\` before you use this function.\\nError: ${errorMessage}`\n );\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"base.cjs","names":["repoFullName: string","runnable: Runnable","options?: {\n apiKey?: string;\n apiUrl?: string;\n parentCommitHash?: string;\n /** @deprecated Use isPublic instead. */\n newRepoIsPublic?: boolean;\n isPublic?: boolean;\n /** @deprecated Use description instead. */\n newRepoDescription?: string;\n description?: string;\n readme?: string;\n tags?: string[];\n }","ownerRepoCommit: string","options?: { apiKey?: string; apiUrl?: string; includeModel?: boolean }","varName: string","message: any","modelClass?: new (...args: any[]) => BaseLanguageModel","modelImportMap: Record<string, any>","optionalImportMap: Record<string, any>","loadedSequence: T"],"sources":["../../src/hub/base.ts"],"sourcesContent":["import type { BaseLanguageModel } from \"@langchain/core/language_models/base\";\nimport type { Runnable } from \"@langchain/core/runnables\";\n\nimport type { Client, ClientConfig } from \"langsmith\";\nimport type { PromptCommit } from \"langsmith/schemas\";\n\n/**\n * Push a prompt to the hub.\n * If the specified repo doesn't already exist, it will be created.\n * @param repoFullName The full name of the repo.\n * @param runnable The prompt to push.\n * @param options\n * @returns The URL of the newly pushed prompt in the hub.\n */\nexport async function basePush(\n repoFullName: string,\n runnable: Runnable,\n options?: {\n apiKey?: string;\n apiUrl?: string;\n parentCommitHash?: string;\n /** @deprecated Use isPublic instead. */\n newRepoIsPublic?: boolean;\n isPublic?: boolean;\n /** @deprecated Use description instead. */\n newRepoDescription?: string;\n description?: string;\n readme?: string;\n tags?: string[];\n }\n): Promise<string> {\n const Client = await loadLangSmith();\n const client = new Client(options);\n const payloadOptions = {\n object: runnable,\n parentCommitHash: options?.parentCommitHash,\n isPublic: options?.isPublic ?? options?.newRepoIsPublic,\n description: options?.description ?? options?.newRepoDescription,\n readme: options?.readme,\n tags: options?.tags,\n };\n return client.pushPrompt(repoFullName, payloadOptions);\n}\n\nexport async function basePull(\n ownerRepoCommit: string,\n options?: { apiKey?: string; apiUrl?: string; includeModel?: boolean }\n): Promise<PromptCommit> {\n const Client = await loadLangSmith();\n const client = new Client(options);\n\n const promptObject = await client.pullPromptCommit(ownerRepoCommit, {\n includeModel: options?.includeModel,\n });\n\n if (promptObject.manifest.kwargs?.metadata === undefined) {\n promptObject.manifest.kwargs = {\n ...promptObject.manifest.kwargs,\n metadata: {},\n };\n }\n\n promptObject.manifest.kwargs.metadata = {\n ...promptObject.manifest.kwargs.metadata,\n lc_hub_owner: promptObject.owner,\n lc_hub_repo: promptObject.repo,\n lc_hub_commit_hash: promptObject.commit_hash,\n };\n\n // Some nested mustache prompts have improperly parsed variables that include a dot.\n if (promptObject.manifest.kwargs.template_format === \"mustache\") {\n const stripDotNotation = (varName: string) => varName.split(\".\")[0];\n\n const { input_variables } = promptObject.manifest.kwargs;\n if (Array.isArray(input_variables)) {\n promptObject.manifest.kwargs.input_variables =\n input_variables.map(stripDotNotation);\n }\n\n const { messages } = promptObject.manifest.kwargs;\n if (Array.isArray(messages)) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n promptObject.manifest.kwargs.messages = messages.map((message: any) => {\n const nestedVars = message?.kwargs?.prompt?.kwargs?.input_variables;\n if (Array.isArray(nestedVars)) {\n message.kwargs.prompt.kwargs.input_variables =\n nestedVars.map(stripDotNotation);\n }\n return message;\n });\n }\n }\n return promptObject;\n}\n\nexport function generateModelImportMap(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n modelClass?: new (...args: any[]) => BaseLanguageModel\n) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const modelImportMap: Record<string, any> = {};\n if (modelClass !== undefined) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const modelLcName = (modelClass as any)?.lc_name();\n let importMapKey;\n if (modelLcName === \"ChatOpenAI\") {\n importMapKey = \"chat_models__openai\";\n } else if (modelLcName === \"ChatAnthropic\") {\n importMapKey = \"chat_models__anthropic\";\n } else if (modelLcName === \"ChatAzureOpenAI\") {\n importMapKey = \"chat_models__openai\";\n } else if (modelLcName === \"ChatVertexAI\") {\n importMapKey = \"chat_models__vertexai\";\n } else if (modelLcName === \"ChatGoogleGenerativeAI\") {\n importMapKey = \"chat_models__google_genai\";\n } else if (modelLcName === \"ChatBedrockConverse\") {\n importMapKey = \"chat_models__chat_bedrock_converse\";\n } else if (modelLcName === \"ChatMistral\") {\n importMapKey = \"chat_models__mistralai\";\n } else if (modelLcName === \"ChatFireworks\") {\n importMapKey = \"chat_models__fireworks\";\n } else if (modelLcName === \"ChatGroq\") {\n importMapKey = \"chat_models__groq\";\n } else {\n throw new Error(\"Received unsupported model class when pulling prompt.\");\n }\n modelImportMap[importMapKey] = {\n ...modelImportMap[importMapKey],\n [modelLcName]: modelClass,\n };\n }\n return modelImportMap;\n}\n\nexport function generateOptionalImportMap(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n modelClass?: new (...args: any[]) => BaseLanguageModel\n) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const optionalImportMap: Record<string, any> = {};\n if (modelClass !== undefined) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const modelLcName = (modelClass as any)?.lc_name();\n let optionalImportMapKey;\n if (modelLcName === \"ChatGoogleGenerativeAI\") {\n optionalImportMapKey = \"langchain_google_genai/chat_models\";\n } else if (modelLcName === \"ChatBedrockConverse\") {\n optionalImportMapKey = \"langchain_aws/chat_models\";\n } else if (modelLcName === \"ChatGroq\") {\n optionalImportMapKey = \"langchain_groq/chat_models\";\n }\n if (optionalImportMapKey !== undefined) {\n optionalImportMap[optionalImportMapKey] = {\n [modelLcName]: modelClass,\n };\n }\n }\n return optionalImportMap;\n}\n\nexport function bindOutputSchema<T extends Runnable>(loadedSequence: T) {\n if (\n \"first\" in loadedSequence &&\n loadedSequence.first !== null &&\n typeof loadedSequence.first === \"object\" &&\n \"schema\" in loadedSequence.first &&\n \"last\" in loadedSequence &&\n loadedSequence.last !== null &&\n typeof loadedSequence.last === \"object\" &&\n \"bound\" in loadedSequence.last &&\n loadedSequence.last.bound !== null &&\n typeof loadedSequence.last.bound === \"object\" &&\n \"withStructuredOutput\" in loadedSequence.last.bound &&\n typeof loadedSequence.last.bound.withStructuredOutput === \"function\"\n ) {\n loadedSequence.last.bound = loadedSequence.last.bound.withStructuredOutput(\n loadedSequence.first.schema\n );\n }\n return loadedSequence;\n}\n\n/**\n * Dynamically load the LangSmith client.\n * @returns The LangSmith client.\n */\nasync function loadLangSmith(): Promise<new (config?: ClientConfig) => Client> {\n try {\n const { Client } = await import(\"langsmith\");\n return Client;\n } catch (error) {\n // eslint-disable-next-line no-instanceof/no-instanceof\n const errorMessage = error instanceof Error ? error.message : String(error);\n throw new Error(\n `Error loading \"langsmith\" package, install it via \\`npm install langsmith\\` before you use this function.\\nError: ${errorMessage}`\n );\n }\n}\n"],"mappings":"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"}
|
package/dist/hub/base.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","names":["repoFullName: string","runnable: Runnable","options?: {\n apiKey?: string;\n apiUrl?: string;\n parentCommitHash?: string;\n /** @deprecated Use isPublic instead. */\n newRepoIsPublic?: boolean;\n isPublic?: boolean;\n /** @deprecated Use description instead. */\n newRepoDescription?: string;\n description?: string;\n readme?: string;\n tags?: string[];\n }","ownerRepoCommit: string","options?: { apiKey?: string; apiUrl?: string; includeModel?: boolean }","varName: string","message: any","modelClass?: new (...args: any[]) => BaseLanguageModel","modelImportMap: Record<string, any>","optionalImportMap: Record<string, any>","loadedSequence: T"],"sources":["../../src/hub/base.ts"],"sourcesContent":["import type { BaseLanguageModel } from \"@langchain/core/language_models/base\";\nimport type { Runnable } from \"@langchain/core/runnables\";\n\nimport type { Client, ClientConfig } from \"langsmith\";\nimport type { PromptCommit } from \"langsmith/schemas\";\n\n/**\n * Push a prompt to the hub.\n * If the specified repo doesn't already exist, it will be created.\n * @param repoFullName The full name of the repo.\n * @param runnable The prompt to push.\n * @param options\n * @returns The URL of the newly pushed prompt in the hub.\n */\nexport async function basePush(\n repoFullName: string,\n runnable: Runnable,\n options?: {\n apiKey?: string;\n apiUrl?: string;\n parentCommitHash?: string;\n /** @deprecated Use isPublic instead. */\n newRepoIsPublic?: boolean;\n isPublic?: boolean;\n /** @deprecated Use description instead. */\n newRepoDescription?: string;\n description?: string;\n readme?: string;\n tags?: string[];\n }\n): Promise<string> {\n const Client = await loadLangSmith();\n const client = new Client(options);\n const payloadOptions = {\n object: runnable,\n parentCommitHash: options?.parentCommitHash,\n isPublic: options?.isPublic ?? options?.newRepoIsPublic,\n description: options?.description ?? options?.newRepoDescription,\n readme: options?.readme,\n tags: options?.tags,\n };\n return client.pushPrompt(repoFullName, payloadOptions);\n}\n\nexport async function basePull(\n ownerRepoCommit: string,\n options?: { apiKey?: string; apiUrl?: string; includeModel?: boolean }\n): Promise<PromptCommit> {\n const Client = await loadLangSmith();\n const client = new Client(options);\n\n const promptObject = await client.pullPromptCommit(ownerRepoCommit, {\n includeModel: options?.includeModel,\n });\n\n if (promptObject.manifest.kwargs?.metadata === undefined) {\n promptObject.manifest.kwargs = {\n ...promptObject.manifest.kwargs,\n metadata: {},\n };\n }\n\n promptObject.manifest.kwargs.metadata = {\n ...promptObject.manifest.kwargs.metadata,\n lc_hub_owner: promptObject.owner,\n lc_hub_repo: promptObject.repo,\n lc_hub_commit_hash: promptObject.commit_hash,\n };\n\n // Some nested mustache prompts have improperly parsed variables that include a dot.\n if (promptObject.manifest.kwargs.template_format === \"mustache\") {\n const stripDotNotation = (varName: string) => varName.split(\".\")[0];\n\n const { input_variables } = promptObject.manifest.kwargs;\n if (Array.isArray(input_variables)) {\n promptObject.manifest.kwargs.input_variables =\n input_variables.map(stripDotNotation);\n }\n\n const { messages } = promptObject.manifest.kwargs;\n if (Array.isArray(messages)) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n promptObject.manifest.kwargs.messages = messages.map((message: any) => {\n const nestedVars = message?.kwargs?.prompt?.kwargs?.input_variables;\n if (Array.isArray(nestedVars)) {\n // eslint-disable-next-line no-param-reassign\n message.kwargs.prompt.kwargs.input_variables =\n nestedVars.map(stripDotNotation);\n }\n return message;\n });\n }\n }\n return promptObject;\n}\n\nexport function generateModelImportMap(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n modelClass?: new (...args: any[]) => BaseLanguageModel\n) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const modelImportMap: Record<string, any> = {};\n if (modelClass !== undefined) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const modelLcName = (modelClass as any)?.lc_name();\n let importMapKey;\n if (modelLcName === \"ChatOpenAI\") {\n importMapKey = \"chat_models__openai\";\n } else if (modelLcName === \"ChatAnthropic\") {\n importMapKey = \"chat_models__anthropic\";\n } else if (modelLcName === \"ChatAzureOpenAI\") {\n importMapKey = \"chat_models__openai\";\n } else if (modelLcName === \"ChatVertexAI\") {\n importMapKey = \"chat_models__vertexai\";\n } else if (modelLcName === \"ChatGoogleGenerativeAI\") {\n importMapKey = \"chat_models__google_genai\";\n } else if (modelLcName === \"ChatBedrockConverse\") {\n importMapKey = \"chat_models__chat_bedrock_converse\";\n } else if (modelLcName === \"ChatMistral\") {\n importMapKey = \"chat_models__mistralai\";\n } else if (modelLcName === \"ChatFireworks\") {\n importMapKey = \"chat_models__fireworks\";\n } else if (modelLcName === \"ChatGroq\") {\n importMapKey = \"chat_models__groq\";\n } else {\n throw new Error(\"Received unsupported model class when pulling prompt.\");\n }\n modelImportMap[importMapKey] = {\n ...modelImportMap[importMapKey],\n [modelLcName]: modelClass,\n };\n }\n return modelImportMap;\n}\n\nexport function generateOptionalImportMap(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n modelClass?: new (...args: any[]) => BaseLanguageModel\n) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const optionalImportMap: Record<string, any> = {};\n if (modelClass !== undefined) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const modelLcName = (modelClass as any)?.lc_name();\n let optionalImportMapKey;\n if (modelLcName === \"ChatGoogleGenerativeAI\") {\n optionalImportMapKey = \"langchain_google_genai/chat_models\";\n } else if (modelLcName === \"ChatBedrockConverse\") {\n optionalImportMapKey = \"langchain_aws/chat_models\";\n } else if (modelLcName === \"ChatGroq\") {\n optionalImportMapKey = \"langchain_groq/chat_models\";\n }\n if (optionalImportMapKey !== undefined) {\n optionalImportMap[optionalImportMapKey] = {\n [modelLcName]: modelClass,\n };\n }\n }\n return optionalImportMap;\n}\n\nexport function bindOutputSchema<T extends Runnable>(loadedSequence: T) {\n if (\n \"first\" in loadedSequence &&\n loadedSequence.first !== null &&\n typeof loadedSequence.first === \"object\" &&\n \"schema\" in loadedSequence.first &&\n \"last\" in loadedSequence &&\n loadedSequence.last !== null &&\n typeof loadedSequence.last === \"object\" &&\n \"bound\" in loadedSequence.last &&\n loadedSequence.last.bound !== null &&\n typeof loadedSequence.last.bound === \"object\" &&\n \"withStructuredOutput\" in loadedSequence.last.bound &&\n typeof loadedSequence.last.bound.withStructuredOutput === \"function\"\n ) {\n // eslint-disable-next-line no-param-reassign\n loadedSequence.last.bound = loadedSequence.last.bound.withStructuredOutput(\n loadedSequence.first.schema\n );\n }\n return loadedSequence;\n}\n\n/**\n * Dynamically load the LangSmith client.\n * @returns The LangSmith client.\n */\nasync function loadLangSmith(): Promise<new (config?: ClientConfig) => Client> {\n try {\n const { Client } = await import(\"langsmith\");\n return Client;\n } catch (error) {\n // eslint-disable-next-line no-instanceof/no-instanceof\n const errorMessage = error instanceof Error ? error.message : String(error);\n throw new Error(\n `Error loading \"langsmith\" package, install it via \\`npm install langsmith\\` before you use this function.\\nError: ${errorMessage}`\n );\n }\n}\n"],"mappings":";;;;;;;;;AAcA,eAAsB,SACpBA,cACAC,UACAC,SAaiB;CACjB,MAAM,SAAS,MAAM,eAAe;CACpC,MAAM,SAAS,IAAI,OAAO;CAC1B,MAAM,iBAAiB;EACrB,QAAQ;EACR,kBAAkB,SAAS;EAC3B,UAAU,SAAS,YAAY,SAAS;EACxC,aAAa,SAAS,eAAe,SAAS;EAC9C,QAAQ,SAAS;EACjB,MAAM,SAAS;CAChB;AACD,QAAO,OAAO,WAAW,cAAc,eAAe;AACvD;AAED,eAAsB,SACpBC,iBACAC,SACuB;CACvB,MAAM,SAAS,MAAM,eAAe;CACpC,MAAM,SAAS,IAAI,OAAO;CAE1B,MAAM,eAAe,MAAM,OAAO,iBAAiB,iBAAiB,EAClE,cAAc,SAAS,aACxB,EAAC;AAEF,KAAI,aAAa,SAAS,QAAQ,aAAa,QAC7C,aAAa,SAAS,SAAS;EAC7B,GAAG,aAAa,SAAS;EACzB,UAAU,CAAE;CACb;CAGH,aAAa,SAAS,OAAO,WAAW;EACtC,GAAG,aAAa,SAAS,OAAO;EAChC,cAAc,aAAa;EAC3B,aAAa,aAAa;EAC1B,oBAAoB,aAAa;CAClC;AAGD,KAAI,aAAa,SAAS,OAAO,oBAAoB,YAAY;EAC/D,MAAM,mBAAmB,CAACC,YAAoB,QAAQ,MAAM,IAAI,CAAC;EAEjE,MAAM,EAAE,iBAAiB,GAAG,aAAa,SAAS;AAClD,MAAI,MAAM,QAAQ,gBAAgB,EAChC,aAAa,SAAS,OAAO,kBAC3B,gBAAgB,IAAI,iBAAiB;EAGzC,MAAM,EAAE,UAAU,GAAG,aAAa,SAAS;AAC3C,MAAI,MAAM,QAAQ,SAAS,EAEzB,aAAa,SAAS,OAAO,WAAW,SAAS,IAAI,CAACC,YAAiB;GACrE,MAAM,aAAa,SAAS,QAAQ,QAAQ,QAAQ;AACpD,OAAI,MAAM,QAAQ,WAAW,EAE3B,QAAQ,OAAO,OAAO,OAAO,kBAC3B,WAAW,IAAI,iBAAiB;AAEpC,UAAO;EACR,EAAC;CAEL;AACD,QAAO;AACR;AAED,SAAgB,uBAEdC,YACA;CAEA,MAAMC,iBAAsC,CAAE;AAC9C,KAAI,eAAe,QAAW;EAE5B,MAAM,cAAe,YAAoB,SAAS;EAClD,IAAI;AACJ,MAAI,gBAAgB,cAClB,eAAe;WACN,gBAAgB,iBACzB,eAAe;WACN,gBAAgB,mBACzB,eAAe;WACN,gBAAgB,gBACzB,eAAe;WACN,gBAAgB,0BACzB,eAAe;WACN,gBAAgB,uBACzB,eAAe;WACN,gBAAgB,eACzB,eAAe;WACN,gBAAgB,iBACzB,eAAe;WACN,gBAAgB,YACzB,eAAe;MAEf,OAAM,IAAI,MAAM;EAElB,eAAe,gBAAgB;GAC7B,GAAG,eAAe;IACjB,cAAc;EAChB;CACF;AACD,QAAO;AACR;AAED,SAAgB,0BAEdD,YACA;CAEA,MAAME,oBAAyC,CAAE;AACjD,KAAI,eAAe,QAAW;EAE5B,MAAM,cAAe,YAAoB,SAAS;EAClD,IAAI;AACJ,MAAI,gBAAgB,0BAClB,uBAAuB;WACd,gBAAgB,uBACzB,uBAAuB;WACd,gBAAgB,YACzB,uBAAuB;AAEzB,MAAI,yBAAyB,QAC3B,kBAAkB,wBAAwB,GACvC,cAAc,WAChB;CAEJ;AACD,QAAO;AACR;AAED,SAAgB,iBAAqCC,gBAAmB;AACtE,KACE,WAAW,kBACX,eAAe,UAAU,QACzB,OAAO,eAAe,UAAU,YAChC,YAAY,eAAe,SAC3B,UAAU,kBACV,eAAe,SAAS,QACxB,OAAO,eAAe,SAAS,YAC/B,WAAW,eAAe,QAC1B,eAAe,KAAK,UAAU,QAC9B,OAAO,eAAe,KAAK,UAAU,YACrC,0BAA0B,eAAe,KAAK,SAC9C,OAAO,eAAe,KAAK,MAAM,yBAAyB,YAG1D,eAAe,KAAK,QAAQ,eAAe,KAAK,MAAM,qBACpD,eAAe,MAAM,OACtB;AAEH,QAAO;AACR;;;;;AAMD,eAAe,gBAAgE;AAC7E,KAAI;EACF,MAAM,EAAE,QAAQ,GAAG,MAAM,OAAO;AAChC,SAAO;CACR,SAAQ,OAAO;EAEd,MAAM,eAAe,iBAAiB,QAAQ,MAAM,UAAU,OAAO,MAAM;AAC3E,QAAM,IAAI,MACR,CAAC,kHAAkH,EAAE,cAAc;CAEtI;AACF"}
|
|
1
|
+
{"version":3,"file":"base.js","names":["repoFullName: string","runnable: Runnable","options?: {\n apiKey?: string;\n apiUrl?: string;\n parentCommitHash?: string;\n /** @deprecated Use isPublic instead. */\n newRepoIsPublic?: boolean;\n isPublic?: boolean;\n /** @deprecated Use description instead. */\n newRepoDescription?: string;\n description?: string;\n readme?: string;\n tags?: string[];\n }","ownerRepoCommit: string","options?: { apiKey?: string; apiUrl?: string; includeModel?: boolean }","varName: string","message: any","modelClass?: new (...args: any[]) => BaseLanguageModel","modelImportMap: Record<string, any>","optionalImportMap: Record<string, any>","loadedSequence: T"],"sources":["../../src/hub/base.ts"],"sourcesContent":["import type { BaseLanguageModel } from \"@langchain/core/language_models/base\";\nimport type { Runnable } from \"@langchain/core/runnables\";\n\nimport type { Client, ClientConfig } from \"langsmith\";\nimport type { PromptCommit } from \"langsmith/schemas\";\n\n/**\n * Push a prompt to the hub.\n * If the specified repo doesn't already exist, it will be created.\n * @param repoFullName The full name of the repo.\n * @param runnable The prompt to push.\n * @param options\n * @returns The URL of the newly pushed prompt in the hub.\n */\nexport async function basePush(\n repoFullName: string,\n runnable: Runnable,\n options?: {\n apiKey?: string;\n apiUrl?: string;\n parentCommitHash?: string;\n /** @deprecated Use isPublic instead. */\n newRepoIsPublic?: boolean;\n isPublic?: boolean;\n /** @deprecated Use description instead. */\n newRepoDescription?: string;\n description?: string;\n readme?: string;\n tags?: string[];\n }\n): Promise<string> {\n const Client = await loadLangSmith();\n const client = new Client(options);\n const payloadOptions = {\n object: runnable,\n parentCommitHash: options?.parentCommitHash,\n isPublic: options?.isPublic ?? options?.newRepoIsPublic,\n description: options?.description ?? options?.newRepoDescription,\n readme: options?.readme,\n tags: options?.tags,\n };\n return client.pushPrompt(repoFullName, payloadOptions);\n}\n\nexport async function basePull(\n ownerRepoCommit: string,\n options?: { apiKey?: string; apiUrl?: string; includeModel?: boolean }\n): Promise<PromptCommit> {\n const Client = await loadLangSmith();\n const client = new Client(options);\n\n const promptObject = await client.pullPromptCommit(ownerRepoCommit, {\n includeModel: options?.includeModel,\n });\n\n if (promptObject.manifest.kwargs?.metadata === undefined) {\n promptObject.manifest.kwargs = {\n ...promptObject.manifest.kwargs,\n metadata: {},\n };\n }\n\n promptObject.manifest.kwargs.metadata = {\n ...promptObject.manifest.kwargs.metadata,\n lc_hub_owner: promptObject.owner,\n lc_hub_repo: promptObject.repo,\n lc_hub_commit_hash: promptObject.commit_hash,\n };\n\n // Some nested mustache prompts have improperly parsed variables that include a dot.\n if (promptObject.manifest.kwargs.template_format === \"mustache\") {\n const stripDotNotation = (varName: string) => varName.split(\".\")[0];\n\n const { input_variables } = promptObject.manifest.kwargs;\n if (Array.isArray(input_variables)) {\n promptObject.manifest.kwargs.input_variables =\n input_variables.map(stripDotNotation);\n }\n\n const { messages } = promptObject.manifest.kwargs;\n if (Array.isArray(messages)) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n promptObject.manifest.kwargs.messages = messages.map((message: any) => {\n const nestedVars = message?.kwargs?.prompt?.kwargs?.input_variables;\n if (Array.isArray(nestedVars)) {\n message.kwargs.prompt.kwargs.input_variables =\n nestedVars.map(stripDotNotation);\n }\n return message;\n });\n }\n }\n return promptObject;\n}\n\nexport function generateModelImportMap(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n modelClass?: new (...args: any[]) => BaseLanguageModel\n) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const modelImportMap: Record<string, any> = {};\n if (modelClass !== undefined) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const modelLcName = (modelClass as any)?.lc_name();\n let importMapKey;\n if (modelLcName === \"ChatOpenAI\") {\n importMapKey = \"chat_models__openai\";\n } else if (modelLcName === \"ChatAnthropic\") {\n importMapKey = \"chat_models__anthropic\";\n } else if (modelLcName === \"ChatAzureOpenAI\") {\n importMapKey = \"chat_models__openai\";\n } else if (modelLcName === \"ChatVertexAI\") {\n importMapKey = \"chat_models__vertexai\";\n } else if (modelLcName === \"ChatGoogleGenerativeAI\") {\n importMapKey = \"chat_models__google_genai\";\n } else if (modelLcName === \"ChatBedrockConverse\") {\n importMapKey = \"chat_models__chat_bedrock_converse\";\n } else if (modelLcName === \"ChatMistral\") {\n importMapKey = \"chat_models__mistralai\";\n } else if (modelLcName === \"ChatFireworks\") {\n importMapKey = \"chat_models__fireworks\";\n } else if (modelLcName === \"ChatGroq\") {\n importMapKey = \"chat_models__groq\";\n } else {\n throw new Error(\"Received unsupported model class when pulling prompt.\");\n }\n modelImportMap[importMapKey] = {\n ...modelImportMap[importMapKey],\n [modelLcName]: modelClass,\n };\n }\n return modelImportMap;\n}\n\nexport function generateOptionalImportMap(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n modelClass?: new (...args: any[]) => BaseLanguageModel\n) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const optionalImportMap: Record<string, any> = {};\n if (modelClass !== undefined) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const modelLcName = (modelClass as any)?.lc_name();\n let optionalImportMapKey;\n if (modelLcName === \"ChatGoogleGenerativeAI\") {\n optionalImportMapKey = \"langchain_google_genai/chat_models\";\n } else if (modelLcName === \"ChatBedrockConverse\") {\n optionalImportMapKey = \"langchain_aws/chat_models\";\n } else if (modelLcName === \"ChatGroq\") {\n optionalImportMapKey = \"langchain_groq/chat_models\";\n }\n if (optionalImportMapKey !== undefined) {\n optionalImportMap[optionalImportMapKey] = {\n [modelLcName]: modelClass,\n };\n }\n }\n return optionalImportMap;\n}\n\nexport function bindOutputSchema<T extends Runnable>(loadedSequence: T) {\n if (\n \"first\" in loadedSequence &&\n loadedSequence.first !== null &&\n typeof loadedSequence.first === \"object\" &&\n \"schema\" in loadedSequence.first &&\n \"last\" in loadedSequence &&\n loadedSequence.last !== null &&\n typeof loadedSequence.last === \"object\" &&\n \"bound\" in loadedSequence.last &&\n loadedSequence.last.bound !== null &&\n typeof loadedSequence.last.bound === \"object\" &&\n \"withStructuredOutput\" in loadedSequence.last.bound &&\n typeof loadedSequence.last.bound.withStructuredOutput === \"function\"\n ) {\n loadedSequence.last.bound = loadedSequence.last.bound.withStructuredOutput(\n loadedSequence.first.schema\n );\n }\n return loadedSequence;\n}\n\n/**\n * Dynamically load the LangSmith client.\n * @returns The LangSmith client.\n */\nasync function loadLangSmith(): Promise<new (config?: ClientConfig) => Client> {\n try {\n const { Client } = await import(\"langsmith\");\n return Client;\n } catch (error) {\n // eslint-disable-next-line no-instanceof/no-instanceof\n const errorMessage = error instanceof Error ? error.message : String(error);\n throw new Error(\n `Error loading \"langsmith\" package, install it via \\`npm install langsmith\\` before you use this function.\\nError: ${errorMessage}`\n );\n }\n}\n"],"mappings":"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"}
|
package/dist/index.cjs
CHANGED
|
@@ -2,6 +2,7 @@ const require_rolldown_runtime = require('./_virtual/rolldown_runtime.cjs');
|
|
|
2
2
|
const require_chat_models_universal = require('./chat_models/universal.cjs');
|
|
3
3
|
const require_responses = require('./agents/responses.cjs');
|
|
4
4
|
const require_ToolNode = require('./agents/nodes/ToolNode.cjs');
|
|
5
|
+
const require_middleware = require('./agents/middlewareAgent/middleware.cjs');
|
|
5
6
|
const require_index = require('./agents/index.cjs');
|
|
6
7
|
const __langchain_core_documents = require_rolldown_runtime.__toESM(require("@langchain/core/documents"));
|
|
7
8
|
const __langchain_core_messages = require_rolldown_runtime.__toESM(require("@langchain/core/messages"));
|
|
@@ -28,6 +29,7 @@ require_rolldown_runtime.__export(src_exports, {
|
|
|
28
29
|
ToolMessageChunk: () => __langchain_core_messages.ToolMessageChunk,
|
|
29
30
|
ToolNode: () => require_ToolNode.ToolNode,
|
|
30
31
|
createAgent: () => require_index.createAgent,
|
|
32
|
+
createMiddleware: () => require_middleware.createMiddleware,
|
|
31
33
|
filterMessages: () => __langchain_core_messages.filterMessages,
|
|
32
34
|
getContextVariable: () => __langchain_core_context.getContextVariable,
|
|
33
35
|
initChatModel: () => require_chat_models_universal.initChatModel,
|
|
@@ -125,6 +127,7 @@ Object.defineProperty(exports, 'ToolMessageChunk', {
|
|
|
125
127
|
});
|
|
126
128
|
exports.ToolNode = require_ToolNode.ToolNode;
|
|
127
129
|
exports.createAgent = require_index.createAgent;
|
|
130
|
+
exports.createMiddleware = require_middleware.createMiddleware;
|
|
128
131
|
Object.defineProperty(exports, 'filterMessages', {
|
|
129
132
|
enumerable: true,
|
|
130
133
|
get: function () {
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","names":[],"sources":["../src/index.ts"],"sourcesContent":["/**\n * LangChain Messages\n */\nexport {\n BaseMessage,\n BaseMessageChunk,\n AIMessage,\n AIMessageChunk,\n SystemMessage,\n SystemMessageChunk,\n HumanMessage,\n HumanMessageChunk,\n ToolMessage,\n ToolMessageChunk,\n type ContentBlock,\n filterMessages,\n trimMessages,\n} from \"@langchain/core/messages\";\n\n/**\n * Universal Chat Model\n */\nexport { initChatModel } from \"./chat_models/universal.js\";\n\n/**\n * LangChain Tools\n */\nexport { tool, DynamicStructuredTool } from \"@langchain/core/tools\";\n\n/**\n * LangChain Agents\n */\nexport {\n createAgent,\n toolStrategy,\n providerStrategy,\n ToolNode,\n type AgentState,\n type AgentRuntime,\n type HumanInterrupt,\n type HumanInterruptConfig,\n type ActionRequest,\n type HumanResponse,\n} from \"./agents/index.js\";\n\n/**\n * LangChain Memory\n * Check in what we want to export here\n */\nexport { MemorySaver, InMemoryStore } from \"@langchain/langgraph\";\n\n/**\n * LangChain Context\n */\nexport {\n setContextVariable,\n getContextVariable,\n} from \"@langchain/core/context\";\n\n/**\n * LangChain Documents\n */\nexport { Document } from \"@langchain/core/documents\";\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"index.cjs","names":[],"sources":["../src/index.ts"],"sourcesContent":["/**\n * LangChain Messages\n */\nexport {\n BaseMessage,\n BaseMessageChunk,\n AIMessage,\n AIMessageChunk,\n SystemMessage,\n SystemMessageChunk,\n HumanMessage,\n HumanMessageChunk,\n ToolMessage,\n ToolMessageChunk,\n type ContentBlock,\n filterMessages,\n trimMessages,\n} from \"@langchain/core/messages\";\n\n/**\n * Universal Chat Model\n */\nexport { initChatModel } from \"./chat_models/universal.js\";\n\n/**\n * LangChain Tools\n */\nexport { tool, DynamicStructuredTool } from \"@langchain/core/tools\";\n\n/**\n * LangChain Agents\n */\nexport {\n createAgent,\n createMiddleware,\n toolStrategy,\n providerStrategy,\n ToolNode,\n type AgentState,\n type AgentRuntime,\n type HumanInterrupt,\n type HumanInterruptConfig,\n type ActionRequest,\n type HumanResponse,\n} from \"./agents/index.js\";\n\n/**\n * LangChain Memory\n * Check in what we want to export here\n */\nexport { MemorySaver, InMemoryStore } from \"@langchain/langgraph\";\n\n/**\n * LangChain Context\n */\nexport {\n setContextVariable,\n getContextVariable,\n} from \"@langchain/core/context\";\n\n/**\n * LangChain Documents\n */\nexport { Document } from \"@langchain/core/documents\";\n"],"mappings":""}
|
package/dist/index.d.cts
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import { initChatModel } from "./chat_models/universal.cjs";
|
|
2
1
|
import { providerStrategy, toolStrategy } from "./agents/responses.cjs";
|
|
3
2
|
import { ToolNode } from "./agents/nodes/ToolNode.cjs";
|
|
4
3
|
import { AgentRuntime, AgentState } from "./agents/types.cjs";
|
|
4
|
+
import { initChatModel } from "./chat_models/universal.cjs";
|
|
5
5
|
import { ActionRequest, HumanInterrupt, HumanInterruptConfig, HumanResponse } from "./agents/interrupt.cjs";
|
|
6
|
+
import { createMiddleware } from "./agents/middlewareAgent/middleware.cjs";
|
|
6
7
|
import { createAgent } from "./agents/index.cjs";
|
|
7
|
-
import {
|
|
8
|
+
import { InMemoryStore, MemorySaver } from "@langchain/langgraph";
|
|
8
9
|
import { AIMessage, AIMessageChunk, BaseMessage, BaseMessageChunk, ContentBlock, HumanMessage, HumanMessageChunk, SystemMessage, SystemMessageChunk, ToolMessage, ToolMessageChunk, filterMessages, trimMessages } from "@langchain/core/messages";
|
|
9
10
|
import { DynamicStructuredTool, tool } from "@langchain/core/tools";
|
|
10
|
-
import {
|
|
11
|
+
import { Document } from "@langchain/core/documents";
|
|
11
12
|
import { getContextVariable, setContextVariable } from "@langchain/core/context";
|
|
12
|
-
export { AIMessage, AIMessageChunk, type ActionRequest, type AgentRuntime, type AgentState, BaseMessage, BaseMessageChunk, type ContentBlock, Document, DynamicStructuredTool, type HumanInterrupt, type HumanInterruptConfig, HumanMessage, HumanMessageChunk, type HumanResponse, InMemoryStore, MemorySaver, SystemMessage, SystemMessageChunk, ToolMessage, ToolMessageChunk, ToolNode, createAgent, filterMessages, getContextVariable, initChatModel, providerStrategy, setContextVariable, tool, toolStrategy, trimMessages };
|
|
13
|
+
export { AIMessage, AIMessageChunk, type ActionRequest, type AgentRuntime, type AgentState, BaseMessage, BaseMessageChunk, type ContentBlock, Document, DynamicStructuredTool, type HumanInterrupt, type HumanInterruptConfig, HumanMessage, HumanMessageChunk, type HumanResponse, InMemoryStore, MemorySaver, SystemMessage, SystemMessageChunk, ToolMessage, ToolMessageChunk, ToolNode, createAgent, createMiddleware, filterMessages, getContextVariable, initChatModel, providerStrategy, setContextVariable, tool, toolStrategy, trimMessages };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import { initChatModel } from "./chat_models/universal.js";
|
|
2
1
|
import { providerStrategy, toolStrategy } from "./agents/responses.js";
|
|
3
2
|
import { ToolNode } from "./agents/nodes/ToolNode.js";
|
|
4
3
|
import { AgentRuntime, AgentState } from "./agents/types.js";
|
|
4
|
+
import { initChatModel } from "./chat_models/universal.js";
|
|
5
5
|
import { ActionRequest, HumanInterrupt, HumanInterruptConfig, HumanResponse } from "./agents/interrupt.js";
|
|
6
|
+
import { createMiddleware } from "./agents/middlewareAgent/middleware.js";
|
|
6
7
|
import { createAgent } from "./agents/index.js";
|
|
7
8
|
import { Document } from "@langchain/core/documents";
|
|
8
9
|
import { AIMessage, AIMessageChunk, BaseMessage, BaseMessageChunk, ContentBlock, HumanMessage, HumanMessageChunk, SystemMessage, SystemMessageChunk, ToolMessage, ToolMessageChunk, filterMessages, trimMessages } from "@langchain/core/messages";
|
|
9
10
|
import { DynamicStructuredTool, tool } from "@langchain/core/tools";
|
|
10
11
|
import { InMemoryStore, MemorySaver } from "@langchain/langgraph";
|
|
11
12
|
import { getContextVariable, setContextVariable } from "@langchain/core/context";
|
|
12
|
-
export { AIMessage, AIMessageChunk, type ActionRequest, type AgentRuntime, type AgentState, BaseMessage, BaseMessageChunk, type ContentBlock, Document, DynamicStructuredTool, type HumanInterrupt, type HumanInterruptConfig, HumanMessage, HumanMessageChunk, type HumanResponse, InMemoryStore, MemorySaver, SystemMessage, SystemMessageChunk, ToolMessage, ToolMessageChunk, ToolNode, createAgent, filterMessages, getContextVariable, initChatModel, providerStrategy, setContextVariable, tool, toolStrategy, trimMessages };
|
|
13
|
+
export { AIMessage, AIMessageChunk, type ActionRequest, type AgentRuntime, type AgentState, BaseMessage, BaseMessageChunk, type ContentBlock, Document, DynamicStructuredTool, type HumanInterrupt, type HumanInterruptConfig, HumanMessage, HumanMessageChunk, type HumanResponse, InMemoryStore, MemorySaver, SystemMessage, SystemMessageChunk, ToolMessage, ToolMessageChunk, ToolNode, createAgent, createMiddleware, filterMessages, getContextVariable, initChatModel, providerStrategy, setContextVariable, tool, toolStrategy, trimMessages };
|
package/dist/index.js
CHANGED
|
@@ -2,6 +2,7 @@ import { __export } from "./_virtual/rolldown_runtime.js";
|
|
|
2
2
|
import { initChatModel } from "./chat_models/universal.js";
|
|
3
3
|
import { providerStrategy, toolStrategy } from "./agents/responses.js";
|
|
4
4
|
import { ToolNode } from "./agents/nodes/ToolNode.js";
|
|
5
|
+
import { createMiddleware } from "./agents/middlewareAgent/middleware.js";
|
|
5
6
|
import { createAgent } from "./agents/index.js";
|
|
6
7
|
import { Document } from "@langchain/core/documents";
|
|
7
8
|
import { AIMessage, AIMessageChunk, BaseMessage, BaseMessageChunk, HumanMessage, HumanMessageChunk, SystemMessage, SystemMessageChunk, ToolMessage, ToolMessageChunk, filterMessages, trimMessages } from "@langchain/core/messages";
|
|
@@ -28,6 +29,7 @@ __export(src_exports, {
|
|
|
28
29
|
ToolMessageChunk: () => ToolMessageChunk,
|
|
29
30
|
ToolNode: () => ToolNode,
|
|
30
31
|
createAgent: () => createAgent,
|
|
32
|
+
createMiddleware: () => createMiddleware,
|
|
31
33
|
filterMessages: () => filterMessages,
|
|
32
34
|
getContextVariable: () => getContextVariable,
|
|
33
35
|
initChatModel: () => initChatModel,
|
|
@@ -39,5 +41,5 @@ __export(src_exports, {
|
|
|
39
41
|
});
|
|
40
42
|
|
|
41
43
|
//#endregion
|
|
42
|
-
export { AIMessage, AIMessageChunk, BaseMessage, BaseMessageChunk, Document, DynamicStructuredTool, HumanMessage, HumanMessageChunk, InMemoryStore, MemorySaver, SystemMessage, SystemMessageChunk, ToolMessage, ToolMessageChunk, ToolNode, createAgent, filterMessages, getContextVariable, initChatModel, providerStrategy, setContextVariable, src_exports, tool, toolStrategy, trimMessages };
|
|
44
|
+
export { AIMessage, AIMessageChunk, BaseMessage, BaseMessageChunk, Document, DynamicStructuredTool, HumanMessage, HumanMessageChunk, InMemoryStore, MemorySaver, SystemMessage, SystemMessageChunk, ToolMessage, ToolMessageChunk, ToolNode, createAgent, createMiddleware, filterMessages, getContextVariable, initChatModel, providerStrategy, setContextVariable, src_exports, tool, toolStrategy, trimMessages };
|
|
43
45
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../src/index.ts"],"sourcesContent":["/**\n * LangChain Messages\n */\nexport {\n BaseMessage,\n BaseMessageChunk,\n AIMessage,\n AIMessageChunk,\n SystemMessage,\n SystemMessageChunk,\n HumanMessage,\n HumanMessageChunk,\n ToolMessage,\n ToolMessageChunk,\n type ContentBlock,\n filterMessages,\n trimMessages,\n} from \"@langchain/core/messages\";\n\n/**\n * Universal Chat Model\n */\nexport { initChatModel } from \"./chat_models/universal.js\";\n\n/**\n * LangChain Tools\n */\nexport { tool, DynamicStructuredTool } from \"@langchain/core/tools\";\n\n/**\n * LangChain Agents\n */\nexport {\n createAgent,\n toolStrategy,\n providerStrategy,\n ToolNode,\n type AgentState,\n type AgentRuntime,\n type HumanInterrupt,\n type HumanInterruptConfig,\n type ActionRequest,\n type HumanResponse,\n} from \"./agents/index.js\";\n\n/**\n * LangChain Memory\n * Check in what we want to export here\n */\nexport { MemorySaver, InMemoryStore } from \"@langchain/langgraph\";\n\n/**\n * LangChain Context\n */\nexport {\n setContextVariable,\n getContextVariable,\n} from \"@langchain/core/context\";\n\n/**\n * LangChain Documents\n */\nexport { Document } from \"@langchain/core/documents\";\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../src/index.ts"],"sourcesContent":["/**\n * LangChain Messages\n */\nexport {\n BaseMessage,\n BaseMessageChunk,\n AIMessage,\n AIMessageChunk,\n SystemMessage,\n SystemMessageChunk,\n HumanMessage,\n HumanMessageChunk,\n ToolMessage,\n ToolMessageChunk,\n type ContentBlock,\n filterMessages,\n trimMessages,\n} from \"@langchain/core/messages\";\n\n/**\n * Universal Chat Model\n */\nexport { initChatModel } from \"./chat_models/universal.js\";\n\n/**\n * LangChain Tools\n */\nexport { tool, DynamicStructuredTool } from \"@langchain/core/tools\";\n\n/**\n * LangChain Agents\n */\nexport {\n createAgent,\n createMiddleware,\n toolStrategy,\n providerStrategy,\n ToolNode,\n type AgentState,\n type AgentRuntime,\n type HumanInterrupt,\n type HumanInterruptConfig,\n type ActionRequest,\n type HumanResponse,\n} from \"./agents/index.js\";\n\n/**\n * LangChain Memory\n * Check in what we want to export here\n */\nexport { MemorySaver, InMemoryStore } from \"@langchain/langgraph\";\n\n/**\n * LangChain Context\n */\nexport {\n setContextVariable,\n getContextVariable,\n} from \"@langchain/core/context\";\n\n/**\n * LangChain Documents\n */\nexport { Document } from \"@langchain/core/documents\";\n"],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serializable.d.cts","names":["SerializedFields","BaseSerialized","T","Record","SerializedConstructor","SerializedSecret","SerializedNotImplemented","Serialized","get_lc_unique_name","Serializable","SerializableInterface"],"sources":["../../../../../langchain-core/dist/load/serializable.d.ts"],"sourcesContent":["import { SerializedFields } from \"./map_keys.js\";\n\n//#region src/load/serializable.d.ts\ninterface BaseSerialized<T extends string> {\n lc: number;\n type: T;\n id: string[];\n name?: string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n graph?: Record<string, any>;\n}\ninterface SerializedConstructor extends BaseSerialized<\"constructor\"> {\n kwargs: SerializedFields;\n}\ninterface SerializedSecret extends BaseSerialized<\"secret\"> {}\ninterface SerializedNotImplemented extends BaseSerialized<\"not_implemented\"> {}\ntype Serialized = SerializedConstructor | SerializedSecret | SerializedNotImplemented;\n/**\n * Get a unique name for the module, rather than parent class implementations.\n * Should not be subclassed, subclass lc_name above instead.\n */\ndeclare function get_lc_unique_name(
|
|
1
|
+
{"version":3,"file":"serializable.d.cts","names":["SerializedFields","BaseSerialized","T","Record","SerializedConstructor","SerializedSecret","SerializedNotImplemented","Serialized","get_lc_unique_name","Serializable","SerializableInterface"],"sources":["../../../../../langchain-core/dist/load/serializable.d.ts"],"sourcesContent":["import { SerializedFields } from \"./map_keys.js\";\n\n//#region src/load/serializable.d.ts\ninterface BaseSerialized<T extends string> {\n lc: number;\n type: T;\n id: string[];\n name?: string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n graph?: Record<string, any>;\n}\ninterface SerializedConstructor extends BaseSerialized<\"constructor\"> {\n kwargs: SerializedFields;\n}\ninterface SerializedSecret extends BaseSerialized<\"secret\"> {}\ninterface SerializedNotImplemented extends BaseSerialized<\"not_implemented\"> {}\ntype Serialized = SerializedConstructor | SerializedSecret | SerializedNotImplemented;\n/**\n * Get a unique name for the module, rather than parent class implementations.\n * Should not be subclassed, subclass lc_name above instead.\n */\ndeclare function get_lc_unique_name(serializableClass: typeof Serializable): string;\ninterface SerializableInterface {\n get lc_id(): string[];\n}\ndeclare abstract class Serializable implements SerializableInterface {\n lc_serializable: boolean;\n lc_kwargs: SerializedFields;\n /**\n * A path to the module that contains the class, eg. [\"langchain\", \"llms\"]\n * Usually should be the same as the entrypoint the class is exported from.\n */\n abstract lc_namespace: string[];\n /**\n * The name of the serializable. Override to provide an alias or\n * to preserve the serialized module name in minified environments.\n *\n * Implemented as a static method to support loading logic.\n */\n static lc_name(): string;\n /**\n * The final serialized identifier for the module.\n */\n get lc_id(): string[];\n /**\n * A map of secrets, which will be omitted from serialization.\n * Keys are paths to the secret in constructor args, e.g. \"foo.bar.baz\".\n * Values are the secret ids, which will be used when deserializing.\n */\n get lc_secrets(): {\n [key: string]: string;\n } | undefined;\n /**\n * A map of additional attributes to merge with constructor args.\n * Keys are the attribute names, e.g. \"foo\".\n * Values are the attribute values, which will be serialized.\n * These attributes need to be accepted by the constructor as arguments.\n */\n get lc_attributes(): SerializedFields | undefined;\n /**\n * A map of aliases for constructor args.\n * Keys are the attribute names, e.g. \"foo\".\n * Values are the alias that will replace the key in serialization.\n * This is used to eg. make argument names match Python.\n */\n get lc_aliases(): {\n [key: string]: string;\n } | undefined;\n /**\n * A manual list of keys that should be serialized.\n * If not overridden, all fields passed into the constructor will be serialized.\n */\n get lc_serializable_keys(): string[] | undefined;\n constructor(kwargs?: SerializedFields, ..._args: never[]);\n toJSON(): Serialized;\n toJSONNotImplemented(): SerializedNotImplemented;\n}\n//#endregion\nexport { BaseSerialized, Serializable, SerializableInterface, Serialized, SerializedConstructor, SerializedNotImplemented, SerializedSecret, get_lc_unique_name };\n//# sourceMappingURL=serializable.d.ts.map"],"mappings":";;;;AAAiD,UAGvCC,cAAc,CAAA,UAAA,MAAA,CAAA,CAAA;EAAA,EAAA,EAAA,MAAA;EAAA,IAAA,EAEhBC,CAAAA;EAAC,EAAA,EAAA,MAICC,EAAAA;EAAM,IAAA,CAAA,EAAA,MAAA;EAAA;EAEe,KAAA,CAAA,EAFrBA,MAEqB,CAAA,MAAA,EAAA,GAAA,CAAA;;UAArBC,qBAAAA,SAA8BH,cAAAA,CAAAA,aAAAA,CAAAA,CAAAA;EAAc,MAAA,EAC5CD,gBAD4C;AAAA;AAGL,UAAvCK,gBAAAA,SAAyBJ,cACQA,CAAAA,QAAc,CAAA,CAAA,CAAA;AAAA,UAA/CK,wBAAAA,SAAiCL,cAC5B,CAAA,iBAAA,CAAA,CAAA,CAAA;KAAVM,UAAAA,GAAaH,qBAAH,GAA2BC,gBAA3B,GAA8CC,wBAA9C;;;;AAAsE;;AAMtD,UAArBI,qBAAAA,CAGyB;EAAA,IAAA,KAAA,EAAA,EAAA,MAAA,EAAA;;uBAAZD,YAAAA,YAAwBC,qBAiCxBV,CAAAA;EAAgB,eAehBA,EAAAA,OAAAA;EAAgB,SAC3BO,EA/CCP,gBA+CDO;EAAU;;AAjD8C;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAiC7CP;;;;;;;;;;;;;;;uBAeAA;YACXO;0BACcD"}
|