langchain 0.0.130 → 0.0.132
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agents/agent.cjs +23 -0
- package/dist/agents/agent.d.ts +28 -0
- package/dist/agents/agent.js +23 -0
- package/dist/agents/chat/index.cjs +28 -0
- package/dist/agents/chat/index.d.ts +33 -0
- package/dist/agents/chat/index.js +28 -0
- package/dist/agents/chat/outputParser.cjs +19 -0
- package/dist/agents/chat/outputParser.d.ts +19 -0
- package/dist/agents/chat/outputParser.js +19 -0
- package/dist/agents/chat_convo/index.cjs +25 -0
- package/dist/agents/chat_convo/index.d.ts +32 -0
- package/dist/agents/chat_convo/index.js +25 -0
- package/dist/agents/chat_convo/outputParser.cjs +42 -0
- package/dist/agents/chat_convo/outputParser.d.ts +42 -0
- package/dist/agents/chat_convo/outputParser.js +42 -0
- package/dist/agents/executor.cjs +9 -0
- package/dist/agents/executor.d.ts +12 -0
- package/dist/agents/executor.js +9 -0
- package/dist/agents/initialize.d.ts +5 -0
- package/dist/agents/mrkl/index.cjs +20 -0
- package/dist/agents/mrkl/index.d.ts +25 -0
- package/dist/agents/mrkl/index.js +20 -0
- package/dist/agents/mrkl/outputParser.cjs +15 -0
- package/dist/agents/mrkl/outputParser.d.ts +15 -0
- package/dist/agents/mrkl/outputParser.js +15 -0
- package/dist/agents/openai/index.cjs +46 -0
- package/dist/agents/openai/index.d.ts +40 -0
- package/dist/agents/openai/index.js +46 -0
- package/dist/agents/structured_chat/index.cjs +35 -0
- package/dist/agents/structured_chat/index.d.ts +41 -0
- package/dist/agents/structured_chat/index.js +35 -0
- package/dist/agents/structured_chat/outputParser.cjs +44 -0
- package/dist/agents/structured_chat/outputParser.d.ts +48 -0
- package/dist/agents/structured_chat/outputParser.js +44 -0
- package/dist/agents/toolkits/aws_sfn.cjs +5 -0
- package/dist/agents/toolkits/aws_sfn.d.ts +9 -0
- package/dist/agents/toolkits/aws_sfn.js +5 -0
- package/dist/agents/toolkits/base.cjs +5 -0
- package/dist/agents/toolkits/base.d.ts +5 -0
- package/dist/agents/toolkits/base.js +5 -0
- package/dist/agents/toolkits/conversational_retrieval/openai_functions.cjs +10 -0
- package/dist/agents/toolkits/conversational_retrieval/openai_functions.d.ts +10 -0
- package/dist/agents/toolkits/conversational_retrieval/openai_functions.js +10 -0
- package/dist/agents/toolkits/conversational_retrieval/token_buffer_memory.cjs +17 -0
- package/dist/agents/toolkits/conversational_retrieval/token_buffer_memory.d.ts +21 -0
- package/dist/agents/toolkits/conversational_retrieval/token_buffer_memory.js +17 -0
- package/dist/agents/toolkits/json/json.cjs +15 -0
- package/dist/agents/toolkits/json/json.d.ts +15 -0
- package/dist/agents/toolkits/json/json.js +15 -0
- package/dist/agents/toolkits/openapi/openapi.cjs +21 -0
- package/dist/agents/toolkits/openapi/openapi.d.ts +21 -0
- package/dist/agents/toolkits/openapi/openapi.js +21 -0
- package/dist/agents/toolkits/sql/sql.cjs +4 -0
- package/dist/agents/toolkits/sql/sql.d.ts +8 -0
- package/dist/agents/toolkits/sql/sql.js +4 -0
- package/dist/agents/toolkits/vectorstore/vectorstore.cjs +10 -0
- package/dist/agents/toolkits/vectorstore/vectorstore.d.ts +14 -0
- package/dist/agents/toolkits/vectorstore/vectorstore.js +10 -0
- package/dist/agents/toolkits/zapier/zapier.cjs +12 -0
- package/dist/agents/toolkits/zapier/zapier.d.ts +12 -0
- package/dist/agents/toolkits/zapier/zapier.js +12 -0
- package/dist/agents/types.cjs +5 -0
- package/dist/agents/types.d.ts +28 -0
- package/dist/agents/types.js +5 -0
- package/dist/cache/index.cjs +21 -0
- package/dist/cache/index.d.ts +21 -0
- package/dist/cache/index.js +21 -0
- package/dist/cache/ioredis.cjs +16 -0
- package/dist/cache/ioredis.d.ts +16 -0
- package/dist/cache/ioredis.js +16 -0
- package/dist/cache/redis.cjs +21 -0
- package/dist/cache/redis.d.ts +25 -0
- package/dist/cache/redis.js +21 -0
- package/dist/callbacks/base.cjs +29 -0
- package/dist/callbacks/base.d.ts +35 -0
- package/dist/callbacks/base.js +30 -1
- package/dist/callbacks/handlers/console.cjs +87 -0
- package/dist/callbacks/handlers/console.d.ts +87 -0
- package/dist/callbacks/handlers/console.js +87 -0
- package/dist/callbacks/handlers/initialize.cjs +12 -0
- package/dist/callbacks/handlers/initialize.d.ts +12 -0
- package/dist/callbacks/handlers/initialize.js +12 -0
- package/dist/callbacks/manager.cjs +9 -0
- package/dist/callbacks/manager.d.ts +9 -0
- package/dist/callbacks/manager.js +9 -0
- package/dist/callbacks/promises.cjs +9 -0
- package/dist/callbacks/promises.d.ts +4 -0
- package/dist/callbacks/promises.js +9 -0
- package/dist/chains/analyze_documents_chain.cjs +3 -0
- package/dist/chains/analyze_documents_chain.d.ts +5 -0
- package/dist/chains/analyze_documents_chain.js +3 -0
- package/dist/chains/api/api_chain.cjs +12 -0
- package/dist/chains/api/api_chain.d.ts +19 -0
- package/dist/chains/api/api_chain.js +12 -0
- package/dist/chains/base.cjs +6 -0
- package/dist/chains/base.d.ts +6 -0
- package/dist/chains/base.js +6 -0
- package/dist/chains/chat_vector_db_chain.cjs +8 -0
- package/dist/chains/chat_vector_db_chain.d.ts +11 -0
- package/dist/chains/chat_vector_db_chain.js +8 -0
- package/dist/chains/combine_docs_chain.cjs +9 -0
- package/dist/chains/combine_docs_chain.d.ts +13 -0
- package/dist/chains/combine_docs_chain.js +9 -0
- package/dist/chains/constitutional_ai/constitutional_chain.cjs +20 -0
- package/dist/chains/constitutional_ai/constitutional_chain.d.ts +21 -0
- package/dist/chains/constitutional_ai/constitutional_chain.js +20 -0
- package/dist/chains/constitutional_ai/constitutional_principle.cjs +4 -0
- package/dist/chains/constitutional_ai/constitutional_principle.d.ts +4 -0
- package/dist/chains/constitutional_ai/constitutional_principle.js +4 -0
- package/dist/chains/conversation.cjs +7 -0
- package/dist/chains/conversation.d.ts +5 -0
- package/dist/chains/conversation.js +7 -0
- package/dist/chains/conversational_retrieval_chain.cjs +24 -0
- package/dist/chains/conversational_retrieval_chain.d.ts +27 -1
- package/dist/chains/conversational_retrieval_chain.js +24 -0
- package/dist/chains/llm_chain.cjs +3 -0
- package/dist/chains/llm_chain.d.ts +4 -0
- package/dist/chains/llm_chain.js +3 -0
- package/dist/chains/openai_functions/extraction.cjs +21 -0
- package/dist/chains/openai_functions/extraction.d.ts +15 -0
- package/dist/chains/openai_functions/extraction.js +21 -0
- package/dist/chains/openai_functions/openapi.cjs +30 -0
- package/dist/chains/openai_functions/openapi.d.ts +3 -0
- package/dist/chains/openai_functions/openapi.js +30 -0
- package/dist/chains/openai_functions/structured_output.cjs +12 -0
- package/dist/chains/openai_functions/structured_output.d.ts +18 -0
- package/dist/chains/openai_functions/structured_output.js +12 -0
- package/dist/chains/openai_functions/tagging.cjs +24 -0
- package/dist/chains/openai_functions/tagging.d.ts +21 -0
- package/dist/chains/openai_functions/tagging.js +24 -0
- package/dist/chains/openai_moderation.cjs +8 -0
- package/dist/chains/openai_moderation.d.ts +9 -0
- package/dist/chains/openai_moderation.js +8 -0
- package/dist/chains/query_constructor/index.cjs +17 -0
- package/dist/chains/query_constructor/index.d.ts +20 -0
- package/dist/chains/query_constructor/index.js +17 -0
- package/dist/chains/query_constructor/ir.cjs +24 -0
- package/dist/chains/query_constructor/ir.d.ts +71 -0
- package/dist/chains/query_constructor/ir.js +24 -0
- package/dist/chains/query_constructor/parser.cjs +21 -0
- package/dist/chains/query_constructor/parser.d.ts +25 -0
- package/dist/chains/query_constructor/parser.js +21 -0
- package/dist/chains/question_answering/load.cjs +21 -0
- package/dist/chains/question_answering/load.d.ts +34 -0
- package/dist/chains/question_answering/load.js +21 -0
- package/dist/chains/retrieval_qa.cjs +15 -0
- package/dist/chains/retrieval_qa.d.ts +16 -0
- package/dist/chains/retrieval_qa.js +15 -0
- package/dist/chains/router/llm_router.cjs +16 -0
- package/dist/chains/router/llm_router.d.ts +24 -0
- package/dist/chains/router/llm_router.js +16 -0
- package/dist/chains/router/multi_prompt.cjs +19 -0
- package/dist/chains/router/multi_prompt.d.ts +19 -0
- package/dist/chains/router/multi_prompt.js +19 -0
- package/dist/chains/router/multi_retrieval_qa.cjs +22 -0
- package/dist/chains/router/multi_retrieval_qa.d.ts +27 -0
- package/dist/chains/router/multi_retrieval_qa.js +22 -0
- package/dist/chains/router/multi_route.cjs +13 -0
- package/dist/chains/router/multi_route.d.ts +26 -0
- package/dist/chains/router/multi_route.js +13 -0
- package/dist/chains/sequential_chain.cjs +6 -0
- package/dist/chains/sequential_chain.d.ts +8 -0
- package/dist/chains/sequential_chain.js +6 -0
- package/dist/chains/serde.d.ts +58 -0
- package/dist/chains/sql_db/sql_db_chain.cjs +16 -0
- package/dist/chains/sql_db/sql_db_chain.d.ts +19 -0
- package/dist/chains/sql_db/sql_db_chain.js +16 -0
- package/dist/chains/summarization/load.d.ts +4 -0
- package/dist/chains/transform.cjs +9 -0
- package/dist/chains/transform.d.ts +12 -0
- package/dist/chains/transform.js +9 -0
- package/dist/chains/vector_db_qa.cjs +18 -0
- package/dist/chains/vector_db_qa.d.ts +22 -0
- package/dist/chains/vector_db_qa.js +18 -0
- package/dist/chat_models/anthropic.cjs +27 -4
- package/dist/chat_models/anthropic.d.ts +15 -0
- package/dist/chat_models/anthropic.js +27 -4
- package/dist/chat_models/baiduwenxin.cjs +19 -13
- package/dist/chat_models/baiduwenxin.d.ts +19 -3
- package/dist/chat_models/baiduwenxin.js +19 -13
- package/dist/chat_models/base.cjs +61 -0
- package/dist/chat_models/base.d.ts +73 -0
- package/dist/chat_models/base.js +61 -0
- package/dist/chat_models/googlepalm.cjs +12 -0
- package/dist/chat_models/googlepalm.d.ts +8 -0
- package/dist/chat_models/googlepalm.js +12 -0
- package/dist/chat_models/googlevertexai.cjs +41 -0
- package/dist/chat_models/googlevertexai.d.ts +51 -0
- package/dist/chat_models/googlevertexai.js +41 -0
- package/dist/chat_models/ollama.cjs +14 -0
- package/dist/chat_models/ollama.d.ts +16 -0
- package/dist/chat_models/ollama.js +14 -0
- package/dist/chat_models/openai.cjs +19 -5
- package/dist/chat_models/openai.d.ts +7 -5
- package/dist/chat_models/openai.js +19 -5
- package/dist/document_loaders/base.cjs +10 -0
- package/dist/document_loaders/base.d.ts +17 -0
- package/dist/document_loaders/base.js +10 -0
- package/dist/document_loaders/fs/buffer.cjs +21 -0
- package/dist/document_loaders/fs/buffer.d.ts +28 -0
- package/dist/document_loaders/fs/buffer.js +21 -0
- package/dist/document_loaders/fs/csv.cjs +19 -0
- package/dist/document_loaders/fs/csv.d.ts +19 -0
- package/dist/document_loaders/fs/csv.js +19 -0
- package/dist/document_loaders/fs/directory.cjs +21 -0
- package/dist/document_loaders/fs/directory.d.ts +29 -0
- package/dist/document_loaders/fs/directory.js +21 -0
- package/dist/document_loaders/fs/docx.cjs +16 -0
- package/dist/document_loaders/fs/docx.d.ts +16 -0
- package/dist/document_loaders/fs/docx.js +16 -0
- package/dist/document_loaders/fs/epub.cjs +16 -0
- package/dist/document_loaders/fs/epub.d.ts +16 -0
- package/dist/document_loaders/fs/epub.js +16 -0
- package/dist/document_loaders/fs/json.cjs +40 -0
- package/dist/document_loaders/fs/json.d.ts +40 -0
- package/dist/document_loaders/fs/json.js +40 -0
- package/dist/document_loaders/fs/notion.cjs +6 -0
- package/dist/document_loaders/fs/notion.d.ts +6 -0
- package/dist/document_loaders/fs/notion.js +6 -0
- package/dist/document_loaders/fs/pdf.cjs +21 -0
- package/dist/document_loaders/fs/pdf.d.ts +21 -0
- package/dist/document_loaders/fs/pdf.js +21 -0
- package/dist/document_loaders/fs/srt.cjs +19 -0
- package/dist/document_loaders/fs/srt.d.ts +19 -0
- package/dist/document_loaders/fs/srt.js +19 -0
- package/dist/document_loaders/fs/text.cjs +34 -0
- package/dist/document_loaders/fs/text.d.ts +34 -0
- package/dist/document_loaders/fs/text.js +34 -0
- package/dist/document_loaders/fs/unstructured.cjs +14 -0
- package/dist/document_loaders/fs/unstructured.d.ts +26 -0
- package/dist/document_loaders/fs/unstructured.js +14 -0
- package/dist/document_loaders/web/apify_dataset.cjs +11 -0
- package/dist/document_loaders/web/apify_dataset.d.ts +15 -0
- package/dist/document_loaders/web/apify_dataset.js +11 -0
- package/dist/document_loaders/web/azure_blob_storage_container.cjs +13 -0
- package/dist/document_loaders/web/azure_blob_storage_container.d.ts +26 -0
- package/dist/document_loaders/web/azure_blob_storage_container.js +13 -0
- package/dist/document_loaders/web/azure_blob_storage_file.cjs +12 -0
- package/dist/document_loaders/web/azure_blob_storage_file.d.ts +21 -0
- package/dist/document_loaders/web/azure_blob_storage_file.js +12 -0
- package/dist/document_loaders/web/cheerio.cjs +21 -0
- package/dist/document_loaders/web/cheerio.d.ts +26 -0
- package/dist/document_loaders/web/cheerio.js +21 -0
- package/dist/document_loaders/web/college_confidential.cjs +11 -0
- package/dist/document_loaders/web/college_confidential.d.ts +11 -0
- package/dist/document_loaders/web/college_confidential.js +11 -0
- package/dist/document_loaders/web/confluence.cjs +23 -0
- package/dist/document_loaders/web/confluence.d.ts +33 -0
- package/dist/document_loaders/web/confluence.js +23 -0
- package/dist/document_loaders/web/figma.cjs +21 -0
- package/dist/document_loaders/web/figma.d.ts +32 -0
- package/dist/document_loaders/web/figma.js +21 -0
- package/dist/document_loaders/web/gitbook.cjs +33 -0
- package/dist/document_loaders/web/gitbook.d.ts +38 -0
- package/dist/document_loaders/web/gitbook.js +33 -0
- package/dist/document_loaders/web/github.cjs +50 -0
- package/dist/document_loaders/web/github.d.ts +53 -0
- package/dist/document_loaders/web/github.js +50 -0
- package/dist/document_loaders/web/hn.cjs +31 -0
- package/dist/document_loaders/web/hn.d.ts +31 -0
- package/dist/document_loaders/web/hn.js +31 -0
- package/dist/document_loaders/web/imsdb.cjs +14 -0
- package/dist/document_loaders/web/imsdb.d.ts +14 -0
- package/dist/document_loaders/web/imsdb.js +14 -0
- package/dist/document_loaders/web/notionapi.cjs +39 -0
- package/dist/document_loaders/web/notionapi.d.ts +43 -0
- package/dist/document_loaders/web/notionapi.js +39 -0
- package/dist/document_loaders/web/notiondb.cjs +19 -0
- package/dist/document_loaders/web/notiondb.d.ts +24 -0
- package/dist/document_loaders/web/notiondb.js +19 -0
- package/dist/document_loaders/web/playwright.cjs +22 -0
- package/dist/document_loaders/web/playwright.d.ts +27 -0
- package/dist/document_loaders/web/playwright.js +22 -0
- package/dist/document_loaders/web/puppeteer.cjs +20 -0
- package/dist/document_loaders/web/puppeteer.d.ts +25 -0
- package/dist/document_loaders/web/puppeteer.js +20 -0
- package/dist/document_loaders/web/s3.cjs +9 -0
- package/dist/document_loaders/web/s3.d.ts +21 -0
- package/dist/document_loaders/web/s3.js +9 -0
- package/dist/document_loaders/web/serpapi.cjs +4 -0
- package/dist/document_loaders/web/serpapi.d.ts +8 -0
- package/dist/document_loaders/web/serpapi.js +4 -0
- package/dist/document_loaders/web/sonix_audio.cjs +10 -0
- package/dist/document_loaders/web/sonix_audio.d.ts +10 -0
- package/dist/document_loaders/web/sonix_audio.js +10 -0
- package/dist/document_loaders/web/sort_xyz_blockchain.cjs +10 -0
- package/dist/document_loaders/web/sort_xyz_blockchain.d.ts +17 -0
- package/dist/document_loaders/web/sort_xyz_blockchain.js +10 -0
- package/dist/document_loaders/web/youtube.cjs +23 -0
- package/dist/document_loaders/web/youtube.d.ts +27 -0
- package/dist/document_loaders/web/youtube.js +23 -0
- package/dist/document_transformers/html_to_text.cjs +6 -0
- package/dist/document_transformers/html_to_text.d.ts +4 -0
- package/dist/document_transformers/html_to_text.js +6 -0
- package/dist/document_transformers/mozilla_readability.cjs +7 -0
- package/dist/document_transformers/mozilla_readability.d.ts +5 -0
- package/dist/document_transformers/mozilla_readability.js +7 -0
- package/dist/document_transformers/openai_functions.cjs +6 -0
- package/dist/document_transformers/openai_functions.d.ts +4 -0
- package/dist/document_transformers/openai_functions.js +6 -0
- package/dist/embeddings/base.cjs +4 -0
- package/dist/embeddings/base.d.ts +21 -0
- package/dist/embeddings/base.js +4 -0
- package/dist/embeddings/cache_backed.d.ts +4 -0
- package/dist/embeddings/cohere.d.ts +4 -0
- package/dist/embeddings/fake.cjs +33 -0
- package/dist/embeddings/fake.d.ts +37 -0
- package/dist/embeddings/fake.js +33 -0
- package/dist/embeddings/googlepalm.cjs +18 -0
- package/dist/embeddings/googlepalm.d.ts +22 -0
- package/dist/embeddings/googlepalm.js +18 -0
- package/dist/embeddings/googlevertexai.cjs +15 -0
- package/dist/embeddings/googlevertexai.d.ts +20 -0
- package/dist/embeddings/googlevertexai.js +15 -0
- package/dist/embeddings/hf.cjs +20 -0
- package/dist/embeddings/hf.d.ts +24 -0
- package/dist/embeddings/hf.js +20 -0
- package/dist/embeddings/openai.cjs +25 -0
- package/dist/embeddings/openai.d.ts +29 -0
- package/dist/embeddings/openai.js +25 -0
- package/dist/embeddings/tensorflow.cjs +27 -0
- package/dist/embeddings/tensorflow.d.ts +31 -0
- package/dist/embeddings/tensorflow.js +27 -0
- package/dist/evaluation/qa/eval_chain.cjs +3 -0
- package/dist/evaluation/qa/eval_chain.d.ts +1 -0
- package/dist/evaluation/qa/eval_chain.js +3 -0
- package/dist/experimental/autogpt/agent.cjs +21 -0
- package/dist/experimental/autogpt/agent.d.ts +24 -0
- package/dist/experimental/autogpt/agent.js +21 -0
- package/dist/experimental/autogpt/output_parser.cjs +24 -0
- package/dist/experimental/autogpt/output_parser.d.ts +24 -0
- package/dist/experimental/autogpt/output_parser.js +24 -0
- package/dist/experimental/autogpt/prompt.cjs +25 -0
- package/dist/experimental/autogpt/prompt.d.ts +28 -0
- package/dist/experimental/autogpt/prompt.js +25 -0
- package/dist/experimental/autogpt/prompt_generator.cjs +32 -0
- package/dist/experimental/autogpt/prompt_generator.d.ts +32 -0
- package/dist/experimental/autogpt/prompt_generator.js +32 -0
- package/dist/experimental/autogpt/schema.d.ts +11 -0
- package/dist/experimental/babyagi/agent.cjs +68 -0
- package/dist/experimental/babyagi/agent.d.ts +76 -0
- package/dist/experimental/babyagi/agent.js +68 -0
- package/dist/experimental/babyagi/task_creation.cjs +13 -0
- package/dist/experimental/babyagi/task_creation.d.ts +11 -0
- package/dist/experimental/babyagi/task_creation.js +13 -0
- package/dist/experimental/babyagi/task_execution.cjs +12 -0
- package/dist/experimental/babyagi/task_execution.d.ts +10 -0
- package/dist/experimental/babyagi/task_execution.js +12 -0
- package/dist/experimental/babyagi/task_prioritization.cjs +11 -0
- package/dist/experimental/babyagi/task_prioritization.d.ts +9 -0
- package/dist/experimental/babyagi/task_prioritization.js +11 -0
- package/dist/experimental/generative_agents/generative_agent.cjs +77 -0
- package/dist/experimental/generative_agents/generative_agent.d.ts +80 -0
- package/dist/experimental/generative_agents/generative_agent.js +77 -0
- package/dist/experimental/generative_agents/generative_agent_memory.cjs +116 -0
- package/dist/experimental/generative_agents/generative_agent_memory.d.ts +114 -0
- package/dist/experimental/generative_agents/generative_agent_memory.js +116 -0
- package/dist/experimental/multimodal_embeddings/googlevertexai.cjs +46 -0
- package/dist/experimental/multimodal_embeddings/googlevertexai.d.ts +58 -0
- package/dist/experimental/multimodal_embeddings/googlevertexai.js +46 -0
- package/dist/experimental/plan_and_execute/agent_executor.cjs +35 -0
- package/dist/experimental/plan_and_execute/agent_executor.d.ts +38 -0
- package/dist/experimental/plan_and_execute/agent_executor.js +35 -0
- package/dist/experimental/plan_and_execute/base.cjs +26 -0
- package/dist/experimental/plan_and_execute/base.d.ts +38 -0
- package/dist/experimental/plan_and_execute/base.js +26 -0
- package/dist/experimental/plan_and_execute/outputParser.cjs +18 -0
- package/dist/experimental/plan_and_execute/outputParser.d.ts +18 -0
- package/dist/experimental/plan_and_execute/outputParser.js +18 -0
- package/dist/llms/ai21.cjs +13 -0
- package/dist/llms/ai21.d.ts +19 -0
- package/dist/llms/ai21.js +13 -0
- package/dist/llms/aleph_alpha.cjs +10 -0
- package/dist/llms/aleph_alpha.d.ts +13 -0
- package/dist/llms/aleph_alpha.js +10 -0
- package/dist/llms/base.cjs +32 -0
- package/dist/llms/base.d.ts +32 -0
- package/dist/llms/base.js +32 -0
- package/dist/llms/bedrock.cjs +21 -0
- package/dist/llms/bedrock.d.ts +9 -0
- package/dist/llms/bedrock.js +21 -0
- package/dist/llms/cohere.cjs +7 -0
- package/dist/llms/cohere.d.ts +8 -0
- package/dist/llms/cohere.js +7 -0
- package/dist/llms/googlevertexai.cjs +23 -0
- package/dist/llms/googlevertexai.d.ts +38 -0
- package/dist/llms/googlevertexai.js +23 -0
- package/dist/llms/hf.cjs +4 -0
- package/dist/llms/hf.d.ts +8 -0
- package/dist/llms/hf.js +4 -0
- package/dist/llms/ollama.cjs +7 -0
- package/dist/llms/ollama.d.ts +5 -0
- package/dist/llms/ollama.js +7 -0
- package/dist/llms/openai-chat.cjs +35 -4
- package/dist/llms/openai-chat.d.ts +28 -4
- package/dist/llms/openai-chat.js +35 -4
- package/dist/llms/openai.cjs +26 -6
- package/dist/llms/openai.d.ts +11 -3
- package/dist/llms/openai.js +26 -6
- package/dist/llms/replicate.cjs +9 -0
- package/dist/llms/replicate.d.ts +12 -0
- package/dist/llms/replicate.js +9 -0
- package/dist/llms/sagemaker_endpoint.cjs +11 -0
- package/dist/llms/sagemaker_endpoint.d.ts +17 -0
- package/dist/llms/sagemaker_endpoint.js +11 -0
- package/dist/load/index.cjs +7 -1
- package/dist/load/index.js +7 -1
- package/dist/load/serializable.cjs +42 -3
- package/dist/load/serializable.d.ts +16 -0
- package/dist/load/serializable.js +40 -2
- package/dist/memory/base.cjs +11 -0
- package/dist/memory/base.d.ts +40 -0
- package/dist/memory/base.js +11 -0
- package/dist/memory/buffer_memory.cjs +19 -0
- package/dist/memory/buffer_memory.d.ts +22 -0
- package/dist/memory/buffer_memory.js +19 -0
- package/dist/memory/buffer_window_memory.cjs +15 -0
- package/dist/memory/buffer_window_memory.d.ts +18 -0
- package/dist/memory/buffer_window_memory.js +15 -0
- package/dist/memory/chat_memory.cjs +16 -0
- package/dist/memory/chat_memory.d.ts +19 -0
- package/dist/memory/chat_memory.js +16 -0
- package/dist/memory/combined_memory.cjs +28 -0
- package/dist/memory/combined_memory.d.ts +33 -0
- package/dist/memory/combined_memory.js +28 -0
- package/dist/memory/entity_memory.cjs +21 -0
- package/dist/memory/entity_memory.d.ts +24 -0
- package/dist/memory/entity_memory.js +21 -0
- package/dist/memory/motorhead_memory.cjs +25 -0
- package/dist/memory/motorhead_memory.d.ts +29 -0
- package/dist/memory/motorhead_memory.js +25 -0
- package/dist/memory/stores/entity/in_memory.cjs +29 -0
- package/dist/memory/stores/entity/in_memory.d.ts +29 -0
- package/dist/memory/stores/entity/in_memory.js +29 -0
- package/dist/memory/summary.cjs +31 -0
- package/dist/memory/summary.d.ts +39 -0
- package/dist/memory/summary.js +31 -0
- package/dist/memory/summary_buffer.cjs +33 -0
- package/dist/memory/summary_buffer.d.ts +37 -0
- package/dist/memory/summary_buffer.js +33 -0
- package/dist/memory/vector_store.cjs +22 -0
- package/dist/memory/vector_store.d.ts +26 -0
- package/dist/memory/vector_store.js +22 -0
- package/dist/memory/zep.cjs +22 -0
- package/dist/memory/zep.d.ts +27 -0
- package/dist/memory/zep.js +22 -0
- package/dist/output_parsers/combining.cjs +15 -0
- package/dist/output_parsers/combining.d.ts +19 -0
- package/dist/output_parsers/combining.js +15 -0
- package/dist/output_parsers/expression.cjs +12 -0
- package/dist/output_parsers/expression.d.ts +12 -0
- package/dist/output_parsers/expression.js +12 -0
- package/dist/output_parsers/expression_type_handlers/array_literal_expression_handler.cjs +18 -0
- package/dist/output_parsers/expression_type_handlers/array_literal_expression_handler.d.ts +18 -0
- package/dist/output_parsers/expression_type_handlers/array_literal_expression_handler.js +18 -0
- package/dist/output_parsers/expression_type_handlers/base.cjs +68 -0
- package/dist/output_parsers/expression_type_handlers/base.d.ts +79 -0
- package/dist/output_parsers/expression_type_handlers/base.js +68 -0
- package/dist/output_parsers/expression_type_handlers/boolean_literal_handler.cjs +18 -0
- package/dist/output_parsers/expression_type_handlers/boolean_literal_handler.d.ts +18 -0
- package/dist/output_parsers/expression_type_handlers/boolean_literal_handler.js +18 -0
- package/dist/output_parsers/expression_type_handlers/call_expression_handler.cjs +22 -0
- package/dist/output_parsers/expression_type_handlers/call_expression_handler.d.ts +22 -0
- package/dist/output_parsers/expression_type_handlers/call_expression_handler.js +22 -0
- package/dist/output_parsers/expression_type_handlers/factory.cjs +20 -0
- package/dist/output_parsers/expression_type_handlers/factory.d.ts +20 -0
- package/dist/output_parsers/expression_type_handlers/factory.js +20 -0
- package/dist/output_parsers/expression_type_handlers/identifier_handler.cjs +19 -0
- package/dist/output_parsers/expression_type_handlers/identifier_handler.d.ts +19 -0
- package/dist/output_parsers/expression_type_handlers/identifier_handler.js +19 -0
- package/dist/output_parsers/expression_type_handlers/member_expression_handler.cjs +17 -0
- package/dist/output_parsers/expression_type_handlers/member_expression_handler.d.ts +17 -0
- package/dist/output_parsers/expression_type_handlers/member_expression_handler.js +17 -0
- package/dist/output_parsers/expression_type_handlers/numeric_literal_handler.cjs +16 -0
- package/dist/output_parsers/expression_type_handlers/numeric_literal_handler.d.ts +16 -0
- package/dist/output_parsers/expression_type_handlers/numeric_literal_handler.js +16 -0
- package/dist/output_parsers/expression_type_handlers/object_literal_expression_handler.cjs +16 -0
- package/dist/output_parsers/expression_type_handlers/object_literal_expression_handler.d.ts +16 -0
- package/dist/output_parsers/expression_type_handlers/object_literal_expression_handler.js +16 -0
- package/dist/output_parsers/expression_type_handlers/property_assignment_handler.cjs +17 -0
- package/dist/output_parsers/expression_type_handlers/property_assignment_handler.d.ts +17 -0
- package/dist/output_parsers/expression_type_handlers/property_assignment_handler.js +17 -0
- package/dist/output_parsers/expression_type_handlers/string_literal_handler.cjs +16 -0
- package/dist/output_parsers/expression_type_handlers/string_literal_handler.d.ts +16 -0
- package/dist/output_parsers/expression_type_handlers/string_literal_handler.js +16 -0
- package/dist/output_parsers/expression_type_handlers/types.d.ts +50 -0
- package/dist/output_parsers/fix.cjs +28 -0
- package/dist/output_parsers/fix.d.ts +26 -0
- package/dist/output_parsers/fix.js +28 -0
- package/dist/output_parsers/list.cjs +27 -0
- package/dist/output_parsers/list.d.ts +25 -0
- package/dist/output_parsers/list.js +27 -0
- package/dist/output_parsers/noop.cjs +21 -0
- package/dist/output_parsers/noop.d.ts +19 -0
- package/dist/output_parsers/noop.js +21 -0
- package/dist/output_parsers/openai_functions.cjs +40 -0
- package/dist/output_parsers/openai_functions.d.ts +37 -0
- package/dist/output_parsers/openai_functions.js +40 -0
- package/dist/output_parsers/regex.cjs +15 -0
- package/dist/output_parsers/regex.d.ts +16 -0
- package/dist/output_parsers/regex.js +15 -0
- package/dist/output_parsers/router.cjs +15 -0
- package/dist/output_parsers/router.d.ts +19 -0
- package/dist/output_parsers/router.js +15 -0
- package/dist/output_parsers/structured.cjs +36 -0
- package/dist/output_parsers/structured.d.ts +38 -0
- package/dist/output_parsers/structured.js +36 -0
- package/dist/prompts/base.cjs +26 -0
- package/dist/prompts/base.d.ts +36 -0
- package/dist/prompts/base.js +26 -0
- package/dist/prompts/chat.cjs +69 -0
- package/dist/prompts/chat.d.ts +76 -0
- package/dist/prompts/chat.js +69 -0
- package/dist/prompts/few_shot.cjs +5 -0
- package/dist/prompts/few_shot.d.ts +5 -0
- package/dist/prompts/few_shot.js +5 -0
- package/dist/prompts/pipeline.cjs +29 -0
- package/dist/prompts/pipeline.d.ts +35 -0
- package/dist/prompts/pipeline.js +29 -0
- package/dist/prompts/prompt.cjs +13 -0
- package/dist/prompts/prompt.d.ts +11 -0
- package/dist/prompts/prompt.js +13 -0
- package/dist/prompts/selectors/LengthBasedExampleSelector.cjs +32 -0
- package/dist/prompts/selectors/LengthBasedExampleSelector.d.ts +33 -0
- package/dist/prompts/selectors/LengthBasedExampleSelector.js +32 -0
- package/dist/prompts/selectors/SemanticSimilarityExampleSelector.cjs +31 -0
- package/dist/prompts/selectors/SemanticSimilarityExampleSelector.d.ts +35 -0
- package/dist/prompts/selectors/SemanticSimilarityExampleSelector.js +31 -0
- package/dist/prompts/selectors/conditional.cjs +30 -0
- package/dist/prompts/selectors/conditional.d.ts +37 -0
- package/dist/prompts/selectors/conditional.js +30 -0
- package/dist/prompts/serde.d.ts +24 -0
- package/dist/prompts/template.d.ts +17 -0
- package/dist/retrievers/amazon_kendra.cjs +65 -0
- package/dist/retrievers/amazon_kendra.d.ts +67 -0
- package/dist/retrievers/amazon_kendra.js +65 -0
- package/dist/retrievers/contextual_compression.cjs +8 -0
- package/dist/retrievers/contextual_compression.d.ts +11 -0
- package/dist/retrievers/contextual_compression.js +8 -0
- package/dist/retrievers/databerry.cjs +8 -0
- package/dist/retrievers/databerry.d.ts +10 -0
- package/dist/retrievers/databerry.js +8 -0
- package/dist/retrievers/document_compressors/chain_extract.cjs +18 -0
- package/dist/retrievers/document_compressors/chain_extract.d.ts +22 -0
- package/dist/retrievers/document_compressors/chain_extract.js +18 -0
- package/dist/retrievers/document_compressors/index.d.ts +9 -0
- package/dist/retrievers/hyde.cjs +12 -0
- package/dist/retrievers/hyde.d.ts +18 -0
- package/dist/retrievers/hyde.js +12 -0
- package/dist/retrievers/metal.cjs +10 -0
- package/dist/retrievers/metal.d.ts +13 -0
- package/dist/retrievers/metal.js +10 -0
- package/dist/retrievers/parent_document.cjs +20 -1
- package/dist/retrievers/parent_document.d.ts +16 -0
- package/dist/retrievers/parent_document.js +20 -1
- package/dist/retrievers/remote/base.cjs +4 -0
- package/dist/retrievers/remote/base.d.ts +28 -0
- package/dist/retrievers/remote/base.js +4 -0
- package/dist/retrievers/remote/chatgpt-plugin.cjs +17 -0
- package/dist/retrievers/remote/chatgpt-plugin.d.ts +21 -0
- package/dist/retrievers/remote/chatgpt-plugin.js +17 -0
- package/dist/retrievers/remote/remote-retriever.cjs +20 -0
- package/dist/retrievers/remote/remote-retriever.d.ts +20 -0
- package/dist/retrievers/remote/remote-retriever.js +20 -0
- package/dist/retrievers/self_query/base.cjs +28 -0
- package/dist/retrievers/self_query/base.d.ts +45 -0
- package/dist/retrievers/self_query/base.js +28 -0
- package/dist/retrievers/self_query/chroma.cjs +6 -0
- package/dist/retrievers/self_query/chroma.d.ts +6 -0
- package/dist/retrievers/self_query/chroma.js +6 -0
- package/dist/retrievers/self_query/functional.cjs +40 -0
- package/dist/retrievers/self_query/functional.d.ts +49 -0
- package/dist/retrievers/self_query/functional.js +40 -0
- package/dist/retrievers/self_query/index.cjs +17 -0
- package/dist/retrievers/self_query/index.d.ts +19 -0
- package/dist/retrievers/self_query/index.js +17 -0
- package/dist/retrievers/self_query/pinecone.cjs +7 -0
- package/dist/retrievers/self_query/pinecone.d.ts +7 -0
- package/dist/retrievers/self_query/pinecone.js +7 -0
- package/dist/retrievers/self_query/supabase.cjs +91 -7
- package/dist/retrievers/self_query/supabase.d.ts +69 -2
- package/dist/retrievers/self_query/supabase.js +92 -8
- package/dist/retrievers/self_query/supabase_utils.cjs +255 -0
- package/dist/retrievers/self_query/supabase_utils.d.ts +102 -0
- package/dist/retrievers/self_query/supabase_utils.js +250 -0
- package/dist/retrievers/self_query/utils.cjs +36 -3
- package/dist/retrievers/self_query/utils.d.ts +20 -0
- package/dist/retrievers/self_query/utils.js +32 -2
- package/dist/retrievers/self_query/weaviate.cjs +45 -14
- package/dist/retrievers/self_query/weaviate.d.ts +42 -0
- package/dist/retrievers/self_query/weaviate.js +43 -12
- package/dist/retrievers/supabase.cjs +33 -0
- package/dist/retrievers/supabase.d.ts +31 -0
- package/dist/retrievers/supabase.js +33 -0
- package/dist/retrievers/time_weighted.cjs +11 -0
- package/dist/retrievers/time_weighted.d.ts +13 -0
- package/dist/retrievers/time_weighted.js +11 -0
- package/dist/retrievers/vespa.cjs +21 -0
- package/dist/retrievers/vespa.d.ts +19 -0
- package/dist/retrievers/vespa.js +21 -0
- package/dist/retrievers/zep.cjs +7 -0
- package/dist/retrievers/zep.d.ts +9 -0
- package/dist/retrievers/zep.js +7 -0
- package/dist/schema/document.cjs +7 -0
- package/dist/schema/document.d.ts +7 -0
- package/dist/schema/document.js +7 -0
- package/dist/schema/index.cjs +100 -0
- package/dist/schema/index.d.ts +80 -0
- package/dist/schema/index.js +100 -0
- package/dist/schema/output_parser.cjs +49 -0
- package/dist/schema/output_parser.d.ts +53 -0
- package/dist/schema/output_parser.js +49 -0
- package/dist/schema/query_constructor.cjs +5 -0
- package/dist/schema/query_constructor.d.ts +5 -0
- package/dist/schema/query_constructor.js +5 -0
- package/dist/schema/retriever.cjs +18 -0
- package/dist/schema/retriever.d.ts +18 -0
- package/dist/schema/retriever.js +18 -0
- package/dist/schema/runnable.cjs +25 -7
- package/dist/schema/runnable.d.ts +6 -0
- package/dist/schema/runnable.js +25 -7
- package/dist/schema/storage.d.ts +20 -0
- package/dist/storage/encoder_backed.cjs +27 -0
- package/dist/storage/encoder_backed.d.ts +27 -0
- package/dist/storage/encoder_backed.js +27 -0
- package/dist/storage/in_memory.cjs +25 -0
- package/dist/storage/in_memory.d.ts +25 -0
- package/dist/storage/in_memory.js +25 -0
- package/dist/storage/ioredis.cjs +25 -0
- package/dist/storage/ioredis.d.ts +25 -0
- package/dist/storage/ioredis.js +25 -0
- package/dist/stores/doc/gcs.cjs +28 -0
- package/dist/stores/doc/gcs.d.ts +33 -0
- package/dist/stores/doc/gcs.js +28 -0
- package/dist/stores/doc/in_memory.cjs +27 -0
- package/dist/stores/doc/in_memory.d.ts +27 -0
- package/dist/stores/doc/in_memory.js +27 -0
- package/dist/stores/file/in_memory.cjs +20 -0
- package/dist/stores/file/in_memory.d.ts +20 -0
- package/dist/stores/file/in_memory.js +20 -0
- package/dist/stores/file/node.cjs +15 -0
- package/dist/stores/file/node.d.ts +15 -0
- package/dist/stores/file/node.js +15 -0
- package/dist/stores/message/dynamodb.cjs +17 -0
- package/dist/stores/message/dynamodb.d.ts +23 -0
- package/dist/stores/message/dynamodb.js +17 -0
- package/dist/stores/message/firestore.cjs +19 -0
- package/dist/stores/message/firestore.d.ts +24 -0
- package/dist/stores/message/firestore.js +19 -0
- package/dist/stores/message/in_memory.cjs +19 -0
- package/dist/stores/message/in_memory.d.ts +19 -0
- package/dist/stores/message/in_memory.js +19 -0
- package/dist/stores/message/ioredis.cjs +17 -0
- package/dist/stores/message/ioredis.d.ts +22 -0
- package/dist/stores/message/ioredis.js +17 -0
- package/dist/stores/message/momento.cjs +18 -0
- package/dist/stores/message/momento.d.ts +18 -0
- package/dist/stores/message/momento.js +18 -0
- package/dist/stores/message/planetscale.cjs +26 -0
- package/dist/stores/message/planetscale.d.ts +30 -0
- package/dist/stores/message/planetscale.js +26 -0
- package/dist/stores/message/redis.cjs +24 -0
- package/dist/stores/message/redis.d.ts +27 -0
- package/dist/stores/message/redis.js +24 -0
- package/dist/stores/message/upstash_redis.cjs +17 -0
- package/dist/stores/message/upstash_redis.d.ts +21 -0
- package/dist/stores/message/upstash_redis.js +17 -0
- package/dist/stores/message/utils.cjs +21 -0
- package/dist/stores/message/utils.d.ts +21 -0
- package/dist/stores/message/utils.js +21 -0
- package/dist/stores/message/xata.cjs +25 -0
- package/dist/stores/message/xata.d.ts +29 -0
- package/dist/stores/message/xata.js +25 -0
- package/dist/text_splitter.cjs +9 -0
- package/dist/text_splitter.d.ts +3 -0
- package/dist/text_splitter.js +9 -0
- package/dist/tools/IFTTTWebhook.cjs +9 -0
- package/dist/tools/IFTTTWebhook.d.ts +7 -0
- package/dist/tools/IFTTTWebhook.js +9 -0
- package/dist/tools/aiplugin.cjs +15 -0
- package/dist/tools/aiplugin.d.ts +17 -0
- package/dist/tools/aiplugin.js +15 -0
- package/dist/tools/aws_lambda.cjs +9 -0
- package/dist/tools/aws_lambda.d.ts +7 -0
- package/dist/tools/aws_lambda.js +9 -0
- package/dist/tools/aws_sfn.cjs +28 -0
- package/dist/tools/aws_sfn.d.ts +22 -0
- package/dist/tools/aws_sfn.js +28 -0
- package/dist/tools/base.cjs +22 -0
- package/dist/tools/base.d.ts +25 -0
- package/dist/tools/base.js +22 -0
- package/dist/tools/bingserpapi.cjs +13 -0
- package/dist/tools/bingserpapi.d.ts +11 -0
- package/dist/tools/bingserpapi.js +13 -0
- package/dist/tools/brave_search.cjs +9 -0
- package/dist/tools/brave_search.d.ts +11 -0
- package/dist/tools/brave_search.js +9 -0
- package/dist/tools/calculator.cjs +7 -0
- package/dist/tools/calculator.d.ts +5 -0
- package/dist/tools/calculator.js +7 -0
- package/dist/tools/chain.cjs +9 -0
- package/dist/tools/chain.d.ts +12 -0
- package/dist/tools/chain.js +9 -0
- package/dist/tools/convert_to_openai.cjs +6 -0
- package/dist/tools/convert_to_openai.d.ts +6 -0
- package/dist/tools/convert_to_openai.js +6 -0
- package/dist/tools/dadjokeapi.cjs +9 -0
- package/dist/tools/dadjokeapi.d.ts +7 -0
- package/dist/tools/dadjokeapi.js +9 -0
- package/dist/tools/dataforseo_api_search.cjs +3 -0
- package/dist/tools/dataforseo_api_search.d.ts +10 -0
- package/dist/tools/dataforseo_api_search.js +3 -0
- package/dist/tools/dynamic.cjs +12 -0
- package/dist/tools/dynamic.d.ts +14 -0
- package/dist/tools/dynamic.js +12 -0
- package/dist/tools/fs.cjs +14 -0
- package/dist/tools/fs.d.ts +16 -0
- package/dist/tools/fs.js +14 -0
- package/dist/tools/google_custom_search.cjs +8 -0
- package/dist/tools/google_custom_search.d.ts +9 -0
- package/dist/tools/google_custom_search.js +8 -0
- package/dist/tools/json.cjs +29 -1
- package/dist/tools/json.d.ts +24 -0
- package/dist/tools/json.js +29 -1
- package/dist/tools/requests.cjs +19 -2
- package/dist/tools/requests.d.ts +17 -0
- package/dist/tools/requests.js +19 -2
- package/dist/tools/searxng_search.cjs +10 -0
- package/dist/tools/searxng_search.d.ts +11 -0
- package/dist/tools/searxng_search.js +10 -0
- package/dist/tools/serpapi.cjs +10 -0
- package/dist/tools/serpapi.d.ts +8 -0
- package/dist/tools/serpapi.js +10 -0
- package/dist/tools/serper.cjs +8 -0
- package/dist/tools/serper.d.ts +10 -0
- package/dist/tools/serper.js +8 -0
- package/dist/tools/sql.cjs +37 -0
- package/dist/tools/sql.d.ts +36 -0
- package/dist/tools/sql.js +37 -0
- package/dist/tools/vectorstore.cjs +14 -0
- package/dist/tools/vectorstore.d.ts +15 -0
- package/dist/tools/vectorstore.js +14 -0
- package/dist/tools/webbrowser.cjs +9 -0
- package/dist/tools/webbrowser.d.ts +13 -0
- package/dist/tools/webbrowser.js +9 -0
- package/dist/tools/wikipedia_query_run.cjs +19 -0
- package/dist/tools/wikipedia_query_run.d.ts +25 -0
- package/dist/tools/wikipedia_query_run.js +19 -0
- package/dist/tools/zapier.cjs +15 -0
- package/dist/tools/zapier.d.ts +13 -0
- package/dist/tools/zapier.js +15 -0
- package/dist/vectorstores/analyticdb.cjs +76 -0
- package/dist/vectorstores/analyticdb.d.ts +80 -0
- package/dist/vectorstores/analyticdb.js +76 -0
- package/dist/vectorstores/base.cjs +16 -0
- package/dist/vectorstores/base.d.ts +27 -0
- package/dist/vectorstores/base.js +16 -0
- package/dist/vectorstores/chroma.cjs +73 -0
- package/dist/vectorstores/chroma.d.ts +84 -0
- package/dist/vectorstores/chroma.js +73 -0
- package/dist/vectorstores/elasticsearch.cjs +74 -0
- package/dist/vectorstores/elasticsearch.d.ts +90 -0
- package/dist/vectorstores/elasticsearch.js +74 -0
- package/dist/vectorstores/faiss.cjs +65 -0
- package/dist/vectorstores/faiss.d.ts +69 -0
- package/dist/vectorstores/faiss.js +65 -0
- package/dist/vectorstores/hnswlib.cjs +71 -0
- package/dist/vectorstores/hnswlib.d.ts +80 -0
- package/dist/vectorstores/hnswlib.js +71 -0
- package/dist/vectorstores/lancedb.cjs +38 -0
- package/dist/vectorstores/lancedb.d.ts +42 -0
- package/dist/vectorstores/lancedb.js +38 -0
- package/dist/vectorstores/memory.cjs +56 -0
- package/dist/vectorstores/memory.d.ts +66 -0
- package/dist/vectorstores/memory.js +56 -0
- package/dist/vectorstores/milvus.cjs +91 -7
- package/dist/vectorstores/milvus.d.ts +80 -1
- package/dist/vectorstores/milvus.js +91 -7
- package/dist/vectorstores/mongo.cjs +45 -0
- package/dist/vectorstores/mongo.d.ts +49 -0
- package/dist/vectorstores/mongo.js +45 -0
- package/dist/vectorstores/mongodb_atlas.cjs +48 -0
- package/dist/vectorstores/mongodb_atlas.d.ts +59 -0
- package/dist/vectorstores/mongodb_atlas.js +48 -0
- package/dist/vectorstores/myscale.cjs +66 -0
- package/dist/vectorstores/myscale.d.ts +80 -0
- package/dist/vectorstores/myscale.js +66 -0
- package/dist/vectorstores/opensearch.cjs +60 -0
- package/dist/vectorstores/opensearch.d.ts +74 -0
- package/dist/vectorstores/opensearch.js +60 -0
- package/dist/vectorstores/pinecone.cjs +54 -0
- package/dist/vectorstores/pinecone.d.ts +58 -0
- package/dist/vectorstores/pinecone.js +54 -0
- package/dist/vectorstores/prisma.cjs +66 -0
- package/dist/vectorstores/prisma.d.ts +66 -0
- package/dist/vectorstores/prisma.js +66 -0
- package/dist/vectorstores/qdrant.cjs +60 -0
- package/dist/vectorstores/qdrant.d.ts +66 -0
- package/dist/vectorstores/qdrant.js +60 -0
- package/dist/vectorstores/redis.cjs +62 -0
- package/dist/vectorstores/redis.d.ts +88 -0
- package/dist/vectorstores/redis.js +62 -0
- package/dist/vectorstores/singlestore.cjs +46 -0
- package/dist/vectorstores/singlestore.d.ts +46 -0
- package/dist/vectorstores/singlestore.js +46 -0
- package/dist/vectorstores/supabase.cjs +50 -0
- package/dist/vectorstores/supabase.d.ts +54 -2
- package/dist/vectorstores/supabase.js +50 -0
- package/dist/vectorstores/tigris.cjs +49 -0
- package/dist/vectorstores/tigris.d.ts +53 -0
- package/dist/vectorstores/tigris.js +49 -0
- package/dist/vectorstores/typeorm.cjs +71 -0
- package/dist/vectorstores/typeorm.d.ts +76 -0
- package/dist/vectorstores/typeorm.js +71 -0
- package/dist/vectorstores/typesense.cjs +5 -0
- package/dist/vectorstores/typesense.d.ts +5 -0
- package/dist/vectorstores/typesense.js +5 -0
- package/dist/vectorstores/usearch.cjs +50 -0
- package/dist/vectorstores/usearch.d.ts +55 -0
- package/dist/vectorstores/usearch.js +50 -0
- package/dist/vectorstores/vectara.cjs +104 -0
- package/dist/vectorstores/vectara.d.ts +72 -0
- package/dist/vectorstores/vectara.js +104 -0
- package/dist/vectorstores/weaviate.cjs +61 -0
- package/dist/vectorstores/weaviate.d.ts +70 -0
- package/dist/vectorstores/weaviate.js +61 -0
- package/dist/vectorstores/xata.cjs +36 -0
- package/dist/vectorstores/xata.d.ts +43 -0
- package/dist/vectorstores/xata.js +36 -0
- package/dist/vectorstores/zep.d.ts +11 -0
- package/package.json +2 -2
|
@@ -33,6 +33,10 @@ const MILVUS_PRIMARY_FIELD_NAME = "langchain_primaryid";
|
|
|
33
33
|
const MILVUS_VECTOR_FIELD_NAME = "langchain_vector";
|
|
34
34
|
const MILVUS_TEXT_FIELD_NAME = "langchain_text";
|
|
35
35
|
const MILVUS_COLLECTION_NAME_PREFIX = "langchain_col";
|
|
36
|
+
/**
|
|
37
|
+
* Class for interacting with a Milvus database. Extends the VectorStore
|
|
38
|
+
* class.
|
|
39
|
+
*/
|
|
36
40
|
class Milvus extends base_js_1.VectorStore {
|
|
37
41
|
get lc_secrets() {
|
|
38
42
|
return {
|
|
@@ -135,21 +139,41 @@ class Milvus extends base_js_1.VectorStore {
|
|
|
135
139
|
this.embeddings = embeddings;
|
|
136
140
|
this.collectionName = args.collectionName ?? genCollectionName();
|
|
137
141
|
this.textField = args.textField ?? MILVUS_TEXT_FIELD_NAME;
|
|
138
|
-
this.autoId = true;
|
|
142
|
+
this.autoId = args.autoId ?? true;
|
|
139
143
|
this.primaryField = args.primaryField ?? MILVUS_PRIMARY_FIELD_NAME;
|
|
140
144
|
this.vectorField = args.vectorField ?? MILVUS_VECTOR_FIELD_NAME;
|
|
141
145
|
this.textFieldMaxLength = args.textFieldMaxLength ?? 0;
|
|
142
146
|
this.fields = [];
|
|
143
147
|
const url = args.url ?? (0, env_js_1.getEnvironmentVariable)("MILVUS_URL");
|
|
144
|
-
|
|
148
|
+
const { address = "", username = "", password = "", ssl, } = args.clientConfig || {};
|
|
149
|
+
// combine args clientConfig and env variables
|
|
150
|
+
const clientConfig = {
|
|
151
|
+
...(args.clientConfig || {}),
|
|
152
|
+
address: url || address,
|
|
153
|
+
username: args.username || username,
|
|
154
|
+
password: args.password || password,
|
|
155
|
+
ssl: args.ssl || ssl,
|
|
156
|
+
};
|
|
157
|
+
if (!clientConfig.address) {
|
|
145
158
|
throw new Error("Milvus URL address is not provided.");
|
|
146
159
|
}
|
|
147
|
-
this.client = new milvus2_sdk_node_1.MilvusClient(
|
|
160
|
+
this.client = new milvus2_sdk_node_1.MilvusClient(clientConfig);
|
|
148
161
|
}
|
|
162
|
+
/**
|
|
163
|
+
* Adds documents to the Milvus database.
|
|
164
|
+
* @param documents Array of Document instances to be added to the database.
|
|
165
|
+
* @returns Promise resolving to void.
|
|
166
|
+
*/
|
|
149
167
|
async addDocuments(documents) {
|
|
150
168
|
const texts = documents.map(({ pageContent }) => pageContent);
|
|
151
169
|
await this.addVectors(await this.embeddings.embedDocuments(texts), documents);
|
|
152
170
|
}
|
|
171
|
+
/**
|
|
172
|
+
* Adds vectors to the Milvus database.
|
|
173
|
+
* @param vectors Array of vectors to be added to the database.
|
|
174
|
+
* @param documents Array of Document instances associated with the vectors.
|
|
175
|
+
* @returns Promise resolving to void.
|
|
176
|
+
*/
|
|
153
177
|
async addVectors(vectors, documents) {
|
|
154
178
|
if (vectors.length === 0) {
|
|
155
179
|
return;
|
|
@@ -204,6 +228,14 @@ class Milvus extends base_js_1.VectorStore {
|
|
|
204
228
|
}
|
|
205
229
|
await this.client.flushSync({ collection_names: [this.collectionName] });
|
|
206
230
|
}
|
|
231
|
+
/**
|
|
232
|
+
* Searches for vectors in the Milvus database that are similar to a given
|
|
233
|
+
* vector.
|
|
234
|
+
* @param query Vector to compare with the vectors in the database.
|
|
235
|
+
* @param k Number of similar vectors to return.
|
|
236
|
+
* @param filter Optional filter to apply to the search.
|
|
237
|
+
* @returns Promise resolving to an array of tuples, each containing a Document instance and a similarity score.
|
|
238
|
+
*/
|
|
207
239
|
async similaritySearchVectorWithScore(query, k, filter) {
|
|
208
240
|
const hasColResp = await this.client.hasCollection({
|
|
209
241
|
collection_name: this.collectionName,
|
|
@@ -266,6 +298,12 @@ class Milvus extends base_js_1.VectorStore {
|
|
|
266
298
|
// console.log("Search result: " + JSON.stringify(results, null, 2));
|
|
267
299
|
return results;
|
|
268
300
|
}
|
|
301
|
+
/**
|
|
302
|
+
* Ensures that a collection exists in the Milvus database.
|
|
303
|
+
* @param vectors Optional array of vectors to be used if a new collection needs to be created.
|
|
304
|
+
* @param documents Optional array of Document instances to be used if a new collection needs to be created.
|
|
305
|
+
* @returns Promise resolving to void.
|
|
306
|
+
*/
|
|
269
307
|
async ensureCollection(vectors, documents) {
|
|
270
308
|
const hasColResp = await this.client.hasCollection({
|
|
271
309
|
collection_name: this.collectionName,
|
|
@@ -283,9 +321,15 @@ class Milvus extends base_js_1.VectorStore {
|
|
|
283
321
|
await this.grabCollectionFields();
|
|
284
322
|
}
|
|
285
323
|
}
|
|
324
|
+
/**
|
|
325
|
+
* Creates a collection in the Milvus database.
|
|
326
|
+
* @param vectors Array of vectors to be added to the new collection.
|
|
327
|
+
* @param documents Array of Document instances to be added to the new collection.
|
|
328
|
+
* @returns Promise resolving to void.
|
|
329
|
+
*/
|
|
286
330
|
async createCollection(vectors, documents) {
|
|
287
331
|
const fieldList = [];
|
|
288
|
-
fieldList.push(...createFieldTypeForMetadata(documents));
|
|
332
|
+
fieldList.push(...createFieldTypeForMetadata(documents, this.primaryField));
|
|
289
333
|
fieldList.push({
|
|
290
334
|
name: this.primaryField,
|
|
291
335
|
description: "Primary key",
|
|
@@ -328,6 +372,10 @@ class Milvus extends base_js_1.VectorStore {
|
|
|
328
372
|
extra_params: this.indexCreateParams,
|
|
329
373
|
});
|
|
330
374
|
}
|
|
375
|
+
/**
|
|
376
|
+
* Retrieves the fields of a collection in the Milvus database.
|
|
377
|
+
* @returns Promise resolving to void.
|
|
378
|
+
*/
|
|
331
379
|
async grabCollectionFields() {
|
|
332
380
|
if (!this.collectionName) {
|
|
333
381
|
throw new Error("Need collection name to grab collection fields");
|
|
@@ -352,7 +400,7 @@ class Milvus extends base_js_1.VectorStore {
|
|
|
352
400
|
if (field.is_primary_key) {
|
|
353
401
|
this.primaryField = field.name;
|
|
354
402
|
}
|
|
355
|
-
const dtype = milvus2_sdk_node_1.DataTypeMap[field.data_type
|
|
403
|
+
const dtype = milvus2_sdk_node_1.DataTypeMap[field.data_type];
|
|
356
404
|
if (dtype === milvus2_sdk_node_1.DataType.FloatVector || dtype === milvus2_sdk_node_1.DataType.BinaryVector) {
|
|
357
405
|
this.vectorField = field.name;
|
|
358
406
|
}
|
|
@@ -361,6 +409,15 @@ class Milvus extends base_js_1.VectorStore {
|
|
|
361
409
|
}
|
|
362
410
|
});
|
|
363
411
|
}
|
|
412
|
+
/**
|
|
413
|
+
* Creates a Milvus instance from a set of texts and their associated
|
|
414
|
+
* metadata.
|
|
415
|
+
* @param texts Array of texts to be added to the database.
|
|
416
|
+
* @param metadatas Array of metadata objects associated with the texts.
|
|
417
|
+
* @param embeddings Embeddings instance used to generate vector embeddings for the texts.
|
|
418
|
+
* @param dbConfig Optional configuration for the Milvus database.
|
|
419
|
+
* @returns Promise resolving to a new Milvus instance.
|
|
420
|
+
*/
|
|
364
421
|
static async fromTexts(texts, metadatas, embeddings, dbConfig) {
|
|
365
422
|
const docs = [];
|
|
366
423
|
for (let i = 0; i < texts.length; i += 1) {
|
|
@@ -373,6 +430,13 @@ class Milvus extends base_js_1.VectorStore {
|
|
|
373
430
|
}
|
|
374
431
|
return Milvus.fromDocuments(docs, embeddings, dbConfig);
|
|
375
432
|
}
|
|
433
|
+
/**
|
|
434
|
+
* Creates a Milvus instance from a set of Document instances.
|
|
435
|
+
* @param docs Array of Document instances to be added to the database.
|
|
436
|
+
* @param embeddings Embeddings instance used to generate vector embeddings for the documents.
|
|
437
|
+
* @param dbConfig Optional configuration for the Milvus database.
|
|
438
|
+
* @returns Promise resolving to a new Milvus instance.
|
|
439
|
+
*/
|
|
376
440
|
static async fromDocuments(docs, embeddings, dbConfig) {
|
|
377
441
|
const args = {
|
|
378
442
|
collectionName: dbConfig?.collectionName || genCollectionName(),
|
|
@@ -383,16 +447,30 @@ class Milvus extends base_js_1.VectorStore {
|
|
|
383
447
|
textField: dbConfig?.textField,
|
|
384
448
|
primaryField: dbConfig?.primaryField,
|
|
385
449
|
vectorField: dbConfig?.vectorField,
|
|
450
|
+
clientConfig: dbConfig?.clientConfig,
|
|
451
|
+
autoId: dbConfig?.autoId,
|
|
386
452
|
};
|
|
387
453
|
const instance = new this(embeddings, args);
|
|
388
454
|
await instance.addDocuments(docs);
|
|
389
455
|
return instance;
|
|
390
456
|
}
|
|
457
|
+
/**
|
|
458
|
+
* Creates a Milvus instance from an existing collection in the Milvus
|
|
459
|
+
* database.
|
|
460
|
+
* @param embeddings Embeddings instance used to generate vector embeddings for the documents in the collection.
|
|
461
|
+
* @param dbConfig Configuration for the Milvus database.
|
|
462
|
+
* @returns Promise resolving to a new Milvus instance.
|
|
463
|
+
*/
|
|
391
464
|
static async fromExistingCollection(embeddings, dbConfig) {
|
|
392
465
|
const instance = new this(embeddings, dbConfig);
|
|
393
466
|
await instance.ensureCollection();
|
|
394
467
|
return instance;
|
|
395
468
|
}
|
|
469
|
+
/**
|
|
470
|
+
* Deletes data from the Milvus database.
|
|
471
|
+
* @param params Object containing a filter to apply to the deletion.
|
|
472
|
+
* @returns Promise resolving to void.
|
|
473
|
+
*/
|
|
396
474
|
async delete(params) {
|
|
397
475
|
const hasColResp = await this.client.hasCollection({
|
|
398
476
|
collection_name: this.collectionName,
|
|
@@ -414,7 +492,7 @@ class Milvus extends base_js_1.VectorStore {
|
|
|
414
492
|
}
|
|
415
493
|
}
|
|
416
494
|
exports.Milvus = Milvus;
|
|
417
|
-
function createFieldTypeForMetadata(documents) {
|
|
495
|
+
function createFieldTypeForMetadata(documents, primaryFieldName) {
|
|
418
496
|
const sampleMetadata = documents[0].metadata;
|
|
419
497
|
let textFieldMaxLength = 0;
|
|
420
498
|
let jsonFieldMaxLength = 0;
|
|
@@ -442,7 +520,13 @@ function createFieldTypeForMetadata(documents) {
|
|
|
442
520
|
const fields = [];
|
|
443
521
|
for (const [key, value] of Object.entries(sampleMetadata)) {
|
|
444
522
|
const type = typeof value;
|
|
445
|
-
if (
|
|
523
|
+
if (key === primaryFieldName) {
|
|
524
|
+
/**
|
|
525
|
+
* skip primary field
|
|
526
|
+
* because we will create primary field in createCollection
|
|
527
|
+
* */
|
|
528
|
+
}
|
|
529
|
+
else if (type === "string") {
|
|
446
530
|
fields.push({
|
|
447
531
|
name: key,
|
|
448
532
|
description: `Metadata String field`,
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
-
import { MilvusClient } from "@zilliz/milvus2-sdk-node";
|
|
1
|
+
import { MilvusClient, ClientConfig } from "@zilliz/milvus2-sdk-node";
|
|
2
2
|
import { Embeddings } from "../embeddings/base.js";
|
|
3
3
|
import { VectorStore } from "./base.js";
|
|
4
4
|
import { Document } from "../document.js";
|
|
5
|
+
/**
|
|
6
|
+
* Interface for the arguments required by the Milvus class constructor.
|
|
7
|
+
*/
|
|
5
8
|
export interface MilvusLibArgs {
|
|
6
9
|
collectionName?: string;
|
|
7
10
|
primaryField?: string;
|
|
@@ -12,8 +15,17 @@ export interface MilvusLibArgs {
|
|
|
12
15
|
username?: string;
|
|
13
16
|
password?: string;
|
|
14
17
|
textFieldMaxLength?: number;
|
|
18
|
+
clientConfig?: ClientConfig;
|
|
19
|
+
autoId?: boolean;
|
|
15
20
|
}
|
|
21
|
+
/**
|
|
22
|
+
* Type representing the type of index used in the Milvus database.
|
|
23
|
+
*/
|
|
16
24
|
type IndexType = "IVF_FLAT" | "IVF_SQ8" | "IVF_PQ" | "HNSW" | "RHNSW_FLAT" | "RHNSW_SQ" | "RHNSW_PQ" | "IVF_HNSW" | "ANNOY";
|
|
25
|
+
/**
|
|
26
|
+
* Interface for the parameters required to create an index in the Milvus
|
|
27
|
+
* database.
|
|
28
|
+
*/
|
|
17
29
|
interface IndexParam {
|
|
18
30
|
params: {
|
|
19
31
|
nprobe?: number;
|
|
@@ -21,6 +33,10 @@ interface IndexParam {
|
|
|
21
33
|
search_k?: number;
|
|
22
34
|
};
|
|
23
35
|
}
|
|
36
|
+
/**
|
|
37
|
+
* Class for interacting with a Milvus database. Extends the VectorStore
|
|
38
|
+
* class.
|
|
39
|
+
*/
|
|
24
40
|
export declare class Milvus extends VectorStore {
|
|
25
41
|
get lc_secrets(): {
|
|
26
42
|
[key: string]: string;
|
|
@@ -44,15 +60,78 @@ export declare class Milvus extends VectorStore {
|
|
|
44
60
|
indexSearchParams: string;
|
|
45
61
|
_vectorstoreType(): string;
|
|
46
62
|
constructor(embeddings: Embeddings, args: MilvusLibArgs);
|
|
63
|
+
/**
|
|
64
|
+
* Adds documents to the Milvus database.
|
|
65
|
+
* @param documents Array of Document instances to be added to the database.
|
|
66
|
+
* @returns Promise resolving to void.
|
|
67
|
+
*/
|
|
47
68
|
addDocuments(documents: Document[]): Promise<void>;
|
|
69
|
+
/**
|
|
70
|
+
* Adds vectors to the Milvus database.
|
|
71
|
+
* @param vectors Array of vectors to be added to the database.
|
|
72
|
+
* @param documents Array of Document instances associated with the vectors.
|
|
73
|
+
* @returns Promise resolving to void.
|
|
74
|
+
*/
|
|
48
75
|
addVectors(vectors: number[][], documents: Document[]): Promise<void>;
|
|
76
|
+
/**
|
|
77
|
+
* Searches for vectors in the Milvus database that are similar to a given
|
|
78
|
+
* vector.
|
|
79
|
+
* @param query Vector to compare with the vectors in the database.
|
|
80
|
+
* @param k Number of similar vectors to return.
|
|
81
|
+
* @param filter Optional filter to apply to the search.
|
|
82
|
+
* @returns Promise resolving to an array of tuples, each containing a Document instance and a similarity score.
|
|
83
|
+
*/
|
|
49
84
|
similaritySearchVectorWithScore(query: number[], k: number, filter?: string): Promise<[Document, number][]>;
|
|
85
|
+
/**
|
|
86
|
+
* Ensures that a collection exists in the Milvus database.
|
|
87
|
+
* @param vectors Optional array of vectors to be used if a new collection needs to be created.
|
|
88
|
+
* @param documents Optional array of Document instances to be used if a new collection needs to be created.
|
|
89
|
+
* @returns Promise resolving to void.
|
|
90
|
+
*/
|
|
50
91
|
ensureCollection(vectors?: number[][], documents?: Document[]): Promise<void>;
|
|
92
|
+
/**
|
|
93
|
+
* Creates a collection in the Milvus database.
|
|
94
|
+
* @param vectors Array of vectors to be added to the new collection.
|
|
95
|
+
* @param documents Array of Document instances to be added to the new collection.
|
|
96
|
+
* @returns Promise resolving to void.
|
|
97
|
+
*/
|
|
51
98
|
createCollection(vectors: number[][], documents: Document[]): Promise<void>;
|
|
99
|
+
/**
|
|
100
|
+
* Retrieves the fields of a collection in the Milvus database.
|
|
101
|
+
* @returns Promise resolving to void.
|
|
102
|
+
*/
|
|
52
103
|
grabCollectionFields(): Promise<void>;
|
|
104
|
+
/**
|
|
105
|
+
* Creates a Milvus instance from a set of texts and their associated
|
|
106
|
+
* metadata.
|
|
107
|
+
* @param texts Array of texts to be added to the database.
|
|
108
|
+
* @param metadatas Array of metadata objects associated with the texts.
|
|
109
|
+
* @param embeddings Embeddings instance used to generate vector embeddings for the texts.
|
|
110
|
+
* @param dbConfig Optional configuration for the Milvus database.
|
|
111
|
+
* @returns Promise resolving to a new Milvus instance.
|
|
112
|
+
*/
|
|
53
113
|
static fromTexts(texts: string[], metadatas: object[] | object, embeddings: Embeddings, dbConfig?: MilvusLibArgs): Promise<Milvus>;
|
|
114
|
+
/**
|
|
115
|
+
* Creates a Milvus instance from a set of Document instances.
|
|
116
|
+
* @param docs Array of Document instances to be added to the database.
|
|
117
|
+
* @param embeddings Embeddings instance used to generate vector embeddings for the documents.
|
|
118
|
+
* @param dbConfig Optional configuration for the Milvus database.
|
|
119
|
+
* @returns Promise resolving to a new Milvus instance.
|
|
120
|
+
*/
|
|
54
121
|
static fromDocuments(docs: Document[], embeddings: Embeddings, dbConfig?: MilvusLibArgs): Promise<Milvus>;
|
|
122
|
+
/**
|
|
123
|
+
* Creates a Milvus instance from an existing collection in the Milvus
|
|
124
|
+
* database.
|
|
125
|
+
* @param embeddings Embeddings instance used to generate vector embeddings for the documents in the collection.
|
|
126
|
+
* @param dbConfig Configuration for the Milvus database.
|
|
127
|
+
* @returns Promise resolving to a new Milvus instance.
|
|
128
|
+
*/
|
|
55
129
|
static fromExistingCollection(embeddings: Embeddings, dbConfig: MilvusLibArgs): Promise<Milvus>;
|
|
130
|
+
/**
|
|
131
|
+
* Deletes data from the Milvus database.
|
|
132
|
+
* @param params Object containing a filter to apply to the deletion.
|
|
133
|
+
* @returns Promise resolving to void.
|
|
134
|
+
*/
|
|
56
135
|
delete(params: {
|
|
57
136
|
filter: string;
|
|
58
137
|
}): Promise<void>;
|
|
@@ -7,6 +7,10 @@ const MILVUS_PRIMARY_FIELD_NAME = "langchain_primaryid";
|
|
|
7
7
|
const MILVUS_VECTOR_FIELD_NAME = "langchain_vector";
|
|
8
8
|
const MILVUS_TEXT_FIELD_NAME = "langchain_text";
|
|
9
9
|
const MILVUS_COLLECTION_NAME_PREFIX = "langchain_col";
|
|
10
|
+
/**
|
|
11
|
+
* Class for interacting with a Milvus database. Extends the VectorStore
|
|
12
|
+
* class.
|
|
13
|
+
*/
|
|
10
14
|
export class Milvus extends VectorStore {
|
|
11
15
|
get lc_secrets() {
|
|
12
16
|
return {
|
|
@@ -109,21 +113,41 @@ export class Milvus extends VectorStore {
|
|
|
109
113
|
this.embeddings = embeddings;
|
|
110
114
|
this.collectionName = args.collectionName ?? genCollectionName();
|
|
111
115
|
this.textField = args.textField ?? MILVUS_TEXT_FIELD_NAME;
|
|
112
|
-
this.autoId = true;
|
|
116
|
+
this.autoId = args.autoId ?? true;
|
|
113
117
|
this.primaryField = args.primaryField ?? MILVUS_PRIMARY_FIELD_NAME;
|
|
114
118
|
this.vectorField = args.vectorField ?? MILVUS_VECTOR_FIELD_NAME;
|
|
115
119
|
this.textFieldMaxLength = args.textFieldMaxLength ?? 0;
|
|
116
120
|
this.fields = [];
|
|
117
121
|
const url = args.url ?? getEnvironmentVariable("MILVUS_URL");
|
|
118
|
-
|
|
122
|
+
const { address = "", username = "", password = "", ssl, } = args.clientConfig || {};
|
|
123
|
+
// combine args clientConfig and env variables
|
|
124
|
+
const clientConfig = {
|
|
125
|
+
...(args.clientConfig || {}),
|
|
126
|
+
address: url || address,
|
|
127
|
+
username: args.username || username,
|
|
128
|
+
password: args.password || password,
|
|
129
|
+
ssl: args.ssl || ssl,
|
|
130
|
+
};
|
|
131
|
+
if (!clientConfig.address) {
|
|
119
132
|
throw new Error("Milvus URL address is not provided.");
|
|
120
133
|
}
|
|
121
|
-
this.client = new MilvusClient(
|
|
134
|
+
this.client = new MilvusClient(clientConfig);
|
|
122
135
|
}
|
|
136
|
+
/**
|
|
137
|
+
* Adds documents to the Milvus database.
|
|
138
|
+
* @param documents Array of Document instances to be added to the database.
|
|
139
|
+
* @returns Promise resolving to void.
|
|
140
|
+
*/
|
|
123
141
|
async addDocuments(documents) {
|
|
124
142
|
const texts = documents.map(({ pageContent }) => pageContent);
|
|
125
143
|
await this.addVectors(await this.embeddings.embedDocuments(texts), documents);
|
|
126
144
|
}
|
|
145
|
+
/**
|
|
146
|
+
* Adds vectors to the Milvus database.
|
|
147
|
+
* @param vectors Array of vectors to be added to the database.
|
|
148
|
+
* @param documents Array of Document instances associated with the vectors.
|
|
149
|
+
* @returns Promise resolving to void.
|
|
150
|
+
*/
|
|
127
151
|
async addVectors(vectors, documents) {
|
|
128
152
|
if (vectors.length === 0) {
|
|
129
153
|
return;
|
|
@@ -178,6 +202,14 @@ export class Milvus extends VectorStore {
|
|
|
178
202
|
}
|
|
179
203
|
await this.client.flushSync({ collection_names: [this.collectionName] });
|
|
180
204
|
}
|
|
205
|
+
/**
|
|
206
|
+
* Searches for vectors in the Milvus database that are similar to a given
|
|
207
|
+
* vector.
|
|
208
|
+
* @param query Vector to compare with the vectors in the database.
|
|
209
|
+
* @param k Number of similar vectors to return.
|
|
210
|
+
* @param filter Optional filter to apply to the search.
|
|
211
|
+
* @returns Promise resolving to an array of tuples, each containing a Document instance and a similarity score.
|
|
212
|
+
*/
|
|
181
213
|
async similaritySearchVectorWithScore(query, k, filter) {
|
|
182
214
|
const hasColResp = await this.client.hasCollection({
|
|
183
215
|
collection_name: this.collectionName,
|
|
@@ -240,6 +272,12 @@ export class Milvus extends VectorStore {
|
|
|
240
272
|
// console.log("Search result: " + JSON.stringify(results, null, 2));
|
|
241
273
|
return results;
|
|
242
274
|
}
|
|
275
|
+
/**
|
|
276
|
+
* Ensures that a collection exists in the Milvus database.
|
|
277
|
+
* @param vectors Optional array of vectors to be used if a new collection needs to be created.
|
|
278
|
+
* @param documents Optional array of Document instances to be used if a new collection needs to be created.
|
|
279
|
+
* @returns Promise resolving to void.
|
|
280
|
+
*/
|
|
243
281
|
async ensureCollection(vectors, documents) {
|
|
244
282
|
const hasColResp = await this.client.hasCollection({
|
|
245
283
|
collection_name: this.collectionName,
|
|
@@ -257,9 +295,15 @@ export class Milvus extends VectorStore {
|
|
|
257
295
|
await this.grabCollectionFields();
|
|
258
296
|
}
|
|
259
297
|
}
|
|
298
|
+
/**
|
|
299
|
+
* Creates a collection in the Milvus database.
|
|
300
|
+
* @param vectors Array of vectors to be added to the new collection.
|
|
301
|
+
* @param documents Array of Document instances to be added to the new collection.
|
|
302
|
+
* @returns Promise resolving to void.
|
|
303
|
+
*/
|
|
260
304
|
async createCollection(vectors, documents) {
|
|
261
305
|
const fieldList = [];
|
|
262
|
-
fieldList.push(...createFieldTypeForMetadata(documents));
|
|
306
|
+
fieldList.push(...createFieldTypeForMetadata(documents, this.primaryField));
|
|
263
307
|
fieldList.push({
|
|
264
308
|
name: this.primaryField,
|
|
265
309
|
description: "Primary key",
|
|
@@ -302,6 +346,10 @@ export class Milvus extends VectorStore {
|
|
|
302
346
|
extra_params: this.indexCreateParams,
|
|
303
347
|
});
|
|
304
348
|
}
|
|
349
|
+
/**
|
|
350
|
+
* Retrieves the fields of a collection in the Milvus database.
|
|
351
|
+
* @returns Promise resolving to void.
|
|
352
|
+
*/
|
|
305
353
|
async grabCollectionFields() {
|
|
306
354
|
if (!this.collectionName) {
|
|
307
355
|
throw new Error("Need collection name to grab collection fields");
|
|
@@ -326,7 +374,7 @@ export class Milvus extends VectorStore {
|
|
|
326
374
|
if (field.is_primary_key) {
|
|
327
375
|
this.primaryField = field.name;
|
|
328
376
|
}
|
|
329
|
-
const dtype = DataTypeMap[field.data_type
|
|
377
|
+
const dtype = DataTypeMap[field.data_type];
|
|
330
378
|
if (dtype === DataType.FloatVector || dtype === DataType.BinaryVector) {
|
|
331
379
|
this.vectorField = field.name;
|
|
332
380
|
}
|
|
@@ -335,6 +383,15 @@ export class Milvus extends VectorStore {
|
|
|
335
383
|
}
|
|
336
384
|
});
|
|
337
385
|
}
|
|
386
|
+
/**
|
|
387
|
+
* Creates a Milvus instance from a set of texts and their associated
|
|
388
|
+
* metadata.
|
|
389
|
+
* @param texts Array of texts to be added to the database.
|
|
390
|
+
* @param metadatas Array of metadata objects associated with the texts.
|
|
391
|
+
* @param embeddings Embeddings instance used to generate vector embeddings for the texts.
|
|
392
|
+
* @param dbConfig Optional configuration for the Milvus database.
|
|
393
|
+
* @returns Promise resolving to a new Milvus instance.
|
|
394
|
+
*/
|
|
338
395
|
static async fromTexts(texts, metadatas, embeddings, dbConfig) {
|
|
339
396
|
const docs = [];
|
|
340
397
|
for (let i = 0; i < texts.length; i += 1) {
|
|
@@ -347,6 +404,13 @@ export class Milvus extends VectorStore {
|
|
|
347
404
|
}
|
|
348
405
|
return Milvus.fromDocuments(docs, embeddings, dbConfig);
|
|
349
406
|
}
|
|
407
|
+
/**
|
|
408
|
+
* Creates a Milvus instance from a set of Document instances.
|
|
409
|
+
* @param docs Array of Document instances to be added to the database.
|
|
410
|
+
* @param embeddings Embeddings instance used to generate vector embeddings for the documents.
|
|
411
|
+
* @param dbConfig Optional configuration for the Milvus database.
|
|
412
|
+
* @returns Promise resolving to a new Milvus instance.
|
|
413
|
+
*/
|
|
350
414
|
static async fromDocuments(docs, embeddings, dbConfig) {
|
|
351
415
|
const args = {
|
|
352
416
|
collectionName: dbConfig?.collectionName || genCollectionName(),
|
|
@@ -357,16 +421,30 @@ export class Milvus extends VectorStore {
|
|
|
357
421
|
textField: dbConfig?.textField,
|
|
358
422
|
primaryField: dbConfig?.primaryField,
|
|
359
423
|
vectorField: dbConfig?.vectorField,
|
|
424
|
+
clientConfig: dbConfig?.clientConfig,
|
|
425
|
+
autoId: dbConfig?.autoId,
|
|
360
426
|
};
|
|
361
427
|
const instance = new this(embeddings, args);
|
|
362
428
|
await instance.addDocuments(docs);
|
|
363
429
|
return instance;
|
|
364
430
|
}
|
|
431
|
+
/**
|
|
432
|
+
* Creates a Milvus instance from an existing collection in the Milvus
|
|
433
|
+
* database.
|
|
434
|
+
* @param embeddings Embeddings instance used to generate vector embeddings for the documents in the collection.
|
|
435
|
+
* @param dbConfig Configuration for the Milvus database.
|
|
436
|
+
* @returns Promise resolving to a new Milvus instance.
|
|
437
|
+
*/
|
|
365
438
|
static async fromExistingCollection(embeddings, dbConfig) {
|
|
366
439
|
const instance = new this(embeddings, dbConfig);
|
|
367
440
|
await instance.ensureCollection();
|
|
368
441
|
return instance;
|
|
369
442
|
}
|
|
443
|
+
/**
|
|
444
|
+
* Deletes data from the Milvus database.
|
|
445
|
+
* @param params Object containing a filter to apply to the deletion.
|
|
446
|
+
* @returns Promise resolving to void.
|
|
447
|
+
*/
|
|
370
448
|
async delete(params) {
|
|
371
449
|
const hasColResp = await this.client.hasCollection({
|
|
372
450
|
collection_name: this.collectionName,
|
|
@@ -387,7 +465,7 @@ export class Milvus extends VectorStore {
|
|
|
387
465
|
}
|
|
388
466
|
}
|
|
389
467
|
}
|
|
390
|
-
function createFieldTypeForMetadata(documents) {
|
|
468
|
+
function createFieldTypeForMetadata(documents, primaryFieldName) {
|
|
391
469
|
const sampleMetadata = documents[0].metadata;
|
|
392
470
|
let textFieldMaxLength = 0;
|
|
393
471
|
let jsonFieldMaxLength = 0;
|
|
@@ -415,7 +493,13 @@ function createFieldTypeForMetadata(documents) {
|
|
|
415
493
|
const fields = [];
|
|
416
494
|
for (const [key, value] of Object.entries(sampleMetadata)) {
|
|
417
495
|
const type = typeof value;
|
|
418
|
-
if (
|
|
496
|
+
if (key === primaryFieldName) {
|
|
497
|
+
/**
|
|
498
|
+
* skip primary field
|
|
499
|
+
* because we will create primary field in createCollection
|
|
500
|
+
* */
|
|
501
|
+
}
|
|
502
|
+
else if (type === "string") {
|
|
419
503
|
fields.push({
|
|
420
504
|
name: key,
|
|
421
505
|
description: `Metadata String field`,
|
|
@@ -32,10 +32,25 @@ class MongoVectorStore extends base_js_1.VectorStore {
|
|
|
32
32
|
this.client = args.client;
|
|
33
33
|
this.indexName = args.indexName || "default";
|
|
34
34
|
}
|
|
35
|
+
/**
|
|
36
|
+
* Method that adds documents to the MongoDB collection. It first converts
|
|
37
|
+
* the documents into vectors using the `embedDocuments` method of the
|
|
38
|
+
* `embeddings` instance, and then adds these vectors to the collection.
|
|
39
|
+
* @param documents Array of Document instances to be added to the MongoDB collection.
|
|
40
|
+
* @returns Promise that resolves when the documents have been added to the collection.
|
|
41
|
+
*/
|
|
35
42
|
async addDocuments(documents) {
|
|
36
43
|
const texts = documents.map(({ pageContent }) => pageContent);
|
|
37
44
|
return this.addVectors(await this.embeddings.embedDocuments(texts), documents);
|
|
38
45
|
}
|
|
46
|
+
/**
|
|
47
|
+
* Method that adds vectors to the MongoDB collection. It creates an array
|
|
48
|
+
* of items, each containing the content, embedding, and metadata of a
|
|
49
|
+
* document, and then inserts these items into the collection.
|
|
50
|
+
* @param vectors Array of vectors to be added to the MongoDB collection.
|
|
51
|
+
* @param documents Array of Document instances corresponding to the vectors.
|
|
52
|
+
* @returns Promise that resolves when the vectors have been added to the collection.
|
|
53
|
+
*/
|
|
39
54
|
async addVectors(vectors, documents) {
|
|
40
55
|
const items = vectors.map((embedding, idx) => ({
|
|
41
56
|
content: documents[idx].pageContent,
|
|
@@ -44,6 +59,16 @@ class MongoVectorStore extends base_js_1.VectorStore {
|
|
|
44
59
|
}));
|
|
45
60
|
await this.collection.insertMany(items);
|
|
46
61
|
}
|
|
62
|
+
/**
|
|
63
|
+
* Method that performs a similarity search on vectors and returns the
|
|
64
|
+
* documents and their similarity scores. It constructs a MongoDB
|
|
65
|
+
* aggregation pipeline, applies any post-query pipeline steps if
|
|
66
|
+
* provided, and then executes the pipeline to retrieve the results.
|
|
67
|
+
* @param query Query vector for the similarity search.
|
|
68
|
+
* @param k Number of nearest neighbors to return.
|
|
69
|
+
* @param filter Optional filter for the query, which can include post-query pipeline steps.
|
|
70
|
+
* @returns Promise that resolves to an array of tuples, each containing a Document instance and its similarity score.
|
|
71
|
+
*/
|
|
47
72
|
async similaritySearchVectorWithScore(query, k, filter) {
|
|
48
73
|
// Search has to be the first pipeline step (https://www.mongodb.com/docs/atlas/atlas-search/query-syntax/#behavior)
|
|
49
74
|
// We hopefully this changes in the future
|
|
@@ -97,6 +122,17 @@ class MongoVectorStore extends base_js_1.VectorStore {
|
|
|
97
122
|
}
|
|
98
123
|
return ret;
|
|
99
124
|
}
|
|
125
|
+
/**
|
|
126
|
+
* Static method that creates a `MongoVectorStore` instance from an array
|
|
127
|
+
* of texts. It creates Document instances from the texts and their
|
|
128
|
+
* corresponding metadata, and then calls the `fromDocuments` method to
|
|
129
|
+
* create the `MongoVectorStore` instance.
|
|
130
|
+
* @param texts Array of texts to be converted into Document instances.
|
|
131
|
+
* @param metadatas Array or single object of metadata corresponding to the texts.
|
|
132
|
+
* @param embeddings Embeddings instance used to convert the texts into vectors.
|
|
133
|
+
* @param dbConfig Configuration for the MongoDB database.
|
|
134
|
+
* @returns Promise that resolves to a new MongoVectorStore instance.
|
|
135
|
+
*/
|
|
100
136
|
static async fromTexts(texts, metadatas, embeddings, dbConfig) {
|
|
101
137
|
const docs = [];
|
|
102
138
|
for (let i = 0; i < texts.length; i += 1) {
|
|
@@ -109,6 +145,15 @@ class MongoVectorStore extends base_js_1.VectorStore {
|
|
|
109
145
|
}
|
|
110
146
|
return MongoVectorStore.fromDocuments(docs, embeddings, dbConfig);
|
|
111
147
|
}
|
|
148
|
+
/**
|
|
149
|
+
* Static method that creates a `MongoVectorStore` instance from an array
|
|
150
|
+
* of Document instances. It creates a new `MongoVectorStore` instance,
|
|
151
|
+
* adds the documents to it, and then returns the instance.
|
|
152
|
+
* @param docs Array of Document instances to be added to the `MongoVectorStore`.
|
|
153
|
+
* @param embeddings Embeddings instance used to convert the documents into vectors.
|
|
154
|
+
* @param dbConfig Configuration for the MongoDB database.
|
|
155
|
+
* @returns Promise that resolves to a new MongoVectorStore instance.
|
|
156
|
+
*/
|
|
112
157
|
static async fromDocuments(docs, embeddings, dbConfig) {
|
|
113
158
|
const instance = new this(embeddings, dbConfig);
|
|
114
159
|
await instance.addDocuments(docs);
|
|
@@ -8,6 +8,10 @@ export type MongoLibArgs = {
|
|
|
8
8
|
collection: Collection<MongoDocument>;
|
|
9
9
|
indexName?: string;
|
|
10
10
|
};
|
|
11
|
+
/**
|
|
12
|
+
* Type that defines an extension for MongoDB queries. It includes an
|
|
13
|
+
* optional array of post-query pipeline steps.
|
|
14
|
+
*/
|
|
11
15
|
export type MongoVectorStoreQueryExtension = {
|
|
12
16
|
postQueryPipelineSteps?: MongoDocument[];
|
|
13
17
|
};
|
|
@@ -19,9 +23,54 @@ export declare class MongoVectorStore extends VectorStore {
|
|
|
19
23
|
indexName: string;
|
|
20
24
|
_vectorstoreType(): string;
|
|
21
25
|
constructor(embeddings: Embeddings, args: MongoLibArgs);
|
|
26
|
+
/**
|
|
27
|
+
* Method that adds documents to the MongoDB collection. It first converts
|
|
28
|
+
* the documents into vectors using the `embedDocuments` method of the
|
|
29
|
+
* `embeddings` instance, and then adds these vectors to the collection.
|
|
30
|
+
* @param documents Array of Document instances to be added to the MongoDB collection.
|
|
31
|
+
* @returns Promise that resolves when the documents have been added to the collection.
|
|
32
|
+
*/
|
|
22
33
|
addDocuments(documents: Document[]): Promise<void>;
|
|
34
|
+
/**
|
|
35
|
+
* Method that adds vectors to the MongoDB collection. It creates an array
|
|
36
|
+
* of items, each containing the content, embedding, and metadata of a
|
|
37
|
+
* document, and then inserts these items into the collection.
|
|
38
|
+
* @param vectors Array of vectors to be added to the MongoDB collection.
|
|
39
|
+
* @param documents Array of Document instances corresponding to the vectors.
|
|
40
|
+
* @returns Promise that resolves when the vectors have been added to the collection.
|
|
41
|
+
*/
|
|
23
42
|
addVectors(vectors: number[][], documents: Document[]): Promise<void>;
|
|
43
|
+
/**
|
|
44
|
+
* Method that performs a similarity search on vectors and returns the
|
|
45
|
+
* documents and their similarity scores. It constructs a MongoDB
|
|
46
|
+
* aggregation pipeline, applies any post-query pipeline steps if
|
|
47
|
+
* provided, and then executes the pipeline to retrieve the results.
|
|
48
|
+
* @param query Query vector for the similarity search.
|
|
49
|
+
* @param k Number of nearest neighbors to return.
|
|
50
|
+
* @param filter Optional filter for the query, which can include post-query pipeline steps.
|
|
51
|
+
* @returns Promise that resolves to an array of tuples, each containing a Document instance and its similarity score.
|
|
52
|
+
*/
|
|
24
53
|
similaritySearchVectorWithScore(query: number[], k: number, filter?: MongoVectorStoreQueryExtension): Promise<[Document, number][]>;
|
|
54
|
+
/**
|
|
55
|
+
* Static method that creates a `MongoVectorStore` instance from an array
|
|
56
|
+
* of texts. It creates Document instances from the texts and their
|
|
57
|
+
* corresponding metadata, and then calls the `fromDocuments` method to
|
|
58
|
+
* create the `MongoVectorStore` instance.
|
|
59
|
+
* @param texts Array of texts to be converted into Document instances.
|
|
60
|
+
* @param metadatas Array or single object of metadata corresponding to the texts.
|
|
61
|
+
* @param embeddings Embeddings instance used to convert the texts into vectors.
|
|
62
|
+
* @param dbConfig Configuration for the MongoDB database.
|
|
63
|
+
* @returns Promise that resolves to a new MongoVectorStore instance.
|
|
64
|
+
*/
|
|
25
65
|
static fromTexts(texts: string[], metadatas: object[] | object, embeddings: Embeddings, dbConfig: MongoLibArgs): Promise<MongoVectorStore>;
|
|
66
|
+
/**
|
|
67
|
+
* Static method that creates a `MongoVectorStore` instance from an array
|
|
68
|
+
* of Document instances. It creates a new `MongoVectorStore` instance,
|
|
69
|
+
* adds the documents to it, and then returns the instance.
|
|
70
|
+
* @param docs Array of Document instances to be added to the `MongoVectorStore`.
|
|
71
|
+
* @param embeddings Embeddings instance used to convert the documents into vectors.
|
|
72
|
+
* @param dbConfig Configuration for the MongoDB database.
|
|
73
|
+
* @returns Promise that resolves to a new MongoVectorStore instance.
|
|
74
|
+
*/
|
|
26
75
|
static fromDocuments(docs: Document[], embeddings: Embeddings, dbConfig: MongoLibArgs): Promise<MongoVectorStore>;
|
|
27
76
|
}
|