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
|
@@ -10,414 +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 document_js_1 = require("../document.cjs");
|
|
29
|
-
const fake_js_1 = require("../embeddings/fake.cjs");
|
|
30
|
-
const env_js_1 = require("../util/env.cjs");
|
|
31
|
-
const base_js_1 = require("./base.cjs");
|
|
32
|
-
/**
|
|
33
|
-
* Class for interacting with the Vectara API. Extends the VectorStore
|
|
34
|
-
* class.
|
|
35
|
-
*/
|
|
36
|
-
class VectaraStore extends base_js_1.VectorStore {
|
|
37
|
-
get lc_secrets() {
|
|
38
|
-
return {
|
|
39
|
-
apiKey: "VECTARA_API_KEY",
|
|
40
|
-
corpusId: "VECTARA_CORPUS_ID",
|
|
41
|
-
customerId: "VECTARA_CUSTOMER_ID",
|
|
42
|
-
};
|
|
43
|
-
}
|
|
44
|
-
get lc_aliases() {
|
|
45
|
-
return {
|
|
46
|
-
apiKey: "vectara_api_key",
|
|
47
|
-
corpusId: "vectara_corpus_id",
|
|
48
|
-
customerId: "vectara_customer_id",
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
_vectorstoreType() {
|
|
52
|
-
return "vectara";
|
|
53
|
-
}
|
|
54
|
-
constructor(args) {
|
|
55
|
-
// Vectara doesn't need embeddings, but we need to pass something to the parent constructor
|
|
56
|
-
// The embeddings are abstracted out from the user in Vectara.
|
|
57
|
-
super(new fake_js_1.FakeEmbeddings(), args);
|
|
58
|
-
Object.defineProperty(this, "apiEndpoint", {
|
|
59
|
-
enumerable: true,
|
|
60
|
-
configurable: true,
|
|
61
|
-
writable: true,
|
|
62
|
-
value: "api.vectara.io"
|
|
63
|
-
});
|
|
64
|
-
Object.defineProperty(this, "apiKey", {
|
|
65
|
-
enumerable: true,
|
|
66
|
-
configurable: true,
|
|
67
|
-
writable: true,
|
|
68
|
-
value: void 0
|
|
69
|
-
});
|
|
70
|
-
Object.defineProperty(this, "corpusId", {
|
|
71
|
-
enumerable: true,
|
|
72
|
-
configurable: true,
|
|
73
|
-
writable: true,
|
|
74
|
-
value: void 0
|
|
75
|
-
});
|
|
76
|
-
Object.defineProperty(this, "customerId", {
|
|
77
|
-
enumerable: true,
|
|
78
|
-
configurable: true,
|
|
79
|
-
writable: true,
|
|
80
|
-
value: void 0
|
|
81
|
-
});
|
|
82
|
-
Object.defineProperty(this, "verbose", {
|
|
83
|
-
enumerable: true,
|
|
84
|
-
configurable: true,
|
|
85
|
-
writable: true,
|
|
86
|
-
value: void 0
|
|
87
|
-
});
|
|
88
|
-
Object.defineProperty(this, "source", {
|
|
89
|
-
enumerable: true,
|
|
90
|
-
configurable: true,
|
|
91
|
-
writable: true,
|
|
92
|
-
value: void 0
|
|
93
|
-
});
|
|
94
|
-
Object.defineProperty(this, "vectaraApiTimeoutSeconds", {
|
|
95
|
-
enumerable: true,
|
|
96
|
-
configurable: true,
|
|
97
|
-
writable: true,
|
|
98
|
-
value: 60
|
|
99
|
-
});
|
|
100
|
-
const apiKey = args.apiKey ?? (0, env_js_1.getEnvironmentVariable)("VECTARA_API_KEY");
|
|
101
|
-
if (!apiKey) {
|
|
102
|
-
throw new Error("Vectara api key is not provided.");
|
|
103
|
-
}
|
|
104
|
-
this.apiKey = apiKey;
|
|
105
|
-
this.source = args.source ?? "langchainjs";
|
|
106
|
-
const corpusId = args.corpusId ??
|
|
107
|
-
(0, env_js_1.getEnvironmentVariable)("VECTARA_CORPUS_ID")
|
|
108
|
-
?.split(",")
|
|
109
|
-
.map((id) => {
|
|
110
|
-
const num = Number(id);
|
|
111
|
-
if (Number.isNaN(num))
|
|
112
|
-
throw new Error("Vectara corpus id is not a number.");
|
|
113
|
-
return num;
|
|
114
|
-
});
|
|
115
|
-
if (!corpusId) {
|
|
116
|
-
throw new Error("Vectara corpus id is not provided.");
|
|
117
|
-
}
|
|
118
|
-
if (typeof corpusId === "number") {
|
|
119
|
-
this.corpusId = [corpusId];
|
|
120
|
-
}
|
|
121
|
-
else {
|
|
122
|
-
if (corpusId.length === 0)
|
|
123
|
-
throw new Error("Vectara corpus id is not provided.");
|
|
124
|
-
this.corpusId = corpusId;
|
|
125
|
-
}
|
|
126
|
-
const customerId = args.customerId ?? (0, env_js_1.getEnvironmentVariable)("VECTARA_CUSTOMER_ID");
|
|
127
|
-
if (!customerId) {
|
|
128
|
-
throw new Error("Vectara customer id is not provided.");
|
|
129
|
-
}
|
|
130
|
-
this.customerId = customerId;
|
|
131
|
-
this.verbose = args.verbose ?? false;
|
|
132
|
-
}
|
|
133
|
-
/**
|
|
134
|
-
* Returns a header for Vectara API calls.
|
|
135
|
-
* @returns A Promise that resolves to a VectaraCallHeader object.
|
|
136
|
-
*/
|
|
137
|
-
async getJsonHeader() {
|
|
138
|
-
return {
|
|
139
|
-
headers: {
|
|
140
|
-
"x-api-key": this.apiKey,
|
|
141
|
-
"Content-Type": "application/json",
|
|
142
|
-
"customer-id": this.customerId.toString(),
|
|
143
|
-
"X-Source": this.source,
|
|
144
|
-
},
|
|
145
|
-
};
|
|
146
|
-
}
|
|
147
|
-
/**
|
|
148
|
-
* Throws an error, as this method is not implemented. Use addDocuments
|
|
149
|
-
* instead.
|
|
150
|
-
* @param _vectors Not used.
|
|
151
|
-
* @param _documents Not used.
|
|
152
|
-
* @returns Does not return a value.
|
|
153
|
-
*/
|
|
154
|
-
async addVectors(_vectors, _documents) {
|
|
155
|
-
throw new Error("Method not implemented. Please call addDocuments instead.");
|
|
156
|
-
}
|
|
157
|
-
/**
|
|
158
|
-
* Method to delete data from the Vectara corpus.
|
|
159
|
-
* @param params an array of document IDs to be deleted
|
|
160
|
-
* @returns Promise that resolves when the deletion is complete.
|
|
161
|
-
*/
|
|
162
|
-
async deleteDocuments(ids) {
|
|
163
|
-
if (ids && ids.length > 0) {
|
|
164
|
-
const headers = await this.getJsonHeader();
|
|
165
|
-
for (const id of ids) {
|
|
166
|
-
const data = {
|
|
167
|
-
customer_id: this.customerId,
|
|
168
|
-
corpus_id: this.corpusId[0],
|
|
169
|
-
document_id: id,
|
|
170
|
-
};
|
|
171
|
-
try {
|
|
172
|
-
const controller = new AbortController();
|
|
173
|
-
const timeout = setTimeout(() => controller.abort(), this.vectaraApiTimeoutSeconds * 1000);
|
|
174
|
-
const response = await fetch(`https://${this.apiEndpoint}/v1/delete-doc`, {
|
|
175
|
-
method: "POST",
|
|
176
|
-
headers: headers?.headers,
|
|
177
|
-
body: JSON.stringify(data),
|
|
178
|
-
signal: controller.signal,
|
|
179
|
-
});
|
|
180
|
-
clearTimeout(timeout);
|
|
181
|
-
if (response.status !== 200) {
|
|
182
|
-
throw new Error(`Vectara API returned status code ${response.status} when deleting document ${id}`);
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
catch (e) {
|
|
186
|
-
const error = new Error(`Error ${e.message}`);
|
|
187
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
188
|
-
error.code = 500;
|
|
189
|
-
throw error;
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
|
-
}
|
|
193
|
-
else {
|
|
194
|
-
throw new Error(`no "ids" specified for deletion`);
|
|
195
|
-
}
|
|
196
|
-
}
|
|
197
|
-
/**
|
|
198
|
-
* Adds documents to the Vectara store.
|
|
199
|
-
* @param documents An array of Document objects to add to the Vectara store.
|
|
200
|
-
* @returns A Promise that resolves to an array of document IDs indexed in Vectara.
|
|
201
|
-
*/
|
|
202
|
-
async addDocuments(documents) {
|
|
203
|
-
if (this.corpusId.length > 1)
|
|
204
|
-
throw new Error("addDocuments does not support multiple corpus ids");
|
|
205
|
-
const headers = await this.getJsonHeader();
|
|
206
|
-
const doc_ids = [];
|
|
207
|
-
let countAdded = 0;
|
|
208
|
-
for (const document of documents) {
|
|
209
|
-
const doc_id = document.metadata?.document_id ?? uuid.v4();
|
|
210
|
-
const data = {
|
|
211
|
-
customer_id: this.customerId,
|
|
212
|
-
corpus_id: this.corpusId[0],
|
|
213
|
-
document: {
|
|
214
|
-
document_id: doc_id,
|
|
215
|
-
title: document.metadata?.title ?? "",
|
|
216
|
-
metadata_json: JSON.stringify(document.metadata ?? {}),
|
|
217
|
-
section: [
|
|
218
|
-
{
|
|
219
|
-
text: document.pageContent,
|
|
220
|
-
},
|
|
221
|
-
],
|
|
222
|
-
},
|
|
223
|
-
};
|
|
224
|
-
try {
|
|
225
|
-
const controller = new AbortController();
|
|
226
|
-
const timeout = setTimeout(() => controller.abort(), this.vectaraApiTimeoutSeconds * 1000);
|
|
227
|
-
const response = await fetch(`https://${this.apiEndpoint}/v1/index`, {
|
|
228
|
-
method: "POST",
|
|
229
|
-
headers: headers?.headers,
|
|
230
|
-
body: JSON.stringify(data),
|
|
231
|
-
signal: controller.signal,
|
|
232
|
-
});
|
|
233
|
-
clearTimeout(timeout);
|
|
234
|
-
const result = await response.json();
|
|
235
|
-
if (result.status?.code !== "OK" &&
|
|
236
|
-
result.status?.code !== "ALREADY_EXISTS") {
|
|
237
|
-
const error = new Error(`Vectara API returned status code ${result.status?.code}: ${JSON.stringify(result.message)}`);
|
|
238
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
239
|
-
error.code = 500;
|
|
240
|
-
throw error;
|
|
241
|
-
}
|
|
242
|
-
else {
|
|
243
|
-
countAdded += 1;
|
|
244
|
-
doc_ids.push(doc_id);
|
|
245
|
-
}
|
|
246
|
-
}
|
|
247
|
-
catch (e) {
|
|
248
|
-
const error = new Error(`Error ${e.message} while adding document`);
|
|
249
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
250
|
-
error.code = 500;
|
|
251
|
-
throw error;
|
|
252
|
-
}
|
|
253
|
-
}
|
|
254
|
-
if (this.verbose) {
|
|
255
|
-
console.log(`Added ${countAdded} documents to Vectara`);
|
|
256
|
-
}
|
|
257
|
-
return doc_ids;
|
|
258
|
-
}
|
|
259
|
-
/**
|
|
260
|
-
* Vectara provides a way to add documents directly via their API. This API handles
|
|
261
|
-
* pre-processing and chunking internally in an optimal manner. This method is a wrapper
|
|
262
|
-
* to utilize that API within LangChain.
|
|
263
|
-
*
|
|
264
|
-
* @param files An array of VectaraFile objects representing the files and their respective file names to be uploaded to Vectara.
|
|
265
|
-
* @param metadata Optional. An array of metadata objects corresponding to each file in the `filePaths` array.
|
|
266
|
-
* @returns A Promise that resolves to the number of successfully uploaded files.
|
|
267
|
-
*/
|
|
268
|
-
async addFiles(files, metadatas = undefined) {
|
|
269
|
-
if (this.corpusId.length > 1)
|
|
270
|
-
throw new Error("addFiles does not support multiple corpus ids");
|
|
271
|
-
const doc_ids = [];
|
|
272
|
-
for (const [index, file] of files.entries()) {
|
|
273
|
-
const md = metadatas ? metadatas[index] : {};
|
|
274
|
-
const data = new FormData();
|
|
275
|
-
data.append("file", file.blob, file.fileName);
|
|
276
|
-
data.append("doc-metadata", JSON.stringify(md));
|
|
277
|
-
const response = await fetch(`https://api.vectara.io/v1/upload?c=${this.customerId}&o=${this.corpusId[0]}&d=true`, {
|
|
278
|
-
method: "POST",
|
|
279
|
-
headers: {
|
|
280
|
-
"x-api-key": this.apiKey,
|
|
281
|
-
"X-Source": this.source,
|
|
282
|
-
},
|
|
283
|
-
body: data,
|
|
284
|
-
});
|
|
285
|
-
const { status } = response;
|
|
286
|
-
if (status === 409) {
|
|
287
|
-
throw new Error(`File at index ${index} already exists in Vectara`);
|
|
288
|
-
}
|
|
289
|
-
else if (status !== 200) {
|
|
290
|
-
throw new Error(`Vectara API returned status code ${status}`);
|
|
291
|
-
}
|
|
292
|
-
else {
|
|
293
|
-
const result = await response.json();
|
|
294
|
-
const doc_id = result.document.documentId;
|
|
295
|
-
doc_ids.push(doc_id);
|
|
296
|
-
}
|
|
297
|
-
}
|
|
298
|
-
if (this.verbose) {
|
|
299
|
-
console.log(`Uploaded ${files.length} files to Vectara`);
|
|
300
|
-
}
|
|
301
|
-
return doc_ids;
|
|
302
|
-
}
|
|
303
|
-
/**
|
|
304
|
-
* Performs a similarity search and returns documents along with their
|
|
305
|
-
* scores.
|
|
306
|
-
* @param query The query string for the similarity search.
|
|
307
|
-
* @param k Optional. The number of results to return. Default is 10.
|
|
308
|
-
* @param filter Optional. A VectaraFilter object to refine the search results.
|
|
309
|
-
* @returns A Promise that resolves to an array of tuples, each containing a Document and its score.
|
|
310
|
-
*/
|
|
311
|
-
async similaritySearchWithScore(query, k = 10, filter = undefined) {
|
|
312
|
-
const headers = await this.getJsonHeader();
|
|
313
|
-
const corpusKeys = this.corpusId.map((corpusId) => ({
|
|
314
|
-
customerId: this.customerId,
|
|
315
|
-
corpusId,
|
|
316
|
-
metadataFilter: filter?.filter ?? "",
|
|
317
|
-
lexicalInterpolationConfig: { lambda: filter?.lambda ?? 0.025 },
|
|
318
|
-
}));
|
|
319
|
-
const data = {
|
|
320
|
-
query: [
|
|
321
|
-
{
|
|
322
|
-
query,
|
|
323
|
-
numResults: k,
|
|
324
|
-
contextConfig: {
|
|
325
|
-
sentencesAfter: filter?.contextConfig?.sentencesAfter ?? 2,
|
|
326
|
-
sentencesBefore: filter?.contextConfig?.sentencesBefore ?? 2,
|
|
327
|
-
},
|
|
328
|
-
corpusKey: corpusKeys,
|
|
329
|
-
},
|
|
330
|
-
],
|
|
331
|
-
};
|
|
332
|
-
const controller = new AbortController();
|
|
333
|
-
const timeout = setTimeout(() => controller.abort(), this.vectaraApiTimeoutSeconds * 1000);
|
|
334
|
-
const response = await fetch(`https://${this.apiEndpoint}/v1/query`, {
|
|
335
|
-
method: "POST",
|
|
336
|
-
headers: headers?.headers,
|
|
337
|
-
body: JSON.stringify(data),
|
|
338
|
-
signal: controller.signal,
|
|
339
|
-
});
|
|
340
|
-
clearTimeout(timeout);
|
|
341
|
-
if (response.status !== 200) {
|
|
342
|
-
throw new Error(`Vectara API returned status code ${response.status}`);
|
|
343
|
-
}
|
|
344
|
-
const result = await response.json();
|
|
345
|
-
const responses = result.responseSet[0].response;
|
|
346
|
-
const documents = result.responseSet[0].document;
|
|
347
|
-
for (let i = 0; i < responses.length; i += 1) {
|
|
348
|
-
const responseMetadata = responses[i].metadata;
|
|
349
|
-
const documentMetadata = documents[responses[i].documentIndex].metadata;
|
|
350
|
-
const combinedMetadata = {};
|
|
351
|
-
responseMetadata.forEach((item) => {
|
|
352
|
-
combinedMetadata[item.name] = item.value;
|
|
353
|
-
});
|
|
354
|
-
documentMetadata.forEach((item) => {
|
|
355
|
-
combinedMetadata[item.name] = item.value;
|
|
356
|
-
});
|
|
357
|
-
responses[i].metadata = combinedMetadata;
|
|
358
|
-
}
|
|
359
|
-
const documentsAndScores = responses.map((response) => [
|
|
360
|
-
new document_js_1.Document({
|
|
361
|
-
pageContent: response.text,
|
|
362
|
-
metadata: response.metadata,
|
|
363
|
-
}),
|
|
364
|
-
response.score,
|
|
365
|
-
]);
|
|
366
|
-
return documentsAndScores;
|
|
367
|
-
}
|
|
368
|
-
/**
|
|
369
|
-
* Performs a similarity search and returns documents.
|
|
370
|
-
* @param query The query string for the similarity search.
|
|
371
|
-
* @param k Optional. The number of results to return. Default is 10.
|
|
372
|
-
* @param filter Optional. A VectaraFilter object to refine the search results.
|
|
373
|
-
* @returns A Promise that resolves to an array of Document objects.
|
|
374
|
-
*/
|
|
375
|
-
async similaritySearch(query, k = 10, filter = undefined) {
|
|
376
|
-
const resultWithScore = await this.similaritySearchWithScore(query, k, filter);
|
|
377
|
-
return resultWithScore.map((result) => result[0]);
|
|
378
|
-
}
|
|
379
|
-
/**
|
|
380
|
-
* Throws an error, as this method is not implemented. Use
|
|
381
|
-
* similaritySearch or similaritySearchWithScore instead.
|
|
382
|
-
* @param _query Not used.
|
|
383
|
-
* @param _k Not used.
|
|
384
|
-
* @param _filter Not used.
|
|
385
|
-
* @returns Does not return a value.
|
|
386
|
-
*/
|
|
387
|
-
async similaritySearchVectorWithScore(_query, _k, _filter) {
|
|
388
|
-
throw new Error("Method not implemented. Please call similaritySearch or similaritySearchWithScore instead.");
|
|
389
|
-
}
|
|
390
|
-
/**
|
|
391
|
-
* Creates a VectaraStore instance from texts.
|
|
392
|
-
* @param texts An array of text strings.
|
|
393
|
-
* @param metadatas Metadata for the texts. Can be a single object or an array of objects.
|
|
394
|
-
* @param _embeddings Not used.
|
|
395
|
-
* @param args A VectaraLibArgs object for initializing the VectaraStore instance.
|
|
396
|
-
* @returns A Promise that resolves to a VectaraStore instance.
|
|
397
|
-
*/
|
|
398
|
-
static fromTexts(texts, metadatas, _embeddings, args) {
|
|
399
|
-
const docs = [];
|
|
400
|
-
for (let i = 0; i < texts.length; i += 1) {
|
|
401
|
-
const metadata = Array.isArray(metadatas) ? metadatas[i] : metadatas;
|
|
402
|
-
const newDoc = new document_js_1.Document({
|
|
403
|
-
pageContent: texts[i],
|
|
404
|
-
metadata,
|
|
405
|
-
});
|
|
406
|
-
docs.push(newDoc);
|
|
407
|
-
}
|
|
408
|
-
return VectaraStore.fromDocuments(docs, new fake_js_1.FakeEmbeddings(), args);
|
|
409
|
-
}
|
|
410
|
-
/**
|
|
411
|
-
* Creates a VectaraStore instance from documents.
|
|
412
|
-
* @param docs An array of Document objects.
|
|
413
|
-
* @param _embeddings Not used.
|
|
414
|
-
* @param args A VectaraLibArgs object for initializing the VectaraStore instance.
|
|
415
|
-
* @returns A Promise that resolves to a VectaraStore instance.
|
|
416
|
-
*/
|
|
417
|
-
static async fromDocuments(docs, _embeddings, args) {
|
|
418
|
-
const instance = new this(args);
|
|
419
|
-
await instance.addDocuments(docs);
|
|
420
|
-
return instance;
|
|
421
|
-
}
|
|
422
|
-
}
|
|
423
|
-
exports.VectaraStore = VectaraStore;
|
|
17
|
+
__exportStar(require("@langchain/community/vectorstores/vectara"), exports);
|
|
@@ -1,148 +1 @@
|
|
|
1
|
-
|
|
2
|
-
import { Embeddings } from "../embeddings/base.js";
|
|
3
|
-
import { VectorStore } from "./base.js";
|
|
4
|
-
/**
|
|
5
|
-
* Interface for the arguments required to initialize a VectaraStore
|
|
6
|
-
* instance.
|
|
7
|
-
*/
|
|
8
|
-
export interface VectaraLibArgs {
|
|
9
|
-
customerId: number;
|
|
10
|
-
corpusId: number | number[];
|
|
11
|
-
apiKey: string;
|
|
12
|
-
verbose?: boolean;
|
|
13
|
-
source?: string;
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Interface for the headers required for Vectara API calls.
|
|
17
|
-
*/
|
|
18
|
-
interface VectaraCallHeader {
|
|
19
|
-
headers: {
|
|
20
|
-
"x-api-key": string;
|
|
21
|
-
"Content-Type": string;
|
|
22
|
-
"customer-id": string;
|
|
23
|
-
"X-Source": string;
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Interface for the file objects to be uploaded to Vectara.
|
|
28
|
-
*/
|
|
29
|
-
export interface VectaraFile {
|
|
30
|
-
blob: Blob;
|
|
31
|
-
fileName: string;
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Interface for the filter options used in Vectara API calls.
|
|
35
|
-
*/
|
|
36
|
-
export interface VectaraFilter {
|
|
37
|
-
filter?: string;
|
|
38
|
-
lambda?: number;
|
|
39
|
-
contextConfig?: VectaraContextConfig;
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* Interface for the context configuration used in Vectara API calls.
|
|
43
|
-
*/
|
|
44
|
-
export interface VectaraContextConfig {
|
|
45
|
-
sentencesBefore?: number;
|
|
46
|
-
sentencesAfter?: number;
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* Class for interacting with the Vectara API. Extends the VectorStore
|
|
50
|
-
* class.
|
|
51
|
-
*/
|
|
52
|
-
export declare class VectaraStore extends VectorStore {
|
|
53
|
-
get lc_secrets(): {
|
|
54
|
-
[key: string]: string;
|
|
55
|
-
};
|
|
56
|
-
get lc_aliases(): {
|
|
57
|
-
[key: string]: string;
|
|
58
|
-
};
|
|
59
|
-
FilterType: VectaraFilter;
|
|
60
|
-
private apiEndpoint;
|
|
61
|
-
private apiKey;
|
|
62
|
-
private corpusId;
|
|
63
|
-
private customerId;
|
|
64
|
-
private verbose;
|
|
65
|
-
private source;
|
|
66
|
-
private vectaraApiTimeoutSeconds;
|
|
67
|
-
_vectorstoreType(): string;
|
|
68
|
-
constructor(args: VectaraLibArgs);
|
|
69
|
-
/**
|
|
70
|
-
* Returns a header for Vectara API calls.
|
|
71
|
-
* @returns A Promise that resolves to a VectaraCallHeader object.
|
|
72
|
-
*/
|
|
73
|
-
getJsonHeader(): Promise<VectaraCallHeader>;
|
|
74
|
-
/**
|
|
75
|
-
* Throws an error, as this method is not implemented. Use addDocuments
|
|
76
|
-
* instead.
|
|
77
|
-
* @param _vectors Not used.
|
|
78
|
-
* @param _documents Not used.
|
|
79
|
-
* @returns Does not return a value.
|
|
80
|
-
*/
|
|
81
|
-
addVectors(_vectors: number[][], _documents: Document[]): Promise<void>;
|
|
82
|
-
/**
|
|
83
|
-
* Method to delete data from the Vectara corpus.
|
|
84
|
-
* @param params an array of document IDs to be deleted
|
|
85
|
-
* @returns Promise that resolves when the deletion is complete.
|
|
86
|
-
*/
|
|
87
|
-
deleteDocuments(ids: string[]): Promise<void>;
|
|
88
|
-
/**
|
|
89
|
-
* Adds documents to the Vectara store.
|
|
90
|
-
* @param documents An array of Document objects to add to the Vectara store.
|
|
91
|
-
* @returns A Promise that resolves to an array of document IDs indexed in Vectara.
|
|
92
|
-
*/
|
|
93
|
-
addDocuments(documents: Document[]): Promise<string[]>;
|
|
94
|
-
/**
|
|
95
|
-
* Vectara provides a way to add documents directly via their API. This API handles
|
|
96
|
-
* pre-processing and chunking internally in an optimal manner. This method is a wrapper
|
|
97
|
-
* to utilize that API within LangChain.
|
|
98
|
-
*
|
|
99
|
-
* @param files An array of VectaraFile objects representing the files and their respective file names to be uploaded to Vectara.
|
|
100
|
-
* @param metadata Optional. An array of metadata objects corresponding to each file in the `filePaths` array.
|
|
101
|
-
* @returns A Promise that resolves to the number of successfully uploaded files.
|
|
102
|
-
*/
|
|
103
|
-
addFiles(files: VectaraFile[], metadatas?: Record<string, unknown> | undefined): Promise<string[]>;
|
|
104
|
-
/**
|
|
105
|
-
* Performs a similarity search and returns documents along with their
|
|
106
|
-
* scores.
|
|
107
|
-
* @param query The query string for the similarity search.
|
|
108
|
-
* @param k Optional. The number of results to return. Default is 10.
|
|
109
|
-
* @param filter Optional. A VectaraFilter object to refine the search results.
|
|
110
|
-
* @returns A Promise that resolves to an array of tuples, each containing a Document and its score.
|
|
111
|
-
*/
|
|
112
|
-
similaritySearchWithScore(query: string, k?: number, filter?: VectaraFilter | undefined): Promise<[Document, number][]>;
|
|
113
|
-
/**
|
|
114
|
-
* Performs a similarity search and returns documents.
|
|
115
|
-
* @param query The query string for the similarity search.
|
|
116
|
-
* @param k Optional. The number of results to return. Default is 10.
|
|
117
|
-
* @param filter Optional. A VectaraFilter object to refine the search results.
|
|
118
|
-
* @returns A Promise that resolves to an array of Document objects.
|
|
119
|
-
*/
|
|
120
|
-
similaritySearch(query: string, k?: number, filter?: VectaraFilter | undefined): Promise<Document[]>;
|
|
121
|
-
/**
|
|
122
|
-
* Throws an error, as this method is not implemented. Use
|
|
123
|
-
* similaritySearch or similaritySearchWithScore instead.
|
|
124
|
-
* @param _query Not used.
|
|
125
|
-
* @param _k Not used.
|
|
126
|
-
* @param _filter Not used.
|
|
127
|
-
* @returns Does not return a value.
|
|
128
|
-
*/
|
|
129
|
-
similaritySearchVectorWithScore(_query: number[], _k: number, _filter?: VectaraFilter | undefined): Promise<[Document, number][]>;
|
|
130
|
-
/**
|
|
131
|
-
* Creates a VectaraStore instance from texts.
|
|
132
|
-
* @param texts An array of text strings.
|
|
133
|
-
* @param metadatas Metadata for the texts. Can be a single object or an array of objects.
|
|
134
|
-
* @param _embeddings Not used.
|
|
135
|
-
* @param args A VectaraLibArgs object for initializing the VectaraStore instance.
|
|
136
|
-
* @returns A Promise that resolves to a VectaraStore instance.
|
|
137
|
-
*/
|
|
138
|
-
static fromTexts(texts: string[], metadatas: object | object[], _embeddings: Embeddings, args: VectaraLibArgs): Promise<VectaraStore>;
|
|
139
|
-
/**
|
|
140
|
-
* Creates a VectaraStore instance from documents.
|
|
141
|
-
* @param docs An array of Document objects.
|
|
142
|
-
* @param _embeddings Not used.
|
|
143
|
-
* @param args A VectaraLibArgs object for initializing the VectaraStore instance.
|
|
144
|
-
* @returns A Promise that resolves to a VectaraStore instance.
|
|
145
|
-
*/
|
|
146
|
-
static fromDocuments(docs: Document[], _embeddings: Embeddings, args: VectaraLibArgs): Promise<VectaraStore>;
|
|
147
|
-
}
|
|
148
|
-
export {};
|
|
1
|
+
export * from "@langchain/community/vectorstores/vectara";
|