langchain 0.0.131 → 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 +25 -0
- package/dist/agents/chat/index.d.ts +32 -0
- package/dist/agents/chat/index.js +25 -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 +22 -0
- package/dist/agents/chat_convo/index.d.ts +31 -0
- package/dist/agents/chat_convo/index.js +22 -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 +6 -0
- package/dist/agents/executor.d.ts +11 -0
- package/dist/agents/executor.js +6 -0
- package/dist/agents/initialize.d.ts +5 -0
- package/dist/agents/mrkl/index.cjs +17 -0
- package/dist/agents/mrkl/index.d.ts +24 -0
- package/dist/agents/mrkl/index.js +17 -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 +43 -0
- package/dist/agents/openai/index.d.ts +39 -0
- package/dist/agents/openai/index.js +43 -0
- package/dist/agents/structured_chat/index.cjs +32 -0
- package/dist/agents/structured_chat/index.d.ts +40 -0
- package/dist/agents/structured_chat/index.js +32 -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 +11 -0
- package/dist/callbacks/base.d.ts +20 -0
- package/dist/callbacks/base.js +11 -0
- 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.d.ts +4 -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.d.ts +10 -0
- package/dist/chains/constitutional_ai/constitutional_chain.cjs +17 -0
- package/dist/chains/constitutional_ai/constitutional_chain.d.ts +20 -0
- package/dist/chains/constitutional_ai/constitutional_chain.js +17 -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 +4 -0
- package/dist/chains/conversation.d.ts +4 -0
- package/dist/chains/conversation.js +4 -0
- package/dist/chains/conversational_retrieval_chain.cjs +21 -0
- package/dist/chains/conversational_retrieval_chain.d.ts +26 -1
- package/dist/chains/conversational_retrieval_chain.js +21 -0
- package/dist/chains/llm_chain.d.ts +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 +27 -0
- package/dist/chains/openai_functions/openapi.d.ts +3 -0
- package/dist/chains/openai_functions/openapi.js +27 -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 +5 -0
- package/dist/chains/openai_moderation.d.ts +8 -0
- package/dist/chains/openai_moderation.js +5 -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 +12 -0
- package/dist/chains/retrieval_qa.d.ts +15 -0
- package/dist/chains/retrieval_qa.js +12 -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 +10 -0
- package/dist/chains/router/multi_route.d.ts +25 -0
- package/dist/chains/router/multi_route.js +10 -0
- package/dist/chains/sequential_chain.d.ts +6 -0
- package/dist/chains/serde.d.ts +58 -0
- package/dist/chains/sql_db/sql_db_chain.cjs +13 -0
- package/dist/chains/sql_db/sql_db_chain.d.ts +18 -0
- package/dist/chains/sql_db/sql_db_chain.js +13 -0
- package/dist/chains/summarization/load.d.ts +4 -0
- package/dist/chains/transform.cjs +6 -0
- package/dist/chains/transform.d.ts +11 -0
- package/dist/chains/transform.js +6 -0
- package/dist/chains/vector_db_qa.cjs +15 -0
- package/dist/chains/vector_db_qa.d.ts +21 -0
- package/dist/chains/vector_db_qa.js +15 -0
- package/dist/chat_models/anthropic.cjs +24 -4
- package/dist/chat_models/anthropic.d.ts +14 -0
- package/dist/chat_models/anthropic.js +24 -4
- package/dist/chat_models/baiduwenxin.cjs +16 -0
- package/dist/chat_models/baiduwenxin.d.ts +18 -0
- package/dist/chat_models/baiduwenxin.js +16 -0
- 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 +3 -0
- package/dist/chat_models/googlepalm.d.ts +6 -0
- package/dist/chat_models/googlepalm.js +3 -0
- package/dist/chat_models/googlevertexai.cjs +32 -0
- package/dist/chat_models/googlevertexai.d.ts +49 -0
- package/dist/chat_models/googlevertexai.js +32 -0
- package/dist/chat_models/ollama.cjs +11 -0
- package/dist/chat_models/ollama.d.ts +15 -0
- package/dist/chat_models/ollama.js +11 -0
- 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 +3 -0
- package/dist/document_transformers/html_to_text.d.ts +3 -0
- package/dist/document_transformers/html_to_text.js +3 -0
- package/dist/document_transformers/mozilla_readability.cjs +4 -0
- package/dist/document_transformers/mozilla_readability.d.ts +4 -0
- package/dist/document_transformers/mozilla_readability.js +4 -0
- package/dist/document_transformers/openai_functions.cjs +3 -0
- package/dist/document_transformers/openai_functions.d.ts +3 -0
- package/dist/document_transformers/openai_functions.js +3 -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/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 +65 -0
- package/dist/experimental/babyagi/agent.d.ts +75 -0
- package/dist/experimental/babyagi/agent.js +65 -0
- package/dist/experimental/babyagi/task_creation.cjs +10 -0
- package/dist/experimental/babyagi/task_creation.d.ts +10 -0
- package/dist/experimental/babyagi/task_creation.js +10 -0
- package/dist/experimental/babyagi/task_execution.cjs +9 -0
- package/dist/experimental/babyagi/task_execution.d.ts +9 -0
- package/dist/experimental/babyagi/task_execution.js +9 -0
- package/dist/experimental/babyagi/task_prioritization.cjs +8 -0
- package/dist/experimental/babyagi/task_prioritization.d.ts +8 -0
- package/dist/experimental/babyagi/task_prioritization.js +8 -0
- package/dist/experimental/generative_agents/generative_agent.cjs +74 -0
- package/dist/experimental/generative_agents/generative_agent.d.ts +79 -0
- package/dist/experimental/generative_agents/generative_agent.js +74 -0
- package/dist/experimental/generative_agents/generative_agent_memory.cjs +113 -0
- package/dist/experimental/generative_agents/generative_agent_memory.d.ts +113 -0
- package/dist/experimental/generative_agents/generative_agent_memory.js +113 -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 +32 -0
- package/dist/experimental/plan_and_execute/agent_executor.d.ts +37 -0
- package/dist/experimental/plan_and_execute/agent_executor.js +32 -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 +4 -0
- package/dist/llms/cohere.d.ts +7 -0
- package/dist/llms/cohere.js +4 -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 +4 -0
- package/dist/llms/ollama.d.ts +4 -0
- package/dist/llms/ollama.js +4 -0
- package/dist/llms/openai-chat.cjs +17 -0
- package/dist/llms/openai-chat.d.ts +22 -0
- package/dist/llms/openai-chat.js +17 -0
- package/dist/llms/openai.cjs +6 -0
- package/dist/llms/openai.d.ts +6 -0
- package/dist/llms/openai.js +6 -0
- package/dist/llms/replicate.cjs +6 -0
- package/dist/llms/replicate.d.ts +11 -0
- package/dist/llms/replicate.js +6 -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/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 +12 -0
- package/dist/output_parsers/combining.d.ts +18 -0
- package/dist/output_parsers/combining.js +12 -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 +25 -0
- package/dist/output_parsers/fix.d.ts +25 -0
- package/dist/output_parsers/fix.js +25 -0
- package/dist/output_parsers/list.cjs +24 -0
- package/dist/output_parsers/list.d.ts +24 -0
- package/dist/output_parsers/list.js +24 -0
- package/dist/output_parsers/noop.cjs +18 -0
- package/dist/output_parsers/noop.d.ts +18 -0
- package/dist/output_parsers/noop.js +18 -0
- package/dist/output_parsers/openai_functions.cjs +31 -0
- package/dist/output_parsers/openai_functions.d.ts +34 -0
- package/dist/output_parsers/openai_functions.js +31 -0
- package/dist/output_parsers/regex.cjs +12 -0
- package/dist/output_parsers/regex.d.ts +15 -0
- package/dist/output_parsers/regex.js +12 -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 +30 -0
- package/dist/output_parsers/structured.d.ts +36 -0
- package/dist/output_parsers/structured.js +30 -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 +48 -0
- package/dist/prompts/chat.d.ts +69 -0
- package/dist/prompts/chat.js +48 -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 +26 -0
- package/dist/prompts/pipeline.d.ts +34 -0
- package/dist/prompts/pipeline.js +26 -0
- package/dist/prompts/prompt.cjs +10 -0
- package/dist/prompts/prompt.d.ts +10 -0
- package/dist/prompts/prompt.js +10 -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 +62 -0
- package/dist/retrievers/amazon_kendra.d.ts +66 -0
- package/dist/retrievers/amazon_kendra.js +62 -0
- package/dist/retrievers/contextual_compression.cjs +5 -0
- package/dist/retrievers/contextual_compression.d.ts +10 -0
- package/dist/retrievers/contextual_compression.js +5 -0
- package/dist/retrievers/databerry.cjs +5 -0
- package/dist/retrievers/databerry.d.ts +9 -0
- package/dist/retrievers/databerry.js +5 -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 +9 -0
- package/dist/retrievers/hyde.d.ts +17 -0
- package/dist/retrievers/hyde.js +9 -0
- package/dist/retrievers/metal.cjs +7 -0
- package/dist/retrievers/metal.d.ts +12 -0
- package/dist/retrievers/metal.js +7 -0
- package/dist/retrievers/parent_document.cjs +17 -1
- package/dist/retrievers/parent_document.d.ts +15 -0
- package/dist/retrievers/parent_document.js +17 -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 +14 -0
- package/dist/retrievers/self_query/index.d.ts +18 -0
- package/dist/retrievers/self_query/index.js +14 -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 +63 -0
- package/dist/retrievers/self_query/supabase.d.ts +67 -0
- package/dist/retrievers/self_query/supabase.js +63 -0
- package/dist/retrievers/self_query/supabase_utils.cjs +78 -0
- package/dist/retrievers/self_query/supabase_utils.d.ts +78 -0
- package/dist/retrievers/self_query/supabase_utils.js +78 -0
- package/dist/retrievers/self_query/utils.cjs +17 -0
- package/dist/retrievers/self_query/utils.d.ts +17 -0
- package/dist/retrievers/self_query/utils.js +17 -0
- package/dist/retrievers/self_query/weaviate.cjs +42 -0
- package/dist/retrievers/self_query/weaviate.d.ts +42 -0
- package/dist/retrievers/self_query/weaviate.js +42 -0
- package/dist/retrievers/supabase.cjs +30 -0
- package/dist/retrievers/supabase.d.ts +30 -0
- package/dist/retrievers/supabase.js +30 -0
- package/dist/retrievers/time_weighted.cjs +8 -0
- package/dist/retrievers/time_weighted.d.ts +12 -0
- package/dist/retrievers/time_weighted.js +8 -0
- package/dist/retrievers/vespa.cjs +18 -0
- package/dist/retrievers/vespa.d.ts +18 -0
- package/dist/retrievers/vespa.js +18 -0
- package/dist/retrievers/zep.cjs +4 -0
- package/dist/retrievers/zep.d.ts +8 -0
- package/dist/retrievers/zep.js +4 -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 +70 -0
- package/dist/schema/index.d.ts +70 -0
- package/dist/schema/index.js +70 -0
- package/dist/schema/output_parser.cjs +43 -0
- package/dist/schema/output_parser.d.ts +51 -0
- package/dist/schema/output_parser.js +43 -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/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/tools/IFTTTWebhook.cjs +6 -0
- package/dist/tools/IFTTTWebhook.d.ts +6 -0
- package/dist/tools/IFTTTWebhook.js +6 -0
- package/dist/tools/aiplugin.cjs +12 -0
- package/dist/tools/aiplugin.d.ts +16 -0
- package/dist/tools/aiplugin.js +12 -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 +19 -0
- package/dist/tools/aws_sfn.d.ts +19 -0
- package/dist/tools/aws_sfn.js +19 -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 +10 -0
- package/dist/tools/bingserpapi.d.ts +10 -0
- package/dist/tools/bingserpapi.js +10 -0
- package/dist/tools/brave_search.cjs +6 -0
- package/dist/tools/brave_search.d.ts +10 -0
- package/dist/tools/brave_search.js +6 -0
- package/dist/tools/calculator.cjs +4 -0
- package/dist/tools/calculator.d.ts +4 -0
- package/dist/tools/calculator.js +4 -0
- package/dist/tools/chain.cjs +6 -0
- package/dist/tools/chain.d.ts +11 -0
- package/dist/tools/chain.js +6 -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 +6 -0
- package/dist/tools/dadjokeapi.d.ts +6 -0
- package/dist/tools/dadjokeapi.js +6 -0
- package/dist/tools/dataforseo_api_search.d.ts +9 -0
- package/dist/tools/dynamic.cjs +6 -0
- package/dist/tools/dynamic.d.ts +12 -0
- package/dist/tools/dynamic.js +6 -0
- package/dist/tools/fs.cjs +8 -0
- package/dist/tools/fs.d.ts +14 -0
- package/dist/tools/fs.js +8 -0
- package/dist/tools/google_custom_search.cjs +5 -0
- package/dist/tools/google_custom_search.d.ts +8 -0
- package/dist/tools/google_custom_search.js +5 -0
- package/dist/tools/json.cjs +22 -0
- package/dist/tools/json.d.ts +22 -0
- package/dist/tools/json.js +22 -0
- package/dist/tools/requests.cjs +11 -0
- package/dist/tools/requests.d.ts +15 -0
- package/dist/tools/requests.js +11 -0
- package/dist/tools/searxng_search.cjs +7 -0
- package/dist/tools/searxng_search.d.ts +10 -0
- package/dist/tools/searxng_search.js +7 -0
- package/dist/tools/serpapi.cjs +7 -0
- package/dist/tools/serpapi.d.ts +7 -0
- package/dist/tools/serpapi.js +7 -0
- package/dist/tools/serper.cjs +5 -0
- package/dist/tools/serper.d.ts +9 -0
- package/dist/tools/serper.js +5 -0
- package/dist/tools/sql.cjs +25 -0
- package/dist/tools/sql.d.ts +32 -0
- package/dist/tools/sql.js +25 -0
- package/dist/tools/vectorstore.cjs +11 -0
- package/dist/tools/vectorstore.d.ts +14 -0
- package/dist/tools/vectorstore.js +11 -0
- package/dist/tools/webbrowser.cjs +6 -0
- package/dist/tools/webbrowser.d.ts +12 -0
- package/dist/tools/webbrowser.js +6 -0
- package/dist/tools/wikipedia_query_run.cjs +16 -0
- package/dist/tools/wikipedia_query_run.d.ts +24 -0
- package/dist/tools/wikipedia_query_run.js +16 -0
- package/dist/tools/zapier.cjs +12 -0
- package/dist/tools/zapier.d.ts +12 -0
- package/dist/tools/zapier.js +12 -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 +13 -0
- package/dist/vectorstores/base.d.ts +26 -0
- package/dist/vectorstores/base.js +13 -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 +73 -0
- package/dist/vectorstores/elasticsearch.d.ts +90 -0
- package/dist/vectorstores/elasticsearch.js +73 -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 +53 -0
- 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
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import { VectorStore } from "./base.js";
|
|
2
2
|
import { Document } from "../document.js";
|
|
3
|
+
/**
|
|
4
|
+
* A wrapper for an open-source database for vector-search with persistent
|
|
5
|
+
* storage. It simplifies retrieval, filtering, and management of
|
|
6
|
+
* embeddings.
|
|
7
|
+
*/
|
|
3
8
|
export class LanceDB extends VectorStore {
|
|
4
9
|
constructor(embeddings, args) {
|
|
5
10
|
super(embeddings, args);
|
|
@@ -19,6 +24,11 @@ export class LanceDB extends VectorStore {
|
|
|
19
24
|
this.embeddings = embeddings;
|
|
20
25
|
this.textKey = args.textKey || "text";
|
|
21
26
|
}
|
|
27
|
+
/**
|
|
28
|
+
* Adds documents to the database.
|
|
29
|
+
* @param documents The documents to be added.
|
|
30
|
+
* @returns A Promise that resolves when the documents have been added.
|
|
31
|
+
*/
|
|
22
32
|
async addDocuments(documents) {
|
|
23
33
|
const texts = documents.map(({ pageContent }) => pageContent);
|
|
24
34
|
return this.addVectors(await this.embeddings.embedDocuments(texts), documents);
|
|
@@ -26,6 +36,12 @@ export class LanceDB extends VectorStore {
|
|
|
26
36
|
_vectorstoreType() {
|
|
27
37
|
return "lancedb";
|
|
28
38
|
}
|
|
39
|
+
/**
|
|
40
|
+
* Adds vectors and their corresponding documents to the database.
|
|
41
|
+
* @param vectors The vectors to be added.
|
|
42
|
+
* @param documents The corresponding documents to be added.
|
|
43
|
+
* @returns A Promise that resolves when the vectors and documents have been added.
|
|
44
|
+
*/
|
|
29
45
|
async addVectors(vectors, documents) {
|
|
30
46
|
if (vectors.length === 0) {
|
|
31
47
|
return;
|
|
@@ -46,6 +62,13 @@ export class LanceDB extends VectorStore {
|
|
|
46
62
|
}
|
|
47
63
|
await this.table.add(data);
|
|
48
64
|
}
|
|
65
|
+
/**
|
|
66
|
+
* Performs a similarity search on the vectors in the database and returns
|
|
67
|
+
* the documents and their scores.
|
|
68
|
+
* @param query The query vector.
|
|
69
|
+
* @param k The number of results to return.
|
|
70
|
+
* @returns A Promise that resolves with an array of tuples, each containing a Document and its score.
|
|
71
|
+
*/
|
|
49
72
|
async similaritySearchVectorWithScore(query, k) {
|
|
50
73
|
const results = await this.table.search(query).limit(k).execute();
|
|
51
74
|
const docsAndScore = [];
|
|
@@ -66,6 +89,14 @@ export class LanceDB extends VectorStore {
|
|
|
66
89
|
});
|
|
67
90
|
return docsAndScore;
|
|
68
91
|
}
|
|
92
|
+
/**
|
|
93
|
+
* Creates a new instance of LanceDB from texts.
|
|
94
|
+
* @param texts The texts to be converted into documents.
|
|
95
|
+
* @param metadatas The metadata for the texts.
|
|
96
|
+
* @param embeddings The embeddings to be managed.
|
|
97
|
+
* @param dbConfig The configuration for the LanceDB instance.
|
|
98
|
+
* @returns A Promise that resolves with a new instance of LanceDB.
|
|
99
|
+
*/
|
|
69
100
|
static async fromTexts(texts, metadatas, embeddings, dbConfig) {
|
|
70
101
|
const docs = [];
|
|
71
102
|
for (let i = 0; i < texts.length; i += 1) {
|
|
@@ -78,6 +109,13 @@ export class LanceDB extends VectorStore {
|
|
|
78
109
|
}
|
|
79
110
|
return LanceDB.fromDocuments(docs, embeddings, dbConfig);
|
|
80
111
|
}
|
|
112
|
+
/**
|
|
113
|
+
* Creates a new instance of LanceDB from documents.
|
|
114
|
+
* @param docs The documents to be added to the database.
|
|
115
|
+
* @param embeddings The embeddings to be managed.
|
|
116
|
+
* @param dbConfig The configuration for the LanceDB instance.
|
|
117
|
+
* @returns A Promise that resolves with a new instance of LanceDB.
|
|
118
|
+
*/
|
|
81
119
|
static async fromDocuments(docs, embeddings, dbConfig) {
|
|
82
120
|
const instance = new this(embeddings, dbConfig);
|
|
83
121
|
await instance.addDocuments(docs);
|
|
@@ -4,6 +4,11 @@ exports.MemoryVectorStore = void 0;
|
|
|
4
4
|
const ml_distance_1 = require("ml-distance");
|
|
5
5
|
const base_js_1 = require("./base.cjs");
|
|
6
6
|
const document_js_1 = require("../document.cjs");
|
|
7
|
+
/**
|
|
8
|
+
* Class that extends `VectorStore` to store vectors in memory. Provides
|
|
9
|
+
* methods for adding documents, performing similarity searches, and
|
|
10
|
+
* creating instances from texts, documents, or an existing index.
|
|
11
|
+
*/
|
|
7
12
|
class MemoryVectorStore extends base_js_1.VectorStore {
|
|
8
13
|
_vectorstoreType() {
|
|
9
14
|
return "memory";
|
|
@@ -24,10 +29,25 @@ class MemoryVectorStore extends base_js_1.VectorStore {
|
|
|
24
29
|
});
|
|
25
30
|
this.similarity = similarity ?? ml_distance_1.similarity.cosine;
|
|
26
31
|
}
|
|
32
|
+
/**
|
|
33
|
+
* Method to add documents to the memory vector store. It extracts the
|
|
34
|
+
* text from each document, generates embeddings for them, and adds the
|
|
35
|
+
* resulting vectors to the store.
|
|
36
|
+
* @param documents Array of `Document` instances to be added to the store.
|
|
37
|
+
* @returns Promise that resolves when all documents have been added.
|
|
38
|
+
*/
|
|
27
39
|
async addDocuments(documents) {
|
|
28
40
|
const texts = documents.map(({ pageContent }) => pageContent);
|
|
29
41
|
return this.addVectors(await this.embeddings.embedDocuments(texts), documents);
|
|
30
42
|
}
|
|
43
|
+
/**
|
|
44
|
+
* Method to add vectors to the memory vector store. It creates
|
|
45
|
+
* `MemoryVector` instances for each vector and document pair and adds
|
|
46
|
+
* them to the store.
|
|
47
|
+
* @param vectors Array of vectors to be added to the store.
|
|
48
|
+
* @param documents Array of `Document` instances corresponding to the vectors.
|
|
49
|
+
* @returns Promise that resolves when all vectors have been added.
|
|
50
|
+
*/
|
|
31
51
|
async addVectors(vectors, documents) {
|
|
32
52
|
const memoryVectors = vectors.map((embedding, idx) => ({
|
|
33
53
|
content: documents[idx].pageContent,
|
|
@@ -36,6 +56,16 @@ class MemoryVectorStore extends base_js_1.VectorStore {
|
|
|
36
56
|
}));
|
|
37
57
|
this.memoryVectors = this.memoryVectors.concat(memoryVectors);
|
|
38
58
|
}
|
|
59
|
+
/**
|
|
60
|
+
* Method to perform a similarity search in the memory vector store. It
|
|
61
|
+
* calculates the similarity between the query vector and each vector in
|
|
62
|
+
* the store, sorts the results by similarity, and returns the top `k`
|
|
63
|
+
* results along with their scores.
|
|
64
|
+
* @param query Query vector to compare against the vectors in the store.
|
|
65
|
+
* @param k Number of top results to return.
|
|
66
|
+
* @param filter Optional filter function to apply to the vectors before performing the search.
|
|
67
|
+
* @returns Promise that resolves with an array of tuples, each containing a `Document` and its similarity score.
|
|
68
|
+
*/
|
|
39
69
|
async similaritySearchVectorWithScore(query, k, filter) {
|
|
40
70
|
const filterFunction = (memoryVector) => {
|
|
41
71
|
if (!filter) {
|
|
@@ -64,6 +94,16 @@ class MemoryVectorStore extends base_js_1.VectorStore {
|
|
|
64
94
|
]);
|
|
65
95
|
return result;
|
|
66
96
|
}
|
|
97
|
+
/**
|
|
98
|
+
* Static method to create a `MemoryVectorStore` instance from an array of
|
|
99
|
+
* texts. It creates a `Document` for each text and metadata pair, and
|
|
100
|
+
* adds them to the store.
|
|
101
|
+
* @param texts Array of texts to be added to the store.
|
|
102
|
+
* @param metadatas Array or single object of metadata corresponding to the texts.
|
|
103
|
+
* @param embeddings `Embeddings` instance used to generate embeddings for the texts.
|
|
104
|
+
* @param dbConfig Optional `MemoryVectorStoreArgs` to configure the `MemoryVectorStore` instance.
|
|
105
|
+
* @returns Promise that resolves with a new `MemoryVectorStore` instance.
|
|
106
|
+
*/
|
|
67
107
|
static async fromTexts(texts, metadatas, embeddings, dbConfig) {
|
|
68
108
|
const docs = [];
|
|
69
109
|
for (let i = 0; i < texts.length; i += 1) {
|
|
@@ -76,11 +116,27 @@ class MemoryVectorStore extends base_js_1.VectorStore {
|
|
|
76
116
|
}
|
|
77
117
|
return MemoryVectorStore.fromDocuments(docs, embeddings, dbConfig);
|
|
78
118
|
}
|
|
119
|
+
/**
|
|
120
|
+
* Static method to create a `MemoryVectorStore` instance from an array of
|
|
121
|
+
* `Document` instances. It adds the documents to the store.
|
|
122
|
+
* @param docs Array of `Document` instances to be added to the store.
|
|
123
|
+
* @param embeddings `Embeddings` instance used to generate embeddings for the documents.
|
|
124
|
+
* @param dbConfig Optional `MemoryVectorStoreArgs` to configure the `MemoryVectorStore` instance.
|
|
125
|
+
* @returns Promise that resolves with a new `MemoryVectorStore` instance.
|
|
126
|
+
*/
|
|
79
127
|
static async fromDocuments(docs, embeddings, dbConfig) {
|
|
80
128
|
const instance = new this(embeddings, dbConfig);
|
|
81
129
|
await instance.addDocuments(docs);
|
|
82
130
|
return instance;
|
|
83
131
|
}
|
|
132
|
+
/**
|
|
133
|
+
* Static method to create a `MemoryVectorStore` instance from an existing
|
|
134
|
+
* index. It creates a new `MemoryVectorStore` instance without adding any
|
|
135
|
+
* documents or vectors.
|
|
136
|
+
* @param embeddings `Embeddings` instance used to generate embeddings for the documents.
|
|
137
|
+
* @param dbConfig Optional `MemoryVectorStoreArgs` to configure the `MemoryVectorStore` instance.
|
|
138
|
+
* @returns Promise that resolves with a new `MemoryVectorStore` instance.
|
|
139
|
+
*/
|
|
84
140
|
static async fromExistingIndex(embeddings, dbConfig) {
|
|
85
141
|
const instance = new this(embeddings, dbConfig);
|
|
86
142
|
return instance;
|
|
@@ -2,25 +2,91 @@ import { similarity as ml_distance_similarity } from "ml-distance";
|
|
|
2
2
|
import { VectorStore } from "./base.js";
|
|
3
3
|
import { Embeddings } from "../embeddings/base.js";
|
|
4
4
|
import { Document } from "../document.js";
|
|
5
|
+
/**
|
|
6
|
+
* Interface representing a vector in memory. It includes the content
|
|
7
|
+
* (text), the corresponding embedding (vector), and any associated
|
|
8
|
+
* metadata.
|
|
9
|
+
*/
|
|
5
10
|
interface MemoryVector {
|
|
6
11
|
content: string;
|
|
7
12
|
embedding: number[];
|
|
8
13
|
metadata: Record<string, any>;
|
|
9
14
|
}
|
|
15
|
+
/**
|
|
16
|
+
* Interface for the arguments that can be passed to the
|
|
17
|
+
* `MemoryVectorStore` constructor. It includes an optional `similarity`
|
|
18
|
+
* function.
|
|
19
|
+
*/
|
|
10
20
|
export interface MemoryVectorStoreArgs {
|
|
11
21
|
similarity?: typeof ml_distance_similarity.cosine;
|
|
12
22
|
}
|
|
23
|
+
/**
|
|
24
|
+
* Class that extends `VectorStore` to store vectors in memory. Provides
|
|
25
|
+
* methods for adding documents, performing similarity searches, and
|
|
26
|
+
* creating instances from texts, documents, or an existing index.
|
|
27
|
+
*/
|
|
13
28
|
export declare class MemoryVectorStore extends VectorStore {
|
|
14
29
|
FilterType: (doc: Document) => boolean;
|
|
15
30
|
memoryVectors: MemoryVector[];
|
|
16
31
|
similarity: typeof ml_distance_similarity.cosine;
|
|
17
32
|
_vectorstoreType(): string;
|
|
18
33
|
constructor(embeddings: Embeddings, { similarity, ...rest }?: MemoryVectorStoreArgs);
|
|
34
|
+
/**
|
|
35
|
+
* Method to add documents to the memory vector store. It extracts the
|
|
36
|
+
* text from each document, generates embeddings for them, and adds the
|
|
37
|
+
* resulting vectors to the store.
|
|
38
|
+
* @param documents Array of `Document` instances to be added to the store.
|
|
39
|
+
* @returns Promise that resolves when all documents have been added.
|
|
40
|
+
*/
|
|
19
41
|
addDocuments(documents: Document[]): Promise<void>;
|
|
42
|
+
/**
|
|
43
|
+
* Method to add vectors to the memory vector store. It creates
|
|
44
|
+
* `MemoryVector` instances for each vector and document pair and adds
|
|
45
|
+
* them to the store.
|
|
46
|
+
* @param vectors Array of vectors to be added to the store.
|
|
47
|
+
* @param documents Array of `Document` instances corresponding to the vectors.
|
|
48
|
+
* @returns Promise that resolves when all vectors have been added.
|
|
49
|
+
*/
|
|
20
50
|
addVectors(vectors: number[][], documents: Document[]): Promise<void>;
|
|
51
|
+
/**
|
|
52
|
+
* Method to perform a similarity search in the memory vector store. It
|
|
53
|
+
* calculates the similarity between the query vector and each vector in
|
|
54
|
+
* the store, sorts the results by similarity, and returns the top `k`
|
|
55
|
+
* results along with their scores.
|
|
56
|
+
* @param query Query vector to compare against the vectors in the store.
|
|
57
|
+
* @param k Number of top results to return.
|
|
58
|
+
* @param filter Optional filter function to apply to the vectors before performing the search.
|
|
59
|
+
* @returns Promise that resolves with an array of tuples, each containing a `Document` and its similarity score.
|
|
60
|
+
*/
|
|
21
61
|
similaritySearchVectorWithScore(query: number[], k: number, filter?: this["FilterType"]): Promise<[Document, number][]>;
|
|
62
|
+
/**
|
|
63
|
+
* Static method to create a `MemoryVectorStore` instance from an array of
|
|
64
|
+
* texts. It creates a `Document` for each text and metadata pair, and
|
|
65
|
+
* adds them to the store.
|
|
66
|
+
* @param texts Array of texts to be added to the store.
|
|
67
|
+
* @param metadatas Array or single object of metadata corresponding to the texts.
|
|
68
|
+
* @param embeddings `Embeddings` instance used to generate embeddings for the texts.
|
|
69
|
+
* @param dbConfig Optional `MemoryVectorStoreArgs` to configure the `MemoryVectorStore` instance.
|
|
70
|
+
* @returns Promise that resolves with a new `MemoryVectorStore` instance.
|
|
71
|
+
*/
|
|
22
72
|
static fromTexts(texts: string[], metadatas: object[] | object, embeddings: Embeddings, dbConfig?: MemoryVectorStoreArgs): Promise<MemoryVectorStore>;
|
|
73
|
+
/**
|
|
74
|
+
* Static method to create a `MemoryVectorStore` instance from an array of
|
|
75
|
+
* `Document` instances. It adds the documents to the store.
|
|
76
|
+
* @param docs Array of `Document` instances to be added to the store.
|
|
77
|
+
* @param embeddings `Embeddings` instance used to generate embeddings for the documents.
|
|
78
|
+
* @param dbConfig Optional `MemoryVectorStoreArgs` to configure the `MemoryVectorStore` instance.
|
|
79
|
+
* @returns Promise that resolves with a new `MemoryVectorStore` instance.
|
|
80
|
+
*/
|
|
23
81
|
static fromDocuments(docs: Document[], embeddings: Embeddings, dbConfig?: MemoryVectorStoreArgs): Promise<MemoryVectorStore>;
|
|
82
|
+
/**
|
|
83
|
+
* Static method to create a `MemoryVectorStore` instance from an existing
|
|
84
|
+
* index. It creates a new `MemoryVectorStore` instance without adding any
|
|
85
|
+
* documents or vectors.
|
|
86
|
+
* @param embeddings `Embeddings` instance used to generate embeddings for the documents.
|
|
87
|
+
* @param dbConfig Optional `MemoryVectorStoreArgs` to configure the `MemoryVectorStore` instance.
|
|
88
|
+
* @returns Promise that resolves with a new `MemoryVectorStore` instance.
|
|
89
|
+
*/
|
|
24
90
|
static fromExistingIndex(embeddings: Embeddings, dbConfig?: MemoryVectorStoreArgs): Promise<MemoryVectorStore>;
|
|
25
91
|
}
|
|
26
92
|
export {};
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import { similarity as ml_distance_similarity } from "ml-distance";
|
|
2
2
|
import { VectorStore } from "./base.js";
|
|
3
3
|
import { Document } from "../document.js";
|
|
4
|
+
/**
|
|
5
|
+
* Class that extends `VectorStore` to store vectors in memory. Provides
|
|
6
|
+
* methods for adding documents, performing similarity searches, and
|
|
7
|
+
* creating instances from texts, documents, or an existing index.
|
|
8
|
+
*/
|
|
4
9
|
export class MemoryVectorStore extends VectorStore {
|
|
5
10
|
_vectorstoreType() {
|
|
6
11
|
return "memory";
|
|
@@ -21,10 +26,25 @@ export class MemoryVectorStore extends VectorStore {
|
|
|
21
26
|
});
|
|
22
27
|
this.similarity = similarity ?? ml_distance_similarity.cosine;
|
|
23
28
|
}
|
|
29
|
+
/**
|
|
30
|
+
* Method to add documents to the memory vector store. It extracts the
|
|
31
|
+
* text from each document, generates embeddings for them, and adds the
|
|
32
|
+
* resulting vectors to the store.
|
|
33
|
+
* @param documents Array of `Document` instances to be added to the store.
|
|
34
|
+
* @returns Promise that resolves when all documents have been added.
|
|
35
|
+
*/
|
|
24
36
|
async addDocuments(documents) {
|
|
25
37
|
const texts = documents.map(({ pageContent }) => pageContent);
|
|
26
38
|
return this.addVectors(await this.embeddings.embedDocuments(texts), documents);
|
|
27
39
|
}
|
|
40
|
+
/**
|
|
41
|
+
* Method to add vectors to the memory vector store. It creates
|
|
42
|
+
* `MemoryVector` instances for each vector and document pair and adds
|
|
43
|
+
* them to the store.
|
|
44
|
+
* @param vectors Array of vectors to be added to the store.
|
|
45
|
+
* @param documents Array of `Document` instances corresponding to the vectors.
|
|
46
|
+
* @returns Promise that resolves when all vectors have been added.
|
|
47
|
+
*/
|
|
28
48
|
async addVectors(vectors, documents) {
|
|
29
49
|
const memoryVectors = vectors.map((embedding, idx) => ({
|
|
30
50
|
content: documents[idx].pageContent,
|
|
@@ -33,6 +53,16 @@ export class MemoryVectorStore extends VectorStore {
|
|
|
33
53
|
}));
|
|
34
54
|
this.memoryVectors = this.memoryVectors.concat(memoryVectors);
|
|
35
55
|
}
|
|
56
|
+
/**
|
|
57
|
+
* Method to perform a similarity search in the memory vector store. It
|
|
58
|
+
* calculates the similarity between the query vector and each vector in
|
|
59
|
+
* the store, sorts the results by similarity, and returns the top `k`
|
|
60
|
+
* results along with their scores.
|
|
61
|
+
* @param query Query vector to compare against the vectors in the store.
|
|
62
|
+
* @param k Number of top results to return.
|
|
63
|
+
* @param filter Optional filter function to apply to the vectors before performing the search.
|
|
64
|
+
* @returns Promise that resolves with an array of tuples, each containing a `Document` and its similarity score.
|
|
65
|
+
*/
|
|
36
66
|
async similaritySearchVectorWithScore(query, k, filter) {
|
|
37
67
|
const filterFunction = (memoryVector) => {
|
|
38
68
|
if (!filter) {
|
|
@@ -61,6 +91,16 @@ export class MemoryVectorStore extends VectorStore {
|
|
|
61
91
|
]);
|
|
62
92
|
return result;
|
|
63
93
|
}
|
|
94
|
+
/**
|
|
95
|
+
* Static method to create a `MemoryVectorStore` instance from an array of
|
|
96
|
+
* texts. It creates a `Document` for each text and metadata pair, and
|
|
97
|
+
* adds them to the store.
|
|
98
|
+
* @param texts Array of texts to be added to the store.
|
|
99
|
+
* @param metadatas Array or single object of metadata corresponding to the texts.
|
|
100
|
+
* @param embeddings `Embeddings` instance used to generate embeddings for the texts.
|
|
101
|
+
* @param dbConfig Optional `MemoryVectorStoreArgs` to configure the `MemoryVectorStore` instance.
|
|
102
|
+
* @returns Promise that resolves with a new `MemoryVectorStore` instance.
|
|
103
|
+
*/
|
|
64
104
|
static async fromTexts(texts, metadatas, embeddings, dbConfig) {
|
|
65
105
|
const docs = [];
|
|
66
106
|
for (let i = 0; i < texts.length; i += 1) {
|
|
@@ -73,11 +113,27 @@ export class MemoryVectorStore extends VectorStore {
|
|
|
73
113
|
}
|
|
74
114
|
return MemoryVectorStore.fromDocuments(docs, embeddings, dbConfig);
|
|
75
115
|
}
|
|
116
|
+
/**
|
|
117
|
+
* Static method to create a `MemoryVectorStore` instance from an array of
|
|
118
|
+
* `Document` instances. It adds the documents to the store.
|
|
119
|
+
* @param docs Array of `Document` instances to be added to the store.
|
|
120
|
+
* @param embeddings `Embeddings` instance used to generate embeddings for the documents.
|
|
121
|
+
* @param dbConfig Optional `MemoryVectorStoreArgs` to configure the `MemoryVectorStore` instance.
|
|
122
|
+
* @returns Promise that resolves with a new `MemoryVectorStore` instance.
|
|
123
|
+
*/
|
|
76
124
|
static async fromDocuments(docs, embeddings, dbConfig) {
|
|
77
125
|
const instance = new this(embeddings, dbConfig);
|
|
78
126
|
await instance.addDocuments(docs);
|
|
79
127
|
return instance;
|
|
80
128
|
}
|
|
129
|
+
/**
|
|
130
|
+
* Static method to create a `MemoryVectorStore` instance from an existing
|
|
131
|
+
* index. It creates a new `MemoryVectorStore` instance without adding any
|
|
132
|
+
* documents or vectors.
|
|
133
|
+
* @param embeddings `Embeddings` instance used to generate embeddings for the documents.
|
|
134
|
+
* @param dbConfig Optional `MemoryVectorStoreArgs` to configure the `MemoryVectorStore` instance.
|
|
135
|
+
* @returns Promise that resolves with a new `MemoryVectorStore` instance.
|
|
136
|
+
*/
|
|
81
137
|
static async fromExistingIndex(embeddings, dbConfig) {
|
|
82
138
|
const instance = new this(embeddings, dbConfig);
|
|
83
139
|
return instance;
|
|
@@ -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`,
|