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
|
@@ -2,17 +2,34 @@ import type { Collection, Document as MongoDBDocument } from "mongodb";
|
|
|
2
2
|
import { MaxMarginalRelevanceSearchOptions, VectorStore } from "./base.js";
|
|
3
3
|
import { Embeddings } from "../embeddings/base.js";
|
|
4
4
|
import { Document } from "../document.js";
|
|
5
|
+
/**
|
|
6
|
+
* Type that defines the arguments required to initialize the
|
|
7
|
+
* MongoDBAtlasVectorSearch class. It includes the MongoDB collection,
|
|
8
|
+
* index name, text key, and embedding key.
|
|
9
|
+
*/
|
|
5
10
|
export type MongoDBAtlasVectorSearchLibArgs = {
|
|
6
11
|
readonly collection: Collection<MongoDBDocument>;
|
|
7
12
|
readonly indexName?: string;
|
|
8
13
|
readonly textKey?: string;
|
|
9
14
|
readonly embeddingKey?: string;
|
|
10
15
|
};
|
|
16
|
+
/**
|
|
17
|
+
* Type that defines the filter used in the
|
|
18
|
+
* similaritySearchVectorWithScore and maxMarginalRelevanceSearch methods.
|
|
19
|
+
* It includes pre-filter, post-filter pipeline, and a flag to include
|
|
20
|
+
* embeddings.
|
|
21
|
+
*/
|
|
11
22
|
type MongoDBAtlasFilter = {
|
|
12
23
|
preFilter?: MongoDBDocument;
|
|
13
24
|
postFilterPipeline?: MongoDBDocument[];
|
|
14
25
|
includeEmbeddings?: boolean;
|
|
15
26
|
} & MongoDBDocument;
|
|
27
|
+
/**
|
|
28
|
+
* Class that is a wrapper around MongoDB Atlas Vector Search. It is used
|
|
29
|
+
* to store embeddings in MongoDB documents, create a vector search index,
|
|
30
|
+
* and perform K-Nearest Neighbors (KNN) search with an approximate
|
|
31
|
+
* nearest neighbor algorithm.
|
|
32
|
+
*/
|
|
16
33
|
export declare class MongoDBAtlasVectorSearch extends VectorStore {
|
|
17
34
|
FilterType: MongoDBAtlasFilter;
|
|
18
35
|
private readonly collection;
|
|
@@ -21,8 +38,31 @@ export declare class MongoDBAtlasVectorSearch extends VectorStore {
|
|
|
21
38
|
private readonly embeddingKey;
|
|
22
39
|
_vectorstoreType(): string;
|
|
23
40
|
constructor(embeddings: Embeddings, args: MongoDBAtlasVectorSearchLibArgs);
|
|
41
|
+
/**
|
|
42
|
+
* Method to add vectors and their corresponding documents to the MongoDB
|
|
43
|
+
* collection.
|
|
44
|
+
* @param vectors Vectors to be added.
|
|
45
|
+
* @param documents Corresponding documents to be added.
|
|
46
|
+
* @returns Promise that resolves when the vectors and documents have been added.
|
|
47
|
+
*/
|
|
24
48
|
addVectors(vectors: number[][], documents: Document[]): Promise<void>;
|
|
49
|
+
/**
|
|
50
|
+
* Method to add documents to the MongoDB collection. It first converts
|
|
51
|
+
* the documents to vectors using the embeddings and then calls the
|
|
52
|
+
* addVectors method.
|
|
53
|
+
* @param documents Documents to be added.
|
|
54
|
+
* @returns Promise that resolves when the documents have been added.
|
|
55
|
+
*/
|
|
25
56
|
addDocuments(documents: Document[]): Promise<void>;
|
|
57
|
+
/**
|
|
58
|
+
* Method that performs a similarity search on the vectors stored in the
|
|
59
|
+
* MongoDB collection. It returns a list of documents and their
|
|
60
|
+
* corresponding similarity scores.
|
|
61
|
+
* @param query Query vector for the similarity search.
|
|
62
|
+
* @param k Number of nearest neighbors to return.
|
|
63
|
+
* @param filter Optional filter to be applied.
|
|
64
|
+
* @returns Promise that resolves to a list of documents and their corresponding similarity scores.
|
|
65
|
+
*/
|
|
26
66
|
similaritySearchVectorWithScore(query: number[], k: number, filter?: MongoDBAtlasFilter): Promise<[Document, number][]>;
|
|
27
67
|
/**
|
|
28
68
|
* Return documents selected using the maximal marginal relevance.
|
|
@@ -40,7 +80,26 @@ export declare class MongoDBAtlasVectorSearch extends VectorStore {
|
|
|
40
80
|
* @returns {Promise<Document[]>} - List of documents selected by maximal marginal relevance.
|
|
41
81
|
*/
|
|
42
82
|
maxMarginalRelevanceSearch(query: string, options: MaxMarginalRelevanceSearchOptions<this["FilterType"]>): Promise<Document[]>;
|
|
83
|
+
/**
|
|
84
|
+
* Static method to create an instance of MongoDBAtlasVectorSearch from a
|
|
85
|
+
* list of texts. It first converts the texts to vectors and then adds
|
|
86
|
+
* them to the MongoDB collection.
|
|
87
|
+
* @param texts List of texts to be converted to vectors.
|
|
88
|
+
* @param metadatas Metadata for the texts.
|
|
89
|
+
* @param embeddings Embeddings to be used for conversion.
|
|
90
|
+
* @param dbConfig Database configuration for MongoDB Atlas.
|
|
91
|
+
* @returns Promise that resolves to a new instance of MongoDBAtlasVectorSearch.
|
|
92
|
+
*/
|
|
43
93
|
static fromTexts(texts: string[], metadatas: object[] | object, embeddings: Embeddings, dbConfig: MongoDBAtlasVectorSearchLibArgs): Promise<MongoDBAtlasVectorSearch>;
|
|
94
|
+
/**
|
|
95
|
+
* Static method to create an instance of MongoDBAtlasVectorSearch from a
|
|
96
|
+
* list of documents. It first converts the documents to vectors and then
|
|
97
|
+
* adds them to the MongoDB collection.
|
|
98
|
+
* @param docs List of documents to be converted to vectors.
|
|
99
|
+
* @param embeddings Embeddings to be used for conversion.
|
|
100
|
+
* @param dbConfig Database configuration for MongoDB Atlas.
|
|
101
|
+
* @returns Promise that resolves to a new instance of MongoDBAtlasVectorSearch.
|
|
102
|
+
*/
|
|
44
103
|
static fromDocuments(docs: Document[], embeddings: Embeddings, dbConfig: MongoDBAtlasVectorSearchLibArgs): Promise<MongoDBAtlasVectorSearch>;
|
|
45
104
|
}
|
|
46
105
|
export {};
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
import { VectorStore } from "./base.js";
|
|
2
2
|
import { Document } from "../document.js";
|
|
3
3
|
import { maximalMarginalRelevance } from "../util/math.js";
|
|
4
|
+
/**
|
|
5
|
+
* Class that is a wrapper around MongoDB Atlas Vector Search. It is used
|
|
6
|
+
* to store embeddings in MongoDB documents, create a vector search index,
|
|
7
|
+
* and perform K-Nearest Neighbors (KNN) search with an approximate
|
|
8
|
+
* nearest neighbor algorithm.
|
|
9
|
+
*/
|
|
4
10
|
export class MongoDBAtlasVectorSearch extends VectorStore {
|
|
5
11
|
_vectorstoreType() {
|
|
6
12
|
return "mongodb_atlas";
|
|
@@ -36,6 +42,13 @@ export class MongoDBAtlasVectorSearch extends VectorStore {
|
|
|
36
42
|
this.textKey = args.textKey ?? "text";
|
|
37
43
|
this.embeddingKey = args.embeddingKey ?? "embedding";
|
|
38
44
|
}
|
|
45
|
+
/**
|
|
46
|
+
* Method to add vectors and their corresponding documents to the MongoDB
|
|
47
|
+
* collection.
|
|
48
|
+
* @param vectors Vectors to be added.
|
|
49
|
+
* @param documents Corresponding documents to be added.
|
|
50
|
+
* @returns Promise that resolves when the vectors and documents have been added.
|
|
51
|
+
*/
|
|
39
52
|
async addVectors(vectors, documents) {
|
|
40
53
|
const docs = vectors.map((embedding, idx) => ({
|
|
41
54
|
[this.textKey]: documents[idx].pageContent,
|
|
@@ -44,10 +57,26 @@ export class MongoDBAtlasVectorSearch extends VectorStore {
|
|
|
44
57
|
}));
|
|
45
58
|
await this.collection.insertMany(docs);
|
|
46
59
|
}
|
|
60
|
+
/**
|
|
61
|
+
* Method to add documents to the MongoDB collection. It first converts
|
|
62
|
+
* the documents to vectors using the embeddings and then calls the
|
|
63
|
+
* addVectors method.
|
|
64
|
+
* @param documents Documents to be added.
|
|
65
|
+
* @returns Promise that resolves when the documents have been added.
|
|
66
|
+
*/
|
|
47
67
|
async addDocuments(documents) {
|
|
48
68
|
const texts = documents.map(({ pageContent }) => pageContent);
|
|
49
69
|
return this.addVectors(await this.embeddings.embedDocuments(texts), documents);
|
|
50
70
|
}
|
|
71
|
+
/**
|
|
72
|
+
* Method that performs a similarity search on the vectors stored in the
|
|
73
|
+
* MongoDB collection. It returns a list of documents and their
|
|
74
|
+
* corresponding similarity scores.
|
|
75
|
+
* @param query Query vector for the similarity search.
|
|
76
|
+
* @param k Number of nearest neighbors to return.
|
|
77
|
+
* @param filter Optional filter to be applied.
|
|
78
|
+
* @returns Promise that resolves to a list of documents and their corresponding similarity scores.
|
|
79
|
+
*/
|
|
51
80
|
async similaritySearchVectorWithScore(query, k, filter) {
|
|
52
81
|
const knnBeta = {
|
|
53
82
|
vector: query,
|
|
@@ -138,6 +167,16 @@ export class MongoDBAtlasVectorSearch extends VectorStore {
|
|
|
138
167
|
return doc;
|
|
139
168
|
});
|
|
140
169
|
}
|
|
170
|
+
/**
|
|
171
|
+
* Static method to create an instance of MongoDBAtlasVectorSearch from a
|
|
172
|
+
* list of texts. It first converts the texts to vectors and then adds
|
|
173
|
+
* them to the MongoDB collection.
|
|
174
|
+
* @param texts List of texts to be converted to vectors.
|
|
175
|
+
* @param metadatas Metadata for the texts.
|
|
176
|
+
* @param embeddings Embeddings to be used for conversion.
|
|
177
|
+
* @param dbConfig Database configuration for MongoDB Atlas.
|
|
178
|
+
* @returns Promise that resolves to a new instance of MongoDBAtlasVectorSearch.
|
|
179
|
+
*/
|
|
141
180
|
static async fromTexts(texts, metadatas, embeddings, dbConfig) {
|
|
142
181
|
const docs = [];
|
|
143
182
|
for (let i = 0; i < texts.length; i += 1) {
|
|
@@ -150,6 +189,15 @@ export class MongoDBAtlasVectorSearch extends VectorStore {
|
|
|
150
189
|
}
|
|
151
190
|
return MongoDBAtlasVectorSearch.fromDocuments(docs, embeddings, dbConfig);
|
|
152
191
|
}
|
|
192
|
+
/**
|
|
193
|
+
* Static method to create an instance of MongoDBAtlasVectorSearch from a
|
|
194
|
+
* list of documents. It first converts the documents to vectors and then
|
|
195
|
+
* adds them to the MongoDB collection.
|
|
196
|
+
* @param docs List of documents to be converted to vectors.
|
|
197
|
+
* @param embeddings Embeddings to be used for conversion.
|
|
198
|
+
* @param dbConfig Database configuration for MongoDB Atlas.
|
|
199
|
+
* @returns Promise that resolves to a new instance of MongoDBAtlasVectorSearch.
|
|
200
|
+
*/
|
|
153
201
|
static async fromDocuments(docs, embeddings, dbConfig) {
|
|
154
202
|
const instance = new this(embeddings, dbConfig);
|
|
155
203
|
await instance.addDocuments(docs);
|
|
@@ -28,6 +28,12 @@ const uuid = __importStar(require("uuid"));
|
|
|
28
28
|
const client_1 = require("@clickhouse/client");
|
|
29
29
|
const base_js_1 = require("./base.cjs");
|
|
30
30
|
const document_js_1 = require("../document.cjs");
|
|
31
|
+
/**
|
|
32
|
+
* Class for interacting with the MyScale database. It extends the
|
|
33
|
+
* VectorStore class and provides methods for adding vectors and
|
|
34
|
+
* documents, searching for similar vectors, and creating instances from
|
|
35
|
+
* texts or documents.
|
|
36
|
+
*/
|
|
31
37
|
class MyScaleStore extends base_js_1.VectorStore {
|
|
32
38
|
_vectorstoreType() {
|
|
33
39
|
return "myscale";
|
|
@@ -100,6 +106,12 @@ class MyScaleStore extends base_js_1.VectorStore {
|
|
|
100
106
|
session_id: uuid.v4(),
|
|
101
107
|
});
|
|
102
108
|
}
|
|
109
|
+
/**
|
|
110
|
+
* Method to add vectors to the MyScale database.
|
|
111
|
+
* @param vectors The vectors to add.
|
|
112
|
+
* @param documents The documents associated with the vectors.
|
|
113
|
+
* @returns Promise that resolves when the vectors have been added.
|
|
114
|
+
*/
|
|
103
115
|
async addVectors(vectors, documents) {
|
|
104
116
|
if (vectors.length === 0) {
|
|
105
117
|
return;
|
|
@@ -110,9 +122,21 @@ class MyScaleStore extends base_js_1.VectorStore {
|
|
|
110
122
|
const queryStr = this.buildInsertQuery(vectors, documents);
|
|
111
123
|
await this.client.exec({ query: queryStr });
|
|
112
124
|
}
|
|
125
|
+
/**
|
|
126
|
+
* Method to add documents to the MyScale database.
|
|
127
|
+
* @param documents The documents to add.
|
|
128
|
+
* @returns Promise that resolves when the documents have been added.
|
|
129
|
+
*/
|
|
113
130
|
async addDocuments(documents) {
|
|
114
131
|
return this.addVectors(await this.embeddings.embedDocuments(documents.map((d) => d.pageContent)), documents);
|
|
115
132
|
}
|
|
133
|
+
/**
|
|
134
|
+
* Method to search for vectors that are similar to a given query vector.
|
|
135
|
+
* @param query The query vector.
|
|
136
|
+
* @param k The number of similar vectors to return.
|
|
137
|
+
* @param filter Optional filter for the search results.
|
|
138
|
+
* @returns Promise that resolves with an array of tuples, each containing a Document and a score.
|
|
139
|
+
*/
|
|
116
140
|
async similaritySearchVectorWithScore(query, k, filter) {
|
|
117
141
|
if (!this.isInitialized) {
|
|
118
142
|
await this.initialize(query.length);
|
|
@@ -126,6 +150,14 @@ class MyScaleStore extends base_js_1.VectorStore {
|
|
|
126
150
|
]);
|
|
127
151
|
return result;
|
|
128
152
|
}
|
|
153
|
+
/**
|
|
154
|
+
* Static method to create an instance of MyScaleStore from texts.
|
|
155
|
+
* @param texts The texts to use.
|
|
156
|
+
* @param metadatas The metadata associated with the texts.
|
|
157
|
+
* @param embeddings The embeddings to use.
|
|
158
|
+
* @param args The arguments for the MyScaleStore.
|
|
159
|
+
* @returns Promise that resolves with a new instance of MyScaleStore.
|
|
160
|
+
*/
|
|
129
161
|
static async fromTexts(texts, metadatas, embeddings, args) {
|
|
130
162
|
const docs = [];
|
|
131
163
|
for (let i = 0; i < texts.length; i += 1) {
|
|
@@ -138,16 +170,35 @@ class MyScaleStore extends base_js_1.VectorStore {
|
|
|
138
170
|
}
|
|
139
171
|
return MyScaleStore.fromDocuments(docs, embeddings, args);
|
|
140
172
|
}
|
|
173
|
+
/**
|
|
174
|
+
* Static method to create an instance of MyScaleStore from documents.
|
|
175
|
+
* @param docs The documents to use.
|
|
176
|
+
* @param embeddings The embeddings to use.
|
|
177
|
+
* @param args The arguments for the MyScaleStore.
|
|
178
|
+
* @returns Promise that resolves with a new instance of MyScaleStore.
|
|
179
|
+
*/
|
|
141
180
|
static async fromDocuments(docs, embeddings, args) {
|
|
142
181
|
const instance = new this(embeddings, args);
|
|
143
182
|
await instance.addDocuments(docs);
|
|
144
183
|
return instance;
|
|
145
184
|
}
|
|
185
|
+
/**
|
|
186
|
+
* Static method to create an instance of MyScaleStore from an existing
|
|
187
|
+
* index.
|
|
188
|
+
* @param embeddings The embeddings to use.
|
|
189
|
+
* @param args The arguments for the MyScaleStore.
|
|
190
|
+
* @returns Promise that resolves with a new instance of MyScaleStore.
|
|
191
|
+
*/
|
|
146
192
|
static async fromExistingIndex(embeddings, args) {
|
|
147
193
|
const instance = new this(embeddings, args);
|
|
148
194
|
await instance.initialize();
|
|
149
195
|
return instance;
|
|
150
196
|
}
|
|
197
|
+
/**
|
|
198
|
+
* Method to initialize the MyScale database.
|
|
199
|
+
* @param dimension Optional dimension of the vectors.
|
|
200
|
+
* @returns Promise that resolves when the database has been initialized.
|
|
201
|
+
*/
|
|
151
202
|
async initialize(dimension) {
|
|
152
203
|
const dim = dimension ?? (await this.embeddings.embedQuery("test")).length;
|
|
153
204
|
let indexParamStr = "";
|
|
@@ -171,6 +222,13 @@ class MyScaleStore extends base_js_1.VectorStore {
|
|
|
171
222
|
await this.client.exec({ query });
|
|
172
223
|
this.isInitialized = true;
|
|
173
224
|
}
|
|
225
|
+
/**
|
|
226
|
+
* Method to build an SQL query for inserting vectors and documents into
|
|
227
|
+
* the MyScale database.
|
|
228
|
+
* @param vectors The vectors to insert.
|
|
229
|
+
* @param documents The documents to insert.
|
|
230
|
+
* @returns The SQL query string.
|
|
231
|
+
*/
|
|
174
232
|
buildInsertQuery(vectors, documents) {
|
|
175
233
|
const columnsStr = Object.values(this.columnMap).join(", ");
|
|
176
234
|
const data = [];
|
|
@@ -196,6 +254,14 @@ class MyScaleStore extends base_js_1.VectorStore {
|
|
|
196
254
|
escapeString(str) {
|
|
197
255
|
return str.replace(/\\/g, "\\\\").replace(/'/g, "\\'");
|
|
198
256
|
}
|
|
257
|
+
/**
|
|
258
|
+
* Method to build an SQL query for searching for similar vectors in the
|
|
259
|
+
* MyScale database.
|
|
260
|
+
* @param query The query vector.
|
|
261
|
+
* @param k The number of similar vectors to return.
|
|
262
|
+
* @param filter Optional filter for the search results.
|
|
263
|
+
* @returns The SQL query string.
|
|
264
|
+
*/
|
|
199
265
|
buildSearchQuery(query, k, filter) {
|
|
200
266
|
const order = this.metric === "ip" ? "DESC" : "ASC";
|
|
201
267
|
const whereStr = filter ? `PREWHERE ${filter.whereStr}` : "";
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import { Embeddings } from "../embeddings/base.js";
|
|
2
2
|
import { VectorStore } from "./base.js";
|
|
3
3
|
import { Document } from "../document.js";
|
|
4
|
+
/**
|
|
5
|
+
* Arguments for the MyScaleStore class, which include the host, port,
|
|
6
|
+
* protocol, username, password, index type, index parameters, column map,
|
|
7
|
+
* database, table, and metric.
|
|
8
|
+
*/
|
|
4
9
|
export interface MyScaleLibArgs {
|
|
5
10
|
host: string;
|
|
6
11
|
port: string | number;
|
|
@@ -14,16 +19,31 @@ export interface MyScaleLibArgs {
|
|
|
14
19
|
table?: string;
|
|
15
20
|
metric?: metric;
|
|
16
21
|
}
|
|
22
|
+
/**
|
|
23
|
+
* Mapping of columns in the MyScale database.
|
|
24
|
+
*/
|
|
17
25
|
export interface ColumnMap {
|
|
18
26
|
id: string;
|
|
19
27
|
text: string;
|
|
20
28
|
vector: string;
|
|
21
29
|
metadata: string;
|
|
22
30
|
}
|
|
31
|
+
/**
|
|
32
|
+
* Type of metric used in the MyScale database.
|
|
33
|
+
*/
|
|
23
34
|
export type metric = "ip" | "cosine" | "l2";
|
|
35
|
+
/**
|
|
36
|
+
* Type for filtering search results in the MyScale database.
|
|
37
|
+
*/
|
|
24
38
|
export interface MyScaleFilter {
|
|
25
39
|
whereStr: string;
|
|
26
40
|
}
|
|
41
|
+
/**
|
|
42
|
+
* Class for interacting with the MyScale database. It extends the
|
|
43
|
+
* VectorStore class and provides methods for adding vectors and
|
|
44
|
+
* documents, searching for similar vectors, and creating instances from
|
|
45
|
+
* texts or documents.
|
|
46
|
+
*/
|
|
27
47
|
export declare class MyScaleStore extends VectorStore {
|
|
28
48
|
FilterType: MyScaleFilter;
|
|
29
49
|
private client;
|
|
@@ -36,14 +56,74 @@ export declare class MyScaleStore extends VectorStore {
|
|
|
36
56
|
private isInitialized;
|
|
37
57
|
_vectorstoreType(): string;
|
|
38
58
|
constructor(embeddings: Embeddings, args: MyScaleLibArgs);
|
|
59
|
+
/**
|
|
60
|
+
* Method to add vectors to the MyScale database.
|
|
61
|
+
* @param vectors The vectors to add.
|
|
62
|
+
* @param documents The documents associated with the vectors.
|
|
63
|
+
* @returns Promise that resolves when the vectors have been added.
|
|
64
|
+
*/
|
|
39
65
|
addVectors(vectors: number[][], documents: Document[]): Promise<void>;
|
|
66
|
+
/**
|
|
67
|
+
* Method to add documents to the MyScale database.
|
|
68
|
+
* @param documents The documents to add.
|
|
69
|
+
* @returns Promise that resolves when the documents have been added.
|
|
70
|
+
*/
|
|
40
71
|
addDocuments(documents: Document[]): Promise<void>;
|
|
72
|
+
/**
|
|
73
|
+
* Method to search for vectors that are similar to a given query vector.
|
|
74
|
+
* @param query The query vector.
|
|
75
|
+
* @param k The number of similar vectors to return.
|
|
76
|
+
* @param filter Optional filter for the search results.
|
|
77
|
+
* @returns Promise that resolves with an array of tuples, each containing a Document and a score.
|
|
78
|
+
*/
|
|
41
79
|
similaritySearchVectorWithScore(query: number[], k: number, filter?: this["FilterType"]): Promise<[Document, number][]>;
|
|
80
|
+
/**
|
|
81
|
+
* Static method to create an instance of MyScaleStore from texts.
|
|
82
|
+
* @param texts The texts to use.
|
|
83
|
+
* @param metadatas The metadata associated with the texts.
|
|
84
|
+
* @param embeddings The embeddings to use.
|
|
85
|
+
* @param args The arguments for the MyScaleStore.
|
|
86
|
+
* @returns Promise that resolves with a new instance of MyScaleStore.
|
|
87
|
+
*/
|
|
42
88
|
static fromTexts(texts: string[], metadatas: object | object[], embeddings: Embeddings, args: MyScaleLibArgs): Promise<MyScaleStore>;
|
|
89
|
+
/**
|
|
90
|
+
* Static method to create an instance of MyScaleStore from documents.
|
|
91
|
+
* @param docs The documents to use.
|
|
92
|
+
* @param embeddings The embeddings to use.
|
|
93
|
+
* @param args The arguments for the MyScaleStore.
|
|
94
|
+
* @returns Promise that resolves with a new instance of MyScaleStore.
|
|
95
|
+
*/
|
|
43
96
|
static fromDocuments(docs: Document[], embeddings: Embeddings, args: MyScaleLibArgs): Promise<MyScaleStore>;
|
|
97
|
+
/**
|
|
98
|
+
* Static method to create an instance of MyScaleStore from an existing
|
|
99
|
+
* index.
|
|
100
|
+
* @param embeddings The embeddings to use.
|
|
101
|
+
* @param args The arguments for the MyScaleStore.
|
|
102
|
+
* @returns Promise that resolves with a new instance of MyScaleStore.
|
|
103
|
+
*/
|
|
44
104
|
static fromExistingIndex(embeddings: Embeddings, args: MyScaleLibArgs): Promise<MyScaleStore>;
|
|
105
|
+
/**
|
|
106
|
+
* Method to initialize the MyScale database.
|
|
107
|
+
* @param dimension Optional dimension of the vectors.
|
|
108
|
+
* @returns Promise that resolves when the database has been initialized.
|
|
109
|
+
*/
|
|
45
110
|
private initialize;
|
|
111
|
+
/**
|
|
112
|
+
* Method to build an SQL query for inserting vectors and documents into
|
|
113
|
+
* the MyScale database.
|
|
114
|
+
* @param vectors The vectors to insert.
|
|
115
|
+
* @param documents The documents to insert.
|
|
116
|
+
* @returns The SQL query string.
|
|
117
|
+
*/
|
|
46
118
|
private buildInsertQuery;
|
|
47
119
|
private escapeString;
|
|
120
|
+
/**
|
|
121
|
+
* Method to build an SQL query for searching for similar vectors in the
|
|
122
|
+
* MyScale database.
|
|
123
|
+
* @param query The query vector.
|
|
124
|
+
* @param k The number of similar vectors to return.
|
|
125
|
+
* @param filter Optional filter for the search results.
|
|
126
|
+
* @returns The SQL query string.
|
|
127
|
+
*/
|
|
48
128
|
private buildSearchQuery;
|
|
49
129
|
}
|
|
@@ -2,6 +2,12 @@ import * as uuid from "uuid";
|
|
|
2
2
|
import { createClient } from "@clickhouse/client";
|
|
3
3
|
import { VectorStore } from "./base.js";
|
|
4
4
|
import { Document } from "../document.js";
|
|
5
|
+
/**
|
|
6
|
+
* Class for interacting with the MyScale database. It extends the
|
|
7
|
+
* VectorStore class and provides methods for adding vectors and
|
|
8
|
+
* documents, searching for similar vectors, and creating instances from
|
|
9
|
+
* texts or documents.
|
|
10
|
+
*/
|
|
5
11
|
export class MyScaleStore extends VectorStore {
|
|
6
12
|
_vectorstoreType() {
|
|
7
13
|
return "myscale";
|
|
@@ -74,6 +80,12 @@ export class MyScaleStore extends VectorStore {
|
|
|
74
80
|
session_id: uuid.v4(),
|
|
75
81
|
});
|
|
76
82
|
}
|
|
83
|
+
/**
|
|
84
|
+
* Method to add vectors to the MyScale database.
|
|
85
|
+
* @param vectors The vectors to add.
|
|
86
|
+
* @param documents The documents associated with the vectors.
|
|
87
|
+
* @returns Promise that resolves when the vectors have been added.
|
|
88
|
+
*/
|
|
77
89
|
async addVectors(vectors, documents) {
|
|
78
90
|
if (vectors.length === 0) {
|
|
79
91
|
return;
|
|
@@ -84,9 +96,21 @@ export class MyScaleStore extends VectorStore {
|
|
|
84
96
|
const queryStr = this.buildInsertQuery(vectors, documents);
|
|
85
97
|
await this.client.exec({ query: queryStr });
|
|
86
98
|
}
|
|
99
|
+
/**
|
|
100
|
+
* Method to add documents to the MyScale database.
|
|
101
|
+
* @param documents The documents to add.
|
|
102
|
+
* @returns Promise that resolves when the documents have been added.
|
|
103
|
+
*/
|
|
87
104
|
async addDocuments(documents) {
|
|
88
105
|
return this.addVectors(await this.embeddings.embedDocuments(documents.map((d) => d.pageContent)), documents);
|
|
89
106
|
}
|
|
107
|
+
/**
|
|
108
|
+
* Method to search for vectors that are similar to a given query vector.
|
|
109
|
+
* @param query The query vector.
|
|
110
|
+
* @param k The number of similar vectors to return.
|
|
111
|
+
* @param filter Optional filter for the search results.
|
|
112
|
+
* @returns Promise that resolves with an array of tuples, each containing a Document and a score.
|
|
113
|
+
*/
|
|
90
114
|
async similaritySearchVectorWithScore(query, k, filter) {
|
|
91
115
|
if (!this.isInitialized) {
|
|
92
116
|
await this.initialize(query.length);
|
|
@@ -100,6 +124,14 @@ export class MyScaleStore extends VectorStore {
|
|
|
100
124
|
]);
|
|
101
125
|
return result;
|
|
102
126
|
}
|
|
127
|
+
/**
|
|
128
|
+
* Static method to create an instance of MyScaleStore from texts.
|
|
129
|
+
* @param texts The texts to use.
|
|
130
|
+
* @param metadatas The metadata associated with the texts.
|
|
131
|
+
* @param embeddings The embeddings to use.
|
|
132
|
+
* @param args The arguments for the MyScaleStore.
|
|
133
|
+
* @returns Promise that resolves with a new instance of MyScaleStore.
|
|
134
|
+
*/
|
|
103
135
|
static async fromTexts(texts, metadatas, embeddings, args) {
|
|
104
136
|
const docs = [];
|
|
105
137
|
for (let i = 0; i < texts.length; i += 1) {
|
|
@@ -112,16 +144,35 @@ export class MyScaleStore extends VectorStore {
|
|
|
112
144
|
}
|
|
113
145
|
return MyScaleStore.fromDocuments(docs, embeddings, args);
|
|
114
146
|
}
|
|
147
|
+
/**
|
|
148
|
+
* Static method to create an instance of MyScaleStore from documents.
|
|
149
|
+
* @param docs The documents to use.
|
|
150
|
+
* @param embeddings The embeddings to use.
|
|
151
|
+
* @param args The arguments for the MyScaleStore.
|
|
152
|
+
* @returns Promise that resolves with a new instance of MyScaleStore.
|
|
153
|
+
*/
|
|
115
154
|
static async fromDocuments(docs, embeddings, args) {
|
|
116
155
|
const instance = new this(embeddings, args);
|
|
117
156
|
await instance.addDocuments(docs);
|
|
118
157
|
return instance;
|
|
119
158
|
}
|
|
159
|
+
/**
|
|
160
|
+
* Static method to create an instance of MyScaleStore from an existing
|
|
161
|
+
* index.
|
|
162
|
+
* @param embeddings The embeddings to use.
|
|
163
|
+
* @param args The arguments for the MyScaleStore.
|
|
164
|
+
* @returns Promise that resolves with a new instance of MyScaleStore.
|
|
165
|
+
*/
|
|
120
166
|
static async fromExistingIndex(embeddings, args) {
|
|
121
167
|
const instance = new this(embeddings, args);
|
|
122
168
|
await instance.initialize();
|
|
123
169
|
return instance;
|
|
124
170
|
}
|
|
171
|
+
/**
|
|
172
|
+
* Method to initialize the MyScale database.
|
|
173
|
+
* @param dimension Optional dimension of the vectors.
|
|
174
|
+
* @returns Promise that resolves when the database has been initialized.
|
|
175
|
+
*/
|
|
125
176
|
async initialize(dimension) {
|
|
126
177
|
const dim = dimension ?? (await this.embeddings.embedQuery("test")).length;
|
|
127
178
|
let indexParamStr = "";
|
|
@@ -145,6 +196,13 @@ export class MyScaleStore extends VectorStore {
|
|
|
145
196
|
await this.client.exec({ query });
|
|
146
197
|
this.isInitialized = true;
|
|
147
198
|
}
|
|
199
|
+
/**
|
|
200
|
+
* Method to build an SQL query for inserting vectors and documents into
|
|
201
|
+
* the MyScale database.
|
|
202
|
+
* @param vectors The vectors to insert.
|
|
203
|
+
* @param documents The documents to insert.
|
|
204
|
+
* @returns The SQL query string.
|
|
205
|
+
*/
|
|
148
206
|
buildInsertQuery(vectors, documents) {
|
|
149
207
|
const columnsStr = Object.values(this.columnMap).join(", ");
|
|
150
208
|
const data = [];
|
|
@@ -170,6 +228,14 @@ export class MyScaleStore extends VectorStore {
|
|
|
170
228
|
escapeString(str) {
|
|
171
229
|
return str.replace(/\\/g, "\\\\").replace(/'/g, "\\'");
|
|
172
230
|
}
|
|
231
|
+
/**
|
|
232
|
+
* Method to build an SQL query for searching for similar vectors in the
|
|
233
|
+
* MyScale database.
|
|
234
|
+
* @param query The query vector.
|
|
235
|
+
* @param k The number of similar vectors to return.
|
|
236
|
+
* @param filter Optional filter for the search results.
|
|
237
|
+
* @returns The SQL query string.
|
|
238
|
+
*/
|
|
173
239
|
buildSearchQuery(query, k, filter) {
|
|
174
240
|
const order = this.metric === "ip" ? "DESC" : "ASC";
|
|
175
241
|
const whereStr = filter ? `PREWHERE ${filter.whereStr}` : "";
|
|
@@ -28,6 +28,12 @@ const opensearch_1 = require("@opensearch-project/opensearch");
|
|
|
28
28
|
const uuid = __importStar(require("uuid"));
|
|
29
29
|
const document_js_1 = require("../document.cjs");
|
|
30
30
|
const base_js_1 = require("./base.cjs");
|
|
31
|
+
/**
|
|
32
|
+
* Class that provides a wrapper around the OpenSearch service for vector
|
|
33
|
+
* search. It provides methods for adding documents and vectors to the
|
|
34
|
+
* OpenSearch index, searching for similar vectors, and managing the
|
|
35
|
+
* OpenSearch index.
|
|
36
|
+
*/
|
|
31
37
|
class OpenSearchVectorStore extends base_js_1.VectorStore {
|
|
32
38
|
_vectorstoreType() {
|
|
33
39
|
return "opensearch";
|
|
@@ -84,10 +90,24 @@ class OpenSearchVectorStore extends base_js_1.VectorStore {
|
|
|
84
90
|
this.client = args.client;
|
|
85
91
|
this.indexName = args.indexName ?? "documents";
|
|
86
92
|
}
|
|
93
|
+
/**
|
|
94
|
+
* Method to add documents to the OpenSearch index. It first converts the
|
|
95
|
+
* documents to vectors using the embeddings, then adds the vectors to the
|
|
96
|
+
* index.
|
|
97
|
+
* @param documents The documents to be added to the OpenSearch index.
|
|
98
|
+
* @returns Promise resolving to void.
|
|
99
|
+
*/
|
|
87
100
|
async addDocuments(documents) {
|
|
88
101
|
const texts = documents.map(({ pageContent }) => pageContent);
|
|
89
102
|
return this.addVectors(await this.embeddings.embedDocuments(texts), documents);
|
|
90
103
|
}
|
|
104
|
+
/**
|
|
105
|
+
* Method to add vectors to the OpenSearch index. It ensures the index
|
|
106
|
+
* exists, then adds the vectors and associated documents to the index.
|
|
107
|
+
* @param vectors The vectors to be added to the OpenSearch index.
|
|
108
|
+
* @param documents The documents associated with the vectors.
|
|
109
|
+
* @returns Promise resolving to void.
|
|
110
|
+
*/
|
|
91
111
|
async addVectors(vectors, documents) {
|
|
92
112
|
await this.ensureIndexExists(vectors[0].length, this.engine, this.spaceType, this.efSearch, this.efConstruction, this.m);
|
|
93
113
|
const operations = vectors.flatMap((embedding, idx) => [
|
|
@@ -106,6 +126,14 @@ class OpenSearchVectorStore extends base_js_1.VectorStore {
|
|
|
106
126
|
await this.client.bulk({ body: operations });
|
|
107
127
|
await this.client.indices.refresh({ index: this.indexName });
|
|
108
128
|
}
|
|
129
|
+
/**
|
|
130
|
+
* Method to perform a similarity search on the OpenSearch index using a
|
|
131
|
+
* query vector. It returns the k most similar documents and their scores.
|
|
132
|
+
* @param query The query vector.
|
|
133
|
+
* @param k The number of similar documents to return.
|
|
134
|
+
* @param filter Optional filter for the OpenSearch query.
|
|
135
|
+
* @returns Promise resolving to an array of tuples, each containing a Document and its score.
|
|
136
|
+
*/
|
|
109
137
|
async similaritySearchVectorWithScore(query, k, filter) {
|
|
110
138
|
const search = {
|
|
111
139
|
index: this.indexName,
|
|
@@ -135,6 +163,15 @@ class OpenSearchVectorStore extends base_js_1.VectorStore {
|
|
|
135
163
|
hit._score,
|
|
136
164
|
]);
|
|
137
165
|
}
|
|
166
|
+
/**
|
|
167
|
+
* Static method to create a new OpenSearchVectorStore from an array of
|
|
168
|
+
* texts, their metadata, embeddings, and OpenSearch client arguments.
|
|
169
|
+
* @param texts The texts to be converted into documents and added to the OpenSearch index.
|
|
170
|
+
* @param metadatas The metadata associated with the texts. Can be an array of objects or a single object.
|
|
171
|
+
* @param embeddings The embeddings used to convert the texts into vectors.
|
|
172
|
+
* @param args The OpenSearch client arguments.
|
|
173
|
+
* @returns Promise resolving to a new instance of OpenSearchVectorStore.
|
|
174
|
+
*/
|
|
138
175
|
static fromTexts(texts, metadatas, embeddings, args) {
|
|
139
176
|
const documents = texts.map((text, idx) => {
|
|
140
177
|
const metadata = Array.isArray(metadatas) ? metadatas[idx] : metadatas;
|
|
@@ -142,11 +179,26 @@ class OpenSearchVectorStore extends base_js_1.VectorStore {
|
|
|
142
179
|
});
|
|
143
180
|
return OpenSearchVectorStore.fromDocuments(documents, embeddings, args);
|
|
144
181
|
}
|
|
182
|
+
/**
|
|
183
|
+
* Static method to create a new OpenSearchVectorStore from an array of
|
|
184
|
+
* Documents, embeddings, and OpenSearch client arguments.
|
|
185
|
+
* @param docs The documents to be added to the OpenSearch index.
|
|
186
|
+
* @param embeddings The embeddings used to convert the documents into vectors.
|
|
187
|
+
* @param dbConfig The OpenSearch client arguments.
|
|
188
|
+
* @returns Promise resolving to a new instance of OpenSearchVectorStore.
|
|
189
|
+
*/
|
|
145
190
|
static async fromDocuments(docs, embeddings, dbConfig) {
|
|
146
191
|
const store = new OpenSearchVectorStore(embeddings, dbConfig);
|
|
147
192
|
await store.addDocuments(docs).then(() => store);
|
|
148
193
|
return store;
|
|
149
194
|
}
|
|
195
|
+
/**
|
|
196
|
+
* Static method to create a new OpenSearchVectorStore from an existing
|
|
197
|
+
* OpenSearch index, embeddings, and OpenSearch client arguments.
|
|
198
|
+
* @param embeddings The embeddings used to convert the documents into vectors.
|
|
199
|
+
* @param dbConfig The OpenSearch client arguments.
|
|
200
|
+
* @returns Promise resolving to a new instance of OpenSearchVectorStore.
|
|
201
|
+
*/
|
|
150
202
|
static async fromExistingIndex(embeddings, dbConfig) {
|
|
151
203
|
const store = new OpenSearchVectorStore(embeddings, dbConfig);
|
|
152
204
|
await store.client.cat.indices({ index: store.indexName });
|
|
@@ -202,6 +254,10 @@ class OpenSearchVectorStore extends base_js_1.VectorStore {
|
|
|
202
254
|
}
|
|
203
255
|
return result;
|
|
204
256
|
}
|
|
257
|
+
/**
|
|
258
|
+
* Method to check if the OpenSearch index exists.
|
|
259
|
+
* @returns Promise resolving to a boolean indicating whether the index exists.
|
|
260
|
+
*/
|
|
205
261
|
async doesIndexExist() {
|
|
206
262
|
try {
|
|
207
263
|
await this.client.cat.indices({ index: this.indexName });
|
|
@@ -215,6 +271,10 @@ class OpenSearchVectorStore extends base_js_1.VectorStore {
|
|
|
215
271
|
throw err;
|
|
216
272
|
}
|
|
217
273
|
}
|
|
274
|
+
/**
|
|
275
|
+
* Method to delete the OpenSearch index if it exists.
|
|
276
|
+
* @returns Promise resolving to void.
|
|
277
|
+
*/
|
|
218
278
|
async deleteIfExists() {
|
|
219
279
|
const indexExists = await this.doesIndexExist();
|
|
220
280
|
if (!indexExists)
|