langchain 0.0.202 → 0.0.204-rc.0
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/cache/cloudflare_kv.cjs +15 -69
- package/dist/cache/cloudflare_kv.d.ts +1 -42
- package/dist/cache/cloudflare_kv.js +1 -67
- package/dist/cache/momento.cjs +15 -135
- package/dist/cache/momento.d.ts +1 -91
- package/dist/cache/momento.js +1 -133
- package/dist/cache/upstash_redis.cjs +15 -72
- package/dist/cache/upstash_redis.d.ts +1 -45
- package/dist/cache/upstash_redis.js +1 -70
- package/dist/callbacks/handlers/llmonitor.cjs +14 -238
- package/dist/callbacks/handlers/llmonitor.d.ts +1 -35
- package/dist/callbacks/handlers/llmonitor.js +1 -233
- package/dist/chains/openai_moderation.cjs +2 -2
- package/dist/chains/openai_moderation.d.ts +1 -1
- package/dist/chains/openai_moderation.js +1 -1
- package/dist/chat_models/anthropic.d.ts +4 -4
- package/dist/chat_models/baiduwenxin.cjs +15 -411
- package/dist/chat_models/baiduwenxin.d.ts +1 -150
- package/dist/chat_models/baiduwenxin.js +1 -409
- package/dist/chat_models/bedrock/index.cjs +15 -33
- package/dist/chat_models/bedrock/index.d.ts +1 -23
- package/dist/chat_models/bedrock/index.js +1 -29
- package/dist/chat_models/bedrock/web.cjs +15 -360
- package/dist/chat_models/bedrock/web.d.ts +1 -82
- package/dist/chat_models/bedrock/web.js +1 -356
- package/dist/chat_models/cloudflare_workersai.cjs +15 -216
- package/dist/chat_models/cloudflare_workersai.d.ts +1 -68
- package/dist/chat_models/cloudflare_workersai.js +1 -214
- package/dist/chat_models/fireworks.cjs +15 -89
- package/dist/chat_models/fireworks.d.ts +1 -43
- package/dist/chat_models/fireworks.js +1 -87
- package/dist/chat_models/googlepalm.cjs +15 -235
- package/dist/chat_models/googlepalm.d.ts +1 -108
- package/dist/chat_models/googlepalm.js +1 -233
- package/dist/chat_models/googlevertexai/index.cjs +15 -40
- package/dist/chat_models/googlevertexai/index.d.ts +1 -28
- package/dist/chat_models/googlevertexai/index.js +1 -38
- package/dist/chat_models/googlevertexai/web.cjs +15 -39
- package/dist/chat_models/googlevertexai/web.d.ts +1 -28
- package/dist/chat_models/googlevertexai/web.js +1 -37
- package/dist/chat_models/iflytek_xinghuo/index.cjs +14 -40
- package/dist/chat_models/iflytek_xinghuo/index.d.ts +1 -13
- package/dist/chat_models/iflytek_xinghuo/index.js +1 -36
- package/dist/chat_models/iflytek_xinghuo/web.cjs +15 -36
- package/dist/chat_models/iflytek_xinghuo/web.d.ts +1 -13
- package/dist/chat_models/iflytek_xinghuo/web.js +1 -34
- package/dist/chat_models/llama_cpp.cjs +15 -275
- package/dist/chat_models/llama_cpp.d.ts +1 -71
- package/dist/chat_models/llama_cpp.js +1 -273
- package/dist/chat_models/minimax.cjs +15 -578
- package/dist/chat_models/minimax.d.ts +1 -369
- package/dist/chat_models/minimax.js +1 -576
- package/dist/chat_models/ollama.cjs +15 -394
- package/dist/chat_models/ollama.d.ts +1 -127
- package/dist/chat_models/ollama.js +1 -392
- package/dist/chat_models/openai.cjs +4 -698
- package/dist/chat_models/openai.d.ts +4 -137
- package/dist/chat_models/openai.js +2 -695
- package/dist/chat_models/portkey.cjs +15 -167
- package/dist/chat_models/portkey.d.ts +1 -17
- package/dist/chat_models/portkey.js +1 -165
- package/dist/chat_models/yandex.cjs +15 -132
- package/dist/chat_models/yandex.d.ts +1 -30
- package/dist/chat_models/yandex.js +1 -130
- package/dist/document_loaders/fs/openai_whisper_audio.cjs +2 -2
- package/dist/document_loaders/fs/openai_whisper_audio.d.ts +1 -1
- package/dist/document_loaders/fs/openai_whisper_audio.js +1 -1
- package/dist/document_loaders/fs/pdf.cjs +1 -1
- package/dist/document_loaders/fs/pdf.js +1 -1
- package/dist/document_loaders/web/pdf.cjs +1 -1
- package/dist/document_loaders/web/pdf.js +1 -1
- package/dist/document_transformers/html_to_text.cjs +15 -47
- package/dist/document_transformers/html_to_text.d.ts +1 -30
- package/dist/document_transformers/html_to_text.js +1 -45
- package/dist/document_transformers/mozilla_readability.cjs +15 -53
- package/dist/document_transformers/mozilla_readability.d.ts +1 -31
- package/dist/document_transformers/mozilla_readability.js +1 -51
- package/dist/embeddings/bedrock.cjs +15 -109
- package/dist/embeddings/bedrock.d.ts +1 -71
- package/dist/embeddings/bedrock.js +1 -107
- package/dist/embeddings/cloudflare_workersai.cjs +15 -67
- package/dist/embeddings/cloudflare_workersai.d.ts +1 -28
- package/dist/embeddings/cloudflare_workersai.js +1 -65
- package/dist/embeddings/cohere.cjs +15 -124
- package/dist/embeddings/cohere.d.ts +1 -66
- package/dist/embeddings/cohere.js +1 -122
- package/dist/embeddings/googlepalm.cjs +15 -88
- package/dist/embeddings/googlepalm.d.ts +1 -61
- package/dist/embeddings/googlepalm.js +1 -86
- package/dist/embeddings/googlevertexai.cjs +15 -81
- package/dist/embeddings/googlevertexai.d.ts +1 -54
- package/dist/embeddings/googlevertexai.js +1 -79
- package/dist/embeddings/gradient_ai.cjs +15 -101
- package/dist/embeddings/gradient_ai.d.ts +1 -48
- package/dist/embeddings/gradient_ai.js +1 -99
- package/dist/embeddings/hf.cjs +15 -75
- package/dist/embeddings/hf.d.ts +1 -41
- package/dist/embeddings/hf.js +1 -73
- package/dist/embeddings/hf_transformers.cjs +15 -87
- package/dist/embeddings/hf_transformers.d.ts +1 -47
- package/dist/embeddings/hf_transformers.js +1 -85
- package/dist/embeddings/llama_cpp.cjs +15 -81
- package/dist/embeddings/llama_cpp.d.ts +1 -42
- package/dist/embeddings/llama_cpp.js +1 -79
- package/dist/embeddings/minimax.cjs +15 -165
- package/dist/embeddings/minimax.d.ts +1 -119
- package/dist/embeddings/minimax.js +1 -163
- package/dist/embeddings/ollama.cjs +15 -118
- package/dist/embeddings/ollama.d.ts +1 -34
- package/dist/embeddings/ollama.js +1 -116
- package/dist/embeddings/openai.cjs +2 -240
- package/dist/embeddings/openai.d.ts +1 -82
- package/dist/embeddings/openai.js +1 -239
- package/dist/embeddings/tensorflow.cjs +3 -96
- package/dist/embeddings/tensorflow.d.ts +1 -59
- package/dist/embeddings/tensorflow.js +1 -83
- package/dist/embeddings/voyage.cjs +15 -118
- package/dist/embeddings/voyage.d.ts +1 -66
- package/dist/embeddings/voyage.js +1 -116
- package/dist/experimental/chat_models/ollama_functions.d.ts +1 -1
- package/dist/experimental/masking/index.cjs +9 -0
- package/dist/experimental/masking/index.d.ts +4 -0
- package/dist/experimental/masking/index.js +3 -0
- package/dist/experimental/masking/parser.cjs +134 -0
- package/dist/experimental/masking/parser.d.ts +44 -0
- package/dist/experimental/masking/parser.js +130 -0
- package/dist/experimental/masking/regex_masking_transformer.cjs +145 -0
- package/dist/experimental/masking/regex_masking_transformer.d.ts +48 -0
- package/dist/experimental/masking/regex_masking_transformer.js +141 -0
- package/dist/experimental/masking/transformer.cjs +9 -0
- package/dist/experimental/masking/transformer.d.ts +7 -0
- package/dist/experimental/masking/transformer.js +5 -0
- package/dist/experimental/masking/types.cjs +2 -0
- package/dist/experimental/masking/types.d.ts +25 -0
- package/dist/experimental/masking/types.js +1 -0
- package/dist/experimental/openai_assistant/index.cjs +3 -3
- package/dist/experimental/openai_assistant/index.d.ts +1 -1
- package/dist/experimental/openai_assistant/index.js +1 -1
- package/dist/experimental/openai_assistant/schema.d.ts +1 -1
- package/dist/experimental/openai_files/index.cjs +2 -2
- package/dist/experimental/openai_files/index.d.ts +1 -1
- package/dist/experimental/openai_files/index.js +1 -1
- package/dist/graphs/neo4j_graph.cjs +3 -254
- package/dist/graphs/neo4j_graph.d.ts +1 -63
- package/dist/graphs/neo4j_graph.js +1 -241
- package/dist/llms/ai21.cjs +15 -200
- package/dist/llms/ai21.d.ts +1 -100
- package/dist/llms/ai21.js +1 -198
- package/dist/llms/aleph_alpha.cjs +15 -374
- package/dist/llms/aleph_alpha.d.ts +1 -161
- package/dist/llms/aleph_alpha.js +1 -372
- package/dist/llms/bedrock/web.cjs +15 -310
- package/dist/llms/bedrock/web.d.ts +1 -66
- package/dist/llms/bedrock/web.js +1 -308
- package/dist/llms/cloudflare_workersai.cjs +15 -168
- package/dist/llms/cloudflare_workersai.d.ts +1 -55
- package/dist/llms/cloudflare_workersai.js +1 -166
- package/dist/llms/cohere.cjs +15 -110
- package/dist/llms/cohere.d.ts +1 -54
- package/dist/llms/cohere.js +1 -108
- package/dist/llms/fireworks.cjs +15 -90
- package/dist/llms/fireworks.d.ts +1 -33
- package/dist/llms/fireworks.js +1 -88
- package/dist/llms/googlepalm.cjs +15 -134
- package/dist/llms/googlepalm.d.ts +1 -92
- package/dist/llms/googlepalm.js +1 -132
- package/dist/llms/googlevertexai/index.cjs +15 -45
- package/dist/llms/googlevertexai/index.d.ts +1 -38
- package/dist/llms/googlevertexai/index.js +1 -43
- package/dist/llms/googlevertexai/web.cjs +15 -42
- package/dist/llms/googlevertexai/web.d.ts +1 -36
- package/dist/llms/googlevertexai/web.js +1 -40
- package/dist/llms/gradient_ai.cjs +15 -110
- package/dist/llms/gradient_ai.d.ts +1 -55
- package/dist/llms/gradient_ai.js +1 -108
- package/dist/llms/hf.cjs +15 -136
- package/dist/llms/hf.d.ts +1 -68
- package/dist/llms/hf.js +1 -134
- package/dist/llms/llama_cpp.cjs +15 -111
- package/dist/llms/llama_cpp.d.ts +1 -41
- package/dist/llms/llama_cpp.js +1 -109
- package/dist/llms/ollama.cjs +15 -353
- package/dist/llms/ollama.d.ts +1 -106
- package/dist/llms/ollama.js +1 -351
- package/dist/llms/openai-chat.cjs +3 -445
- package/dist/llms/openai-chat.d.ts +4 -123
- package/dist/llms/openai-chat.js +2 -443
- package/dist/llms/openai.cjs +6 -530
- package/dist/llms/openai.d.ts +4 -123
- package/dist/llms/openai.js +2 -525
- package/dist/llms/portkey.cjs +14 -168
- package/dist/llms/portkey.d.ts +1 -57
- package/dist/llms/portkey.js +1 -162
- package/dist/llms/raycast.cjs +15 -94
- package/dist/llms/raycast.d.ts +1 -50
- package/dist/llms/raycast.js +1 -92
- package/dist/llms/replicate.cjs +15 -132
- package/dist/llms/replicate.d.ts +1 -51
- package/dist/llms/replicate.js +1 -130
- package/dist/llms/sagemaker_endpoint.cjs +15 -203
- package/dist/llms/sagemaker_endpoint.d.ts +1 -121
- package/dist/llms/sagemaker_endpoint.js +1 -200
- package/dist/llms/watsonx_ai.cjs +15 -152
- package/dist/llms/watsonx_ai.d.ts +1 -72
- package/dist/llms/watsonx_ai.js +1 -150
- package/dist/llms/writer.cjs +15 -165
- package/dist/llms/writer.d.ts +1 -60
- package/dist/llms/writer.js +1 -163
- package/dist/llms/yandex.cjs +15 -98
- package/dist/llms/yandex.d.ts +1 -40
- package/dist/llms/yandex.js +1 -96
- package/dist/load/import_map.cjs +2 -1
- package/dist/load/import_map.d.ts +1 -0
- package/dist/load/import_map.js +1 -0
- package/dist/load/index.cjs +3 -1
- package/dist/load/index.d.ts +1 -1
- package/dist/load/index.js +3 -1
- package/dist/retrievers/amazon_kendra.cjs +15 -273
- package/dist/retrievers/amazon_kendra.d.ts +1 -142
- package/dist/retrievers/amazon_kendra.js +1 -271
- package/dist/retrievers/chaindesk.cjs +15 -88
- package/dist/retrievers/chaindesk.d.ts +1 -31
- package/dist/retrievers/chaindesk.js +1 -86
- package/dist/retrievers/databerry.cjs +15 -82
- package/dist/retrievers/databerry.d.ts +1 -34
- package/dist/retrievers/databerry.js +1 -80
- package/dist/retrievers/metal.cjs +15 -51
- package/dist/retrievers/metal.d.ts +1 -36
- package/dist/retrievers/metal.js +1 -49
- package/dist/retrievers/supabase.cjs +15 -167
- package/dist/retrievers/supabase.d.ts +1 -82
- package/dist/retrievers/supabase.js +1 -165
- package/dist/retrievers/tavily_search_api.cjs +15 -142
- package/dist/retrievers/tavily_search_api.d.ts +1 -38
- package/dist/retrievers/tavily_search_api.js +1 -140
- package/dist/retrievers/zep.cjs +15 -150
- package/dist/retrievers/zep.d.ts +1 -76
- package/dist/retrievers/zep.js +1 -148
- package/dist/schema/document.cjs +2 -16
- package/dist/schema/document.d.ts +1 -11
- package/dist/schema/document.js +1 -16
- package/dist/schema/index.cjs +2 -7
- package/dist/schema/index.d.ts +2 -10
- package/dist/schema/index.js +1 -6
- package/dist/storage/convex.cjs +15 -143
- package/dist/storage/convex.d.ts +1 -106
- package/dist/storage/convex.js +1 -141
- package/dist/storage/ioredis.cjs +15 -158
- package/dist/storage/ioredis.d.ts +1 -71
- package/dist/storage/ioredis.js +1 -156
- package/dist/storage/upstash_redis.cjs +15 -172
- package/dist/storage/upstash_redis.d.ts +1 -78
- package/dist/storage/upstash_redis.js +1 -170
- package/dist/storage/vercel_kv.cjs +15 -161
- package/dist/storage/vercel_kv.d.ts +1 -62
- package/dist/storage/vercel_kv.js +1 -159
- package/dist/stores/doc/in_memory.cjs +15 -105
- package/dist/stores/doc/in_memory.d.ts +1 -46
- package/dist/stores/doc/in_memory.js +1 -102
- package/dist/stores/message/cassandra.cjs +15 -158
- package/dist/stores/message/cassandra.d.ts +1 -69
- package/dist/stores/message/cassandra.js +1 -156
- package/dist/stores/message/cloudflare_d1.cjs +15 -150
- package/dist/stores/message/cloudflare_d1.d.ts +1 -67
- package/dist/stores/message/cloudflare_d1.js +1 -148
- package/dist/stores/message/convex.cjs +15 -118
- package/dist/stores/message/convex.d.ts +1 -81
- package/dist/stores/message/convex.js +1 -116
- package/dist/stores/message/dynamodb.cjs +15 -159
- package/dist/stores/message/dynamodb.d.ts +1 -51
- package/dist/stores/message/dynamodb.js +1 -157
- package/dist/stores/message/firestore.cjs +15 -185
- package/dist/stores/message/firestore.d.ts +1 -68
- package/dist/stores/message/firestore.js +1 -183
- package/dist/stores/message/ioredis.cjs +15 -98
- package/dist/stores/message/ioredis.d.ts +1 -64
- package/dist/stores/message/ioredis.js +1 -96
- package/dist/stores/message/momento.cjs +15 -160
- package/dist/stores/message/momento.d.ts +1 -97
- package/dist/stores/message/momento.js +1 -158
- package/dist/stores/message/mongodb.cjs +15 -57
- package/dist/stores/message/mongodb.d.ts +1 -26
- package/dist/stores/message/mongodb.js +1 -55
- package/dist/stores/message/planetscale.cjs +15 -170
- package/dist/stores/message/planetscale.d.ts +1 -75
- package/dist/stores/message/planetscale.js +1 -168
- package/dist/stores/message/redis.cjs +15 -114
- package/dist/stores/message/redis.d.ts +1 -69
- package/dist/stores/message/redis.js +1 -112
- package/dist/stores/message/upstash_redis.cjs +15 -85
- package/dist/stores/message/upstash_redis.d.ts +1 -43
- package/dist/stores/message/upstash_redis.js +1 -83
- package/dist/stores/message/utils.cjs +3 -23
- package/dist/stores/message/utils.d.ts +1 -17
- package/dist/stores/message/utils.js +1 -21
- package/dist/stores/message/xata.cjs +15 -216
- package/dist/stores/message/xata.d.ts +1 -76
- package/dist/stores/message/xata.js +1 -214
- package/dist/tools/IFTTTWebhook.cjs +15 -87
- package/dist/tools/IFTTTWebhook.d.ts +1 -50
- package/dist/tools/IFTTTWebhook.js +1 -85
- package/dist/tools/aiplugin.cjs +15 -73
- package/dist/tools/aiplugin.d.ts +1 -34
- package/dist/tools/aiplugin.js +1 -71
- package/dist/tools/aws_sfn.cjs +15 -201
- package/dist/tools/aws_sfn.d.ts +1 -57
- package/dist/tools/aws_sfn.js +1 -197
- package/dist/tools/bingserpapi.cjs +15 -76
- package/dist/tools/bingserpapi.d.ts +1 -23
- package/dist/tools/bingserpapi.js +1 -75
- package/dist/tools/brave_search.cjs +15 -64
- package/dist/tools/brave_search.d.ts +1 -23
- package/dist/tools/brave_search.js +1 -62
- package/dist/tools/connery.cjs +15 -277
- package/dist/tools/connery.d.ts +1 -145
- package/dist/tools/connery.js +1 -274
- package/dist/tools/convert_to_openai.d.ts +1 -1
- package/dist/tools/dadjokeapi.cjs +15 -46
- package/dist/tools/dadjokeapi.d.ts +1 -15
- package/dist/tools/dadjokeapi.js +1 -45
- package/dist/tools/dataforseo_api_search.cjs +15 -280
- package/dist/tools/dataforseo_api_search.d.ts +1 -170
- package/dist/tools/dataforseo_api_search.js +1 -278
- package/dist/tools/gmail/index.cjs +15 -11
- package/dist/tools/gmail/index.d.ts +1 -11
- package/dist/tools/gmail/index.js +1 -5
- package/dist/tools/google_custom_search.cjs +15 -70
- package/dist/tools/google_custom_search.d.ts +1 -25
- package/dist/tools/google_custom_search.js +1 -68
- package/dist/tools/google_places.cjs +15 -79
- package/dist/tools/google_places.d.ts +1 -21
- package/dist/tools/google_places.js +1 -77
- package/dist/tools/searchapi.cjs +15 -164
- package/dist/tools/searchapi.d.ts +1 -91
- package/dist/tools/searchapi.js +1 -162
- package/dist/tools/searxng_search.cjs +15 -156
- package/dist/tools/searxng_search.d.ts +1 -114
- package/dist/tools/searxng_search.js +1 -154
- package/dist/tools/serpapi.cjs +15 -199
- package/dist/tools/serpapi.d.ts +1 -302
- package/dist/tools/serpapi.js +1 -197
- package/dist/tools/serper.cjs +15 -94
- package/dist/tools/serper.d.ts +1 -32
- package/dist/tools/serper.js +1 -92
- package/dist/tools/wikipedia_query_run.cjs +15 -133
- package/dist/tools/wikipedia_query_run.d.ts +1 -54
- package/dist/tools/wikipedia_query_run.js +1 -131
- package/dist/tools/wolframalpha.cjs +15 -47
- package/dist/tools/wolframalpha.d.ts +1 -21
- package/dist/tools/wolframalpha.js +1 -45
- package/dist/types/openai-types.d.ts +1 -1
- package/dist/util/convex.d.ts +1 -1
- package/dist/util/event-source-parse.cjs +15 -224
- package/dist/util/event-source-parse.d.ts +1 -39
- package/dist/util/event-source-parse.js +1 -219
- package/dist/util/math.cjs +15 -123
- package/dist/util/math.d.ts +1 -40
- package/dist/util/math.js +1 -116
- package/dist/util/openapi.d.ts +2 -2
- package/dist/vectorstores/analyticdb.cjs +3 -333
- package/dist/vectorstores/analyticdb.d.ts +1 -110
- package/dist/vectorstores/analyticdb.js +1 -317
- package/dist/vectorstores/base.cjs +15 -165
- package/dist/vectorstores/base.d.ts +1 -104
- package/dist/vectorstores/base.js +1 -161
- package/dist/vectorstores/cassandra.cjs +15 -478
- package/dist/vectorstores/cassandra.d.ts +1 -162
- package/dist/vectorstores/cassandra.js +1 -476
- package/dist/vectorstores/chroma.cjs +3 -312
- package/dist/vectorstores/chroma.d.ts +1 -133
- package/dist/vectorstores/chroma.js +1 -299
- package/dist/vectorstores/clickhouse.cjs +3 -272
- package/dist/vectorstores/clickhouse.d.ts +1 -126
- package/dist/vectorstores/clickhouse.js +1 -259
- package/dist/vectorstores/closevector/node.cjs +15 -107
- package/dist/vectorstores/closevector/node.d.ts +1 -83
- package/dist/vectorstores/closevector/node.js +1 -105
- package/dist/vectorstores/closevector/web.cjs +15 -107
- package/dist/vectorstores/closevector/web.d.ts +1 -80
- package/dist/vectorstores/closevector/web.js +1 -105
- package/dist/vectorstores/cloudflare_vectorize.cjs +3 -186
- package/dist/vectorstores/cloudflare_vectorize.d.ts +1 -90
- package/dist/vectorstores/cloudflare_vectorize.js +1 -173
- package/dist/vectorstores/convex.cjs +15 -175
- package/dist/vectorstores/convex.d.ts +1 -134
- package/dist/vectorstores/convex.js +1 -173
- package/dist/vectorstores/elasticsearch.cjs +3 -287
- package/dist/vectorstores/elasticsearch.d.ts +1 -143
- package/dist/vectorstores/elasticsearch.js +1 -274
- package/dist/vectorstores/faiss.cjs +3 -378
- package/dist/vectorstores/faiss.d.ts +1 -127
- package/dist/vectorstores/faiss.js +1 -365
- package/dist/vectorstores/googlevertexai.cjs +3 -538
- package/dist/vectorstores/googlevertexai.d.ts +1 -181
- package/dist/vectorstores/googlevertexai.js +1 -521
- package/dist/vectorstores/hnswlib.cjs +15 -273
- package/dist/vectorstores/hnswlib.d.ts +1 -122
- package/dist/vectorstores/hnswlib.js +1 -271
- package/dist/vectorstores/lancedb.cjs +15 -126
- package/dist/vectorstores/lancedb.d.ts +1 -61
- package/dist/vectorstores/lancedb.js +1 -124
- package/dist/vectorstores/memory.cjs +15 -143
- package/dist/vectorstores/memory.d.ts +1 -92
- package/dist/vectorstores/memory.js +1 -141
- package/dist/vectorstores/milvus.cjs +3 -592
- package/dist/vectorstores/milvus.d.ts +1 -139
- package/dist/vectorstores/milvus.js +1 -579
- package/dist/vectorstores/momento_vector_index.cjs +3 -305
- package/dist/vectorstores/momento_vector_index.d.ts +1 -143
- package/dist/vectorstores/momento_vector_index.js +1 -292
- package/dist/vectorstores/mongodb_atlas.cjs +15 -218
- package/dist/vectorstores/mongodb_atlas.d.ts +1 -118
- package/dist/vectorstores/mongodb_atlas.js +1 -216
- package/dist/vectorstores/myscale.cjs +3 -263
- package/dist/vectorstores/myscale.d.ts +1 -129
- package/dist/vectorstores/myscale.js +1 -250
- package/dist/vectorstores/neo4j_vector.cjs +3 -578
- package/dist/vectorstores/neo4j_vector.d.ts +1 -75
- package/dist/vectorstores/neo4j_vector.js +1 -562
- package/dist/vectorstores/opensearch.cjs +3 -274
- package/dist/vectorstores/opensearch.d.ts +1 -119
- package/dist/vectorstores/opensearch.js +1 -261
- package/dist/vectorstores/pgvector.cjs +14 -404
- package/dist/vectorstores/pgvector.d.ts +1 -160
- package/dist/vectorstores/pgvector.js +1 -400
- package/dist/vectorstores/pinecone.cjs +3 -280
- package/dist/vectorstores/pinecone.d.ts +1 -120
- package/dist/vectorstores/pinecone.js +1 -264
- package/dist/vectorstores/prisma.cjs +15 -305
- package/dist/vectorstores/prisma.d.ts +1 -180
- package/dist/vectorstores/prisma.js +1 -304
- package/dist/vectorstores/qdrant.cjs +15 -195
- package/dist/vectorstores/qdrant.d.ts +1 -95
- package/dist/vectorstores/qdrant.js +1 -193
- package/dist/vectorstores/redis.cjs +15 -333
- package/dist/vectorstores/redis.d.ts +1 -186
- package/dist/vectorstores/redis.js +1 -331
- package/dist/vectorstores/rockset.cjs +15 -351
- package/dist/vectorstores/rockset.d.ts +1 -202
- package/dist/vectorstores/rockset.js +1 -347
- package/dist/vectorstores/singlestore.cjs +15 -220
- package/dist/vectorstores/singlestore.d.ts +1 -88
- package/dist/vectorstores/singlestore.js +1 -218
- package/dist/vectorstores/supabase.cjs +15 -217
- package/dist/vectorstores/supabase.d.ts +1 -118
- package/dist/vectorstores/supabase.js +1 -215
- package/dist/vectorstores/tigris.cjs +3 -143
- package/dist/vectorstores/tigris.d.ts +1 -74
- package/dist/vectorstores/tigris.js +1 -130
- package/dist/vectorstores/typeorm.cjs +15 -259
- package/dist/vectorstores/typeorm.d.ts +1 -109
- package/dist/vectorstores/typeorm.js +1 -256
- package/dist/vectorstores/typesense.cjs +15 -223
- package/dist/vectorstores/typesense.d.ts +1 -131
- package/dist/vectorstores/typesense.js +1 -221
- package/dist/vectorstores/usearch.cjs +3 -203
- package/dist/vectorstores/usearch.d.ts +1 -85
- package/dist/vectorstores/usearch.js +1 -187
- package/dist/vectorstores/vectara.cjs +3 -409
- package/dist/vectorstores/vectara.d.ts +1 -148
- package/dist/vectorstores/vectara.js +1 -396
- package/dist/vectorstores/vercel_postgres.cjs +15 -320
- package/dist/vectorstores/vercel_postgres.d.ts +1 -145
- package/dist/vectorstores/vercel_postgres.js +1 -318
- package/dist/vectorstores/voy.cjs +15 -156
- package/dist/vectorstores/voy.d.ts +1 -73
- package/dist/vectorstores/voy.js +1 -154
- package/dist/vectorstores/weaviate.cjs +3 -347
- package/dist/vectorstores/weaviate.d.ts +1 -140
- package/dist/vectorstores/weaviate.js +1 -333
- package/dist/vectorstores/xata.cjs +15 -108
- package/dist/vectorstores/xata.d.ts +1 -70
- package/dist/vectorstores/xata.js +1 -106
- package/dist/vectorstores/zep.cjs +15 -313
- package/dist/vectorstores/zep.d.ts +1 -146
- package/dist/vectorstores/zep.js +1 -311
- package/experimental/masking.cjs +1 -0
- package/experimental/masking.d.ts +1 -0
- package/experimental/masking.js +1 -0
- package/package.json +13 -27
- package/dist/chat_models/googlevertexai/common.cjs +0 -274
- package/dist/chat_models/googlevertexai/common.d.ts +0 -123
- package/dist/chat_models/googlevertexai/common.js +0 -269
- package/dist/chat_models/iflytek_xinghuo/common.cjs +0 -340
- package/dist/chat_models/iflytek_xinghuo/common.d.ts +0 -165
- package/dist/chat_models/iflytek_xinghuo/common.js +0 -336
- package/dist/llms/googlevertexai/common.cjs +0 -168
- package/dist/llms/googlevertexai/common.d.ts +0 -82
- package/dist/llms/googlevertexai/common.js +0 -164
- package/dist/tools/gmail/base.cjs +0 -69
- package/dist/tools/gmail/base.d.ts +0 -19
- package/dist/tools/gmail/base.js +0 -65
- package/dist/tools/gmail/create_draft.cjs +0 -62
- package/dist/tools/gmail/create_draft.d.ts +0 -35
- package/dist/tools/gmail/create_draft.js +0 -58
- package/dist/tools/gmail/descriptions.cjs +0 -118
- package/dist/tools/gmail/descriptions.d.ts +0 -5
- package/dist/tools/gmail/descriptions.js +0 -115
- package/dist/tools/gmail/get_message.cjs +0 -83
- package/dist/tools/gmail/get_message.d.ts +0 -18
- package/dist/tools/gmail/get_message.js +0 -79
- package/dist/tools/gmail/get_thread.cjs +0 -89
- package/dist/tools/gmail/get_thread.d.ts +0 -18
- package/dist/tools/gmail/get_thread.js +0 -85
- package/dist/tools/gmail/search.cjs +0 -118
- package/dist/tools/gmail/search.d.ts +0 -29
- package/dist/tools/gmail/search.js +0 -114
- package/dist/tools/gmail/send_message.cjs +0 -74
- package/dist/tools/gmail/send_message.d.ts +0 -35
- package/dist/tools/gmail/send_message.js +0 -70
- package/dist/util/openai-format-fndef.cjs +0 -81
- package/dist/util/openai-format-fndef.d.ts +0 -44
- package/dist/util/openai-format-fndef.js +0 -77
- package/dist/util/openai.cjs +0 -21
- package/dist/util/openai.d.ts +0 -1
- package/dist/util/openai.js +0 -17
- package/dist/vectorstores/closevector/common.cjs +0 -128
- package/dist/vectorstores/closevector/common.d.ts +0 -82
- package/dist/vectorstores/closevector/common.js +0 -124
|
@@ -1,105 +1 @@
|
|
|
1
|
-
|
|
2
|
-
import { CloseVector } from "./common.js";
|
|
3
|
-
/**
|
|
4
|
-
* Class that implements a vector store using Hierarchical Navigable Small
|
|
5
|
-
* World (HNSW) graphs. It extends the SaveableVectorStore class and
|
|
6
|
-
* provides methods for adding documents and vectors, performing
|
|
7
|
-
* similarity searches, and saving and loading the vector store.
|
|
8
|
-
*/
|
|
9
|
-
export class CloseVectorNode extends CloseVector {
|
|
10
|
-
constructor(embeddings, args, credentials) {
|
|
11
|
-
super(embeddings, args, credentials);
|
|
12
|
-
if (args.instance) {
|
|
13
|
-
this.instance = args.instance;
|
|
14
|
-
}
|
|
15
|
-
else {
|
|
16
|
-
this.instance = new CloseVectorHNSWNode(embeddings, args);
|
|
17
|
-
}
|
|
18
|
-
if (this.credentials?.key) {
|
|
19
|
-
this.instance.accessKey = this.credentials.key;
|
|
20
|
-
}
|
|
21
|
-
if (this.credentials?.secret) {
|
|
22
|
-
this.instance.secret = this.credentials.secret;
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Method to save the index to the CloseVector CDN.
|
|
27
|
-
* @param options
|
|
28
|
-
* @param options.description A description of the index.
|
|
29
|
-
* @param options.public Whether the index should be public or private. Defaults to false.
|
|
30
|
-
* @param options.uuid A UUID for the index. If not provided, a new index will be created.
|
|
31
|
-
* @param options.onProgress A callback function that will be called with the progress of the upload.
|
|
32
|
-
*/
|
|
33
|
-
async saveToCloud(options) {
|
|
34
|
-
await this.instance.saveToCloud(options);
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* Method to load the index from the CloseVector CDN.
|
|
38
|
-
* @param options
|
|
39
|
-
* @param options.uuid The UUID of the index to be downloaded.
|
|
40
|
-
* @param options.credentials The credentials to be used by the CloseVectorNode instance.
|
|
41
|
-
* @param options.embeddings The embeddings to be used by the CloseVectorNode instance.
|
|
42
|
-
* @param options.onProgress A callback function that will be called with the progress of the download.
|
|
43
|
-
*/
|
|
44
|
-
static async loadFromCloud(options) {
|
|
45
|
-
if (!options.credentials.key || !options.credentials.secret) {
|
|
46
|
-
throw new Error("key and secret must be provided");
|
|
47
|
-
}
|
|
48
|
-
const instance = await CloseVectorHNSWNode.loadFromCloud({
|
|
49
|
-
...options,
|
|
50
|
-
accessKey: options.credentials.key,
|
|
51
|
-
secret: options.credentials.secret,
|
|
52
|
-
});
|
|
53
|
-
const vectorstore = new this(options.embeddings, instance.args, options.credentials);
|
|
54
|
-
return vectorstore;
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* Static method to load a vector store from a directory. It reads the
|
|
58
|
-
* HNSW index, the arguments, and the document store from the directory,
|
|
59
|
-
* then creates a new HNSWLib instance with these values.
|
|
60
|
-
* @param directory The directory from which to load the vector store.
|
|
61
|
-
* @param embeddings The embeddings to be used by the CloseVectorNode instance.
|
|
62
|
-
* @returns A Promise that resolves to a new CloseVectorNode instance.
|
|
63
|
-
*/
|
|
64
|
-
static async load(directory, embeddings, credentials) {
|
|
65
|
-
const instance = await CloseVectorHNSWNode.load(directory, embeddings);
|
|
66
|
-
const vectorstore = new this(embeddings, instance.args, credentials);
|
|
67
|
-
return vectorstore;
|
|
68
|
-
}
|
|
69
|
-
/**
|
|
70
|
-
* Static method to create a new CloseVectorWeb instance from texts and metadata.
|
|
71
|
-
* It creates a new Document instance for each text and metadata, then
|
|
72
|
-
* calls the fromDocuments method to create the CloseVectorWeb instance.
|
|
73
|
-
* @param texts The texts to be used to create the documents.
|
|
74
|
-
* @param metadatas The metadata to be used to create the documents.
|
|
75
|
-
* @param embeddings The embeddings to be used by the CloseVectorWeb instance.
|
|
76
|
-
* @param args An optional configuration object for the CloseVectorWeb instance.
|
|
77
|
-
* @param credential An optional credential object for the CloseVector API.
|
|
78
|
-
* @returns A Promise that resolves to a new CloseVectorWeb instance.
|
|
79
|
-
*/
|
|
80
|
-
static async fromTexts(texts, metadatas, embeddings, args, credential) {
|
|
81
|
-
const docs = CloseVector.textsToDocuments(texts, metadatas);
|
|
82
|
-
return await CloseVectorNode.fromDocuments(docs, embeddings, args, credential);
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* Static method to create a new CloseVectorNode instance from documents. It
|
|
86
|
-
* creates a new CloseVectorNode instance, adds the documents to it, then returns
|
|
87
|
-
* the instance.
|
|
88
|
-
* @param docs The documents to be added to the HNSWLib instance.
|
|
89
|
-
* @param embeddings The embeddings to be used by the HNSWLib instance.
|
|
90
|
-
* @param args An optional configuration object for the HNSWLib instance.
|
|
91
|
-
* @param credentials An optional credential object for the CloseVector API.
|
|
92
|
-
* @returns A Promise that resolves to a new CloseVectorNode instance.
|
|
93
|
-
*/
|
|
94
|
-
static async fromDocuments(docs, embeddings, args, credentials) {
|
|
95
|
-
const _args = args || {
|
|
96
|
-
space: "cosine",
|
|
97
|
-
};
|
|
98
|
-
const instance = new this(embeddings, _args, credentials);
|
|
99
|
-
await instance.addDocuments(docs);
|
|
100
|
-
return instance;
|
|
101
|
-
}
|
|
102
|
-
static async imports() {
|
|
103
|
-
return CloseVectorHNSWNode.imports();
|
|
104
|
-
}
|
|
105
|
-
}
|
|
1
|
+
export * from "@langchain/community/vectorstores/closevector/node";
|
|
@@ -1,109 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* Class that implements a vector store using CloseVector, It extends the SaveableVectorStore class and
|
|
9
|
-
* provides methods for adding documents and vectors, performing
|
|
10
|
-
* similarity searches, and saving and loading the vector store.
|
|
11
|
-
*/
|
|
12
|
-
class CloseVectorWeb extends common_js_1.CloseVector {
|
|
13
|
-
constructor(embeddings, args, credentials) {
|
|
14
|
-
super(embeddings, args, credentials);
|
|
15
|
-
if (args.instance) {
|
|
16
|
-
this.instance = args.instance;
|
|
17
|
-
}
|
|
18
|
-
else {
|
|
19
|
-
this.instance = new closevector_web_1.CloseVectorHNSWWeb(embeddings, args);
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Method to save the index to the CloseVector CDN.
|
|
24
|
-
* @param options
|
|
25
|
-
* @param options.url the upload url generated by the CloseVector API: https://closevector-docs.getmegaportal.com/docs/api/http-api/file-url
|
|
26
|
-
* @param options.onProgress a callback function to track the upload progress
|
|
27
|
-
*/
|
|
28
|
-
async saveToCloud(options) {
|
|
29
|
-
if (!this.instance.uuid && !options.uuid) {
|
|
30
|
-
throw new Error("No uuid provided");
|
|
31
|
-
}
|
|
32
|
-
if (!this.instance.uuid) {
|
|
33
|
-
this.instance._uuid = options.uuid;
|
|
34
|
-
}
|
|
35
|
-
await this.save(this.instance.uuid);
|
|
36
|
-
await this.instance.saveToCloud(options);
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* Method to load the index from the CloseVector CDN.
|
|
40
|
-
* @param options
|
|
41
|
-
* @param options.url the upload url generated by the CloseVector API: https://closevector-docs.getmegaportal.com/docs/api/http-api/file-url
|
|
42
|
-
* @param options.onProgress a callback function to track the upload progress
|
|
43
|
-
* @param options.uuid the uuid of the index to be downloaded
|
|
44
|
-
* @param options.embeddings the embeddings to be used by the CloseVectorWeb instance
|
|
45
|
-
*/
|
|
46
|
-
static async loadFromCloud(options) {
|
|
47
|
-
const instance = await closevector_web_1.CloseVectorHNSWWeb.loadFromCloud(options);
|
|
48
|
-
const vectorstore = new this(options.embeddings, instance.args, options.credentials);
|
|
49
|
-
return vectorstore;
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Static method to load a vector store from a directory. It reads the
|
|
53
|
-
* HNSW index, the arguments, and the document store from the directory,
|
|
54
|
-
* then creates a new CloseVectorWeb instance with these values.
|
|
55
|
-
* @param directory The directory from which to load the vector store.
|
|
56
|
-
* @param embeddings The embeddings to be used by the CloseVectorWeb instance.
|
|
57
|
-
* @returns A Promise that resolves to a new CloseVectorWeb instance.
|
|
58
|
-
*/
|
|
59
|
-
static async load(directory, embeddings, credentials) {
|
|
60
|
-
const instance = await closevector_web_1.CloseVectorHNSWWeb.load(directory, embeddings);
|
|
61
|
-
const vectorstore = new this(embeddings, instance.args, credentials);
|
|
62
|
-
return vectorstore;
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
63
7
|
}
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
*/
|
|
75
|
-
static async fromTexts(texts, metadatas, embeddings, args, credential) {
|
|
76
|
-
const docs = [];
|
|
77
|
-
for (let i = 0; i < texts.length; i += 1) {
|
|
78
|
-
const metadata = Array.isArray(metadatas) ? metadatas[i] : metadatas;
|
|
79
|
-
const newDoc = new document_js_1.Document({
|
|
80
|
-
pageContent: texts[i],
|
|
81
|
-
metadata,
|
|
82
|
-
});
|
|
83
|
-
docs.push(newDoc);
|
|
84
|
-
}
|
|
85
|
-
return await CloseVectorWeb.fromDocuments(docs, embeddings, args, credential);
|
|
86
|
-
}
|
|
87
|
-
/**
|
|
88
|
-
* Static method to create a new CloseVectorWeb instance from documents. It
|
|
89
|
-
* creates a new CloseVectorWeb instance, adds the documents to it, then returns
|
|
90
|
-
* the instance.
|
|
91
|
-
* @param docs The documents to be added to the CloseVectorWeb instance.
|
|
92
|
-
* @param embeddings The embeddings to be used by the CloseVectorWeb instance.
|
|
93
|
-
* @param args An optional configuration object for the CloseVectorWeb instance.
|
|
94
|
-
* @param credentials An optional credential object for the CloseVector API.
|
|
95
|
-
* @returns A Promise that resolves to a new CloseVectorWeb instance.
|
|
96
|
-
*/
|
|
97
|
-
static async fromDocuments(docs, embeddings, args, credentials) {
|
|
98
|
-
const _args = args || {
|
|
99
|
-
space: "cosine",
|
|
100
|
-
};
|
|
101
|
-
const instance = new this(embeddings, _args, credentials);
|
|
102
|
-
await instance.addDocuments(docs);
|
|
103
|
-
return instance;
|
|
104
|
-
}
|
|
105
|
-
static async imports() {
|
|
106
|
-
return closevector_web_1.CloseVectorHNSWWeb.imports();
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
exports.CloseVectorWeb = CloseVectorWeb;
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("@langchain/community/vectorstores/closevector/web"), exports);
|
|
@@ -1,80 +1 @@
|
|
|
1
|
-
|
|
2
|
-
import { CloseVector } from "./common.js";
|
|
3
|
-
import { Embeddings } from "../../embeddings/base.js";
|
|
4
|
-
import { Document } from "../../document.js";
|
|
5
|
-
/**
|
|
6
|
-
* package closevector-node is largely based on hnswlib.ts in the current folder with the following exceptions:
|
|
7
|
-
* 1. It uses a modified version of hnswlib-node to ensure the generated index can be loaded by closevector_web.ts.
|
|
8
|
-
* 2. It adds features to upload and download the index to/from the CDN provided by CloseVector.
|
|
9
|
-
*
|
|
10
|
-
* For more information, check out https://closevector-docs.getmegaportal.com/
|
|
11
|
-
*/
|
|
12
|
-
/**
|
|
13
|
-
* Arguments for creating a CloseVectorWeb instance, extending CloseVectorHNSWLibArgs.
|
|
14
|
-
*/
|
|
15
|
-
export interface CloseVectorWebArgs extends CloseVectorHNSWLibArgs<HierarchicalNSWT> {
|
|
16
|
-
instance?: CloseVectorHNSWWeb;
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Class that implements a vector store using CloseVector, It extends the SaveableVectorStore class and
|
|
20
|
-
* provides methods for adding documents and vectors, performing
|
|
21
|
-
* similarity searches, and saving and loading the vector store.
|
|
22
|
-
*/
|
|
23
|
-
export declare class CloseVectorWeb extends CloseVector<CloseVectorHNSWWeb> {
|
|
24
|
-
FilterType: (doc: Document) => boolean;
|
|
25
|
-
constructor(embeddings: Embeddings, args: CloseVectorWebArgs, credentials?: CloseVectorCredentials);
|
|
26
|
-
/**
|
|
27
|
-
* Method to save the index to the CloseVector CDN.
|
|
28
|
-
* @param options
|
|
29
|
-
* @param options.url the upload url generated by the CloseVector API: https://closevector-docs.getmegaportal.com/docs/api/http-api/file-url
|
|
30
|
-
* @param options.onProgress a callback function to track the upload progress
|
|
31
|
-
*/
|
|
32
|
-
saveToCloud(options: Parameters<typeof this.instance.saveToCloud>[0] & {
|
|
33
|
-
uuid?: string;
|
|
34
|
-
}): Promise<void>;
|
|
35
|
-
/**
|
|
36
|
-
* Method to load the index from the CloseVector CDN.
|
|
37
|
-
* @param options
|
|
38
|
-
* @param options.url the upload url generated by the CloseVector API: https://closevector-docs.getmegaportal.com/docs/api/http-api/file-url
|
|
39
|
-
* @param options.onProgress a callback function to track the upload progress
|
|
40
|
-
* @param options.uuid the uuid of the index to be downloaded
|
|
41
|
-
* @param options.embeddings the embeddings to be used by the CloseVectorWeb instance
|
|
42
|
-
*/
|
|
43
|
-
static loadFromCloud(options: Parameters<typeof CloseVectorHNSWWeb.loadFromCloud>[0] & {
|
|
44
|
-
embeddings: Embeddings;
|
|
45
|
-
credentials?: CloseVectorCredentials;
|
|
46
|
-
}): Promise<CloseVectorWeb>;
|
|
47
|
-
/**
|
|
48
|
-
* Static method to load a vector store from a directory. It reads the
|
|
49
|
-
* HNSW index, the arguments, and the document store from the directory,
|
|
50
|
-
* then creates a new CloseVectorWeb instance with these values.
|
|
51
|
-
* @param directory The directory from which to load the vector store.
|
|
52
|
-
* @param embeddings The embeddings to be used by the CloseVectorWeb instance.
|
|
53
|
-
* @returns A Promise that resolves to a new CloseVectorWeb instance.
|
|
54
|
-
*/
|
|
55
|
-
static load(directory: string, embeddings: Embeddings, credentials?: CloseVectorCredentials): Promise<CloseVectorWeb>;
|
|
56
|
-
/**
|
|
57
|
-
* Static method to create a new CloseVectorWeb instance from texts and metadata.
|
|
58
|
-
* It creates a new Document instance for each text and metadata, then
|
|
59
|
-
* calls the fromDocuments method to create the CloseVectorWeb instance.
|
|
60
|
-
* @param texts The texts to be used to create the documents.
|
|
61
|
-
* @param metadatas The metadata to be used to create the documents.
|
|
62
|
-
* @param embeddings The embeddings to be used by the CloseVectorWeb instance.
|
|
63
|
-
* @param args An optional configuration object for the CloseVectorWeb instance.
|
|
64
|
-
* @param credential An optional credential object for the CloseVector API.
|
|
65
|
-
* @returns A Promise that resolves to a new CloseVectorWeb instance.
|
|
66
|
-
*/
|
|
67
|
-
static fromTexts(texts: string[], metadatas: object[] | object, embeddings: Embeddings, args?: Record<string, unknown>, credential?: CloseVectorCredentials): Promise<CloseVectorWeb>;
|
|
68
|
-
/**
|
|
69
|
-
* Static method to create a new CloseVectorWeb instance from documents. It
|
|
70
|
-
* creates a new CloseVectorWeb instance, adds the documents to it, then returns
|
|
71
|
-
* the instance.
|
|
72
|
-
* @param docs The documents to be added to the CloseVectorWeb instance.
|
|
73
|
-
* @param embeddings The embeddings to be used by the CloseVectorWeb instance.
|
|
74
|
-
* @param args An optional configuration object for the CloseVectorWeb instance.
|
|
75
|
-
* @param credentials An optional credential object for the CloseVector API.
|
|
76
|
-
* @returns A Promise that resolves to a new CloseVectorWeb instance.
|
|
77
|
-
*/
|
|
78
|
-
static fromDocuments(docs: Document[], embeddings: Embeddings, args?: Record<string, unknown>, credentials?: CloseVectorCredentials): Promise<CloseVectorWeb>;
|
|
79
|
-
static imports(): Promise<HnswlibModule>;
|
|
80
|
-
}
|
|
1
|
+
export * from "@langchain/community/vectorstores/closevector/web";
|
|
@@ -1,105 +1 @@
|
|
|
1
|
-
|
|
2
|
-
import { CloseVector } from "./common.js";
|
|
3
|
-
import { Document } from "../../document.js";
|
|
4
|
-
/**
|
|
5
|
-
* Class that implements a vector store using CloseVector, It extends the SaveableVectorStore class and
|
|
6
|
-
* provides methods for adding documents and vectors, performing
|
|
7
|
-
* similarity searches, and saving and loading the vector store.
|
|
8
|
-
*/
|
|
9
|
-
export class CloseVectorWeb extends CloseVector {
|
|
10
|
-
constructor(embeddings, args, credentials) {
|
|
11
|
-
super(embeddings, args, credentials);
|
|
12
|
-
if (args.instance) {
|
|
13
|
-
this.instance = args.instance;
|
|
14
|
-
}
|
|
15
|
-
else {
|
|
16
|
-
this.instance = new CloseVectorHNSWWeb(embeddings, args);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Method to save the index to the CloseVector CDN.
|
|
21
|
-
* @param options
|
|
22
|
-
* @param options.url the upload url generated by the CloseVector API: https://closevector-docs.getmegaportal.com/docs/api/http-api/file-url
|
|
23
|
-
* @param options.onProgress a callback function to track the upload progress
|
|
24
|
-
*/
|
|
25
|
-
async saveToCloud(options) {
|
|
26
|
-
if (!this.instance.uuid && !options.uuid) {
|
|
27
|
-
throw new Error("No uuid provided");
|
|
28
|
-
}
|
|
29
|
-
if (!this.instance.uuid) {
|
|
30
|
-
this.instance._uuid = options.uuid;
|
|
31
|
-
}
|
|
32
|
-
await this.save(this.instance.uuid);
|
|
33
|
-
await this.instance.saveToCloud(options);
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
* Method to load the index from the CloseVector CDN.
|
|
37
|
-
* @param options
|
|
38
|
-
* @param options.url the upload url generated by the CloseVector API: https://closevector-docs.getmegaportal.com/docs/api/http-api/file-url
|
|
39
|
-
* @param options.onProgress a callback function to track the upload progress
|
|
40
|
-
* @param options.uuid the uuid of the index to be downloaded
|
|
41
|
-
* @param options.embeddings the embeddings to be used by the CloseVectorWeb instance
|
|
42
|
-
*/
|
|
43
|
-
static async loadFromCloud(options) {
|
|
44
|
-
const instance = await CloseVectorHNSWWeb.loadFromCloud(options);
|
|
45
|
-
const vectorstore = new this(options.embeddings, instance.args, options.credentials);
|
|
46
|
-
return vectorstore;
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* Static method to load a vector store from a directory. It reads the
|
|
50
|
-
* HNSW index, the arguments, and the document store from the directory,
|
|
51
|
-
* then creates a new CloseVectorWeb instance with these values.
|
|
52
|
-
* @param directory The directory from which to load the vector store.
|
|
53
|
-
* @param embeddings The embeddings to be used by the CloseVectorWeb instance.
|
|
54
|
-
* @returns A Promise that resolves to a new CloseVectorWeb instance.
|
|
55
|
-
*/
|
|
56
|
-
static async load(directory, embeddings, credentials) {
|
|
57
|
-
const instance = await CloseVectorHNSWWeb.load(directory, embeddings);
|
|
58
|
-
const vectorstore = new this(embeddings, instance.args, credentials);
|
|
59
|
-
return vectorstore;
|
|
60
|
-
}
|
|
61
|
-
/**
|
|
62
|
-
* Static method to create a new CloseVectorWeb instance from texts and metadata.
|
|
63
|
-
* It creates a new Document instance for each text and metadata, then
|
|
64
|
-
* calls the fromDocuments method to create the CloseVectorWeb instance.
|
|
65
|
-
* @param texts The texts to be used to create the documents.
|
|
66
|
-
* @param metadatas The metadata to be used to create the documents.
|
|
67
|
-
* @param embeddings The embeddings to be used by the CloseVectorWeb instance.
|
|
68
|
-
* @param args An optional configuration object for the CloseVectorWeb instance.
|
|
69
|
-
* @param credential An optional credential object for the CloseVector API.
|
|
70
|
-
* @returns A Promise that resolves to a new CloseVectorWeb instance.
|
|
71
|
-
*/
|
|
72
|
-
static async fromTexts(texts, metadatas, embeddings, args, credential) {
|
|
73
|
-
const docs = [];
|
|
74
|
-
for (let i = 0; i < texts.length; i += 1) {
|
|
75
|
-
const metadata = Array.isArray(metadatas) ? metadatas[i] : metadatas;
|
|
76
|
-
const newDoc = new Document({
|
|
77
|
-
pageContent: texts[i],
|
|
78
|
-
metadata,
|
|
79
|
-
});
|
|
80
|
-
docs.push(newDoc);
|
|
81
|
-
}
|
|
82
|
-
return await CloseVectorWeb.fromDocuments(docs, embeddings, args, credential);
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* Static method to create a new CloseVectorWeb instance from documents. It
|
|
86
|
-
* creates a new CloseVectorWeb instance, adds the documents to it, then returns
|
|
87
|
-
* the instance.
|
|
88
|
-
* @param docs The documents to be added to the CloseVectorWeb instance.
|
|
89
|
-
* @param embeddings The embeddings to be used by the CloseVectorWeb instance.
|
|
90
|
-
* @param args An optional configuration object for the CloseVectorWeb instance.
|
|
91
|
-
* @param credentials An optional credential object for the CloseVector API.
|
|
92
|
-
* @returns A Promise that resolves to a new CloseVectorWeb instance.
|
|
93
|
-
*/
|
|
94
|
-
static async fromDocuments(docs, embeddings, args, credentials) {
|
|
95
|
-
const _args = args || {
|
|
96
|
-
space: "cosine",
|
|
97
|
-
};
|
|
98
|
-
const instance = new this(embeddings, _args, credentials);
|
|
99
|
-
await instance.addDocuments(docs);
|
|
100
|
-
return instance;
|
|
101
|
-
}
|
|
102
|
-
static async imports() {
|
|
103
|
-
return CloseVectorHNSWWeb.imports();
|
|
104
|
-
}
|
|
105
|
-
}
|
|
1
|
+
export * from "@langchain/community/vectorstores/closevector/web";
|
|
@@ -10,191 +10,8 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (functi
|
|
|
10
10
|
if (k2 === undefined) k2 = k;
|
|
11
11
|
o[k2] = m[k];
|
|
12
12
|
}));
|
|
13
|
-
var
|
|
14
|
-
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
24
15
|
};
|
|
25
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports
|
|
27
|
-
const uuid = __importStar(require("uuid"));
|
|
28
|
-
const base_js_1 = require("./base.cjs");
|
|
29
|
-
const document_js_1 = require("../document.cjs");
|
|
30
|
-
const chunk_js_1 = require("../util/chunk.cjs");
|
|
31
|
-
const async_caller_js_1 = require("../util/async_caller.cjs");
|
|
32
|
-
/**
|
|
33
|
-
* Class that extends the VectorStore class and provides methods to
|
|
34
|
-
* interact with the Cloudflare Vectorize vector database.
|
|
35
|
-
*/
|
|
36
|
-
class CloudflareVectorizeStore extends base_js_1.VectorStore {
|
|
37
|
-
_vectorstoreType() {
|
|
38
|
-
return "cloudflare_vectorize";
|
|
39
|
-
}
|
|
40
|
-
constructor(embeddings, args) {
|
|
41
|
-
super(embeddings, args);
|
|
42
|
-
Object.defineProperty(this, "textKey", {
|
|
43
|
-
enumerable: true,
|
|
44
|
-
configurable: true,
|
|
45
|
-
writable: true,
|
|
46
|
-
value: void 0
|
|
47
|
-
});
|
|
48
|
-
Object.defineProperty(this, "namespace", {
|
|
49
|
-
enumerable: true,
|
|
50
|
-
configurable: true,
|
|
51
|
-
writable: true,
|
|
52
|
-
value: void 0
|
|
53
|
-
});
|
|
54
|
-
Object.defineProperty(this, "index", {
|
|
55
|
-
enumerable: true,
|
|
56
|
-
configurable: true,
|
|
57
|
-
writable: true,
|
|
58
|
-
value: void 0
|
|
59
|
-
});
|
|
60
|
-
Object.defineProperty(this, "caller", {
|
|
61
|
-
enumerable: true,
|
|
62
|
-
configurable: true,
|
|
63
|
-
writable: true,
|
|
64
|
-
value: void 0
|
|
65
|
-
});
|
|
66
|
-
this.embeddings = embeddings;
|
|
67
|
-
const { index, textKey, ...asyncCallerArgs } = args;
|
|
68
|
-
if (!index) {
|
|
69
|
-
throw new Error("Must supply a Vectorize index binding, eg { index: env.VECTORIZE }");
|
|
70
|
-
}
|
|
71
|
-
this.index = index;
|
|
72
|
-
this.textKey = textKey ?? "text";
|
|
73
|
-
this.caller = new async_caller_js_1.AsyncCaller({
|
|
74
|
-
maxConcurrency: 6,
|
|
75
|
-
maxRetries: 0,
|
|
76
|
-
...asyncCallerArgs,
|
|
77
|
-
});
|
|
78
|
-
}
|
|
79
|
-
/**
|
|
80
|
-
* Method that adds documents to the Vectorize database.
|
|
81
|
-
* @param documents Array of documents to add.
|
|
82
|
-
* @param options Optional ids for the documents.
|
|
83
|
-
* @returns Promise that resolves with the ids of the added documents.
|
|
84
|
-
*/
|
|
85
|
-
async addDocuments(documents, options) {
|
|
86
|
-
const texts = documents.map(({ pageContent }) => pageContent);
|
|
87
|
-
return this.addVectors(await this.embeddings.embedDocuments(texts), documents, options);
|
|
88
|
-
}
|
|
89
|
-
/**
|
|
90
|
-
* Method that adds vectors to the Vectorize database.
|
|
91
|
-
* @param vectors Array of vectors to add.
|
|
92
|
-
* @param documents Array of documents associated with the vectors.
|
|
93
|
-
* @param options Optional ids for the vectors.
|
|
94
|
-
* @returns Promise that resolves with the ids of the added vectors.
|
|
95
|
-
*/
|
|
96
|
-
async addVectors(vectors, documents, options) {
|
|
97
|
-
const ids = Array.isArray(options) ? options : options?.ids;
|
|
98
|
-
const documentIds = ids == null ? documents.map(() => uuid.v4()) : ids;
|
|
99
|
-
const vectorizeVectors = vectors.map((values, idx) => {
|
|
100
|
-
const metadata = {
|
|
101
|
-
...documents[idx].metadata,
|
|
102
|
-
[this.textKey]: documents[idx].pageContent,
|
|
103
|
-
};
|
|
104
|
-
return {
|
|
105
|
-
id: documentIds[idx],
|
|
106
|
-
metadata,
|
|
107
|
-
values,
|
|
108
|
-
};
|
|
109
|
-
});
|
|
110
|
-
// Stick to a limit of 500 vectors per upsert request
|
|
111
|
-
const chunkSize = 500;
|
|
112
|
-
const chunkedVectors = (0, chunk_js_1.chunkArray)(vectorizeVectors, chunkSize);
|
|
113
|
-
const batchRequests = chunkedVectors.map((chunk) => this.caller.call(async () => this.index.upsert(chunk)));
|
|
114
|
-
await Promise.all(batchRequests);
|
|
115
|
-
return documentIds;
|
|
116
|
-
}
|
|
117
|
-
/**
|
|
118
|
-
* Method that deletes vectors from the Vectorize database.
|
|
119
|
-
* @param params Parameters for the delete operation.
|
|
120
|
-
* @returns Promise that resolves when the delete operation is complete.
|
|
121
|
-
*/
|
|
122
|
-
async delete(params) {
|
|
123
|
-
const batchSize = 1000;
|
|
124
|
-
const batchedIds = (0, chunk_js_1.chunkArray)(params.ids, batchSize);
|
|
125
|
-
const batchRequests = batchedIds.map((batchIds) => this.caller.call(async () => this.index.deleteByIds(batchIds)));
|
|
126
|
-
await Promise.all(batchRequests);
|
|
127
|
-
}
|
|
128
|
-
/**
|
|
129
|
-
* Method that performs a similarity search in the Vectorize database and
|
|
130
|
-
* returns the results along with their scores.
|
|
131
|
-
* @param query Query vector for the similarity search.
|
|
132
|
-
* @param k Number of top results to return.
|
|
133
|
-
* @returns Promise that resolves with an array of documents and their scores.
|
|
134
|
-
*/
|
|
135
|
-
async similaritySearchVectorWithScore(query, k) {
|
|
136
|
-
const results = await this.index.query(query, {
|
|
137
|
-
returnVectors: true,
|
|
138
|
-
topK: k,
|
|
139
|
-
});
|
|
140
|
-
const result = [];
|
|
141
|
-
if (results.matches) {
|
|
142
|
-
for (const res of results.matches) {
|
|
143
|
-
const { [this.textKey]: pageContent, ...metadata } = res.vector?.metadata ?? {};
|
|
144
|
-
result.push([
|
|
145
|
-
new document_js_1.Document({ metadata, pageContent: pageContent }),
|
|
146
|
-
res.score,
|
|
147
|
-
]);
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
return result;
|
|
151
|
-
}
|
|
152
|
-
/**
|
|
153
|
-
* Static method that creates a new instance of the CloudflareVectorizeStore class
|
|
154
|
-
* from texts.
|
|
155
|
-
* @param texts Array of texts to add to the Vectorize database.
|
|
156
|
-
* @param metadatas Metadata associated with the texts.
|
|
157
|
-
* @param embeddings Embeddings to use for the texts.
|
|
158
|
-
* @param dbConfig Configuration for the Vectorize database.
|
|
159
|
-
* @param options Optional ids for the vectors.
|
|
160
|
-
* @returns Promise that resolves with a new instance of the CloudflareVectorizeStore class.
|
|
161
|
-
*/
|
|
162
|
-
static async fromTexts(texts, metadatas, embeddings, dbConfig) {
|
|
163
|
-
const docs = [];
|
|
164
|
-
for (let i = 0; i < texts.length; i += 1) {
|
|
165
|
-
const metadata = Array.isArray(metadatas) ? metadatas[i] : metadatas;
|
|
166
|
-
const newDoc = new document_js_1.Document({
|
|
167
|
-
pageContent: texts[i],
|
|
168
|
-
metadata,
|
|
169
|
-
});
|
|
170
|
-
docs.push(newDoc);
|
|
171
|
-
}
|
|
172
|
-
return CloudflareVectorizeStore.fromDocuments(docs, embeddings, dbConfig);
|
|
173
|
-
}
|
|
174
|
-
/**
|
|
175
|
-
* Static method that creates a new instance of the CloudflareVectorizeStore class
|
|
176
|
-
* from documents.
|
|
177
|
-
* @param docs Array of documents to add to the Vectorize database.
|
|
178
|
-
* @param embeddings Embeddings to use for the documents.
|
|
179
|
-
* @param dbConfig Configuration for the Vectorize database.
|
|
180
|
-
* @param options Optional ids for the vectors.
|
|
181
|
-
* @returns Promise that resolves with a new instance of the CloudflareVectorizeStore class.
|
|
182
|
-
*/
|
|
183
|
-
static async fromDocuments(docs, embeddings, dbConfig) {
|
|
184
|
-
const instance = new this(embeddings, dbConfig);
|
|
185
|
-
await instance.addDocuments(docs);
|
|
186
|
-
return instance;
|
|
187
|
-
}
|
|
188
|
-
/**
|
|
189
|
-
* Static method that creates a new instance of the CloudflareVectorizeStore class
|
|
190
|
-
* from an existing index.
|
|
191
|
-
* @param embeddings Embeddings to use for the documents.
|
|
192
|
-
* @param dbConfig Configuration for the Vectorize database.
|
|
193
|
-
* @returns Promise that resolves with a new instance of the CloudflareVectorizeStore class.
|
|
194
|
-
*/
|
|
195
|
-
static async fromExistingIndex(embeddings, dbConfig) {
|
|
196
|
-
const instance = new this(embeddings, dbConfig);
|
|
197
|
-
return instance;
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
exports.CloudflareVectorizeStore = CloudflareVectorizeStore;
|
|
17
|
+
__exportStar(require("@langchain/community/vectorstores/cloudflare_vectorize"), exports);
|