@langchain/core 1.2.0-dev-1765937705265 → 1.2.0-dev-1775763803878
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +309 -0
- package/README.md +1 -1
- package/dist/_virtual/{rolldown_runtime.cjs → _rolldown/runtime.cjs} +7 -6
- package/dist/_virtual/_rolldown/runtime.js +13 -0
- package/dist/agents.cjs +8 -8
- package/dist/agents.cjs.map +1 -1
- package/dist/agents.d.cts.map +1 -1
- package/dist/agents.d.ts.map +1 -1
- package/dist/agents.js +3 -2
- package/dist/agents.js.map +1 -1
- package/dist/caches/index.cjs +12 -13
- package/dist/caches/index.cjs.map +1 -1
- package/dist/caches/index.d.cts.map +1 -1
- package/dist/caches/index.d.ts.map +1 -1
- package/dist/caches/index.js +4 -6
- package/dist/caches/index.js.map +1 -1
- package/dist/callbacks/base.cjs +17 -25
- package/dist/callbacks/base.cjs.map +1 -1
- package/dist/callbacks/base.d.cts +80 -38
- package/dist/callbacks/base.d.cts.map +1 -1
- package/dist/callbacks/base.d.ts +80 -38
- package/dist/callbacks/base.d.ts.map +1 -1
- package/dist/callbacks/base.js +7 -17
- package/dist/callbacks/base.js.map +1 -1
- package/dist/callbacks/dispatch/index.cjs +11 -12
- package/dist/callbacks/dispatch/index.cjs.map +1 -1
- package/dist/callbacks/dispatch/index.d.cts +0 -2
- package/dist/callbacks/dispatch/index.d.cts.map +1 -1
- package/dist/callbacks/dispatch/index.d.ts +0 -3
- package/dist/callbacks/dispatch/index.d.ts.map +1 -1
- package/dist/callbacks/dispatch/index.js +5 -7
- package/dist/callbacks/dispatch/index.js.map +1 -1
- package/dist/callbacks/dispatch/web.cjs +3 -3
- package/dist/callbacks/dispatch/web.cjs.map +1 -1
- package/dist/callbacks/dispatch/web.d.cts +0 -2
- package/dist/callbacks/dispatch/web.d.cts.map +1 -1
- package/dist/callbacks/dispatch/web.d.ts +0 -3
- package/dist/callbacks/dispatch/web.d.ts.map +1 -1
- package/dist/callbacks/dispatch/web.js +1 -2
- package/dist/callbacks/dispatch/web.js.map +1 -1
- package/dist/callbacks/manager.cjs +68 -76
- package/dist/callbacks/manager.cjs.map +1 -1
- package/dist/callbacks/manager.d.cts +3 -2
- package/dist/callbacks/manager.d.cts.map +1 -1
- package/dist/callbacks/manager.d.ts +3 -2
- package/dist/callbacks/manager.d.ts.map +1 -1
- package/dist/callbacks/manager.js +51 -60
- package/dist/callbacks/manager.js.map +1 -1
- package/dist/callbacks/promises.cjs +10 -11
- package/dist/callbacks/promises.js +3 -5
- package/dist/chat_history.cjs +13 -14
- package/dist/chat_history.cjs.map +1 -1
- package/dist/chat_history.d.cts +0 -2
- package/dist/chat_history.d.cts.map +1 -1
- package/dist/chat_history.d.ts +0 -3
- package/dist/chat_history.d.ts.map +1 -1
- package/dist/chat_history.js +4 -6
- package/dist/chat_history.js.map +1 -1
- package/dist/context.cjs +14 -7
- package/dist/context.cjs.map +1 -1
- package/dist/context.d.cts.map +1 -1
- package/dist/context.d.ts.map +1 -1
- package/dist/context.js +8 -2
- package/dist/context.js.map +1 -1
- package/dist/document_loaders/base.cjs +8 -10
- package/dist/document_loaders/base.cjs.map +1 -1
- package/dist/document_loaders/base.d.cts +0 -1
- package/dist/document_loaders/base.d.cts.map +1 -1
- package/dist/document_loaders/base.d.ts +0 -1
- package/dist/document_loaders/base.d.ts.map +1 -1
- package/dist/document_loaders/base.js +3 -5
- package/dist/document_loaders/base.js.map +1 -1
- package/dist/document_loaders/langsmith.cjs +11 -12
- package/dist/document_loaders/langsmith.cjs.map +1 -1
- package/dist/document_loaders/langsmith.d.cts.map +1 -1
- package/dist/document_loaders/langsmith.d.ts.map +1 -1
- package/dist/document_loaders/langsmith.js +3 -5
- package/dist/document_loaders/langsmith.js.map +1 -1
- package/dist/documents/document.cjs +1 -2
- package/dist/documents/document.cjs.map +1 -1
- package/dist/documents/document.d.cts.map +1 -1
- package/dist/documents/document.d.ts.map +1 -1
- package/dist/documents/document.js +1 -1
- package/dist/documents/document.js.map +1 -1
- package/dist/documents/index.cjs +11 -12
- package/dist/documents/index.js +3 -5
- package/dist/documents/transformers.cjs +2 -3
- package/dist/documents/transformers.cjs.map +1 -1
- package/dist/documents/transformers.d.cts +0 -1
- package/dist/documents/transformers.d.cts.map +1 -1
- package/dist/documents/transformers.d.ts +0 -1
- package/dist/documents/transformers.d.ts.map +1 -1
- package/dist/documents/transformers.js +1 -2
- package/dist/documents/transformers.js.map +1 -1
- package/dist/embeddings.cjs +10 -11
- package/dist/embeddings.cjs.map +1 -1
- package/dist/embeddings.d.cts +0 -1
- package/dist/embeddings.d.cts.map +1 -1
- package/dist/embeddings.d.ts +0 -1
- package/dist/embeddings.d.ts.map +1 -1
- package/dist/embeddings.js +3 -5
- package/dist/embeddings.js.map +1 -1
- package/dist/errors/index.cjs +165 -2
- package/dist/errors/index.cjs.map +1 -1
- package/dist/errors/index.d.cts +150 -0
- package/dist/errors/index.d.cts.map +1 -0
- package/dist/errors/index.d.ts +150 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +155 -2
- package/dist/errors/index.js.map +1 -1
- package/dist/example_selectors/base.cjs +2 -3
- package/dist/example_selectors/base.cjs.map +1 -1
- package/dist/example_selectors/base.d.cts +0 -1
- package/dist/example_selectors/base.d.cts.map +1 -1
- package/dist/example_selectors/base.d.ts +0 -1
- package/dist/example_selectors/base.d.ts.map +1 -1
- package/dist/example_selectors/base.js +1 -2
- package/dist/example_selectors/base.js.map +1 -1
- package/dist/example_selectors/conditional.cjs +2 -4
- package/dist/example_selectors/conditional.cjs.map +1 -1
- package/dist/example_selectors/conditional.d.cts.map +1 -1
- package/dist/example_selectors/conditional.d.ts.map +1 -1
- package/dist/example_selectors/conditional.js +2 -3
- package/dist/example_selectors/conditional.js.map +1 -1
- package/dist/example_selectors/index.cjs +13 -14
- package/dist/example_selectors/index.js +3 -5
- package/dist/example_selectors/length_based.cjs +3 -5
- package/dist/example_selectors/length_based.cjs.map +1 -1
- package/dist/example_selectors/length_based.d.cts +0 -1
- package/dist/example_selectors/length_based.d.cts.map +1 -1
- package/dist/example_selectors/length_based.d.ts +0 -1
- package/dist/example_selectors/length_based.d.ts.map +1 -1
- package/dist/example_selectors/length_based.js +2 -4
- package/dist/example_selectors/length_based.js.map +1 -1
- package/dist/example_selectors/semantic_similarity.cjs +7 -12
- package/dist/example_selectors/semantic_similarity.cjs.map +1 -1
- package/dist/example_selectors/semantic_similarity.d.cts +0 -1
- package/dist/example_selectors/semantic_similarity.d.cts.map +1 -1
- package/dist/example_selectors/semantic_similarity.d.ts +0 -1
- package/dist/example_selectors/semantic_similarity.d.ts.map +1 -1
- package/dist/example_selectors/semantic_similarity.js +5 -10
- package/dist/example_selectors/semantic_similarity.js.map +1 -1
- package/dist/index.cjs +8 -8
- package/dist/index.js +3 -2
- package/dist/indexing/base.cjs +12 -17
- package/dist/indexing/base.cjs.map +1 -1
- package/dist/indexing/base.d.cts.map +1 -1
- package/dist/indexing/base.d.ts.map +1 -1
- package/dist/indexing/base.js +6 -11
- package/dist/indexing/base.js.map +1 -1
- package/dist/indexing/index.cjs +11 -12
- package/dist/indexing/index.js +3 -5
- package/dist/indexing/record_manager.cjs +2 -3
- package/dist/indexing/record_manager.cjs.map +1 -1
- package/dist/indexing/record_manager.d.cts.map +1 -1
- package/dist/indexing/record_manager.d.ts.map +1 -1
- package/dist/indexing/record_manager.js +1 -2
- package/dist/indexing/record_manager.js.map +1 -1
- package/dist/language_models/base.cjs +32 -26
- package/dist/language_models/base.cjs.map +1 -1
- package/dist/language_models/base.d.cts +17 -14
- package/dist/language_models/base.d.cts.map +1 -1
- package/dist/language_models/base.d.ts +17 -16
- package/dist/language_models/base.d.ts.map +1 -1
- package/dist/language_models/base.js +21 -16
- package/dist/language_models/base.js.map +1 -1
- package/dist/language_models/chat_models.cjs +130 -70
- package/dist/language_models/chat_models.cjs.map +1 -1
- package/dist/language_models/chat_models.d.cts +76 -10
- package/dist/language_models/chat_models.d.cts.map +1 -1
- package/dist/language_models/chat_models.d.ts +76 -13
- package/dist/language_models/chat_models.d.ts.map +1 -1
- package/dist/language_models/chat_models.js +111 -52
- package/dist/language_models/chat_models.js.map +1 -1
- package/dist/language_models/compat.cjs +235 -0
- package/dist/language_models/compat.cjs.map +1 -0
- package/dist/language_models/compat.d.cts +34 -0
- package/dist/language_models/compat.d.cts.map +1 -0
- package/dist/language_models/compat.d.ts +34 -0
- package/dist/language_models/compat.d.ts.map +1 -0
- package/dist/language_models/compat.js +226 -0
- package/dist/language_models/compat.js.map +1 -0
- package/dist/language_models/event.cjs +12 -0
- package/dist/language_models/event.cjs.map +1 -0
- package/dist/language_models/event.d.cts +193 -0
- package/dist/language_models/event.d.cts.map +1 -0
- package/dist/language_models/event.d.ts +193 -0
- package/dist/language_models/event.d.ts.map +1 -0
- package/dist/language_models/event.js +7 -0
- package/dist/language_models/event.js.map +1 -0
- package/dist/language_models/llms.cjs +23 -27
- package/dist/language_models/llms.cjs.map +1 -1
- package/dist/language_models/llms.d.cts +4 -4
- package/dist/language_models/llms.d.cts.map +1 -1
- package/dist/language_models/llms.d.ts +4 -5
- package/dist/language_models/llms.d.ts.map +1 -1
- package/dist/language_models/llms.js +12 -17
- package/dist/language_models/llms.js.map +1 -1
- package/dist/language_models/profile.cjs +8 -8
- package/dist/language_models/profile.d.cts.map +1 -1
- package/dist/language_models/profile.d.ts.map +1 -1
- package/dist/language_models/profile.js +3 -2
- package/dist/language_models/stream.cjs +376 -0
- package/dist/language_models/stream.cjs.map +1 -0
- package/dist/language_models/stream.d.cts +129 -0
- package/dist/language_models/stream.d.cts.map +1 -0
- package/dist/language_models/stream.d.ts +129 -0
- package/dist/language_models/stream.d.ts.map +1 -0
- package/dist/language_models/stream.js +365 -0
- package/dist/language_models/stream.js.map +1 -0
- package/dist/language_models/structured_output.cjs +87 -0
- package/dist/language_models/structured_output.cjs.map +1 -0
- package/dist/language_models/structured_output.d.cts +45 -0
- package/dist/language_models/structured_output.d.cts.map +1 -0
- package/dist/language_models/structured_output.d.ts +45 -0
- package/dist/language_models/structured_output.d.ts.map +1 -0
- package/dist/language_models/structured_output.js +78 -0
- package/dist/language_models/structured_output.js.map +1 -0
- package/dist/language_models/utils.cjs +1 -2
- package/dist/language_models/utils.cjs.map +1 -1
- package/dist/language_models/utils.js +1 -1
- package/dist/language_models/utils.js.map +1 -1
- package/dist/load/import_constants.cjs +1 -2
- package/dist/load/import_constants.cjs.map +1 -1
- package/dist/load/import_constants.js +1 -1
- package/dist/load/import_constants.js.map +1 -1
- package/dist/load/import_map.cjs +82 -66
- package/dist/load/import_map.cjs.map +1 -1
- package/dist/load/import_map.js +45 -29
- package/dist/load/import_map.js.map +1 -1
- package/dist/load/import_type.d.cts.map +1 -1
- package/dist/load/import_type.d.ts.map +1 -1
- package/dist/load/index.cjs +160 -41
- package/dist/load/index.cjs.map +1 -1
- package/dist/load/index.d.cts +122 -3
- package/dist/load/index.d.cts.map +1 -1
- package/dist/load/index.d.ts +122 -3
- package/dist/load/index.d.ts.map +1 -1
- package/dist/load/index.js +149 -31
- package/dist/load/index.js.map +1 -1
- package/dist/load/map_keys.cjs +6 -5
- package/dist/load/map_keys.cjs.map +1 -1
- package/dist/load/map_keys.d.cts.map +1 -1
- package/dist/load/map_keys.d.ts.map +1 -1
- package/dist/load/map_keys.js +1 -2
- package/dist/load/map_keys.js.map +1 -1
- package/dist/load/serializable.cjs +22 -26
- package/dist/load/serializable.cjs.map +1 -1
- package/dist/load/serializable.d.cts +15 -1
- package/dist/load/serializable.d.cts.map +1 -1
- package/dist/load/serializable.d.ts +15 -1
- package/dist/load/serializable.d.ts.map +1 -1
- package/dist/load/serializable.js +15 -20
- package/dist/load/serializable.js.map +1 -1
- package/dist/load/validation.cjs +120 -0
- package/dist/load/validation.cjs.map +1 -0
- package/dist/load/validation.js +118 -0
- package/dist/load/validation.js.map +1 -0
- package/dist/memory.cjs +10 -18
- package/dist/memory.cjs.map +1 -1
- package/dist/memory.d.cts +2 -2
- package/dist/memory.d.cts.map +1 -1
- package/dist/memory.d.ts +2 -2
- package/dist/memory.d.ts.map +1 -1
- package/dist/memory.js +5 -13
- package/dist/memory.js.map +1 -1
- package/dist/messages/ai.cjs +15 -9
- package/dist/messages/ai.cjs.map +1 -1
- package/dist/messages/ai.d.cts +2 -2
- package/dist/messages/ai.d.cts.map +1 -1
- package/dist/messages/ai.d.ts +2 -2
- package/dist/messages/ai.d.ts.map +1 -1
- package/dist/messages/ai.js +10 -4
- package/dist/messages/ai.js.map +1 -1
- package/dist/messages/base.cjs +111 -44
- package/dist/messages/base.cjs.map +1 -1
- package/dist/messages/base.d.cts +49 -12
- package/dist/messages/base.d.cts.map +1 -1
- package/dist/messages/base.d.ts +49 -12
- package/dist/messages/base.d.ts.map +1 -1
- package/dist/messages/base.js +104 -38
- package/dist/messages/base.js.map +1 -1
- package/dist/messages/block_translators/anthropic.cjs +32 -38
- package/dist/messages/block_translators/anthropic.cjs.map +1 -1
- package/dist/messages/block_translators/anthropic.js +31 -37
- package/dist/messages/block_translators/anthropic.js.map +1 -1
- package/dist/messages/block_translators/bedrock_converse.cjs +40 -49
- package/dist/messages/block_translators/bedrock_converse.cjs.map +1 -1
- package/dist/messages/block_translators/bedrock_converse.js +39 -48
- package/dist/messages/block_translators/bedrock_converse.js.map +1 -1
- package/dist/messages/block_translators/data.cjs +3 -4
- package/dist/messages/block_translators/data.cjs.map +1 -1
- package/dist/messages/block_translators/data.js +1 -2
- package/dist/messages/block_translators/data.js.map +1 -1
- package/dist/messages/block_translators/deepseek.cjs +58 -0
- package/dist/messages/block_translators/deepseek.cjs.map +1 -0
- package/dist/messages/block_translators/deepseek.js +58 -0
- package/dist/messages/block_translators/deepseek.js.map +1 -0
- package/dist/messages/block_translators/google.cjs +97 -0
- package/dist/messages/block_translators/google.cjs.map +1 -0
- package/dist/messages/block_translators/google.js +97 -0
- package/dist/messages/block_translators/google.js.map +1 -0
- package/dist/messages/block_translators/google_genai.cjs +9 -3
- package/dist/messages/block_translators/google_genai.cjs.map +1 -1
- package/dist/messages/block_translators/google_genai.js +8 -2
- package/dist/messages/block_translators/google_genai.js.map +1 -1
- package/dist/messages/block_translators/google_vertexai.cjs +10 -6
- package/dist/messages/block_translators/google_vertexai.cjs.map +1 -1
- package/dist/messages/block_translators/google_vertexai.js +9 -5
- package/dist/messages/block_translators/google_vertexai.js.map +1 -1
- package/dist/messages/block_translators/groq.cjs +96 -0
- package/dist/messages/block_translators/groq.cjs.map +1 -0
- package/dist/messages/block_translators/groq.js +96 -0
- package/dist/messages/block_translators/groq.js.map +1 -0
- package/dist/messages/block_translators/index.cjs +17 -8
- package/dist/messages/block_translators/index.cjs.map +1 -1
- package/dist/messages/block_translators/index.js +12 -3
- package/dist/messages/block_translators/index.js.map +1 -1
- package/dist/messages/block_translators/ollama.cjs +58 -0
- package/dist/messages/block_translators/ollama.cjs.map +1 -0
- package/dist/messages/block_translators/ollama.js +58 -0
- package/dist/messages/block_translators/ollama.js.map +1 -0
- package/dist/messages/block_translators/openai.cjs +85 -26
- package/dist/messages/block_translators/openai.cjs.map +1 -1
- package/dist/messages/block_translators/openai.js +83 -24
- package/dist/messages/block_translators/openai.js.map +1 -1
- package/dist/messages/block_translators/utils.cjs +2 -3
- package/dist/messages/block_translators/utils.cjs.map +1 -1
- package/dist/messages/block_translators/utils.js +2 -2
- package/dist/messages/block_translators/utils.js.map +1 -1
- package/dist/messages/block_translators/xai.cjs +94 -0
- package/dist/messages/block_translators/xai.cjs.map +1 -0
- package/dist/messages/block_translators/xai.js +94 -0
- package/dist/messages/block_translators/xai.js.map +1 -0
- package/dist/messages/chat.cjs +2 -3
- package/dist/messages/chat.cjs.map +1 -1
- package/dist/messages/chat.d.cts.map +1 -1
- package/dist/messages/chat.d.ts.map +1 -1
- package/dist/messages/chat.js +1 -2
- package/dist/messages/chat.js.map +1 -1
- package/dist/messages/content/base.d.cts.map +1 -1
- package/dist/messages/content/base.d.ts.map +1 -1
- package/dist/messages/content/data.cjs +2 -5
- package/dist/messages/content/data.cjs.map +1 -1
- package/dist/messages/content/data.d.cts +0 -1
- package/dist/messages/content/data.d.cts.map +1 -1
- package/dist/messages/content/data.d.ts +0 -1
- package/dist/messages/content/data.d.ts.map +1 -1
- package/dist/messages/content/data.js +2 -4
- package/dist/messages/content/data.js.map +1 -1
- package/dist/messages/content/index.cjs +5 -6
- package/dist/messages/content/index.cjs.map +1 -1
- package/dist/messages/content/index.d.cts +7 -3
- package/dist/messages/content/index.d.cts.map +1 -1
- package/dist/messages/content/index.d.ts +7 -3
- package/dist/messages/content/index.d.ts.map +1 -1
- package/dist/messages/content/index.js +7 -8
- package/dist/messages/content/index.js.map +1 -1
- package/dist/messages/content/multimodal.cjs +1 -2
- package/dist/messages/content/multimodal.cjs.map +1 -1
- package/dist/messages/content/multimodal.d.cts +4 -8
- package/dist/messages/content/multimodal.d.cts.map +1 -1
- package/dist/messages/content/multimodal.d.ts +4 -8
- package/dist/messages/content/multimodal.d.ts.map +1 -1
- package/dist/messages/content/multimodal.js +1 -1
- package/dist/messages/content/multimodal.js.map +1 -1
- package/dist/messages/content/tools.cjs +1 -2
- package/dist/messages/content/tools.cjs.map +1 -1
- package/dist/messages/content/tools.d.cts +1 -1
- package/dist/messages/content/tools.d.cts.map +1 -1
- package/dist/messages/content/tools.d.ts +1 -1
- package/dist/messages/content/tools.d.ts.map +1 -1
- package/dist/messages/content/tools.js +1 -1
- package/dist/messages/content/tools.js.map +1 -1
- package/dist/messages/format.cjs +1 -2
- package/dist/messages/format.cjs.map +1 -1
- package/dist/messages/format.d.cts.map +1 -1
- package/dist/messages/format.d.ts.map +1 -1
- package/dist/messages/format.js +1 -1
- package/dist/messages/format.js.map +1 -1
- package/dist/messages/function.cjs +2 -3
- package/dist/messages/function.cjs.map +1 -1
- package/dist/messages/function.d.cts.map +1 -1
- package/dist/messages/function.d.ts.map +1 -1
- package/dist/messages/function.js +1 -2
- package/dist/messages/function.js.map +1 -1
- package/dist/messages/human.cjs +2 -3
- package/dist/messages/human.cjs.map +1 -1
- package/dist/messages/human.d.cts.map +1 -1
- package/dist/messages/human.d.ts.map +1 -1
- package/dist/messages/human.js +1 -2
- package/dist/messages/human.js.map +1 -1
- package/dist/messages/index.cjs +25 -24
- package/dist/messages/index.d.cts +3 -3
- package/dist/messages/index.d.ts +3 -3
- package/dist/messages/index.js +7 -8
- package/dist/messages/message.cjs +1 -2
- package/dist/messages/message.cjs.map +1 -1
- package/dist/messages/message.d.cts +50 -27
- package/dist/messages/message.d.cts.map +1 -1
- package/dist/messages/message.d.ts +50 -27
- package/dist/messages/message.d.ts.map +1 -1
- package/dist/messages/message.js +1 -1
- package/dist/messages/message.js.map +1 -1
- package/dist/messages/metadata.cjs +3 -5
- package/dist/messages/metadata.cjs.map +1 -1
- package/dist/messages/metadata.d.cts.map +1 -1
- package/dist/messages/metadata.d.ts.map +1 -1
- package/dist/messages/metadata.js +2 -4
- package/dist/messages/metadata.js.map +1 -1
- package/dist/messages/modifier.cjs +2 -3
- package/dist/messages/modifier.cjs.map +1 -1
- package/dist/messages/modifier.d.cts.map +1 -1
- package/dist/messages/modifier.d.ts.map +1 -1
- package/dist/messages/modifier.js +1 -2
- package/dist/messages/modifier.js.map +1 -1
- package/dist/messages/system.cjs +10 -7
- package/dist/messages/system.cjs.map +1 -1
- package/dist/messages/system.d.cts.map +1 -1
- package/dist/messages/system.d.ts.map +1 -1
- package/dist/messages/system.js +9 -6
- package/dist/messages/system.js.map +1 -1
- package/dist/messages/tool.cjs +10 -11
- package/dist/messages/tool.cjs.map +1 -1
- package/dist/messages/tool.d.cts +1 -1
- package/dist/messages/tool.d.cts.map +1 -1
- package/dist/messages/tool.d.ts +1 -1
- package/dist/messages/tool.d.ts.map +1 -1
- package/dist/messages/tool.js +3 -5
- package/dist/messages/tool.js.map +1 -1
- package/dist/messages/transformers.cjs +18 -25
- package/dist/messages/transformers.cjs.map +1 -1
- package/dist/messages/transformers.d.cts.map +1 -1
- package/dist/messages/transformers.d.ts.map +1 -1
- package/dist/messages/transformers.js +9 -16
- package/dist/messages/transformers.js.map +1 -1
- package/dist/messages/utils.cjs +71 -32
- package/dist/messages/utils.cjs.map +1 -1
- package/dist/messages/utils.d.cts +16 -7
- package/dist/messages/utils.d.cts.map +1 -1
- package/dist/messages/utils.d.ts +16 -7
- package/dist/messages/utils.d.ts.map +1 -1
- package/dist/messages/utils.js +63 -24
- package/dist/messages/utils.js.map +1 -1
- package/dist/output_parsers/base.cjs +10 -11
- package/dist/output_parsers/base.cjs.map +1 -1
- package/dist/output_parsers/base.d.cts +0 -1
- package/dist/output_parsers/base.d.cts.map +1 -1
- package/dist/output_parsers/base.d.ts +0 -4
- package/dist/output_parsers/base.d.ts.map +1 -1
- package/dist/output_parsers/base.js +6 -7
- package/dist/output_parsers/base.js.map +1 -1
- package/dist/output_parsers/bytes.cjs +2 -3
- package/dist/output_parsers/bytes.cjs.map +1 -1
- package/dist/output_parsers/bytes.d.cts +0 -1
- package/dist/output_parsers/bytes.d.cts.map +1 -1
- package/dist/output_parsers/bytes.d.ts +0 -1
- package/dist/output_parsers/bytes.d.ts.map +1 -1
- package/dist/output_parsers/bytes.js +1 -2
- package/dist/output_parsers/bytes.js.map +1 -1
- package/dist/output_parsers/index.cjs +21 -19
- package/dist/output_parsers/index.cjs.map +1 -1
- package/dist/output_parsers/index.d.cts +2 -1
- package/dist/output_parsers/index.d.ts +2 -1
- package/dist/output_parsers/index.js +7 -7
- package/dist/output_parsers/index.js.map +1 -1
- package/dist/output_parsers/json.cjs +16 -7
- package/dist/output_parsers/json.cjs.map +1 -1
- package/dist/output_parsers/json.d.cts +9 -1
- package/dist/output_parsers/json.d.cts.map +1 -1
- package/dist/output_parsers/json.d.ts +9 -1
- package/dist/output_parsers/json.d.ts.map +1 -1
- package/dist/output_parsers/json.js +13 -4
- package/dist/output_parsers/json.js.map +1 -1
- package/dist/output_parsers/list.cjs +3 -4
- package/dist/output_parsers/list.cjs.map +1 -1
- package/dist/output_parsers/list.d.cts +0 -1
- package/dist/output_parsers/list.d.cts.map +1 -1
- package/dist/output_parsers/list.d.ts +0 -2
- package/dist/output_parsers/list.d.ts.map +1 -1
- package/dist/output_parsers/list.js +1 -2
- package/dist/output_parsers/list.js.map +1 -1
- package/dist/output_parsers/openai_functions/index.cjs +10 -11
- package/dist/output_parsers/openai_functions/index.js +3 -5
- package/dist/output_parsers/openai_functions/json_output_functions_parsers.cjs +13 -17
- package/dist/output_parsers/openai_functions/json_output_functions_parsers.cjs.map +1 -1
- package/dist/output_parsers/openai_functions/json_output_functions_parsers.d.cts +1 -2
- package/dist/output_parsers/openai_functions/json_output_functions_parsers.d.cts.map +1 -1
- package/dist/output_parsers/openai_functions/json_output_functions_parsers.d.ts +1 -2
- package/dist/output_parsers/openai_functions/json_output_functions_parsers.d.ts.map +1 -1
- package/dist/output_parsers/openai_functions/json_output_functions_parsers.js +7 -11
- package/dist/output_parsers/openai_functions/json_output_functions_parsers.js.map +1 -1
- package/dist/output_parsers/openai_tools/index.cjs +10 -11
- package/dist/output_parsers/openai_tools/index.d.cts +2 -2
- package/dist/output_parsers/openai_tools/index.d.ts +2 -2
- package/dist/output_parsers/openai_tools/index.js +3 -5
- package/dist/output_parsers/openai_tools/json_output_tools_parsers.cjs +29 -30
- package/dist/output_parsers/openai_tools/json_output_tools_parsers.cjs.map +1 -1
- package/dist/output_parsers/openai_tools/json_output_tools_parsers.d.cts +10 -8
- package/dist/output_parsers/openai_tools/json_output_tools_parsers.d.cts.map +1 -1
- package/dist/output_parsers/openai_tools/json_output_tools_parsers.d.ts +10 -8
- package/dist/output_parsers/openai_tools/json_output_tools_parsers.d.ts.map +1 -1
- package/dist/output_parsers/openai_tools/json_output_tools_parsers.js +23 -24
- package/dist/output_parsers/openai_tools/json_output_tools_parsers.js.map +1 -1
- package/dist/output_parsers/standard_schema.cjs +39 -0
- package/dist/output_parsers/standard_schema.cjs.map +1 -0
- package/dist/output_parsers/standard_schema.d.cts +16 -0
- package/dist/output_parsers/standard_schema.d.cts.map +1 -0
- package/dist/output_parsers/standard_schema.d.ts +16 -0
- package/dist/output_parsers/standard_schema.d.ts.map +1 -0
- package/dist/output_parsers/standard_schema.js +39 -0
- package/dist/output_parsers/standard_schema.js.map +1 -0
- package/dist/output_parsers/string.cjs +5 -3
- package/dist/output_parsers/string.cjs.map +1 -1
- package/dist/output_parsers/string.d.cts +0 -1
- package/dist/output_parsers/string.d.cts.map +1 -1
- package/dist/output_parsers/string.d.ts +0 -2
- package/dist/output_parsers/string.d.ts.map +1 -1
- package/dist/output_parsers/string.js +4 -2
- package/dist/output_parsers/string.js.map +1 -1
- package/dist/output_parsers/structured.cjs +14 -18
- package/dist/output_parsers/structured.cjs.map +1 -1
- package/dist/output_parsers/structured.d.cts.map +1 -1
- package/dist/output_parsers/structured.d.ts.map +1 -1
- package/dist/output_parsers/structured.js +9 -13
- package/dist/output_parsers/structured.js.map +1 -1
- package/dist/output_parsers/transform.cjs +8 -9
- package/dist/output_parsers/transform.cjs.map +1 -1
- package/dist/output_parsers/transform.d.cts +0 -1
- package/dist/output_parsers/transform.d.cts.map +1 -1
- package/dist/output_parsers/transform.d.ts +0 -1
- package/dist/output_parsers/transform.d.ts.map +1 -1
- package/dist/output_parsers/transform.js +1 -2
- package/dist/output_parsers/transform.js.map +1 -1
- package/dist/output_parsers/xml.cjs +11 -15
- package/dist/output_parsers/xml.cjs.map +1 -1
- package/dist/output_parsers/xml.d.cts +1 -1
- package/dist/output_parsers/xml.d.cts.map +1 -1
- package/dist/output_parsers/xml.d.ts +1 -1
- package/dist/output_parsers/xml.d.ts.map +1 -1
- package/dist/output_parsers/xml.js +7 -11
- package/dist/output_parsers/xml.js.map +1 -1
- package/dist/outputs.cjs +8 -10
- package/dist/outputs.cjs.map +1 -1
- package/dist/outputs.d.cts.map +1 -1
- package/dist/outputs.d.ts.map +1 -1
- package/dist/outputs.js +3 -5
- package/dist/outputs.js.map +1 -1
- package/dist/prompt_values.cjs +12 -13
- package/dist/prompt_values.cjs.map +1 -1
- package/dist/prompt_values.d.cts +1 -3
- package/dist/prompt_values.d.cts.map +1 -1
- package/dist/prompt_values.d.ts +1 -3
- package/dist/prompt_values.d.ts.map +1 -1
- package/dist/prompt_values.js +3 -5
- package/dist/prompt_values.js.map +1 -1
- package/dist/prompts/base.cjs +4 -6
- package/dist/prompts/base.cjs.map +1 -1
- package/dist/prompts/base.d.cts +0 -1
- package/dist/prompts/base.d.cts.map +1 -1
- package/dist/prompts/base.d.ts +0 -2
- package/dist/prompts/base.d.ts.map +1 -1
- package/dist/prompts/base.js +3 -5
- package/dist/prompts/base.js.map +1 -1
- package/dist/prompts/chat.cjs +37 -53
- package/dist/prompts/chat.cjs.map +1 -1
- package/dist/prompts/chat.d.cts +1 -0
- package/dist/prompts/chat.d.cts.map +1 -1
- package/dist/prompts/chat.d.ts +1 -1
- package/dist/prompts/chat.d.ts.map +1 -1
- package/dist/prompts/chat.js +23 -39
- package/dist/prompts/chat.js.map +1 -1
- package/dist/prompts/dict.cjs +3 -4
- package/dist/prompts/dict.cjs.map +1 -1
- package/dist/prompts/dict.d.cts.map +1 -1
- package/dist/prompts/dict.d.ts.map +1 -1
- package/dist/prompts/dict.js +1 -2
- package/dist/prompts/dict.js.map +1 -1
- package/dist/prompts/few_shot.cjs +14 -20
- package/dist/prompts/few_shot.cjs.map +1 -1
- package/dist/prompts/few_shot.d.cts.map +1 -1
- package/dist/prompts/few_shot.d.ts +0 -1
- package/dist/prompts/few_shot.d.ts.map +1 -1
- package/dist/prompts/few_shot.js +10 -16
- package/dist/prompts/few_shot.js.map +1 -1
- package/dist/prompts/image.cjs +7 -10
- package/dist/prompts/image.cjs.map +1 -1
- package/dist/prompts/image.d.cts +0 -1
- package/dist/prompts/image.d.cts.map +1 -1
- package/dist/prompts/image.d.ts +0 -2
- package/dist/prompts/image.d.ts.map +1 -1
- package/dist/prompts/image.js +4 -7
- package/dist/prompts/image.js.map +1 -1
- package/dist/prompts/index.cjs +19 -20
- package/dist/prompts/index.js +3 -5
- package/dist/prompts/pipeline.cjs +3 -4
- package/dist/prompts/pipeline.cjs.map +1 -1
- package/dist/prompts/pipeline.d.cts +0 -1
- package/dist/prompts/pipeline.d.cts.map +1 -1
- package/dist/prompts/pipeline.d.ts +0 -1
- package/dist/prompts/pipeline.d.ts.map +1 -1
- package/dist/prompts/pipeline.js +1 -2
- package/dist/prompts/pipeline.js.map +1 -1
- package/dist/prompts/prompt.cjs +12 -16
- package/dist/prompts/prompt.cjs.map +1 -1
- package/dist/prompts/prompt.d.cts +0 -1
- package/dist/prompts/prompt.d.cts.map +1 -1
- package/dist/prompts/prompt.d.ts +0 -1
- package/dist/prompts/prompt.d.ts.map +1 -1
- package/dist/prompts/prompt.js +10 -14
- package/dist/prompts/prompt.js.map +1 -1
- package/dist/prompts/serde.d.cts +0 -1
- package/dist/prompts/serde.d.cts.map +1 -1
- package/dist/prompts/serde.d.ts +0 -2
- package/dist/prompts/serde.d.ts.map +1 -1
- package/dist/prompts/string.cjs +4 -6
- package/dist/prompts/string.cjs.map +1 -1
- package/dist/prompts/string.d.cts +0 -1
- package/dist/prompts/string.d.cts.map +1 -1
- package/dist/prompts/string.d.ts +0 -1
- package/dist/prompts/string.d.ts.map +1 -1
- package/dist/prompts/string.js +2 -4
- package/dist/prompts/string.js.map +1 -1
- package/dist/prompts/structured.cjs +3 -4
- package/dist/prompts/structured.cjs.map +1 -1
- package/dist/prompts/structured.d.cts +0 -1
- package/dist/prompts/structured.d.cts.map +1 -1
- package/dist/prompts/structured.d.ts +0 -1
- package/dist/prompts/structured.d.ts.map +1 -1
- package/dist/prompts/structured.js +1 -2
- package/dist/prompts/structured.js.map +1 -1
- package/dist/prompts/template.cjs +12 -23
- package/dist/prompts/template.cjs.map +1 -1
- package/dist/prompts/template.d.cts +0 -2
- package/dist/prompts/template.d.cts.map +1 -1
- package/dist/prompts/template.d.ts +0 -2
- package/dist/prompts/template.d.ts.map +1 -1
- package/dist/prompts/template.js +8 -20
- package/dist/prompts/template.js.map +1 -1
- package/dist/retrievers/document_compressors/index.cjs +8 -10
- package/dist/retrievers/document_compressors/index.cjs.map +1 -1
- package/dist/retrievers/document_compressors/index.d.cts +0 -1
- package/dist/retrievers/document_compressors/index.d.cts.map +1 -1
- package/dist/retrievers/document_compressors/index.d.ts +0 -1
- package/dist/retrievers/document_compressors/index.d.ts.map +1 -1
- package/dist/retrievers/document_compressors/index.js +3 -5
- package/dist/retrievers/document_compressors/index.js.map +1 -1
- package/dist/retrievers/index.cjs +13 -15
- package/dist/retrievers/index.cjs.map +1 -1
- package/dist/retrievers/index.d.cts +0 -1
- package/dist/retrievers/index.d.cts.map +1 -1
- package/dist/retrievers/index.d.ts +0 -2
- package/dist/retrievers/index.d.ts.map +1 -1
- package/dist/retrievers/index.js +4 -7
- package/dist/retrievers/index.js.map +1 -1
- package/dist/runnables/base.cjs +73 -100
- package/dist/runnables/base.cjs.map +1 -1
- package/dist/runnables/base.d.cts +3 -4
- package/dist/runnables/base.d.cts.map +1 -1
- package/dist/runnables/base.d.ts +3 -4
- package/dist/runnables/base.d.ts.map +1 -1
- package/dist/runnables/base.js +55 -82
- package/dist/runnables/base.js.map +1 -1
- package/dist/runnables/branch.cjs +8 -13
- package/dist/runnables/branch.cjs.map +1 -1
- package/dist/runnables/branch.d.cts +0 -1
- package/dist/runnables/branch.d.cts.map +1 -1
- package/dist/runnables/branch.d.ts +0 -2
- package/dist/runnables/branch.d.ts.map +1 -1
- package/dist/runnables/branch.js +5 -10
- package/dist/runnables/branch.js.map +1 -1
- package/dist/runnables/config.cjs +5 -8
- package/dist/runnables/config.cjs.map +1 -1
- package/dist/runnables/config.d.cts.map +1 -1
- package/dist/runnables/config.d.ts.map +1 -1
- package/dist/runnables/config.js +3 -5
- package/dist/runnables/config.js.map +1 -1
- package/dist/runnables/graph.cjs +15 -18
- package/dist/runnables/graph.cjs.map +1 -1
- package/dist/runnables/graph.d.cts.map +1 -1
- package/dist/runnables/graph.d.ts.map +1 -1
- package/dist/runnables/graph.js +5 -9
- package/dist/runnables/graph.js.map +1 -1
- package/dist/runnables/graph_mermaid.cjs +8 -12
- package/dist/runnables/graph_mermaid.cjs.map +1 -1
- package/dist/runnables/graph_mermaid.js +7 -11
- package/dist/runnables/graph_mermaid.js.map +1 -1
- package/dist/runnables/history.cjs +12 -17
- package/dist/runnables/history.cjs.map +1 -1
- package/dist/runnables/history.d.cts +2 -4
- package/dist/runnables/history.d.cts.map +1 -1
- package/dist/runnables/history.d.ts +2 -6
- package/dist/runnables/history.d.ts.map +1 -1
- package/dist/runnables/history.js +7 -12
- package/dist/runnables/history.js.map +1 -1
- package/dist/runnables/index.cjs +16 -17
- package/dist/runnables/index.js +3 -5
- package/dist/runnables/iter.cjs +21 -5
- package/dist/runnables/iter.cjs.map +1 -1
- package/dist/runnables/iter.js +17 -3
- package/dist/runnables/iter.js.map +1 -1
- package/dist/runnables/passthrough.cjs +5 -6
- package/dist/runnables/passthrough.cjs.map +1 -1
- package/dist/runnables/passthrough.d.cts.map +1 -1
- package/dist/runnables/passthrough.d.ts +0 -1
- package/dist/runnables/passthrough.d.ts.map +1 -1
- package/dist/runnables/passthrough.js +2 -3
- package/dist/runnables/passthrough.js.map +1 -1
- package/dist/runnables/router.cjs +5 -7
- package/dist/runnables/router.cjs.map +1 -1
- package/dist/runnables/router.d.cts.map +1 -1
- package/dist/runnables/router.d.ts +0 -1
- package/dist/runnables/router.d.ts.map +1 -1
- package/dist/runnables/router.js +3 -5
- package/dist/runnables/router.js.map +1 -1
- package/dist/runnables/types.d.cts +1 -2
- package/dist/runnables/types.d.cts.map +1 -1
- package/dist/runnables/types.d.ts +1 -2
- package/dist/runnables/types.d.ts.map +1 -1
- package/dist/runnables/utils.cjs +2 -4
- package/dist/runnables/utils.cjs.map +1 -1
- package/dist/runnables/utils.js +2 -3
- package/dist/runnables/utils.js.map +1 -1
- package/dist/runnables/wrappers.cjs +2 -3
- package/dist/runnables/wrappers.cjs.map +1 -1
- package/dist/runnables/wrappers.js +1 -2
- package/dist/runnables/wrappers.js.map +1 -1
- package/dist/singletons/async_local_storage/context.cjs +6 -8
- package/dist/singletons/async_local_storage/context.cjs.map +1 -1
- package/dist/singletons/async_local_storage/context.d.cts +0 -1
- package/dist/singletons/async_local_storage/context.d.cts.map +1 -1
- package/dist/singletons/async_local_storage/context.d.ts +0 -1
- package/dist/singletons/async_local_storage/context.d.ts.map +1 -1
- package/dist/singletons/async_local_storage/context.js +3 -5
- package/dist/singletons/async_local_storage/context.js.map +1 -1
- package/dist/singletons/async_local_storage/globals.cjs +1 -2
- package/dist/singletons/async_local_storage/globals.cjs.map +1 -1
- package/dist/singletons/async_local_storage/globals.d.cts.map +1 -1
- package/dist/singletons/async_local_storage/globals.d.ts.map +1 -1
- package/dist/singletons/async_local_storage/globals.js +1 -1
- package/dist/singletons/async_local_storage/globals.js.map +1 -1
- package/dist/singletons/async_local_storage/index.cjs +8 -14
- package/dist/singletons/async_local_storage/index.cjs.map +1 -1
- package/dist/singletons/async_local_storage/index.d.cts.map +1 -1
- package/dist/singletons/async_local_storage/index.d.ts.map +1 -1
- package/dist/singletons/async_local_storage/index.js +4 -10
- package/dist/singletons/async_local_storage/index.js.map +1 -1
- package/dist/singletons/callbacks.cjs +7 -8
- package/dist/singletons/callbacks.cjs.map +1 -1
- package/dist/singletons/callbacks.d.cts +0 -1
- package/dist/singletons/callbacks.d.cts.map +1 -1
- package/dist/singletons/callbacks.d.ts +0 -1
- package/dist/singletons/callbacks.d.ts.map +1 -1
- package/dist/singletons/callbacks.js +2 -4
- package/dist/singletons/callbacks.js.map +1 -1
- package/dist/singletons/index.cjs +11 -12
- package/dist/singletons/index.js +3 -5
- package/dist/singletons/tracer.cjs +5 -9
- package/dist/singletons/tracer.cjs.map +1 -1
- package/dist/singletons/tracer.js +2 -6
- package/dist/singletons/tracer.js.map +1 -1
- package/dist/stores.cjs +10 -11
- package/dist/stores.cjs.map +1 -1
- package/dist/stores.d.cts +0 -1
- package/dist/stores.d.cts.map +1 -1
- package/dist/stores.d.ts +0 -1
- package/dist/stores.d.ts.map +1 -1
- package/dist/stores.js +3 -5
- package/dist/stores.js.map +1 -1
- package/dist/structured_query/base.cjs +6 -7
- package/dist/structured_query/base.cjs.map +1 -1
- package/dist/structured_query/base.d.cts +0 -1
- package/dist/structured_query/base.d.cts.map +1 -1
- package/dist/structured_query/base.d.ts +0 -1
- package/dist/structured_query/base.d.ts.map +1 -1
- package/dist/structured_query/base.js +4 -5
- package/dist/structured_query/base.js.map +1 -1
- package/dist/structured_query/functional.cjs +7 -8
- package/dist/structured_query/functional.cjs.map +1 -1
- package/dist/structured_query/functional.d.cts +0 -1
- package/dist/structured_query/functional.d.cts.map +1 -1
- package/dist/structured_query/functional.d.ts +0 -1
- package/dist/structured_query/functional.d.ts.map +1 -1
- package/dist/structured_query/functional.js +4 -5
- package/dist/structured_query/functional.js.map +1 -1
- package/dist/structured_query/index.cjs +13 -14
- package/dist/structured_query/index.js +3 -5
- package/dist/structured_query/ir.cjs +1 -2
- package/dist/structured_query/ir.cjs.map +1 -1
- package/dist/structured_query/ir.d.cts +0 -1
- package/dist/structured_query/ir.d.cts.map +1 -1
- package/dist/structured_query/ir.d.ts +0 -1
- package/dist/structured_query/ir.d.ts.map +1 -1
- package/dist/structured_query/ir.js +1 -1
- package/dist/structured_query/ir.js.map +1 -1
- package/dist/structured_query/utils.cjs +1 -2
- package/dist/structured_query/utils.cjs.map +1 -1
- package/dist/structured_query/utils.d.cts.map +1 -1
- package/dist/structured_query/utils.d.ts.map +1 -1
- package/dist/structured_query/utils.js +1 -1
- package/dist/structured_query/utils.js.map +1 -1
- package/dist/testing/fake_model_builder.cjs +225 -0
- package/dist/testing/fake_model_builder.cjs.map +1 -0
- package/dist/testing/fake_model_builder.d.cts +138 -0
- package/dist/testing/fake_model_builder.d.cts.map +1 -0
- package/dist/testing/fake_model_builder.d.ts +138 -0
- package/dist/testing/fake_model_builder.d.ts.map +1 -0
- package/dist/testing/fake_model_builder.js +224 -0
- package/dist/testing/fake_model_builder.js.map +1 -0
- package/dist/testing/index.cjs +42 -0
- package/dist/testing/index.cjs.map +1 -0
- package/dist/testing/index.d.cts +3 -0
- package/dist/testing/index.d.ts +3 -0
- package/dist/testing/index.js +23 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/testing/matchers.cjs +212 -0
- package/dist/testing/matchers.cjs.map +1 -0
- package/dist/testing/matchers.d.cts +94 -0
- package/dist/testing/matchers.d.cts.map +1 -0
- package/dist/testing/matchers.d.ts +94 -0
- package/dist/testing/matchers.d.ts.map +1 -0
- package/dist/testing/matchers.js +202 -0
- package/dist/testing/matchers.js.map +1 -0
- package/dist/tools/index.cjs +51 -36
- package/dist/tools/index.cjs.map +1 -1
- package/dist/tools/index.d.cts +31 -24
- package/dist/tools/index.d.cts.map +1 -1
- package/dist/tools/index.d.ts +31 -26
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +32 -18
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/types.cjs +3 -4
- package/dist/tools/types.cjs.map +1 -1
- package/dist/tools/types.d.cts +26 -11
- package/dist/tools/types.d.cts.map +1 -1
- package/dist/tools/types.d.ts +26 -13
- package/dist/tools/types.d.ts.map +1 -1
- package/dist/tools/types.js +1 -2
- package/dist/tools/types.js.map +1 -1
- package/dist/tools/utils.cjs +1 -2
- package/dist/tools/utils.cjs.map +1 -1
- package/dist/tools/utils.d.cts +0 -1
- package/dist/tools/utils.d.cts.map +1 -1
- package/dist/tools/utils.d.ts +0 -1
- package/dist/tools/utils.d.ts.map +1 -1
- package/dist/tools/utils.js +1 -1
- package/dist/tools/utils.js.map +1 -1
- package/dist/tracers/base.cjs +20 -18
- package/dist/tracers/base.cjs.map +1 -1
- package/dist/tracers/base.d.cts +92 -98
- package/dist/tracers/base.d.cts.map +1 -1
- package/dist/tracers/base.d.ts +92 -98
- package/dist/tracers/base.d.ts.map +1 -1
- package/dist/tracers/base.js +11 -10
- package/dist/tracers/base.js.map +1 -1
- package/dist/tracers/console.cjs +16 -17
- package/dist/tracers/console.cjs.map +1 -1
- package/dist/tracers/console.d.cts +0 -1
- package/dist/tracers/console.d.cts.map +1 -1
- package/dist/tracers/console.d.ts +0 -1
- package/dist/tracers/console.d.ts.map +1 -1
- package/dist/tracers/console.js +7 -10
- package/dist/tracers/console.js.map +1 -1
- package/dist/tracers/event_stream.cjs +24 -10
- package/dist/tracers/event_stream.cjs.map +1 -1
- package/dist/tracers/event_stream.d.cts +7 -6
- package/dist/tracers/event_stream.d.cts.map +1 -1
- package/dist/tracers/event_stream.d.ts +7 -7
- package/dist/tracers/event_stream.d.ts.map +1 -1
- package/dist/tracers/event_stream.js +20 -6
- package/dist/tracers/event_stream.js.map +1 -1
- package/dist/tracers/log_stream.cjs +15 -16
- package/dist/tracers/log_stream.cjs.map +1 -1
- package/dist/tracers/log_stream.d.cts +14 -31
- package/dist/tracers/log_stream.d.cts.map +1 -1
- package/dist/tracers/log_stream.d.ts +14 -31
- package/dist/tracers/log_stream.d.ts.map +1 -1
- package/dist/tracers/log_stream.js +5 -7
- package/dist/tracers/log_stream.js.map +1 -1
- package/dist/tracers/root_listener.cjs +2 -3
- package/dist/tracers/root_listener.cjs.map +1 -1
- package/dist/tracers/root_listener.js +1 -2
- package/dist/tracers/root_listener.js.map +1 -1
- package/dist/tracers/run_collector.cjs +10 -11
- package/dist/tracers/run_collector.cjs.map +1 -1
- package/dist/tracers/run_collector.d.cts +0 -1
- package/dist/tracers/run_collector.d.cts.map +1 -1
- package/dist/tracers/run_collector.d.ts +0 -1
- package/dist/tracers/run_collector.d.ts.map +1 -1
- package/dist/tracers/run_collector.js +3 -5
- package/dist/tracers/run_collector.js.map +1 -1
- package/dist/tracers/tracer_langchain.cjs +43 -19
- package/dist/tracers/tracer_langchain.cjs.map +1 -1
- package/dist/tracers/tracer_langchain.d.cts +2 -1
- package/dist/tracers/tracer_langchain.d.cts.map +1 -1
- package/dist/tracers/tracer_langchain.d.ts +2 -1
- package/dist/tracers/tracer_langchain.d.ts.map +1 -1
- package/dist/tracers/tracer_langchain.js +33 -10
- package/dist/tracers/tracer_langchain.js.map +1 -1
- package/dist/types/_internal.d.cts.map +1 -1
- package/dist/types/_internal.d.ts.map +1 -1
- package/dist/types/stream.cjs +8 -8
- package/dist/types/stream.js +3 -2
- package/dist/types/type-utils.d.cts +2 -1
- package/dist/types/type-utils.d.cts.map +1 -1
- package/dist/types/type-utils.d.ts +2 -1
- package/dist/types/type-utils.d.ts.map +1 -1
- package/dist/utils/async_caller.cjs +29 -22
- package/dist/utils/async_caller.cjs.map +1 -1
- package/dist/utils/async_caller.d.cts.map +1 -1
- package/dist/utils/async_caller.d.ts.map +1 -1
- package/dist/utils/async_caller.js +19 -14
- package/dist/utils/async_caller.js.map +1 -1
- package/dist/utils/callbacks.cjs +4 -6
- package/dist/utils/callbacks.cjs.map +1 -1
- package/dist/utils/callbacks.js +3 -5
- package/dist/utils/callbacks.js.map +1 -1
- package/dist/utils/chunk_array.cjs +9 -12
- package/dist/utils/chunk_array.cjs.map +1 -1
- package/dist/utils/chunk_array.d.cts.map +1 -1
- package/dist/utils/chunk_array.d.ts.map +1 -1
- package/dist/utils/chunk_array.js +4 -7
- package/dist/utils/chunk_array.js.map +1 -1
- package/dist/utils/context.cjs +104 -0
- package/dist/utils/context.cjs.map +1 -0
- package/dist/utils/context.d.cts +44 -0
- package/dist/utils/context.d.cts.map +1 -0
- package/dist/utils/context.d.ts +44 -0
- package/dist/utils/context.d.ts.map +1 -0
- package/dist/utils/context.js +98 -0
- package/dist/utils/context.js.map +1 -0
- package/dist/utils/env.cjs +14 -19
- package/dist/utils/env.cjs.map +1 -1
- package/dist/utils/env.d.cts.map +1 -1
- package/dist/utils/env.d.ts.map +1 -1
- package/dist/utils/env.js +9 -14
- package/dist/utils/env.js.map +1 -1
- package/dist/utils/event_source_parse.cjs +16 -17
- package/dist/utils/event_source_parse.cjs.map +1 -1
- package/dist/utils/event_source_parse.d.cts +2 -2
- package/dist/utils/event_source_parse.d.cts.map +1 -1
- package/dist/utils/event_source_parse.d.ts +2 -2
- package/dist/utils/event_source_parse.d.ts.map +1 -1
- package/dist/utils/event_source_parse.js +9 -11
- package/dist/utils/event_source_parse.js.map +1 -1
- package/dist/utils/fast-json-patch/index.cjs +5 -13
- package/dist/utils/fast-json-patch/index.cjs.map +1 -1
- package/dist/utils/fast-json-patch/index.js +6 -13
- package/dist/utils/fast-json-patch/index.js.map +1 -1
- package/dist/utils/fast-json-patch/src/core.cjs +16 -28
- package/dist/utils/fast-json-patch/src/core.cjs.map +1 -1
- package/dist/utils/fast-json-patch/src/core.d.cts +0 -1
- package/dist/utils/fast-json-patch/src/core.d.cts.map +1 -1
- package/dist/utils/fast-json-patch/src/core.d.ts +0 -1
- package/dist/utils/fast-json-patch/src/core.d.ts.map +1 -1
- package/dist/utils/fast-json-patch/src/core.js +10 -22
- package/dist/utils/fast-json-patch/src/core.js.map +1 -1
- package/dist/utils/fast-json-patch/src/duplex.cjs +8 -7
- package/dist/utils/fast-json-patch/src/duplex.cjs.map +1 -1
- package/dist/utils/fast-json-patch/src/duplex.d.cts +0 -1
- package/dist/utils/fast-json-patch/src/duplex.d.cts.map +1 -1
- package/dist/utils/fast-json-patch/src/duplex.d.ts +0 -1
- package/dist/utils/fast-json-patch/src/duplex.d.ts.map +1 -1
- package/dist/utils/fast-json-patch/src/duplex.js +6 -5
- package/dist/utils/fast-json-patch/src/duplex.js.map +1 -1
- package/dist/utils/fast-json-patch/src/helpers.cjs +5 -6
- package/dist/utils/fast-json-patch/src/helpers.cjs.map +1 -1
- package/dist/utils/fast-json-patch/src/helpers.js +5 -5
- package/dist/utils/fast-json-patch/src/helpers.js.map +1 -1
- package/dist/utils/format.cjs +8 -8
- package/dist/utils/format.d.cts.map +1 -1
- package/dist/utils/format.d.ts.map +1 -1
- package/dist/utils/format.js +3 -2
- package/dist/utils/function_calling.cjs +11 -12
- package/dist/utils/function_calling.cjs.map +1 -1
- package/dist/utils/function_calling.d.cts +0 -1
- package/dist/utils/function_calling.d.cts.map +1 -1
- package/dist/utils/function_calling.d.ts +0 -1
- package/dist/utils/function_calling.d.ts.map +1 -1
- package/dist/utils/function_calling.js +3 -5
- package/dist/utils/function_calling.js.map +1 -1
- package/dist/utils/hash.cjs +10 -11
- package/dist/utils/hash.d.cts +0 -1
- package/dist/utils/hash.d.cts.map +1 -1
- package/dist/utils/hash.d.ts +0 -1
- package/dist/utils/hash.d.ts.map +1 -1
- package/dist/utils/hash.js +3 -5
- package/dist/utils/is-network-error/index.cjs +3 -5
- package/dist/utils/is-network-error/index.cjs.map +1 -1
- package/dist/utils/is-network-error/index.js +3 -4
- package/dist/utils/is-network-error/index.js.map +1 -1
- package/dist/utils/js-sha256/hash.cjs +42 -37
- package/dist/utils/js-sha256/hash.cjs.map +1 -1
- package/dist/utils/js-sha256/hash.d.cts.map +1 -1
- package/dist/utils/js-sha256/hash.d.ts.map +1 -1
- package/dist/utils/js-sha256/hash.js +42 -36
- package/dist/utils/js-sha256/hash.js.map +1 -1
- package/dist/utils/json.cjs +1 -2
- package/dist/utils/json.cjs.map +1 -1
- package/dist/utils/json.d.cts.map +1 -1
- package/dist/utils/json.d.ts.map +1 -1
- package/dist/utils/json.js +1 -1
- package/dist/utils/json.js.map +1 -1
- package/dist/utils/json_patch.cjs +12 -13
- package/dist/utils/json_patch.js +3 -5
- package/dist/utils/json_schema.cjs +60 -37
- package/dist/utils/json_schema.cjs.map +1 -1
- package/dist/utils/json_schema.d.cts +4 -2
- package/dist/utils/json_schema.d.cts.map +1 -1
- package/dist/utils/json_schema.d.ts +4 -3
- package/dist/utils/json_schema.d.ts.map +1 -1
- package/dist/utils/json_schema.js +36 -14
- package/dist/utils/json_schema.js.map +1 -1
- package/dist/utils/math.cjs +16 -18
- package/dist/utils/math.cjs.map +1 -1
- package/dist/utils/math.d.cts.map +1 -1
- package/dist/utils/math.d.ts.map +1 -1
- package/dist/utils/math.js +9 -12
- package/dist/utils/math.js.map +1 -1
- package/dist/utils/ml-distance/distances.cjs +1 -2
- package/dist/utils/ml-distance/distances.cjs.map +1 -1
- package/dist/utils/ml-distance/distances.js +1 -1
- package/dist/utils/ml-distance/distances.js.map +1 -1
- package/dist/utils/ml-distance/similarities.cjs +1 -2
- package/dist/utils/ml-distance/similarities.cjs.map +1 -1
- package/dist/utils/ml-distance/similarities.d.cts.map +1 -1
- package/dist/utils/ml-distance/similarities.d.ts.map +1 -1
- package/dist/utils/ml-distance/similarities.js +1 -1
- package/dist/utils/ml-distance/similarities.js.map +1 -1
- package/dist/utils/ml-distance-euclidean/euclidean.cjs +1 -2
- package/dist/utils/ml-distance-euclidean/euclidean.cjs.map +1 -1
- package/dist/utils/ml-distance-euclidean/euclidean.js +1 -1
- package/dist/utils/ml-distance-euclidean/euclidean.js.map +1 -1
- package/dist/utils/namespace.cjs +62 -0
- package/dist/utils/namespace.cjs.map +1 -0
- package/dist/utils/namespace.d.cts +73 -0
- package/dist/utils/namespace.d.cts.map +1 -0
- package/dist/utils/namespace.d.ts +73 -0
- package/dist/utils/namespace.d.ts.map +1 -0
- package/dist/utils/namespace.js +62 -0
- package/dist/utils/namespace.js.map +1 -0
- package/dist/utils/p-retry/index.cjs +4 -5
- package/dist/utils/p-retry/index.cjs.map +1 -1
- package/dist/utils/p-retry/index.js +3 -4
- package/dist/utils/p-retry/index.js.map +1 -1
- package/dist/utils/sax-js/sax.cjs +29 -36
- package/dist/utils/sax-js/sax.cjs.map +1 -1
- package/dist/utils/sax-js/sax.js +29 -35
- package/dist/utils/sax-js/sax.js.map +1 -1
- package/dist/utils/signal.cjs +3 -4
- package/dist/utils/signal.cjs.map +1 -1
- package/dist/utils/signal.d.cts.map +1 -1
- package/dist/utils/signal.d.ts.map +1 -1
- package/dist/utils/signal.js +3 -3
- package/dist/utils/signal.js.map +1 -1
- package/dist/utils/ssrf.cjs +267 -0
- package/dist/utils/ssrf.cjs.map +1 -0
- package/dist/utils/ssrf.d.cts +52 -0
- package/dist/utils/ssrf.d.cts.map +1 -0
- package/dist/utils/ssrf.d.ts +52 -0
- package/dist/utils/ssrf.d.ts.map +1 -0
- package/dist/utils/ssrf.js +256 -0
- package/dist/utils/ssrf.js.map +1 -0
- package/dist/utils/standard_schema.cjs +41 -0
- package/dist/utils/standard_schema.cjs.map +1 -0
- package/dist/utils/standard_schema.d.cts +27 -0
- package/dist/utils/standard_schema.d.cts.map +1 -0
- package/dist/utils/standard_schema.d.ts +27 -0
- package/dist/utils/standard_schema.d.ts.map +1 -0
- package/dist/utils/standard_schema.js +33 -0
- package/dist/utils/standard_schema.js.map +1 -0
- package/dist/utils/stream.cjs +15 -16
- package/dist/utils/stream.cjs.map +1 -1
- package/dist/utils/stream.d.cts +2 -2
- package/dist/utils/stream.d.cts.map +1 -1
- package/dist/utils/stream.d.ts +2 -2
- package/dist/utils/stream.d.ts.map +1 -1
- package/dist/utils/stream.js +5 -7
- package/dist/utils/stream.js.map +1 -1
- package/dist/utils/testing/chat_models.cjs +10 -13
- package/dist/utils/testing/chat_models.cjs.map +1 -1
- package/dist/utils/testing/chat_models.d.cts.map +1 -1
- package/dist/utils/testing/chat_models.d.ts +0 -1
- package/dist/utils/testing/chat_models.d.ts.map +1 -1
- package/dist/utils/testing/chat_models.js +4 -7
- package/dist/utils/testing/chat_models.js.map +1 -1
- package/dist/utils/testing/embeddings.cjs +4 -7
- package/dist/utils/testing/embeddings.cjs.map +1 -1
- package/dist/utils/testing/embeddings.d.cts +0 -1
- package/dist/utils/testing/embeddings.d.cts.map +1 -1
- package/dist/utils/testing/embeddings.d.ts +0 -1
- package/dist/utils/testing/embeddings.d.ts.map +1 -1
- package/dist/utils/testing/embeddings.js +3 -6
- package/dist/utils/testing/embeddings.js.map +1 -1
- package/dist/utils/testing/index.cjs +19 -20
- package/dist/utils/testing/index.js +3 -5
- package/dist/utils/testing/llms.cjs +2 -3
- package/dist/utils/testing/llms.cjs.map +1 -1
- package/dist/utils/testing/llms.d.cts.map +1 -1
- package/dist/utils/testing/llms.d.ts.map +1 -1
- package/dist/utils/testing/llms.js +1 -2
- package/dist/utils/testing/llms.js.map +1 -1
- package/dist/utils/testing/message_history.cjs +6 -7
- package/dist/utils/testing/message_history.cjs.map +1 -1
- package/dist/utils/testing/message_history.d.cts.map +1 -1
- package/dist/utils/testing/message_history.d.ts +0 -1
- package/dist/utils/testing/message_history.d.ts.map +1 -1
- package/dist/utils/testing/message_history.js +2 -3
- package/dist/utils/testing/message_history.js.map +1 -1
- package/dist/utils/testing/output_parsers.cjs +2 -3
- package/dist/utils/testing/output_parsers.cjs.map +1 -1
- package/dist/utils/testing/output_parsers.d.cts +0 -1
- package/dist/utils/testing/output_parsers.d.cts.map +1 -1
- package/dist/utils/testing/output_parsers.d.ts +0 -1
- package/dist/utils/testing/output_parsers.d.ts.map +1 -1
- package/dist/utils/testing/output_parsers.js +1 -2
- package/dist/utils/testing/output_parsers.js.map +1 -1
- package/dist/utils/testing/retrievers.cjs +3 -4
- package/dist/utils/testing/retrievers.cjs.map +1 -1
- package/dist/utils/testing/retrievers.d.cts.map +1 -1
- package/dist/utils/testing/retrievers.d.ts.map +1 -1
- package/dist/utils/testing/retrievers.js +2 -3
- package/dist/utils/testing/retrievers.js.map +1 -1
- package/dist/utils/testing/runnables.cjs +2 -3
- package/dist/utils/testing/runnables.cjs.map +1 -1
- package/dist/utils/testing/runnables.d.cts.map +1 -1
- package/dist/utils/testing/runnables.d.ts.map +1 -1
- package/dist/utils/testing/runnables.js +1 -2
- package/dist/utils/testing/runnables.js.map +1 -1
- package/dist/utils/testing/tools.cjs +2 -3
- package/dist/utils/testing/tools.cjs.map +1 -1
- package/dist/utils/testing/tools.d.cts.map +1 -1
- package/dist/utils/testing/tools.d.ts.map +1 -1
- package/dist/utils/testing/tools.js +1 -2
- package/dist/utils/testing/tools.js.map +1 -1
- package/dist/utils/testing/tracers.cjs +2 -3
- package/dist/utils/testing/tracers.cjs.map +1 -1
- package/dist/utils/testing/tracers.d.cts.map +1 -1
- package/dist/utils/testing/tracers.d.ts.map +1 -1
- package/dist/utils/testing/tracers.js +1 -2
- package/dist/utils/testing/tracers.js.map +1 -1
- package/dist/utils/testing/vectorstores.cjs +10 -15
- package/dist/utils/testing/vectorstores.cjs.map +1 -1
- package/dist/utils/testing/vectorstores.d.cts +0 -1
- package/dist/utils/testing/vectorstores.d.cts.map +1 -1
- package/dist/utils/testing/vectorstores.d.ts +0 -1
- package/dist/utils/testing/vectorstores.d.ts.map +1 -1
- package/dist/utils/testing/vectorstores.js +8 -13
- package/dist/utils/testing/vectorstores.js.map +1 -1
- package/dist/utils/tiktoken.cjs +11 -12
- package/dist/utils/tiktoken.cjs.map +1 -1
- package/dist/utils/tiktoken.d.cts.map +1 -1
- package/dist/utils/tiktoken.d.ts.map +1 -1
- package/dist/utils/tiktoken.js +3 -5
- package/dist/utils/tiktoken.js.map +1 -1
- package/dist/utils/types/index.cjs +10 -11
- package/dist/utils/types/index.cjs.map +1 -1
- package/dist/utils/types/index.d.cts +2 -3
- package/dist/utils/types/index.d.cts.map +1 -1
- package/dist/utils/types/index.d.ts +2 -3
- package/dist/utils/types/index.d.ts.map +1 -1
- package/dist/utils/types/index.js +3 -5
- package/dist/utils/types/index.js.map +1 -1
- package/dist/utils/types/zod.cjs +20 -36
- package/dist/utils/types/zod.cjs.map +1 -1
- package/dist/utils/types/zod.d.cts +144 -33
- package/dist/utils/types/zod.d.cts.map +1 -1
- package/dist/utils/types/zod.d.ts +144 -33
- package/dist/utils/types/zod.d.ts.map +1 -1
- package/dist/utils/types/zod.js +18 -34
- package/dist/utils/types/zod.js.map +1 -1
- package/dist/utils/zod-to-json-schema/Options.cjs +1 -2
- package/dist/utils/zod-to-json-schema/Options.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/Options.d.cts +1 -0
- package/dist/utils/zod-to-json-schema/Options.d.ts +1 -3
- package/dist/utils/zod-to-json-schema/Options.js +1 -1
- package/dist/utils/zod-to-json-schema/Options.js.map +1 -1
- package/dist/utils/zod-to-json-schema/Refs.cjs +2 -3
- package/dist/utils/zod-to-json-schema/Refs.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/Refs.d.cts +1 -0
- package/dist/utils/zod-to-json-schema/Refs.d.ts +1 -3
- package/dist/utils/zod-to-json-schema/Refs.js +1 -2
- package/dist/utils/zod-to-json-schema/Refs.js.map +1 -1
- package/dist/utils/zod-to-json-schema/errorMessages.cjs +1 -2
- package/dist/utils/zod-to-json-schema/errorMessages.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/errorMessages.d.cts +0 -1
- package/dist/utils/zod-to-json-schema/errorMessages.d.cts.map +1 -1
- package/dist/utils/zod-to-json-schema/errorMessages.d.ts +0 -2
- package/dist/utils/zod-to-json-schema/errorMessages.d.ts.map +1 -1
- package/dist/utils/zod-to-json-schema/errorMessages.js +1 -1
- package/dist/utils/zod-to-json-schema/errorMessages.js.map +1 -1
- package/dist/utils/zod-to-json-schema/getRelativePath.cjs +1 -2
- package/dist/utils/zod-to-json-schema/getRelativePath.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/getRelativePath.js +1 -1
- package/dist/utils/zod-to-json-schema/getRelativePath.js.map +1 -1
- package/dist/utils/zod-to-json-schema/index.cjs +37 -37
- package/dist/utils/zod-to-json-schema/index.d.cts +24 -0
- package/dist/utils/zod-to-json-schema/index.d.ts +1 -14
- package/dist/utils/zod-to-json-schema/index.js +38 -37
- package/dist/utils/zod-to-json-schema/parseDef.cjs +5 -6
- package/dist/utils/zod-to-json-schema/parseDef.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parseDef.d.cts +1 -0
- package/dist/utils/zod-to-json-schema/parseDef.d.ts +1 -3
- package/dist/utils/zod-to-json-schema/parseDef.js +1 -2
- package/dist/utils/zod-to-json-schema/parseDef.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parseTypes.d.cts.map +1 -1
- package/dist/utils/zod-to-json-schema/parseTypes.d.ts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/any.cjs +2 -3
- package/dist/utils/zod-to-json-schema/parsers/any.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/any.d.cts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/any.d.ts +0 -2
- package/dist/utils/zod-to-json-schema/parsers/any.d.ts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/any.js +1 -2
- package/dist/utils/zod-to-json-schema/parsers/any.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/array.cjs +5 -6
- package/dist/utils/zod-to-json-schema/parsers/array.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/array.d.cts +0 -1
- package/dist/utils/zod-to-json-schema/parsers/array.d.cts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/array.d.ts +0 -3
- package/dist/utils/zod-to-json-schema/parsers/array.d.ts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/array.js +1 -2
- package/dist/utils/zod-to-json-schema/parsers/array.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/bigint.cjs +2 -3
- package/dist/utils/zod-to-json-schema/parsers/bigint.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/bigint.d.cts +0 -1
- package/dist/utils/zod-to-json-schema/parsers/bigint.d.cts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/bigint.d.ts +0 -3
- package/dist/utils/zod-to-json-schema/parsers/bigint.d.ts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/bigint.js +1 -2
- package/dist/utils/zod-to-json-schema/parsers/bigint.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/boolean.cjs +1 -2
- package/dist/utils/zod-to-json-schema/parsers/boolean.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/boolean.d.cts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/boolean.d.ts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/boolean.js +1 -1
- package/dist/utils/zod-to-json-schema/parsers/boolean.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/branded.cjs +2 -3
- package/dist/utils/zod-to-json-schema/parsers/branded.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/branded.d.cts +1 -0
- package/dist/utils/zod-to-json-schema/parsers/branded.d.ts +1 -3
- package/dist/utils/zod-to-json-schema/parsers/branded.js +1 -2
- package/dist/utils/zod-to-json-schema/parsers/branded.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/catch.cjs +2 -3
- package/dist/utils/zod-to-json-schema/parsers/catch.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/catch.d.cts +1 -0
- package/dist/utils/zod-to-json-schema/parsers/catch.d.ts +1 -3
- package/dist/utils/zod-to-json-schema/parsers/catch.js +1 -2
- package/dist/utils/zod-to-json-schema/parsers/catch.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/date.cjs +2 -3
- package/dist/utils/zod-to-json-schema/parsers/date.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/date.d.cts +0 -2
- package/dist/utils/zod-to-json-schema/parsers/date.d.cts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/date.d.ts +0 -4
- package/dist/utils/zod-to-json-schema/parsers/date.d.ts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/date.js +1 -2
- package/dist/utils/zod-to-json-schema/parsers/date.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/default.cjs +2 -3
- package/dist/utils/zod-to-json-schema/parsers/default.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/default.d.cts +1 -0
- package/dist/utils/zod-to-json-schema/parsers/default.d.ts +1 -3
- package/dist/utils/zod-to-json-schema/parsers/default.js +1 -2
- package/dist/utils/zod-to-json-schema/parsers/default.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/effects.cjs +3 -4
- package/dist/utils/zod-to-json-schema/parsers/effects.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/effects.d.cts +1 -0
- package/dist/utils/zod-to-json-schema/parsers/effects.d.ts +1 -3
- package/dist/utils/zod-to-json-schema/parsers/effects.js +1 -2
- package/dist/utils/zod-to-json-schema/parsers/effects.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/enum.cjs +1 -2
- package/dist/utils/zod-to-json-schema/parsers/enum.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/enum.d.cts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/enum.d.ts +0 -2
- package/dist/utils/zod-to-json-schema/parsers/enum.d.ts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/enum.js +1 -1
- package/dist/utils/zod-to-json-schema/parsers/enum.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/intersection.cjs +3 -4
- package/dist/utils/zod-to-json-schema/parsers/intersection.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/intersection.d.cts +0 -1
- package/dist/utils/zod-to-json-schema/parsers/intersection.d.cts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/intersection.d.ts +0 -3
- package/dist/utils/zod-to-json-schema/parsers/intersection.d.ts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/intersection.js +2 -3
- package/dist/utils/zod-to-json-schema/parsers/intersection.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/literal.cjs +1 -2
- package/dist/utils/zod-to-json-schema/parsers/literal.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/literal.d.cts +0 -1
- package/dist/utils/zod-to-json-schema/parsers/literal.d.cts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/literal.d.ts +0 -3
- package/dist/utils/zod-to-json-schema/parsers/literal.d.ts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/literal.js +1 -1
- package/dist/utils/zod-to-json-schema/parsers/literal.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/map.cjs +21 -24
- package/dist/utils/zod-to-json-schema/parsers/map.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/map.d.cts +0 -2
- package/dist/utils/zod-to-json-schema/parsers/map.d.cts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/map.d.ts +0 -4
- package/dist/utils/zod-to-json-schema/parsers/map.d.ts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/map.js +18 -21
- package/dist/utils/zod-to-json-schema/parsers/map.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/nativeEnum.cjs +3 -5
- package/dist/utils/zod-to-json-schema/parsers/nativeEnum.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/nativeEnum.d.cts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/nativeEnum.d.ts +0 -2
- package/dist/utils/zod-to-json-schema/parsers/nativeEnum.d.ts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/nativeEnum.js +3 -4
- package/dist/utils/zod-to-json-schema/parsers/nativeEnum.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/never.cjs +2 -3
- package/dist/utils/zod-to-json-schema/parsers/never.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/never.d.cts +0 -1
- package/dist/utils/zod-to-json-schema/parsers/never.d.cts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/never.d.ts +0 -2
- package/dist/utils/zod-to-json-schema/parsers/never.d.ts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/never.js +1 -2
- package/dist/utils/zod-to-json-schema/parsers/never.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/null.cjs +1 -2
- package/dist/utils/zod-to-json-schema/parsers/null.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/null.d.cts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/null.d.ts +0 -2
- package/dist/utils/zod-to-json-schema/parsers/null.d.ts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/null.js +1 -1
- package/dist/utils/zod-to-json-schema/parsers/null.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/nullable.cjs +8 -9
- package/dist/utils/zod-to-json-schema/parsers/nullable.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/nullable.d.cts +0 -1
- package/dist/utils/zod-to-json-schema/parsers/nullable.d.cts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/nullable.d.ts +0 -3
- package/dist/utils/zod-to-json-schema/parsers/nullable.d.ts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/nullable.js +6 -7
- package/dist/utils/zod-to-json-schema/parsers/nullable.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/number.cjs +2 -3
- package/dist/utils/zod-to-json-schema/parsers/number.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/number.d.cts +0 -1
- package/dist/utils/zod-to-json-schema/parsers/number.d.cts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/number.d.ts +0 -3
- package/dist/utils/zod-to-json-schema/parsers/number.d.ts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/number.js +1 -2
- package/dist/utils/zod-to-json-schema/parsers/number.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/object.cjs +2 -3
- package/dist/utils/zod-to-json-schema/parsers/object.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/object.d.cts +0 -1
- package/dist/utils/zod-to-json-schema/parsers/object.d.cts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/object.d.ts +0 -3
- package/dist/utils/zod-to-json-schema/parsers/object.d.ts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/object.js +1 -2
- package/dist/utils/zod-to-json-schema/parsers/object.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/optional.cjs +3 -4
- package/dist/utils/zod-to-json-schema/parsers/optional.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/optional.d.cts +1 -0
- package/dist/utils/zod-to-json-schema/parsers/optional.d.ts +1 -3
- package/dist/utils/zod-to-json-schema/parsers/optional.js +1 -2
- package/dist/utils/zod-to-json-schema/parsers/optional.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/pipeline.cjs +4 -6
- package/dist/utils/zod-to-json-schema/parsers/pipeline.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/pipeline.d.cts +1 -0
- package/dist/utils/zod-to-json-schema/parsers/pipeline.d.ts +1 -4
- package/dist/utils/zod-to-json-schema/parsers/pipeline.js +3 -5
- package/dist/utils/zod-to-json-schema/parsers/pipeline.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/promise.cjs +2 -3
- package/dist/utils/zod-to-json-schema/parsers/promise.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/promise.d.cts +1 -0
- package/dist/utils/zod-to-json-schema/parsers/promise.d.ts +1 -3
- package/dist/utils/zod-to-json-schema/parsers/promise.js +1 -2
- package/dist/utils/zod-to-json-schema/parsers/promise.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/readonly.cjs +2 -3
- package/dist/utils/zod-to-json-schema/parsers/readonly.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/readonly.d.cts +1 -0
- package/dist/utils/zod-to-json-schema/parsers/readonly.d.ts +1 -3
- package/dist/utils/zod-to-json-schema/parsers/readonly.js +1 -2
- package/dist/utils/zod-to-json-schema/parsers/readonly.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/record.cjs +9 -10
- package/dist/utils/zod-to-json-schema/parsers/record.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/record.d.cts +0 -1
- package/dist/utils/zod-to-json-schema/parsers/record.d.cts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/record.d.ts +0 -3
- package/dist/utils/zod-to-json-schema/parsers/record.d.ts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/record.js +3 -4
- package/dist/utils/zod-to-json-schema/parsers/record.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/set.cjs +7 -9
- package/dist/utils/zod-to-json-schema/parsers/set.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/set.d.cts +0 -1
- package/dist/utils/zod-to-json-schema/parsers/set.d.cts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/set.d.ts +0 -3
- package/dist/utils/zod-to-json-schema/parsers/set.d.ts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/set.js +5 -7
- package/dist/utils/zod-to-json-schema/parsers/set.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/string.cjs +2 -3
- package/dist/utils/zod-to-json-schema/parsers/string.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/string.d.cts +0 -2
- package/dist/utils/zod-to-json-schema/parsers/string.d.cts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/string.d.ts +0 -4
- package/dist/utils/zod-to-json-schema/parsers/string.d.ts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/string.js +1 -2
- package/dist/utils/zod-to-json-schema/parsers/string.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/tuple.cjs +2 -3
- package/dist/utils/zod-to-json-schema/parsers/tuple.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/tuple.d.cts +0 -1
- package/dist/utils/zod-to-json-schema/parsers/tuple.d.cts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/tuple.d.ts +0 -3
- package/dist/utils/zod-to-json-schema/parsers/tuple.d.ts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/tuple.js +1 -2
- package/dist/utils/zod-to-json-schema/parsers/tuple.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/undefined.cjs +2 -3
- package/dist/utils/zod-to-json-schema/parsers/undefined.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/undefined.d.cts +0 -1
- package/dist/utils/zod-to-json-schema/parsers/undefined.d.cts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/undefined.d.ts +0 -2
- package/dist/utils/zod-to-json-schema/parsers/undefined.d.ts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/undefined.js +1 -2
- package/dist/utils/zod-to-json-schema/parsers/undefined.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/union.cjs +5 -9
- package/dist/utils/zod-to-json-schema/parsers/union.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/union.d.cts +1 -2
- package/dist/utils/zod-to-json-schema/parsers/union.d.cts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/union.d.ts +0 -3
- package/dist/utils/zod-to-json-schema/parsers/union.d.ts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/union.js +4 -8
- package/dist/utils/zod-to-json-schema/parsers/union.js.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/unknown.cjs +2 -3
- package/dist/utils/zod-to-json-schema/parsers/unknown.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/unknown.d.cts +0 -1
- package/dist/utils/zod-to-json-schema/parsers/unknown.d.cts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/unknown.d.ts +0 -2
- package/dist/utils/zod-to-json-schema/parsers/unknown.d.ts.map +1 -1
- package/dist/utils/zod-to-json-schema/parsers/unknown.js +1 -2
- package/dist/utils/zod-to-json-schema/parsers/unknown.js.map +1 -1
- package/dist/utils/zod-to-json-schema/selectParser.cjs +34 -35
- package/dist/utils/zod-to-json-schema/selectParser.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/selectParser.d.cts +1 -0
- package/dist/utils/zod-to-json-schema/selectParser.d.ts +0 -2
- package/dist/utils/zod-to-json-schema/selectParser.js +2 -3
- package/dist/utils/zod-to-json-schema/selectParser.js.map +1 -1
- package/dist/utils/zod-to-json-schema/zodToJsonSchema.cjs +7 -8
- package/dist/utils/zod-to-json-schema/zodToJsonSchema.cjs.map +1 -1
- package/dist/utils/zod-to-json-schema/zodToJsonSchema.d.cts +1 -0
- package/dist/utils/zod-to-json-schema/zodToJsonSchema.d.ts +1 -3
- package/dist/utils/zod-to-json-schema/zodToJsonSchema.js +4 -5
- package/dist/utils/zod-to-json-schema/zodToJsonSchema.js.map +1 -1
- package/dist/vectorstores.cjs +12 -14
- package/dist/vectorstores.cjs.map +1 -1
- package/dist/vectorstores.d.cts +0 -1
- package/dist/vectorstores.d.cts.map +1 -1
- package/dist/vectorstores.d.ts +0 -1
- package/dist/vectorstores.d.ts.map +1 -1
- package/dist/vectorstores.js +4 -7
- package/dist/vectorstores.js.map +1 -1
- package/package.json +116 -19
- package/dist/_virtual/rolldown_runtime.js +0 -11
|
@@ -1,34 +1,57 @@
|
|
|
1
|
-
|
|
2
|
-
const
|
|
3
|
-
const
|
|
4
|
-
require(
|
|
5
|
-
|
|
6
|
-
const
|
|
7
|
-
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_runtime = require("../_virtual/_rolldown/runtime.cjs");
|
|
3
|
+
const require_zod = require("./types/zod.cjs");
|
|
4
|
+
const require_zodToJsonSchema = require("./zod-to-json-schema/zodToJsonSchema.cjs");
|
|
5
|
+
require("./zod-to-json-schema/index.cjs");
|
|
6
|
+
const require_utils_standard_schema = require("./standard_schema.cjs");
|
|
7
|
+
let zod_v4_core = require("zod/v4/core");
|
|
8
|
+
let _cfworker_json_schema = require("@cfworker/json-schema");
|
|
8
9
|
//#region src/utils/json_schema.ts
|
|
9
|
-
var json_schema_exports = {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
deepCompareStrict: () => __cfworker_json_schema.deepCompareStrict,
|
|
10
|
+
var json_schema_exports = /* @__PURE__ */ require_runtime.__exportAll({
|
|
11
|
+
Validator: () => _cfworker_json_schema.Validator,
|
|
12
|
+
deepCompareStrict: () => _cfworker_json_schema.deepCompareStrict,
|
|
13
13
|
toJsonSchema: () => toJsonSchema,
|
|
14
14
|
validatesOnlyStrings: () => validatesOnlyStrings
|
|
15
15
|
});
|
|
16
16
|
/**
|
|
17
|
-
*
|
|
17
|
+
* WeakMap cache for Zod/Standard-Schema → JSON Schema conversions.
|
|
18
|
+
*
|
|
19
|
+
* Keyed on the schema object reference. Since Zod schemas are immutable and
|
|
20
|
+
* the same `tool.schema` reference is passed on every LLM call, this
|
|
21
|
+
* eliminates redundant serializations. For example, an agent with 6 tools
|
|
22
|
+
* doing 15 steps across 3 parallel subagents would otherwise run 270
|
|
23
|
+
* identical conversions per invocation.
|
|
24
|
+
*
|
|
25
|
+
* Only used when no custom `params` are passed (the common case for tool
|
|
26
|
+
* binding). WeakMap ensures cached entries are GC'd when the schema goes
|
|
27
|
+
* out of scope.
|
|
28
|
+
*
|
|
29
|
+
* @internal
|
|
30
|
+
*/
|
|
31
|
+
const _jsonSchemaCache = /* @__PURE__ */ new WeakMap();
|
|
32
|
+
/**
|
|
33
|
+
* Converts a Standard JSON schema, Zod schema or JSON schema to a JSON schema.
|
|
34
|
+
* Results are cached by schema reference when no custom params are passed.
|
|
18
35
|
* @param schema - The schema to convert.
|
|
19
36
|
* @param params - The parameters to pass to the toJSONSchema function.
|
|
20
37
|
* @returns The converted schema.
|
|
21
38
|
*/
|
|
22
39
|
function toJsonSchema(schema, params) {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
return (0, zod_v4_core.toJSONSchema)(strictSchema, params);
|
|
28
|
-
} else return (0, zod_v4_core.toJSONSchema)(schema, params);
|
|
40
|
+
const canCache = !params && schema != null && typeof schema === "object";
|
|
41
|
+
if (canCache) {
|
|
42
|
+
const cached = _jsonSchemaCache.get(schema);
|
|
43
|
+
if (cached) return cached;
|
|
29
44
|
}
|
|
30
|
-
|
|
31
|
-
|
|
45
|
+
let result;
|
|
46
|
+
if (require_utils_standard_schema.isStandardJsonSchema(schema) && !require_zod.isZodSchemaV4(schema)) result = schema["~standard"].jsonSchema.input({ target: "draft-07" });
|
|
47
|
+
else if (require_zod.isZodSchemaV4(schema)) {
|
|
48
|
+
const inputSchema = require_zod.interopZodTransformInputSchema(schema, true);
|
|
49
|
+
if (require_zod.isZodObjectV4(inputSchema)) result = (0, zod_v4_core.toJSONSchema)(require_zod.interopZodObjectStrict(inputSchema, true), params);
|
|
50
|
+
else result = (0, zod_v4_core.toJSONSchema)(schema, params);
|
|
51
|
+
} else if (require_zod.isZodSchemaV3(schema)) result = require_zodToJsonSchema.zodToJsonSchema(schema);
|
|
52
|
+
else result = schema;
|
|
53
|
+
if (canCache && result != null && typeof result === "object") _jsonSchemaCache.set(schema, result);
|
|
54
|
+
return result;
|
|
32
55
|
}
|
|
33
56
|
/**
|
|
34
57
|
* Validates if a JSON schema validates only strings. May return false negatives in some edge cases
|
|
@@ -54,32 +77,32 @@ function validatesOnlyStrings(schema) {
|
|
|
54
77
|
if ("not" in schema) return false;
|
|
55
78
|
if ("$ref" in schema && typeof schema.$ref === "string") {
|
|
56
79
|
const ref = schema.$ref;
|
|
57
|
-
const resolved = (0,
|
|
80
|
+
const resolved = (0, _cfworker_json_schema.dereference)(schema);
|
|
58
81
|
if (resolved[ref]) return validatesOnlyStrings(resolved[ref]);
|
|
59
82
|
return false;
|
|
60
83
|
}
|
|
61
84
|
return false;
|
|
62
85
|
}
|
|
63
|
-
|
|
64
86
|
//#endregion
|
|
65
|
-
Object.defineProperty(exports,
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
87
|
+
Object.defineProperty(exports, "Validator", {
|
|
88
|
+
enumerable: true,
|
|
89
|
+
get: function() {
|
|
90
|
+
return _cfworker_json_schema.Validator;
|
|
91
|
+
}
|
|
70
92
|
});
|
|
71
|
-
Object.defineProperty(exports,
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
93
|
+
Object.defineProperty(exports, "deepCompareStrict", {
|
|
94
|
+
enumerable: true,
|
|
95
|
+
get: function() {
|
|
96
|
+
return _cfworker_json_schema.deepCompareStrict;
|
|
97
|
+
}
|
|
76
98
|
});
|
|
77
|
-
Object.defineProperty(exports,
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
99
|
+
Object.defineProperty(exports, "json_schema_exports", {
|
|
100
|
+
enumerable: true,
|
|
101
|
+
get: function() {
|
|
102
|
+
return json_schema_exports;
|
|
103
|
+
}
|
|
82
104
|
});
|
|
83
105
|
exports.toJsonSchema = toJsonSchema;
|
|
84
106
|
exports.validatesOnlyStrings = validatesOnlyStrings;
|
|
107
|
+
|
|
85
108
|
//# sourceMappingURL=json_schema.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json_schema.cjs","names":["
|
|
1
|
+
{"version":3,"file":"json_schema.cjs","names":["isStandardJsonSchema","isZodSchemaV4","interopZodTransformInputSchema","isZodObjectV4","interopZodObjectStrict","isZodSchemaV3","zodToJsonSchema"],"sources":["../../src/utils/json_schema.ts"],"sourcesContent":["import { toJSONSchema, type $ZodType } from \"zod/v4/core\";\nimport { dereference, type Schema } from \"@cfworker/json-schema\";\nimport {\n isZodSchemaV3,\n isZodSchemaV4,\n InteropZodType,\n interopZodObjectStrict,\n isZodObjectV4,\n interopZodTransformInputSchema,\n} from \"./types/zod.js\";\nimport {\n type JsonSchema7Type as JSONSchema,\n zodToJsonSchema,\n} from \"./zod-to-json-schema/index.js\";\nimport { StandardJSONSchemaV1 } from \"@standard-schema/spec\";\nimport { isStandardJsonSchema } from \"./standard_schema.js\";\n\nexport { deepCompareStrict, Validator } from \"@cfworker/json-schema\";\n\nexport type ToJSONSchemaParams = NonNullable<\n Parameters<typeof toJSONSchema>[1]\n>;\n\n/**\n * WeakMap cache for Zod/Standard-Schema → JSON Schema conversions.\n *\n * Keyed on the schema object reference. Since Zod schemas are immutable and\n * the same `tool.schema` reference is passed on every LLM call, this\n * eliminates redundant serializations. For example, an agent with 6 tools\n * doing 15 steps across 3 parallel subagents would otherwise run 270\n * identical conversions per invocation.\n *\n * Only used when no custom `params` are passed (the common case for tool\n * binding). WeakMap ensures cached entries are GC'd when the schema goes\n * out of scope.\n *\n * @internal\n */\nconst _jsonSchemaCache = new WeakMap<object, JSONSchema>();\n\n/**\n * Converts a Standard JSON schema, Zod schema or JSON schema to a JSON schema.\n * Results are cached by schema reference when no custom params are passed.\n * @param schema - The schema to convert.\n * @param params - The parameters to pass to the toJSONSchema function.\n * @returns The converted schema.\n */\nexport function toJsonSchema(\n schema: StandardJSONSchemaV1 | InteropZodType | JSONSchema,\n params?: ToJSONSchemaParams\n): JSONSchema {\n // Cache when no custom params are passed (the default for tool binding).\n // Params can change the output (e.g., different target draft), so we\n // bypass the cache when they're provided.\n const canCache = !params && schema != null && typeof schema === \"object\";\n\n if (canCache) {\n const cached = _jsonSchemaCache.get(schema);\n if (cached) return cached;\n }\n\n let result: JSONSchema;\n\n if (isStandardJsonSchema(schema) && !isZodSchemaV4(schema)) {\n result = schema[\"~standard\"].jsonSchema.input({\n target: \"draft-07\",\n }) as JSONSchema;\n } else if (isZodSchemaV4(schema)) {\n const inputSchema = interopZodTransformInputSchema(schema, true);\n if (isZodObjectV4(inputSchema)) {\n const strictSchema = interopZodObjectStrict(inputSchema, true);\n result = toJSONSchema(strictSchema as unknown as $ZodType, params);\n } else {\n result = toJSONSchema(schema as unknown as $ZodType, params);\n }\n } else if (isZodSchemaV3(schema)) {\n result = zodToJsonSchema(schema as never);\n } else {\n result = schema as JSONSchema;\n }\n\n if (canCache && result != null && typeof result === \"object\") {\n _jsonSchemaCache.set(schema, result);\n }\n\n return result;\n}\n\n/**\n * Validates if a JSON schema validates only strings. May return false negatives in some edge cases\n * (like recursive or unresolvable refs).\n *\n * @param schema - The schema to validate.\n * @returns `true` if the schema validates only strings, `false` otherwise.\n */\nexport function validatesOnlyStrings(schema: unknown): boolean {\n // Null, undefined, or empty schema\n if (\n !schema ||\n typeof schema !== \"object\" ||\n Object.keys(schema).length === 0 ||\n Array.isArray(schema)\n ) {\n return false; // Validates anything, not just strings\n }\n\n // Explicit type constraint\n if (\"type\" in schema) {\n if (typeof schema.type === \"string\") {\n return schema.type === \"string\";\n }\n\n if (Array.isArray(schema.type)) {\n // not sure why someone would do `\"type\": [\"string\"]` or especially `\"type\": [\"string\",\n // \"string\", \"string\", ...]` but we're not here to judge\n return schema.type.every((t) => t === \"string\");\n }\n return false; // Invalid or non-string type\n }\n\n // Enum with only string values\n if (\"enum\" in schema) {\n return (\n Array.isArray(schema.enum) &&\n schema.enum.length > 0 &&\n schema.enum.every((val) => typeof val === \"string\")\n );\n }\n\n // String constant\n if (\"const\" in schema) {\n return typeof schema.const === \"string\";\n }\n\n // Schema combinations\n if (\"allOf\" in schema && Array.isArray(schema.allOf)) {\n // If any subschema validates only strings, then the overall schema validates only strings\n return schema.allOf.some((subschema) => validatesOnlyStrings(subschema));\n }\n\n if (\n (\"anyOf\" in schema && Array.isArray(schema.anyOf)) ||\n (\"oneOf\" in schema && Array.isArray(schema.oneOf))\n ) {\n const subschemas = (\n \"anyOf\" in schema ? schema.anyOf : schema.oneOf\n ) as unknown[];\n\n // All subschemas must validate only strings\n return (\n subschemas.length > 0 &&\n subschemas.every((subschema) => validatesOnlyStrings(subschema))\n );\n }\n\n // We're not going to try on this one, it's too complex - we just assume if it has a \"not\" key and hasn't matched one of the above checks, it's not a string schema.\n if (\"not\" in schema) {\n return false; // The not case can validate non-strings\n }\n\n if (\"$ref\" in schema && typeof schema.$ref === \"string\") {\n const ref = schema.$ref as string;\n const resolved = dereference(schema as Schema);\n if (resolved[ref]) {\n return validatesOnlyStrings(resolved[ref]);\n }\n return false;\n }\n\n // ignore recursive refs and other cases where type is omitted for now\n // ignore other cases for now where type is omitted\n\n return false;\n}\n\n// Re-export of the types used throughout langchain for json schema serialization.\n// The plan is to eventually nix zod-to-json-schema altogether in place for\n// zod v4 / a more standardized way of serializing validated inputs, so its re-exported\n// here to remove the dependency on zod-to-json-schema in downstream packages until\n// a determination is made.\n\nexport {\n type JsonSchema7Type,\n type JsonSchema7Type as JSONSchema,\n type JsonSchema7ArrayType,\n type JsonSchema7ObjectType,\n type JsonSchema7StringType,\n type JsonSchema7NumberType,\n type JsonSchema7NullableType,\n} from \"./zod-to-json-schema/index.js\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsCA,MAAM,mCAAmB,IAAI,SAA6B;;;;;;;;AAS1D,SAAgB,aACd,QACA,QACY;CAIZ,MAAM,WAAW,CAAC,UAAU,UAAU,QAAQ,OAAO,WAAW;AAEhE,KAAI,UAAU;EACZ,MAAM,SAAS,iBAAiB,IAAI,OAAO;AAC3C,MAAI,OAAQ,QAAO;;CAGrB,IAAI;AAEJ,KAAIA,8BAAAA,qBAAqB,OAAO,IAAI,CAACC,YAAAA,cAAc,OAAO,CACxD,UAAS,OAAO,aAAa,WAAW,MAAM,EAC5C,QAAQ,YACT,CAAC;UACOA,YAAAA,cAAc,OAAO,EAAE;EAChC,MAAM,cAAcC,YAAAA,+BAA+B,QAAQ,KAAK;AAChE,MAAIC,YAAAA,cAAc,YAAY,CAE5B,WAAA,GAAA,YAAA,cADqBC,YAAAA,uBAAuB,aAAa,KAAK,EACH,OAAO;MAElE,WAAA,GAAA,YAAA,cAAsB,QAA+B,OAAO;YAErDC,YAAAA,cAAc,OAAO,CAC9B,UAASC,wBAAAA,gBAAgB,OAAgB;KAEzC,UAAS;AAGX,KAAI,YAAY,UAAU,QAAQ,OAAO,WAAW,SAClD,kBAAiB,IAAI,QAAQ,OAAO;AAGtC,QAAO;;;;;;;;;AAUT,SAAgB,qBAAqB,QAA0B;AAE7D,KACE,CAAC,UACD,OAAO,WAAW,YAClB,OAAO,KAAK,OAAO,CAAC,WAAW,KAC/B,MAAM,QAAQ,OAAO,CAErB,QAAO;AAIT,KAAI,UAAU,QAAQ;AACpB,MAAI,OAAO,OAAO,SAAS,SACzB,QAAO,OAAO,SAAS;AAGzB,MAAI,MAAM,QAAQ,OAAO,KAAK,CAG5B,QAAO,OAAO,KAAK,OAAO,MAAM,MAAM,SAAS;AAEjD,SAAO;;AAIT,KAAI,UAAU,OACZ,QACE,MAAM,QAAQ,OAAO,KAAK,IAC1B,OAAO,KAAK,SAAS,KACrB,OAAO,KAAK,OAAO,QAAQ,OAAO,QAAQ,SAAS;AAKvD,KAAI,WAAW,OACb,QAAO,OAAO,OAAO,UAAU;AAIjC,KAAI,WAAW,UAAU,MAAM,QAAQ,OAAO,MAAM,CAElD,QAAO,OAAO,MAAM,MAAM,cAAc,qBAAqB,UAAU,CAAC;AAG1E,KACG,WAAW,UAAU,MAAM,QAAQ,OAAO,MAAM,IAChD,WAAW,UAAU,MAAM,QAAQ,OAAO,MAAM,EACjD;EACA,MAAM,aACJ,WAAW,SAAS,OAAO,QAAQ,OAAO;AAI5C,SACE,WAAW,SAAS,KACpB,WAAW,OAAO,cAAc,qBAAqB,UAAU,CAAC;;AAKpE,KAAI,SAAS,OACX,QAAO;AAGT,KAAI,UAAU,UAAU,OAAO,OAAO,SAAS,UAAU;EACvD,MAAM,MAAM,OAAO;EACnB,MAAM,YAAA,GAAA,sBAAA,aAAuB,OAAiB;AAC9C,MAAI,SAAS,KACX,QAAO,qBAAqB,SAAS,KAAK;AAE5C,SAAO;;AAMT,QAAO"}
|
|
@@ -5,18 +5,20 @@ import { JsonSchema7StringType } from "./zod-to-json-schema/parsers/string.cjs";
|
|
|
5
5
|
import { JsonSchema7NullableType } from "./zod-to-json-schema/parsers/nullable.cjs";
|
|
6
6
|
import { JsonSchema7ObjectType } from "./zod-to-json-schema/parsers/object.cjs";
|
|
7
7
|
import { JsonSchema7Type } from "./zod-to-json-schema/parseTypes.cjs";
|
|
8
|
+
import { StandardJSONSchemaV1 } from "@standard-schema/spec";
|
|
8
9
|
import { toJSONSchema } from "zod/v4/core";
|
|
9
10
|
import { Validator, deepCompareStrict } from "@cfworker/json-schema";
|
|
10
11
|
|
|
11
12
|
//#region src/utils/json_schema.d.ts
|
|
12
13
|
type ToJSONSchemaParams = NonNullable<Parameters<typeof toJSONSchema>[1]>;
|
|
13
14
|
/**
|
|
14
|
-
* Converts a Zod schema or JSON schema to a JSON schema.
|
|
15
|
+
* Converts a Standard JSON schema, Zod schema or JSON schema to a JSON schema.
|
|
16
|
+
* Results are cached by schema reference when no custom params are passed.
|
|
15
17
|
* @param schema - The schema to convert.
|
|
16
18
|
* @param params - The parameters to pass to the toJSONSchema function.
|
|
17
19
|
* @returns The converted schema.
|
|
18
20
|
*/
|
|
19
|
-
declare function toJsonSchema(schema: InteropZodType | JsonSchema7Type, params?: ToJSONSchemaParams): JsonSchema7Type;
|
|
21
|
+
declare function toJsonSchema(schema: StandardJSONSchemaV1 | InteropZodType | JsonSchema7Type, params?: ToJSONSchemaParams): JsonSchema7Type;
|
|
20
22
|
/**
|
|
21
23
|
* Validates if a JSON schema validates only strings. May return false negatives in some edge cases
|
|
22
24
|
* (like recursive or unresolvable refs).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json_schema.d.cts","names":[
|
|
1
|
+
{"version":3,"file":"json_schema.d.cts","names":[],"sources":["../../src/utils/json_schema.ts"],"mappings":";;;;;;;;;;;;KAmBY,kBAAA,GAAqB,WAAA,CAC/B,UAAA,QAAkB,YAAA;;;;;;;;iBA2BJ,YAAA,CACd,MAAA,EAAQ,oBAAA,GAAuB,cAAA,GAAiB,eAAA,EAChD,MAAA,GAAS,kBAAA,GACR,eAAA;;;;;;;;iBA6Ca,oBAAA,CAAqB,MAAA"}
|
|
@@ -5,19 +5,20 @@ import { JsonSchema7StringType } from "./zod-to-json-schema/parsers/string.js";
|
|
|
5
5
|
import { JsonSchema7NullableType } from "./zod-to-json-schema/parsers/nullable.js";
|
|
6
6
|
import { JsonSchema7ObjectType } from "./zod-to-json-schema/parsers/object.js";
|
|
7
7
|
import { JsonSchema7Type } from "./zod-to-json-schema/parseTypes.js";
|
|
8
|
-
import "./zod-to-json-schema/index.js";
|
|
9
8
|
import { toJSONSchema } from "zod/v4/core";
|
|
10
9
|
import { Validator, deepCompareStrict } from "@cfworker/json-schema";
|
|
10
|
+
import { StandardJSONSchemaV1 } from "@standard-schema/spec";
|
|
11
11
|
|
|
12
12
|
//#region src/utils/json_schema.d.ts
|
|
13
13
|
type ToJSONSchemaParams = NonNullable<Parameters<typeof toJSONSchema>[1]>;
|
|
14
14
|
/**
|
|
15
|
-
* Converts a Zod schema or JSON schema to a JSON schema.
|
|
15
|
+
* Converts a Standard JSON schema, Zod schema or JSON schema to a JSON schema.
|
|
16
|
+
* Results are cached by schema reference when no custom params are passed.
|
|
16
17
|
* @param schema - The schema to convert.
|
|
17
18
|
* @param params - The parameters to pass to the toJSONSchema function.
|
|
18
19
|
* @returns The converted schema.
|
|
19
20
|
*/
|
|
20
|
-
declare function toJsonSchema(schema: InteropZodType | JsonSchema7Type, params?: ToJSONSchemaParams): JsonSchema7Type;
|
|
21
|
+
declare function toJsonSchema(schema: StandardJSONSchemaV1 | InteropZodType | JsonSchema7Type, params?: ToJSONSchemaParams): JsonSchema7Type;
|
|
21
22
|
/**
|
|
22
23
|
* Validates if a JSON schema validates only strings. May return false negatives in some edge cases
|
|
23
24
|
* (like recursive or unresolvable refs).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json_schema.d.ts","names":[
|
|
1
|
+
{"version":3,"file":"json_schema.d.ts","names":[],"sources":["../../src/utils/json_schema.ts"],"mappings":";;;;;;;;;;;;KAmBY,kBAAA,GAAqB,WAAA,CAC/B,UAAA,QAAkB,YAAA;;;;;;;;iBA2BJ,YAAA,CACd,MAAA,EAAQ,oBAAA,GAAuB,cAAA,GAAiB,eAAA,EAChD,MAAA,GAAS,kBAAA,GACR,eAAA;;;;;;;;iBA6Ca,oBAAA,CAAqB,MAAA"}
|
|
@@ -1,34 +1,56 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { __exportAll } from "../_virtual/_rolldown/runtime.js";
|
|
2
2
|
import { interopZodObjectStrict, interopZodTransformInputSchema, isZodObjectV4, isZodSchemaV3, isZodSchemaV4 } from "./types/zod.js";
|
|
3
3
|
import { zodToJsonSchema } from "./zod-to-json-schema/zodToJsonSchema.js";
|
|
4
4
|
import "./zod-to-json-schema/index.js";
|
|
5
|
+
import { isStandardJsonSchema } from "./standard_schema.js";
|
|
5
6
|
import { toJSONSchema } from "zod/v4/core";
|
|
6
7
|
import { Validator, deepCompareStrict, dereference } from "@cfworker/json-schema";
|
|
7
|
-
|
|
8
8
|
//#region src/utils/json_schema.ts
|
|
9
|
-
var json_schema_exports = {
|
|
10
|
-
__export(json_schema_exports, {
|
|
9
|
+
var json_schema_exports = /* @__PURE__ */ __exportAll({
|
|
11
10
|
Validator: () => Validator,
|
|
12
11
|
deepCompareStrict: () => deepCompareStrict,
|
|
13
12
|
toJsonSchema: () => toJsonSchema,
|
|
14
13
|
validatesOnlyStrings: () => validatesOnlyStrings
|
|
15
14
|
});
|
|
16
15
|
/**
|
|
17
|
-
*
|
|
16
|
+
* WeakMap cache for Zod/Standard-Schema → JSON Schema conversions.
|
|
17
|
+
*
|
|
18
|
+
* Keyed on the schema object reference. Since Zod schemas are immutable and
|
|
19
|
+
* the same `tool.schema` reference is passed on every LLM call, this
|
|
20
|
+
* eliminates redundant serializations. For example, an agent with 6 tools
|
|
21
|
+
* doing 15 steps across 3 parallel subagents would otherwise run 270
|
|
22
|
+
* identical conversions per invocation.
|
|
23
|
+
*
|
|
24
|
+
* Only used when no custom `params` are passed (the common case for tool
|
|
25
|
+
* binding). WeakMap ensures cached entries are GC'd when the schema goes
|
|
26
|
+
* out of scope.
|
|
27
|
+
*
|
|
28
|
+
* @internal
|
|
29
|
+
*/
|
|
30
|
+
const _jsonSchemaCache = /* @__PURE__ */ new WeakMap();
|
|
31
|
+
/**
|
|
32
|
+
* Converts a Standard JSON schema, Zod schema or JSON schema to a JSON schema.
|
|
33
|
+
* Results are cached by schema reference when no custom params are passed.
|
|
18
34
|
* @param schema - The schema to convert.
|
|
19
35
|
* @param params - The parameters to pass to the toJSONSchema function.
|
|
20
36
|
* @returns The converted schema.
|
|
21
37
|
*/
|
|
22
38
|
function toJsonSchema(schema, params) {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
return toJSONSchema(strictSchema, params);
|
|
28
|
-
} else return toJSONSchema(schema, params);
|
|
39
|
+
const canCache = !params && schema != null && typeof schema === "object";
|
|
40
|
+
if (canCache) {
|
|
41
|
+
const cached = _jsonSchemaCache.get(schema);
|
|
42
|
+
if (cached) return cached;
|
|
29
43
|
}
|
|
30
|
-
|
|
31
|
-
|
|
44
|
+
let result;
|
|
45
|
+
if (isStandardJsonSchema(schema) && !isZodSchemaV4(schema)) result = schema["~standard"].jsonSchema.input({ target: "draft-07" });
|
|
46
|
+
else if (isZodSchemaV4(schema)) {
|
|
47
|
+
const inputSchema = interopZodTransformInputSchema(schema, true);
|
|
48
|
+
if (isZodObjectV4(inputSchema)) result = toJSONSchema(interopZodObjectStrict(inputSchema, true), params);
|
|
49
|
+
else result = toJSONSchema(schema, params);
|
|
50
|
+
} else if (isZodSchemaV3(schema)) result = zodToJsonSchema(schema);
|
|
51
|
+
else result = schema;
|
|
52
|
+
if (canCache && result != null && typeof result === "object") _jsonSchemaCache.set(schema, result);
|
|
53
|
+
return result;
|
|
32
54
|
}
|
|
33
55
|
/**
|
|
34
56
|
* Validates if a JSON schema validates only strings. May return false negatives in some edge cases
|
|
@@ -60,7 +82,7 @@ function validatesOnlyStrings(schema) {
|
|
|
60
82
|
}
|
|
61
83
|
return false;
|
|
62
84
|
}
|
|
63
|
-
|
|
64
85
|
//#endregion
|
|
65
86
|
export { Validator, deepCompareStrict, json_schema_exports, toJsonSchema, validatesOnlyStrings };
|
|
87
|
+
|
|
66
88
|
//# sourceMappingURL=json_schema.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json_schema.js","names":[
|
|
1
|
+
{"version":3,"file":"json_schema.js","names":[],"sources":["../../src/utils/json_schema.ts"],"sourcesContent":["import { toJSONSchema, type $ZodType } from \"zod/v4/core\";\nimport { dereference, type Schema } from \"@cfworker/json-schema\";\nimport {\n isZodSchemaV3,\n isZodSchemaV4,\n InteropZodType,\n interopZodObjectStrict,\n isZodObjectV4,\n interopZodTransformInputSchema,\n} from \"./types/zod.js\";\nimport {\n type JsonSchema7Type as JSONSchema,\n zodToJsonSchema,\n} from \"./zod-to-json-schema/index.js\";\nimport { StandardJSONSchemaV1 } from \"@standard-schema/spec\";\nimport { isStandardJsonSchema } from \"./standard_schema.js\";\n\nexport { deepCompareStrict, Validator } from \"@cfworker/json-schema\";\n\nexport type ToJSONSchemaParams = NonNullable<\n Parameters<typeof toJSONSchema>[1]\n>;\n\n/**\n * WeakMap cache for Zod/Standard-Schema → JSON Schema conversions.\n *\n * Keyed on the schema object reference. Since Zod schemas are immutable and\n * the same `tool.schema` reference is passed on every LLM call, this\n * eliminates redundant serializations. For example, an agent with 6 tools\n * doing 15 steps across 3 parallel subagents would otherwise run 270\n * identical conversions per invocation.\n *\n * Only used when no custom `params` are passed (the common case for tool\n * binding). WeakMap ensures cached entries are GC'd when the schema goes\n * out of scope.\n *\n * @internal\n */\nconst _jsonSchemaCache = new WeakMap<object, JSONSchema>();\n\n/**\n * Converts a Standard JSON schema, Zod schema or JSON schema to a JSON schema.\n * Results are cached by schema reference when no custom params are passed.\n * @param schema - The schema to convert.\n * @param params - The parameters to pass to the toJSONSchema function.\n * @returns The converted schema.\n */\nexport function toJsonSchema(\n schema: StandardJSONSchemaV1 | InteropZodType | JSONSchema,\n params?: ToJSONSchemaParams\n): JSONSchema {\n // Cache when no custom params are passed (the default for tool binding).\n // Params can change the output (e.g., different target draft), so we\n // bypass the cache when they're provided.\n const canCache = !params && schema != null && typeof schema === \"object\";\n\n if (canCache) {\n const cached = _jsonSchemaCache.get(schema);\n if (cached) return cached;\n }\n\n let result: JSONSchema;\n\n if (isStandardJsonSchema(schema) && !isZodSchemaV4(schema)) {\n result = schema[\"~standard\"].jsonSchema.input({\n target: \"draft-07\",\n }) as JSONSchema;\n } else if (isZodSchemaV4(schema)) {\n const inputSchema = interopZodTransformInputSchema(schema, true);\n if (isZodObjectV4(inputSchema)) {\n const strictSchema = interopZodObjectStrict(inputSchema, true);\n result = toJSONSchema(strictSchema as unknown as $ZodType, params);\n } else {\n result = toJSONSchema(schema as unknown as $ZodType, params);\n }\n } else if (isZodSchemaV3(schema)) {\n result = zodToJsonSchema(schema as never);\n } else {\n result = schema as JSONSchema;\n }\n\n if (canCache && result != null && typeof result === \"object\") {\n _jsonSchemaCache.set(schema, result);\n }\n\n return result;\n}\n\n/**\n * Validates if a JSON schema validates only strings. May return false negatives in some edge cases\n * (like recursive or unresolvable refs).\n *\n * @param schema - The schema to validate.\n * @returns `true` if the schema validates only strings, `false` otherwise.\n */\nexport function validatesOnlyStrings(schema: unknown): boolean {\n // Null, undefined, or empty schema\n if (\n !schema ||\n typeof schema !== \"object\" ||\n Object.keys(schema).length === 0 ||\n Array.isArray(schema)\n ) {\n return false; // Validates anything, not just strings\n }\n\n // Explicit type constraint\n if (\"type\" in schema) {\n if (typeof schema.type === \"string\") {\n return schema.type === \"string\";\n }\n\n if (Array.isArray(schema.type)) {\n // not sure why someone would do `\"type\": [\"string\"]` or especially `\"type\": [\"string\",\n // \"string\", \"string\", ...]` but we're not here to judge\n return schema.type.every((t) => t === \"string\");\n }\n return false; // Invalid or non-string type\n }\n\n // Enum with only string values\n if (\"enum\" in schema) {\n return (\n Array.isArray(schema.enum) &&\n schema.enum.length > 0 &&\n schema.enum.every((val) => typeof val === \"string\")\n );\n }\n\n // String constant\n if (\"const\" in schema) {\n return typeof schema.const === \"string\";\n }\n\n // Schema combinations\n if (\"allOf\" in schema && Array.isArray(schema.allOf)) {\n // If any subschema validates only strings, then the overall schema validates only strings\n return schema.allOf.some((subschema) => validatesOnlyStrings(subschema));\n }\n\n if (\n (\"anyOf\" in schema && Array.isArray(schema.anyOf)) ||\n (\"oneOf\" in schema && Array.isArray(schema.oneOf))\n ) {\n const subschemas = (\n \"anyOf\" in schema ? schema.anyOf : schema.oneOf\n ) as unknown[];\n\n // All subschemas must validate only strings\n return (\n subschemas.length > 0 &&\n subschemas.every((subschema) => validatesOnlyStrings(subschema))\n );\n }\n\n // We're not going to try on this one, it's too complex - we just assume if it has a \"not\" key and hasn't matched one of the above checks, it's not a string schema.\n if (\"not\" in schema) {\n return false; // The not case can validate non-strings\n }\n\n if (\"$ref\" in schema && typeof schema.$ref === \"string\") {\n const ref = schema.$ref as string;\n const resolved = dereference(schema as Schema);\n if (resolved[ref]) {\n return validatesOnlyStrings(resolved[ref]);\n }\n return false;\n }\n\n // ignore recursive refs and other cases where type is omitted for now\n // ignore other cases for now where type is omitted\n\n return false;\n}\n\n// Re-export of the types used throughout langchain for json schema serialization.\n// The plan is to eventually nix zod-to-json-schema altogether in place for\n// zod v4 / a more standardized way of serializing validated inputs, so its re-exported\n// here to remove the dependency on zod-to-json-schema in downstream packages until\n// a determination is made.\n\nexport {\n type JsonSchema7Type,\n type JsonSchema7Type as JSONSchema,\n type JsonSchema7ArrayType,\n type JsonSchema7ObjectType,\n type JsonSchema7StringType,\n type JsonSchema7NumberType,\n type JsonSchema7NullableType,\n} from \"./zod-to-json-schema/index.js\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsCA,MAAM,mCAAmB,IAAI,SAA6B;;;;;;;;AAS1D,SAAgB,aACd,QACA,QACY;CAIZ,MAAM,WAAW,CAAC,UAAU,UAAU,QAAQ,OAAO,WAAW;AAEhE,KAAI,UAAU;EACZ,MAAM,SAAS,iBAAiB,IAAI,OAAO;AAC3C,MAAI,OAAQ,QAAO;;CAGrB,IAAI;AAEJ,KAAI,qBAAqB,OAAO,IAAI,CAAC,cAAc,OAAO,CACxD,UAAS,OAAO,aAAa,WAAW,MAAM,EAC5C,QAAQ,YACT,CAAC;UACO,cAAc,OAAO,EAAE;EAChC,MAAM,cAAc,+BAA+B,QAAQ,KAAK;AAChE,MAAI,cAAc,YAAY,CAE5B,UAAS,aADY,uBAAuB,aAAa,KAAK,EACH,OAAO;MAElE,UAAS,aAAa,QAA+B,OAAO;YAErD,cAAc,OAAO,CAC9B,UAAS,gBAAgB,OAAgB;KAEzC,UAAS;AAGX,KAAI,YAAY,UAAU,QAAQ,OAAO,WAAW,SAClD,kBAAiB,IAAI,QAAQ,OAAO;AAGtC,QAAO;;;;;;;;;AAUT,SAAgB,qBAAqB,QAA0B;AAE7D,KACE,CAAC,UACD,OAAO,WAAW,YAClB,OAAO,KAAK,OAAO,CAAC,WAAW,KAC/B,MAAM,QAAQ,OAAO,CAErB,QAAO;AAIT,KAAI,UAAU,QAAQ;AACpB,MAAI,OAAO,OAAO,SAAS,SACzB,QAAO,OAAO,SAAS;AAGzB,MAAI,MAAM,QAAQ,OAAO,KAAK,CAG5B,QAAO,OAAO,KAAK,OAAO,MAAM,MAAM,SAAS;AAEjD,SAAO;;AAIT,KAAI,UAAU,OACZ,QACE,MAAM,QAAQ,OAAO,KAAK,IAC1B,OAAO,KAAK,SAAS,KACrB,OAAO,KAAK,OAAO,QAAQ,OAAO,QAAQ,SAAS;AAKvD,KAAI,WAAW,OACb,QAAO,OAAO,OAAO,UAAU;AAIjC,KAAI,WAAW,UAAU,MAAM,QAAQ,OAAO,MAAM,CAElD,QAAO,OAAO,MAAM,MAAM,cAAc,qBAAqB,UAAU,CAAC;AAG1E,KACG,WAAW,UAAU,MAAM,QAAQ,OAAO,MAAM,IAChD,WAAW,UAAU,MAAM,QAAQ,OAAO,MAAM,EACjD;EACA,MAAM,aACJ,WAAW,SAAS,OAAO,QAAQ,OAAO;AAI5C,SACE,WAAW,SAAS,KACpB,WAAW,OAAO,cAAc,qBAAqB,UAAU,CAAC;;AAKpE,KAAI,SAAS,OACX,QAAO;AAGT,KAAI,UAAU,UAAU,OAAO,OAAO,SAAS,UAAU;EACvD,MAAM,MAAM,OAAO;EACnB,MAAM,WAAW,YAAY,OAAiB;AAC9C,MAAI,SAAS,KACX,QAAO,qBAAqB,SAAS,KAAK;AAE5C,SAAO;;AAMT,QAAO"}
|
package/dist/utils/math.cjs
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
const
|
|
3
|
-
const
|
|
4
|
-
const
|
|
5
|
-
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_runtime = require("../_virtual/_rolldown/runtime.cjs");
|
|
3
|
+
const require_similarities = require("./ml-distance/similarities.cjs");
|
|
4
|
+
const require_distances = require("./ml-distance/distances.cjs");
|
|
5
|
+
const require_euclidean = require("./ml-distance-euclidean/euclidean.cjs");
|
|
6
6
|
//#region src/utils/math.ts
|
|
7
|
-
var math_exports = {
|
|
8
|
-
require_rolldown_runtime.__export(math_exports, {
|
|
7
|
+
var math_exports = /* @__PURE__ */ require_runtime.__exportAll({
|
|
9
8
|
cosineSimilarity: () => cosineSimilarity,
|
|
10
9
|
euclideanDistance: () => euclideanDistance,
|
|
11
|
-
innerProduct: () => innerProduct
|
|
10
|
+
innerProduct: () => innerProduct,
|
|
12
11
|
matrixFunc: () => matrixFunc,
|
|
13
12
|
maximalMarginalRelevance: () => maximalMarginalRelevance,
|
|
14
13
|
normalize: () => normalize
|
|
@@ -46,7 +45,7 @@ function normalize(M, similarity = false) {
|
|
|
46
45
|
function cosineSimilarity(X, Y) {
|
|
47
46
|
return matrixFunc(X, Y, require_similarities.cosine);
|
|
48
47
|
}
|
|
49
|
-
function innerProduct
|
|
48
|
+
function innerProduct(X, Y) {
|
|
50
49
|
return matrixFunc(X, Y, require_distances.innerProduct);
|
|
51
50
|
}
|
|
52
51
|
function euclideanDistance(X, Y) {
|
|
@@ -65,8 +64,7 @@ function euclideanDistance(X, Y) {
|
|
|
65
64
|
*/
|
|
66
65
|
function maximalMarginalRelevance(queryEmbedding, embeddingList, lambda = .5, k = 4) {
|
|
67
66
|
if (Math.min(k, embeddingList.length) <= 0) return [];
|
|
68
|
-
const
|
|
69
|
-
const similarityToQuery = cosineSimilarity(queryEmbeddingExpanded, embeddingList)[0];
|
|
67
|
+
const similarityToQuery = cosineSimilarity(Array.isArray(queryEmbedding[0]) ? queryEmbedding : [queryEmbedding], embeddingList)[0];
|
|
70
68
|
const mostSimilarEmbeddingIndex = argMax(similarityToQuery).maxIndex;
|
|
71
69
|
const selectedEmbeddings = [embeddingList[mostSimilarEmbeddingIndex]];
|
|
72
70
|
const selectedEmbeddingsIndexes = [mostSimilarEmbeddingIndex];
|
|
@@ -113,18 +111,18 @@ function argMax(array) {
|
|
|
113
111
|
function matrixMaxVal(arrays) {
|
|
114
112
|
return arrays.reduce((acc, array) => Math.max(acc, argMax(array).maxValue), 0);
|
|
115
113
|
}
|
|
116
|
-
|
|
117
114
|
//#endregion
|
|
118
115
|
exports.cosineSimilarity = cosineSimilarity;
|
|
119
116
|
exports.euclideanDistance = euclideanDistance;
|
|
120
|
-
exports.innerProduct = innerProduct
|
|
121
|
-
Object.defineProperty(exports,
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
117
|
+
exports.innerProduct = innerProduct;
|
|
118
|
+
Object.defineProperty(exports, "math_exports", {
|
|
119
|
+
enumerable: true,
|
|
120
|
+
get: function() {
|
|
121
|
+
return math_exports;
|
|
122
|
+
}
|
|
126
123
|
});
|
|
127
124
|
exports.matrixFunc = matrixFunc;
|
|
128
125
|
exports.maximalMarginalRelevance = maximalMarginalRelevance;
|
|
129
126
|
exports.normalize = normalize;
|
|
127
|
+
|
|
130
128
|
//# sourceMappingURL=math.cjs.map
|
package/dist/utils/math.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"math.cjs","names":["
|
|
1
|
+
{"version":3,"file":"math.cjs","names":["cosine","innerProductDistance","euclidean"],"sources":["../../src/utils/math.ts"],"sourcesContent":["import { cosine } from \"./ml-distance/similarities.js\";\nimport { innerProduct as innerProductDistance } from \"./ml-distance/distances.js\";\nimport { euclidean } from \"./ml-distance-euclidean/euclidean.js\";\n\ntype VectorFunction = (xVector: number[], yVector: number[]) => number;\n\n/**\n * Apply a row-wise function between two matrices with the same number of columns.\n *\n * @param {number[][]} X - The first matrix.\n * @param {number[][]} Y - The second matrix.\n * @param {VectorFunction} func - The function to apply.\n *\n * @throws {Error} If the number of columns in X and Y are not the same.\n *\n * @returns {number[][] | [[]]} A matrix where each row represents the result of applying the function between the corresponding rows of X and Y.\n */\n\nexport function matrixFunc(\n X: number[][],\n Y: number[][],\n func: VectorFunction\n): number[][] {\n if (\n X.length === 0 ||\n X[0].length === 0 ||\n Y.length === 0 ||\n Y[0].length === 0\n ) {\n return [[]];\n }\n\n if (X[0].length !== Y[0].length) {\n throw new Error(\n `Number of columns in X and Y must be the same. X has shape ${[\n X.length,\n X[0].length,\n ]} and Y has shape ${[Y.length, Y[0].length]}.`\n );\n }\n\n return X.map((xVector) =>\n Y.map((yVector) => func(xVector, yVector)).map((similarity) =>\n Number.isNaN(similarity) ? 0 : similarity\n )\n );\n}\n\nexport function normalize(M: number[][], similarity = false): number[][] {\n const max = matrixMaxVal(M);\n return M.map((row) =>\n row.map((val) => (similarity ? 1 - val / max : val / max))\n );\n}\n\n/**\n * This function calculates the row-wise cosine similarity between two matrices with the same number of columns.\n *\n * @param {number[][]} X - The first matrix.\n * @param {number[][]} Y - The second matrix.\n *\n * @throws {Error} If the number of columns in X and Y are not the same.\n *\n * @returns {number[][] | [[]]} A matrix where each row represents the cosine similarity values between the corresponding rows of X and Y.\n */\nexport function cosineSimilarity(X: number[][], Y: number[][]): number[][] {\n return matrixFunc(X, Y, cosine);\n}\n\nexport function innerProduct(X: number[][], Y: number[][]): number[][] {\n return matrixFunc(X, Y, innerProductDistance);\n}\n\nexport function euclideanDistance(X: number[][], Y: number[][]): number[][] {\n return matrixFunc(X, Y, euclidean);\n}\n\n/**\n * This function implements the Maximal Marginal Relevance algorithm\n * to select a set of embeddings that maximizes the diversity and relevance to a query embedding.\n *\n * @param {number[]|number[][]} queryEmbedding - The query embedding.\n * @param {number[][]} embeddingList - The list of embeddings to select from.\n * @param {number} [lambda=0.5] - The trade-off parameter between relevance and diversity.\n * @param {number} [k=4] - The maximum number of embeddings to select.\n *\n * @returns {number[]} The indexes of the selected embeddings in the embeddingList.\n */\nexport function maximalMarginalRelevance(\n queryEmbedding: number[] | number[][],\n embeddingList: number[][],\n lambda = 0.5,\n k = 4\n): number[] {\n if (Math.min(k, embeddingList.length) <= 0) {\n return [];\n }\n\n const queryEmbeddingExpanded = (\n Array.isArray(queryEmbedding[0]) ? queryEmbedding : [queryEmbedding]\n ) as number[][];\n\n const similarityToQuery = cosineSimilarity(\n queryEmbeddingExpanded,\n embeddingList\n )[0];\n const mostSimilarEmbeddingIndex = argMax(similarityToQuery).maxIndex;\n\n const selectedEmbeddings = [embeddingList[mostSimilarEmbeddingIndex]];\n const selectedEmbeddingsIndexes = [mostSimilarEmbeddingIndex];\n\n while (selectedEmbeddingsIndexes.length < Math.min(k, embeddingList.length)) {\n let bestScore = -Infinity;\n let bestIndex = -1;\n\n const similarityToSelected = cosineSimilarity(\n embeddingList,\n selectedEmbeddings\n );\n\n similarityToQuery.forEach((queryScore, queryScoreIndex) => {\n if (selectedEmbeddingsIndexes.includes(queryScoreIndex)) {\n return;\n }\n const maxSimilarityToSelected = Math.max(\n ...similarityToSelected[queryScoreIndex]\n );\n const score =\n lambda * queryScore - (1 - lambda) * maxSimilarityToSelected;\n\n if (score > bestScore) {\n bestScore = score;\n bestIndex = queryScoreIndex;\n }\n });\n selectedEmbeddings.push(embeddingList[bestIndex]);\n selectedEmbeddingsIndexes.push(bestIndex);\n }\n\n return selectedEmbeddingsIndexes;\n}\n\ntype MaxInfo = {\n maxIndex: number;\n maxValue: number;\n};\n\n/**\n * Finds the index of the maximum value in the given array.\n * @param {number[]} array - The input array.\n *\n * @returns {number} The index of the maximum value in the array. If the array is empty, returns -1.\n */\nfunction argMax(array: number[]): MaxInfo {\n if (array.length === 0) {\n return {\n maxIndex: -1,\n maxValue: NaN,\n };\n }\n\n let maxValue = array[0];\n let maxIndex = 0;\n\n for (let i = 1; i < array.length; i += 1) {\n if (array[i] > maxValue) {\n maxIndex = i;\n maxValue = array[i];\n }\n }\n return { maxIndex, maxValue };\n}\n\nfunction matrixMaxVal(arrays: number[][]): number {\n return arrays.reduce(\n (acc, array) => Math.max(acc, argMax(array).maxValue),\n 0\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAkBA,SAAgB,WACd,GACA,GACA,MACY;AACZ,KACE,EAAE,WAAW,KACb,EAAE,GAAG,WAAW,KAChB,EAAE,WAAW,KACb,EAAE,GAAG,WAAW,EAEhB,QAAO,CAAC,EAAE,CAAC;AAGb,KAAI,EAAE,GAAG,WAAW,EAAE,GAAG,OACvB,OAAM,IAAI,MACR,8DAA8D,CAC5D,EAAE,QACF,EAAE,GAAG,OACN,CAAC,mBAAmB,CAAC,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,GAC9C;AAGH,QAAO,EAAE,KAAK,YACZ,EAAE,KAAK,YAAY,KAAK,SAAS,QAAQ,CAAC,CAAC,KAAK,eAC9C,OAAO,MAAM,WAAW,GAAG,IAAI,WAChC,CACF;;AAGH,SAAgB,UAAU,GAAe,aAAa,OAAmB;CACvE,MAAM,MAAM,aAAa,EAAE;AAC3B,QAAO,EAAE,KAAK,QACZ,IAAI,KAAK,QAAS,aAAa,IAAI,MAAM,MAAM,MAAM,IAAK,CAC3D;;;;;;;;;;;;AAaH,SAAgB,iBAAiB,GAAe,GAA2B;AACzE,QAAO,WAAW,GAAG,GAAGA,qBAAAA,OAAO;;AAGjC,SAAgB,aAAa,GAAe,GAA2B;AACrE,QAAO,WAAW,GAAG,GAAGC,kBAAAA,aAAqB;;AAG/C,SAAgB,kBAAkB,GAAe,GAA2B;AAC1E,QAAO,WAAW,GAAG,GAAGC,kBAAAA,UAAU;;;;;;;;;;;;;AAcpC,SAAgB,yBACd,gBACA,eACA,SAAS,IACT,IAAI,GACM;AACV,KAAI,KAAK,IAAI,GAAG,cAAc,OAAO,IAAI,EACvC,QAAO,EAAE;CAOX,MAAM,oBAAoB,iBAHxB,MAAM,QAAQ,eAAe,GAAG,GAAG,iBAAiB,CAAC,eAAe,EAKpE,cACD,CAAC;CACF,MAAM,4BAA4B,OAAO,kBAAkB,CAAC;CAE5D,MAAM,qBAAqB,CAAC,cAAc,2BAA2B;CACrE,MAAM,4BAA4B,CAAC,0BAA0B;AAE7D,QAAO,0BAA0B,SAAS,KAAK,IAAI,GAAG,cAAc,OAAO,EAAE;EAC3E,IAAI,YAAY;EAChB,IAAI,YAAY;EAEhB,MAAM,uBAAuB,iBAC3B,eACA,mBACD;AAED,oBAAkB,SAAS,YAAY,oBAAoB;AACzD,OAAI,0BAA0B,SAAS,gBAAgB,CACrD;GAEF,MAAM,0BAA0B,KAAK,IACnC,GAAG,qBAAqB,iBACzB;GACD,MAAM,QACJ,SAAS,cAAc,IAAI,UAAU;AAEvC,OAAI,QAAQ,WAAW;AACrB,gBAAY;AACZ,gBAAY;;IAEd;AACF,qBAAmB,KAAK,cAAc,WAAW;AACjD,4BAA0B,KAAK,UAAU;;AAG3C,QAAO;;;;;;;;AAcT,SAAS,OAAO,OAA0B;AACxC,KAAI,MAAM,WAAW,EACnB,QAAO;EACL,UAAU;EACV,UAAU;EACX;CAGH,IAAI,WAAW,MAAM;CACrB,IAAI,WAAW;AAEf,MAAK,IAAI,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK,EACrC,KAAI,MAAM,KAAK,UAAU;AACvB,aAAW;AACX,aAAW,MAAM;;AAGrB,QAAO;EAAE;EAAU;EAAU;;AAG/B,SAAS,aAAa,QAA4B;AAChD,QAAO,OAAO,QACX,KAAK,UAAU,KAAK,IAAI,KAAK,OAAO,MAAM,CAAC,SAAS,EACrD,EACD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"math.d.cts","names":[
|
|
1
|
+
{"version":3,"file":"math.d.cts","names":[],"sources":["../../src/utils/math.ts"],"mappings":";KAIK,cAAA,IAAkB,OAAA,YAAmB,OAAA;;;;;;AAc1C;;;;;;iBAAgB,UAAA,CACd,CAAA,cACA,CAAA,cACA,IAAA,EAAM,cAAA;AAAA,iBA2BQ,SAAA,CAAU,CAAA,cAAe,UAAA;;;AAAzC;;;;;AAiBA;;;iBAAgB,gBAAA,CAAiB,CAAA,cAAe,CAAA;AAAA,iBAIhC,YAAA,CAAa,CAAA,cAAe,CAAA;AAAA,iBAI5B,iBAAA,CAAkB,CAAA,cAAe,CAAA;;;;;AAAjD;;;;;AAeA;;iBAAgB,wBAAA,CACd,cAAA,yBACA,aAAA,cACA,MAAA,WACA,CAAA"}
|
package/dist/utils/math.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"math.d.ts","names":[
|
|
1
|
+
{"version":3,"file":"math.d.ts","names":[],"sources":["../../src/utils/math.ts"],"mappings":";KAIK,cAAA,IAAkB,OAAA,YAAmB,OAAA;;;;;;AAc1C;;;;;;iBAAgB,UAAA,CACd,CAAA,cACA,CAAA,cACA,IAAA,EAAM,cAAA;AAAA,iBA2BQ,SAAA,CAAU,CAAA,cAAe,UAAA;;;AAAzC;;;;;AAiBA;;;iBAAgB,gBAAA,CAAiB,CAAA,cAAe,CAAA;AAAA,iBAIhC,YAAA,CAAa,CAAA,cAAe,CAAA;AAAA,iBAI5B,iBAAA,CAAkB,CAAA,cAAe,CAAA;;;;;AAAjD;;;;;AAeA;;iBAAgB,wBAAA,CACd,cAAA,yBACA,aAAA,cACA,MAAA,WACA,CAAA"}
|
package/dist/utils/math.js
CHANGED
|
@@ -1,14 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { __exportAll } from "../_virtual/_rolldown/runtime.js";
|
|
2
2
|
import { cosine } from "./ml-distance/similarities.js";
|
|
3
|
-
import { innerProduct } from "./ml-distance/distances.js";
|
|
3
|
+
import { innerProduct as innerProduct$1 } from "./ml-distance/distances.js";
|
|
4
4
|
import { euclidean } from "./ml-distance-euclidean/euclidean.js";
|
|
5
|
-
|
|
6
5
|
//#region src/utils/math.ts
|
|
7
|
-
var math_exports = {
|
|
8
|
-
__export(math_exports, {
|
|
6
|
+
var math_exports = /* @__PURE__ */ __exportAll({
|
|
9
7
|
cosineSimilarity: () => cosineSimilarity,
|
|
10
8
|
euclideanDistance: () => euclideanDistance,
|
|
11
|
-
innerProduct: () => innerProduct
|
|
9
|
+
innerProduct: () => innerProduct,
|
|
12
10
|
matrixFunc: () => matrixFunc,
|
|
13
11
|
maximalMarginalRelevance: () => maximalMarginalRelevance,
|
|
14
12
|
normalize: () => normalize
|
|
@@ -46,8 +44,8 @@ function normalize(M, similarity = false) {
|
|
|
46
44
|
function cosineSimilarity(X, Y) {
|
|
47
45
|
return matrixFunc(X, Y, cosine);
|
|
48
46
|
}
|
|
49
|
-
function innerProduct
|
|
50
|
-
return matrixFunc(X, Y, innerProduct);
|
|
47
|
+
function innerProduct(X, Y) {
|
|
48
|
+
return matrixFunc(X, Y, innerProduct$1);
|
|
51
49
|
}
|
|
52
50
|
function euclideanDistance(X, Y) {
|
|
53
51
|
return matrixFunc(X, Y, euclidean);
|
|
@@ -65,8 +63,7 @@ function euclideanDistance(X, Y) {
|
|
|
65
63
|
*/
|
|
66
64
|
function maximalMarginalRelevance(queryEmbedding, embeddingList, lambda = .5, k = 4) {
|
|
67
65
|
if (Math.min(k, embeddingList.length) <= 0) return [];
|
|
68
|
-
const
|
|
69
|
-
const similarityToQuery = cosineSimilarity(queryEmbeddingExpanded, embeddingList)[0];
|
|
66
|
+
const similarityToQuery = cosineSimilarity(Array.isArray(queryEmbedding[0]) ? queryEmbedding : [queryEmbedding], embeddingList)[0];
|
|
70
67
|
const mostSimilarEmbeddingIndex = argMax(similarityToQuery).maxIndex;
|
|
71
68
|
const selectedEmbeddings = [embeddingList[mostSimilarEmbeddingIndex]];
|
|
72
69
|
const selectedEmbeddingsIndexes = [mostSimilarEmbeddingIndex];
|
|
@@ -113,7 +110,7 @@ function argMax(array) {
|
|
|
113
110
|
function matrixMaxVal(arrays) {
|
|
114
111
|
return arrays.reduce((acc, array) => Math.max(acc, argMax(array).maxValue), 0);
|
|
115
112
|
}
|
|
116
|
-
|
|
117
113
|
//#endregion
|
|
118
|
-
export { cosineSimilarity, euclideanDistance, innerProduct
|
|
114
|
+
export { cosineSimilarity, euclideanDistance, innerProduct, math_exports, matrixFunc, maximalMarginalRelevance, normalize };
|
|
115
|
+
|
|
119
116
|
//# sourceMappingURL=math.js.map
|
package/dist/utils/math.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"math.js","names":["
|
|
1
|
+
{"version":3,"file":"math.js","names":["innerProductDistance"],"sources":["../../src/utils/math.ts"],"sourcesContent":["import { cosine } from \"./ml-distance/similarities.js\";\nimport { innerProduct as innerProductDistance } from \"./ml-distance/distances.js\";\nimport { euclidean } from \"./ml-distance-euclidean/euclidean.js\";\n\ntype VectorFunction = (xVector: number[], yVector: number[]) => number;\n\n/**\n * Apply a row-wise function between two matrices with the same number of columns.\n *\n * @param {number[][]} X - The first matrix.\n * @param {number[][]} Y - The second matrix.\n * @param {VectorFunction} func - The function to apply.\n *\n * @throws {Error} If the number of columns in X and Y are not the same.\n *\n * @returns {number[][] | [[]]} A matrix where each row represents the result of applying the function between the corresponding rows of X and Y.\n */\n\nexport function matrixFunc(\n X: number[][],\n Y: number[][],\n func: VectorFunction\n): number[][] {\n if (\n X.length === 0 ||\n X[0].length === 0 ||\n Y.length === 0 ||\n Y[0].length === 0\n ) {\n return [[]];\n }\n\n if (X[0].length !== Y[0].length) {\n throw new Error(\n `Number of columns in X and Y must be the same. X has shape ${[\n X.length,\n X[0].length,\n ]} and Y has shape ${[Y.length, Y[0].length]}.`\n );\n }\n\n return X.map((xVector) =>\n Y.map((yVector) => func(xVector, yVector)).map((similarity) =>\n Number.isNaN(similarity) ? 0 : similarity\n )\n );\n}\n\nexport function normalize(M: number[][], similarity = false): number[][] {\n const max = matrixMaxVal(M);\n return M.map((row) =>\n row.map((val) => (similarity ? 1 - val / max : val / max))\n );\n}\n\n/**\n * This function calculates the row-wise cosine similarity between two matrices with the same number of columns.\n *\n * @param {number[][]} X - The first matrix.\n * @param {number[][]} Y - The second matrix.\n *\n * @throws {Error} If the number of columns in X and Y are not the same.\n *\n * @returns {number[][] | [[]]} A matrix where each row represents the cosine similarity values between the corresponding rows of X and Y.\n */\nexport function cosineSimilarity(X: number[][], Y: number[][]): number[][] {\n return matrixFunc(X, Y, cosine);\n}\n\nexport function innerProduct(X: number[][], Y: number[][]): number[][] {\n return matrixFunc(X, Y, innerProductDistance);\n}\n\nexport function euclideanDistance(X: number[][], Y: number[][]): number[][] {\n return matrixFunc(X, Y, euclidean);\n}\n\n/**\n * This function implements the Maximal Marginal Relevance algorithm\n * to select a set of embeddings that maximizes the diversity and relevance to a query embedding.\n *\n * @param {number[]|number[][]} queryEmbedding - The query embedding.\n * @param {number[][]} embeddingList - The list of embeddings to select from.\n * @param {number} [lambda=0.5] - The trade-off parameter between relevance and diversity.\n * @param {number} [k=4] - The maximum number of embeddings to select.\n *\n * @returns {number[]} The indexes of the selected embeddings in the embeddingList.\n */\nexport function maximalMarginalRelevance(\n queryEmbedding: number[] | number[][],\n embeddingList: number[][],\n lambda = 0.5,\n k = 4\n): number[] {\n if (Math.min(k, embeddingList.length) <= 0) {\n return [];\n }\n\n const queryEmbeddingExpanded = (\n Array.isArray(queryEmbedding[0]) ? queryEmbedding : [queryEmbedding]\n ) as number[][];\n\n const similarityToQuery = cosineSimilarity(\n queryEmbeddingExpanded,\n embeddingList\n )[0];\n const mostSimilarEmbeddingIndex = argMax(similarityToQuery).maxIndex;\n\n const selectedEmbeddings = [embeddingList[mostSimilarEmbeddingIndex]];\n const selectedEmbeddingsIndexes = [mostSimilarEmbeddingIndex];\n\n while (selectedEmbeddingsIndexes.length < Math.min(k, embeddingList.length)) {\n let bestScore = -Infinity;\n let bestIndex = -1;\n\n const similarityToSelected = cosineSimilarity(\n embeddingList,\n selectedEmbeddings\n );\n\n similarityToQuery.forEach((queryScore, queryScoreIndex) => {\n if (selectedEmbeddingsIndexes.includes(queryScoreIndex)) {\n return;\n }\n const maxSimilarityToSelected = Math.max(\n ...similarityToSelected[queryScoreIndex]\n );\n const score =\n lambda * queryScore - (1 - lambda) * maxSimilarityToSelected;\n\n if (score > bestScore) {\n bestScore = score;\n bestIndex = queryScoreIndex;\n }\n });\n selectedEmbeddings.push(embeddingList[bestIndex]);\n selectedEmbeddingsIndexes.push(bestIndex);\n }\n\n return selectedEmbeddingsIndexes;\n}\n\ntype MaxInfo = {\n maxIndex: number;\n maxValue: number;\n};\n\n/**\n * Finds the index of the maximum value in the given array.\n * @param {number[]} array - The input array.\n *\n * @returns {number} The index of the maximum value in the array. If the array is empty, returns -1.\n */\nfunction argMax(array: number[]): MaxInfo {\n if (array.length === 0) {\n return {\n maxIndex: -1,\n maxValue: NaN,\n };\n }\n\n let maxValue = array[0];\n let maxIndex = 0;\n\n for (let i = 1; i < array.length; i += 1) {\n if (array[i] > maxValue) {\n maxIndex = i;\n maxValue = array[i];\n }\n }\n return { maxIndex, maxValue };\n}\n\nfunction matrixMaxVal(arrays: number[][]): number {\n return arrays.reduce(\n (acc, array) => Math.max(acc, argMax(array).maxValue),\n 0\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAkBA,SAAgB,WACd,GACA,GACA,MACY;AACZ,KACE,EAAE,WAAW,KACb,EAAE,GAAG,WAAW,KAChB,EAAE,WAAW,KACb,EAAE,GAAG,WAAW,EAEhB,QAAO,CAAC,EAAE,CAAC;AAGb,KAAI,EAAE,GAAG,WAAW,EAAE,GAAG,OACvB,OAAM,IAAI,MACR,8DAA8D,CAC5D,EAAE,QACF,EAAE,GAAG,OACN,CAAC,mBAAmB,CAAC,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,GAC9C;AAGH,QAAO,EAAE,KAAK,YACZ,EAAE,KAAK,YAAY,KAAK,SAAS,QAAQ,CAAC,CAAC,KAAK,eAC9C,OAAO,MAAM,WAAW,GAAG,IAAI,WAChC,CACF;;AAGH,SAAgB,UAAU,GAAe,aAAa,OAAmB;CACvE,MAAM,MAAM,aAAa,EAAE;AAC3B,QAAO,EAAE,KAAK,QACZ,IAAI,KAAK,QAAS,aAAa,IAAI,MAAM,MAAM,MAAM,IAAK,CAC3D;;;;;;;;;;;;AAaH,SAAgB,iBAAiB,GAAe,GAA2B;AACzE,QAAO,WAAW,GAAG,GAAG,OAAO;;AAGjC,SAAgB,aAAa,GAAe,GAA2B;AACrE,QAAO,WAAW,GAAG,GAAGA,eAAqB;;AAG/C,SAAgB,kBAAkB,GAAe,GAA2B;AAC1E,QAAO,WAAW,GAAG,GAAG,UAAU;;;;;;;;;;;;;AAcpC,SAAgB,yBACd,gBACA,eACA,SAAS,IACT,IAAI,GACM;AACV,KAAI,KAAK,IAAI,GAAG,cAAc,OAAO,IAAI,EACvC,QAAO,EAAE;CAOX,MAAM,oBAAoB,iBAHxB,MAAM,QAAQ,eAAe,GAAG,GAAG,iBAAiB,CAAC,eAAe,EAKpE,cACD,CAAC;CACF,MAAM,4BAA4B,OAAO,kBAAkB,CAAC;CAE5D,MAAM,qBAAqB,CAAC,cAAc,2BAA2B;CACrE,MAAM,4BAA4B,CAAC,0BAA0B;AAE7D,QAAO,0BAA0B,SAAS,KAAK,IAAI,GAAG,cAAc,OAAO,EAAE;EAC3E,IAAI,YAAY;EAChB,IAAI,YAAY;EAEhB,MAAM,uBAAuB,iBAC3B,eACA,mBACD;AAED,oBAAkB,SAAS,YAAY,oBAAoB;AACzD,OAAI,0BAA0B,SAAS,gBAAgB,CACrD;GAEF,MAAM,0BAA0B,KAAK,IACnC,GAAG,qBAAqB,iBACzB;GACD,MAAM,QACJ,SAAS,cAAc,IAAI,UAAU;AAEvC,OAAI,QAAQ,WAAW;AACrB,gBAAY;AACZ,gBAAY;;IAEd;AACF,qBAAmB,KAAK,cAAc,WAAW;AACjD,4BAA0B,KAAK,UAAU;;AAG3C,QAAO;;;;;;;;AAcT,SAAS,OAAO,OAA0B;AACxC,KAAI,MAAM,WAAW,EACnB,QAAO;EACL,UAAU;EACV,UAAU;EACX;CAGH,IAAI,WAAW,MAAM;CACrB,IAAI,WAAW;AAEf,MAAK,IAAI,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK,EACrC,KAAI,MAAM,KAAK,UAAU;AACvB,aAAW;AACX,aAAW,MAAM;;AAGrB,QAAO;EAAE;EAAU;EAAU;;AAG/B,SAAS,aAAa,QAA4B;AAChD,QAAO,OAAO,QACX,KAAK,UAAU,KAAK,IAAI,KAAK,OAAO,MAAM,CAAC,SAAS,EACrD,EACD"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
|
|
2
1
|
//#region src/utils/ml-distance/distances.ts
|
|
3
2
|
/**
|
|
4
3
|
*Returns the Inner Product similarity between vectors a and b
|
|
@@ -12,7 +11,7 @@ function innerProduct(a, b) {
|
|
|
12
11
|
for (let i = 0; i < a.length; i++) ans += a[i] * b[i];
|
|
13
12
|
return ans;
|
|
14
13
|
}
|
|
15
|
-
|
|
16
14
|
//#endregion
|
|
17
15
|
exports.innerProduct = innerProduct;
|
|
16
|
+
|
|
18
17
|
//# sourceMappingURL=distances.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"distances.cjs","names":[
|
|
1
|
+
{"version":3,"file":"distances.cjs","names":[],"sources":["../../../src/utils/ml-distance/distances.ts"],"sourcesContent":["/**\n *Returns the Inner Product similarity between vectors a and b\n * @link [Inner Product Similarity algorithm](https://www.naun.org/main/NAUN/ijmmas/mmmas-49.pdf)\n * @param a - first vector\n * @param b - second vector\n *\n */\nexport function innerProduct(a: number[], b: number[]): number {\n let ans = 0;\n for (let i = 0; i < a.length; i++) {\n ans += a[i] * b[i];\n }\n return ans;\n}\n"],"mappings":";;;;;;;;AAOA,SAAgB,aAAa,GAAa,GAAqB;CAC7D,IAAI,MAAM;AACV,MAAK,IAAI,IAAI,GAAG,IAAI,EAAE,QAAQ,IAC5B,QAAO,EAAE,KAAK,EAAE;AAElB,QAAO"}
|