langchain 0.0.203 → 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_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/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/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 -303
- 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/package.json +4 -26
- 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,237 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
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]; } };
|
|
7
|
+
}
|
|
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
|
+
};
|
|
2
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports
|
|
4
|
-
const generativelanguage_1 = require("@google-ai/generativelanguage");
|
|
5
|
-
const google_auth_library_1 = require("google-auth-library");
|
|
6
|
-
const index_js_1 = require("../schema/index.cjs");
|
|
7
|
-
const env_js_1 = require("../util/env.cjs");
|
|
8
|
-
const base_js_1 = require("./base.cjs");
|
|
9
|
-
function getMessageAuthor(message) {
|
|
10
|
-
const type = message._getType();
|
|
11
|
-
if (index_js_1.ChatMessage.isInstance(message)) {
|
|
12
|
-
return message.role;
|
|
13
|
-
}
|
|
14
|
-
return message.name ?? type;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* A class that wraps the Google Palm chat model.
|
|
18
|
-
* @example
|
|
19
|
-
* ```typescript
|
|
20
|
-
* const model = new ChatGooglePaLM({
|
|
21
|
-
* apiKey: "<YOUR API KEY>",
|
|
22
|
-
* temperature: 0.7,
|
|
23
|
-
* modelName: "models/chat-bison-001",
|
|
24
|
-
* topK: 40,
|
|
25
|
-
* topP: 1,
|
|
26
|
-
* examples: [
|
|
27
|
-
* {
|
|
28
|
-
* input: new HumanMessage("What is your favorite sock color?"),
|
|
29
|
-
* output: new AIMessage("My favorite sock color be arrrr-ange!"),
|
|
30
|
-
* },
|
|
31
|
-
* ],
|
|
32
|
-
* });
|
|
33
|
-
* const questions = [
|
|
34
|
-
* new SystemMessage(
|
|
35
|
-
* "You are a funny assistant that answers in pirate language."
|
|
36
|
-
* ),
|
|
37
|
-
* new HumanMessage("What is your favorite food?"),
|
|
38
|
-
* ];
|
|
39
|
-
* const res = await model.call(questions);
|
|
40
|
-
* console.log({ res });
|
|
41
|
-
* ```
|
|
42
|
-
*/
|
|
43
|
-
class ChatGooglePaLM extends base_js_1.BaseChatModel {
|
|
44
|
-
static lc_name() {
|
|
45
|
-
return "ChatGooglePaLM";
|
|
46
|
-
}
|
|
47
|
-
get lc_secrets() {
|
|
48
|
-
return {
|
|
49
|
-
apiKey: "GOOGLE_PALM_API_KEY",
|
|
50
|
-
};
|
|
51
|
-
}
|
|
52
|
-
constructor(fields) {
|
|
53
|
-
super(fields ?? {});
|
|
54
|
-
Object.defineProperty(this, "lc_serializable", {
|
|
55
|
-
enumerable: true,
|
|
56
|
-
configurable: true,
|
|
57
|
-
writable: true,
|
|
58
|
-
value: true
|
|
59
|
-
});
|
|
60
|
-
Object.defineProperty(this, "modelName", {
|
|
61
|
-
enumerable: true,
|
|
62
|
-
configurable: true,
|
|
63
|
-
writable: true,
|
|
64
|
-
value: "models/chat-bison-001"
|
|
65
|
-
});
|
|
66
|
-
Object.defineProperty(this, "temperature", {
|
|
67
|
-
enumerable: true,
|
|
68
|
-
configurable: true,
|
|
69
|
-
writable: true,
|
|
70
|
-
value: void 0
|
|
71
|
-
}); // default value chosen based on model
|
|
72
|
-
Object.defineProperty(this, "topP", {
|
|
73
|
-
enumerable: true,
|
|
74
|
-
configurable: true,
|
|
75
|
-
writable: true,
|
|
76
|
-
value: void 0
|
|
77
|
-
}); // default value chosen based on model
|
|
78
|
-
Object.defineProperty(this, "topK", {
|
|
79
|
-
enumerable: true,
|
|
80
|
-
configurable: true,
|
|
81
|
-
writable: true,
|
|
82
|
-
value: void 0
|
|
83
|
-
}); // default value chosen based on model
|
|
84
|
-
Object.defineProperty(this, "examples", {
|
|
85
|
-
enumerable: true,
|
|
86
|
-
configurable: true,
|
|
87
|
-
writable: true,
|
|
88
|
-
value: []
|
|
89
|
-
});
|
|
90
|
-
Object.defineProperty(this, "apiKey", {
|
|
91
|
-
enumerable: true,
|
|
92
|
-
configurable: true,
|
|
93
|
-
writable: true,
|
|
94
|
-
value: void 0
|
|
95
|
-
});
|
|
96
|
-
Object.defineProperty(this, "client", {
|
|
97
|
-
enumerable: true,
|
|
98
|
-
configurable: true,
|
|
99
|
-
writable: true,
|
|
100
|
-
value: void 0
|
|
101
|
-
});
|
|
102
|
-
this.modelName = fields?.modelName ?? this.modelName;
|
|
103
|
-
this.temperature = fields?.temperature ?? this.temperature;
|
|
104
|
-
if (this.temperature && (this.temperature < 0 || this.temperature > 1)) {
|
|
105
|
-
throw new Error("`temperature` must be in the range of [0.0,1.0]");
|
|
106
|
-
}
|
|
107
|
-
this.topP = fields?.topP ?? this.topP;
|
|
108
|
-
if (this.topP && this.topP < 0) {
|
|
109
|
-
throw new Error("`topP` must be a positive integer");
|
|
110
|
-
}
|
|
111
|
-
this.topK = fields?.topK ?? this.topK;
|
|
112
|
-
if (this.topK && this.topK < 0) {
|
|
113
|
-
throw new Error("`topK` must be a positive integer");
|
|
114
|
-
}
|
|
115
|
-
this.examples =
|
|
116
|
-
fields?.examples?.map((example) => {
|
|
117
|
-
if (((0, index_js_1.isBaseMessage)(example.input) &&
|
|
118
|
-
typeof example.input.content !== "string") ||
|
|
119
|
-
((0, index_js_1.isBaseMessage)(example.output) &&
|
|
120
|
-
typeof example.output.content !== "string")) {
|
|
121
|
-
throw new Error("GooglePaLM example messages may only have string content.");
|
|
122
|
-
}
|
|
123
|
-
return {
|
|
124
|
-
input: {
|
|
125
|
-
...example.input,
|
|
126
|
-
content: example.input?.content,
|
|
127
|
-
},
|
|
128
|
-
output: {
|
|
129
|
-
...example.output,
|
|
130
|
-
content: example.output?.content,
|
|
131
|
-
},
|
|
132
|
-
};
|
|
133
|
-
}) ?? this.examples;
|
|
134
|
-
this.apiKey =
|
|
135
|
-
fields?.apiKey ?? (0, env_js_1.getEnvironmentVariable)("GOOGLE_PALM_API_KEY");
|
|
136
|
-
if (!this.apiKey) {
|
|
137
|
-
throw new Error("Please set an API key for Google Palm 2 in the environment variable GOOGLE_PALM_API_KEY or in the `apiKey` field of the GooglePalm constructor");
|
|
138
|
-
}
|
|
139
|
-
this.client = new generativelanguage_1.DiscussServiceClient({
|
|
140
|
-
authClient: new google_auth_library_1.GoogleAuth().fromAPIKey(this.apiKey),
|
|
141
|
-
});
|
|
142
|
-
}
|
|
143
|
-
_combineLLMOutput() {
|
|
144
|
-
return [];
|
|
145
|
-
}
|
|
146
|
-
_llmType() {
|
|
147
|
-
return "googlepalm";
|
|
148
|
-
}
|
|
149
|
-
async _generate(messages, options, runManager) {
|
|
150
|
-
const palmMessages = await this.caller.callWithOptions({ signal: options.signal }, this._generateMessage.bind(this), this._mapBaseMessagesToPalmMessages(messages), this._getPalmContextInstruction(messages), this.examples);
|
|
151
|
-
const chatResult = this._mapPalmMessagesToChatResult(palmMessages);
|
|
152
|
-
// Google Palm doesn't provide streaming as of now. But to support streaming handlers
|
|
153
|
-
// we call the handler with entire response text
|
|
154
|
-
void runManager?.handleLLMNewToken(chatResult.generations.length > 0 ? chatResult.generations[0].text : "");
|
|
155
|
-
return chatResult;
|
|
156
|
-
}
|
|
157
|
-
async _generateMessage(messages, context, examples) {
|
|
158
|
-
const [palmMessages] = await this.client.generateMessage({
|
|
159
|
-
candidateCount: 1,
|
|
160
|
-
model: this.modelName,
|
|
161
|
-
temperature: this.temperature,
|
|
162
|
-
topK: this.topK,
|
|
163
|
-
topP: this.topP,
|
|
164
|
-
prompt: {
|
|
165
|
-
context,
|
|
166
|
-
examples,
|
|
167
|
-
messages,
|
|
168
|
-
},
|
|
169
|
-
});
|
|
170
|
-
return palmMessages;
|
|
171
|
-
}
|
|
172
|
-
_getPalmContextInstruction(messages) {
|
|
173
|
-
// get the first message and checks if it's a system 'system' messages
|
|
174
|
-
const systemMessage = messages.length > 0 && getMessageAuthor(messages[0]) === "system"
|
|
175
|
-
? messages[0]
|
|
176
|
-
: undefined;
|
|
177
|
-
if (systemMessage?.content !== undefined &&
|
|
178
|
-
typeof systemMessage.content !== "string") {
|
|
179
|
-
throw new Error("Non-string system message content is not supported.");
|
|
180
|
-
}
|
|
181
|
-
return systemMessage?.content;
|
|
182
|
-
}
|
|
183
|
-
_mapBaseMessagesToPalmMessages(messages) {
|
|
184
|
-
// remove all 'system' messages
|
|
185
|
-
const nonSystemMessages = messages.filter((m) => getMessageAuthor(m) !== "system");
|
|
186
|
-
// requires alternate human & ai messages. Throw error if two messages are consecutive
|
|
187
|
-
nonSystemMessages.forEach((msg, index) => {
|
|
188
|
-
if (index < 1)
|
|
189
|
-
return;
|
|
190
|
-
if (getMessageAuthor(msg) === getMessageAuthor(nonSystemMessages[index - 1])) {
|
|
191
|
-
throw new Error(`Google PaLM requires alternate messages between authors`);
|
|
192
|
-
}
|
|
193
|
-
});
|
|
194
|
-
return nonSystemMessages.map((m) => {
|
|
195
|
-
if (typeof m.content !== "string") {
|
|
196
|
-
throw new Error("ChatGooglePaLM does not support non-string message content.");
|
|
197
|
-
}
|
|
198
|
-
return {
|
|
199
|
-
author: getMessageAuthor(m),
|
|
200
|
-
content: m.content,
|
|
201
|
-
citationMetadata: {
|
|
202
|
-
citationSources: m.additional_kwargs.citationSources,
|
|
203
|
-
},
|
|
204
|
-
};
|
|
205
|
-
});
|
|
206
|
-
}
|
|
207
|
-
_mapPalmMessagesToChatResult(msgRes) {
|
|
208
|
-
if (msgRes.candidates &&
|
|
209
|
-
msgRes.candidates.length > 0 &&
|
|
210
|
-
msgRes.candidates[0]) {
|
|
211
|
-
const message = msgRes.candidates[0];
|
|
212
|
-
return {
|
|
213
|
-
generations: [
|
|
214
|
-
{
|
|
215
|
-
text: message.content ?? "",
|
|
216
|
-
message: new index_js_1.AIMessage({
|
|
217
|
-
content: message.content ?? "",
|
|
218
|
-
name: message.author === null ? undefined : message.author,
|
|
219
|
-
additional_kwargs: {
|
|
220
|
-
citationSources: message.citationMetadata?.citationSources,
|
|
221
|
-
filters: msgRes.filters, // content filters applied
|
|
222
|
-
},
|
|
223
|
-
}),
|
|
224
|
-
},
|
|
225
|
-
],
|
|
226
|
-
};
|
|
227
|
-
}
|
|
228
|
-
// if rejected or error, return empty generations with reason in filters
|
|
229
|
-
return {
|
|
230
|
-
generations: [],
|
|
231
|
-
llmOutput: {
|
|
232
|
-
filters: msgRes.filters,
|
|
233
|
-
},
|
|
234
|
-
};
|
|
235
|
-
}
|
|
236
|
-
}
|
|
237
|
-
exports.ChatGooglePaLM = ChatGooglePaLM;
|
|
17
|
+
__exportStar(require("@langchain/community/chat_models/googlepalm"), exports);
|
|
@@ -1,108 +1 @@
|
|
|
1
|
-
|
|
2
|
-
import { CallbackManagerForLLMRun } from "../callbacks/manager.js";
|
|
3
|
-
import { BaseMessage, ChatResult } from "../schema/index.js";
|
|
4
|
-
import { BaseChatModel, BaseChatModelParams } from "./base.js";
|
|
5
|
-
export type BaseMessageExamplePair = {
|
|
6
|
-
input: BaseMessage;
|
|
7
|
-
output: BaseMessage;
|
|
8
|
-
};
|
|
9
|
-
/**
|
|
10
|
-
* An interface defining the input to the ChatGooglePaLM class.
|
|
11
|
-
*/
|
|
12
|
-
export interface GooglePaLMChatInput extends BaseChatModelParams {
|
|
13
|
-
/**
|
|
14
|
-
* Model Name to use
|
|
15
|
-
*
|
|
16
|
-
* Note: The format must follow the pattern - `models/{model}`
|
|
17
|
-
*/
|
|
18
|
-
modelName?: string;
|
|
19
|
-
/**
|
|
20
|
-
* Controls the randomness of the output.
|
|
21
|
-
*
|
|
22
|
-
* Values can range from [0.0,1.0], inclusive. A value closer to 1.0
|
|
23
|
-
* will produce responses that are more varied and creative, while
|
|
24
|
-
* a value closer to 0.0 will typically result in less surprising
|
|
25
|
-
* responses from the model.
|
|
26
|
-
*
|
|
27
|
-
* Note: The default value varies by model
|
|
28
|
-
*/
|
|
29
|
-
temperature?: number;
|
|
30
|
-
/**
|
|
31
|
-
* Top-p changes how the model selects tokens for output.
|
|
32
|
-
*
|
|
33
|
-
* Tokens are selected from most probable to least until the sum
|
|
34
|
-
* of their probabilities equals the top-p value.
|
|
35
|
-
*
|
|
36
|
-
* For example, if tokens A, B, and C have a probability of
|
|
37
|
-
* .3, .2, and .1 and the top-p value is .5, then the model will
|
|
38
|
-
* select either A or B as the next token (using temperature).
|
|
39
|
-
*
|
|
40
|
-
* Note: The default value varies by model
|
|
41
|
-
*/
|
|
42
|
-
topP?: number;
|
|
43
|
-
/**
|
|
44
|
-
* Top-k changes how the model selects tokens for output.
|
|
45
|
-
*
|
|
46
|
-
* A top-k of 1 means the selected token is the most probable among
|
|
47
|
-
* all tokens in the model’s vocabulary (also called greedy decoding),
|
|
48
|
-
* while a top-k of 3 means that the next token is selected from
|
|
49
|
-
* among the 3 most probable tokens (using temperature).
|
|
50
|
-
*
|
|
51
|
-
* Note: The default value varies by model
|
|
52
|
-
*/
|
|
53
|
-
topK?: number;
|
|
54
|
-
examples?: protos.google.ai.generativelanguage.v1beta2.IExample[] | BaseMessageExamplePair[];
|
|
55
|
-
/**
|
|
56
|
-
* Google Palm API key to use
|
|
57
|
-
*/
|
|
58
|
-
apiKey?: string;
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* A class that wraps the Google Palm chat model.
|
|
62
|
-
* @example
|
|
63
|
-
* ```typescript
|
|
64
|
-
* const model = new ChatGooglePaLM({
|
|
65
|
-
* apiKey: "<YOUR API KEY>",
|
|
66
|
-
* temperature: 0.7,
|
|
67
|
-
* modelName: "models/chat-bison-001",
|
|
68
|
-
* topK: 40,
|
|
69
|
-
* topP: 1,
|
|
70
|
-
* examples: [
|
|
71
|
-
* {
|
|
72
|
-
* input: new HumanMessage("What is your favorite sock color?"),
|
|
73
|
-
* output: new AIMessage("My favorite sock color be arrrr-ange!"),
|
|
74
|
-
* },
|
|
75
|
-
* ],
|
|
76
|
-
* });
|
|
77
|
-
* const questions = [
|
|
78
|
-
* new SystemMessage(
|
|
79
|
-
* "You are a funny assistant that answers in pirate language."
|
|
80
|
-
* ),
|
|
81
|
-
* new HumanMessage("What is your favorite food?"),
|
|
82
|
-
* ];
|
|
83
|
-
* const res = await model.call(questions);
|
|
84
|
-
* console.log({ res });
|
|
85
|
-
* ```
|
|
86
|
-
*/
|
|
87
|
-
export declare class ChatGooglePaLM extends BaseChatModel implements GooglePaLMChatInput {
|
|
88
|
-
static lc_name(): string;
|
|
89
|
-
lc_serializable: boolean;
|
|
90
|
-
get lc_secrets(): {
|
|
91
|
-
[key: string]: string;
|
|
92
|
-
} | undefined;
|
|
93
|
-
modelName: string;
|
|
94
|
-
temperature?: number;
|
|
95
|
-
topP?: number;
|
|
96
|
-
topK?: number;
|
|
97
|
-
examples: protos.google.ai.generativelanguage.v1beta2.IExample[];
|
|
98
|
-
apiKey?: string;
|
|
99
|
-
private client;
|
|
100
|
-
constructor(fields?: GooglePaLMChatInput);
|
|
101
|
-
_combineLLMOutput(): never[];
|
|
102
|
-
_llmType(): string;
|
|
103
|
-
_generate(messages: BaseMessage[], options: this["ParsedCallOptions"], runManager?: CallbackManagerForLLMRun): Promise<ChatResult>;
|
|
104
|
-
protected _generateMessage(messages: protos.google.ai.generativelanguage.v1beta2.IMessage[], context?: string, examples?: protos.google.ai.generativelanguage.v1beta2.IExample[]): Promise<protos.google.ai.generativelanguage.v1beta2.IGenerateMessageResponse>;
|
|
105
|
-
protected _getPalmContextInstruction(messages: BaseMessage[]): string | undefined;
|
|
106
|
-
protected _mapBaseMessagesToPalmMessages(messages: BaseMessage[]): protos.google.ai.generativelanguage.v1beta2.IMessage[];
|
|
107
|
-
protected _mapPalmMessagesToChatResult(msgRes: protos.google.ai.generativelanguage.v1beta2.IGenerateMessageResponse): ChatResult;
|
|
108
|
-
}
|
|
1
|
+
export * from "@langchain/community/chat_models/googlepalm";
|
|
@@ -1,233 +1 @@
|
|
|
1
|
-
|
|
2
|
-
import { GoogleAuth } from "google-auth-library";
|
|
3
|
-
import { AIMessage, ChatMessage, isBaseMessage, } from "../schema/index.js";
|
|
4
|
-
import { getEnvironmentVariable } from "../util/env.js";
|
|
5
|
-
import { BaseChatModel } from "./base.js";
|
|
6
|
-
function getMessageAuthor(message) {
|
|
7
|
-
const type = message._getType();
|
|
8
|
-
if (ChatMessage.isInstance(message)) {
|
|
9
|
-
return message.role;
|
|
10
|
-
}
|
|
11
|
-
return message.name ?? type;
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* A class that wraps the Google Palm chat model.
|
|
15
|
-
* @example
|
|
16
|
-
* ```typescript
|
|
17
|
-
* const model = new ChatGooglePaLM({
|
|
18
|
-
* apiKey: "<YOUR API KEY>",
|
|
19
|
-
* temperature: 0.7,
|
|
20
|
-
* modelName: "models/chat-bison-001",
|
|
21
|
-
* topK: 40,
|
|
22
|
-
* topP: 1,
|
|
23
|
-
* examples: [
|
|
24
|
-
* {
|
|
25
|
-
* input: new HumanMessage("What is your favorite sock color?"),
|
|
26
|
-
* output: new AIMessage("My favorite sock color be arrrr-ange!"),
|
|
27
|
-
* },
|
|
28
|
-
* ],
|
|
29
|
-
* });
|
|
30
|
-
* const questions = [
|
|
31
|
-
* new SystemMessage(
|
|
32
|
-
* "You are a funny assistant that answers in pirate language."
|
|
33
|
-
* ),
|
|
34
|
-
* new HumanMessage("What is your favorite food?"),
|
|
35
|
-
* ];
|
|
36
|
-
* const res = await model.call(questions);
|
|
37
|
-
* console.log({ res });
|
|
38
|
-
* ```
|
|
39
|
-
*/
|
|
40
|
-
export class ChatGooglePaLM extends BaseChatModel {
|
|
41
|
-
static lc_name() {
|
|
42
|
-
return "ChatGooglePaLM";
|
|
43
|
-
}
|
|
44
|
-
get lc_secrets() {
|
|
45
|
-
return {
|
|
46
|
-
apiKey: "GOOGLE_PALM_API_KEY",
|
|
47
|
-
};
|
|
48
|
-
}
|
|
49
|
-
constructor(fields) {
|
|
50
|
-
super(fields ?? {});
|
|
51
|
-
Object.defineProperty(this, "lc_serializable", {
|
|
52
|
-
enumerable: true,
|
|
53
|
-
configurable: true,
|
|
54
|
-
writable: true,
|
|
55
|
-
value: true
|
|
56
|
-
});
|
|
57
|
-
Object.defineProperty(this, "modelName", {
|
|
58
|
-
enumerable: true,
|
|
59
|
-
configurable: true,
|
|
60
|
-
writable: true,
|
|
61
|
-
value: "models/chat-bison-001"
|
|
62
|
-
});
|
|
63
|
-
Object.defineProperty(this, "temperature", {
|
|
64
|
-
enumerable: true,
|
|
65
|
-
configurable: true,
|
|
66
|
-
writable: true,
|
|
67
|
-
value: void 0
|
|
68
|
-
}); // default value chosen based on model
|
|
69
|
-
Object.defineProperty(this, "topP", {
|
|
70
|
-
enumerable: true,
|
|
71
|
-
configurable: true,
|
|
72
|
-
writable: true,
|
|
73
|
-
value: void 0
|
|
74
|
-
}); // default value chosen based on model
|
|
75
|
-
Object.defineProperty(this, "topK", {
|
|
76
|
-
enumerable: true,
|
|
77
|
-
configurable: true,
|
|
78
|
-
writable: true,
|
|
79
|
-
value: void 0
|
|
80
|
-
}); // default value chosen based on model
|
|
81
|
-
Object.defineProperty(this, "examples", {
|
|
82
|
-
enumerable: true,
|
|
83
|
-
configurable: true,
|
|
84
|
-
writable: true,
|
|
85
|
-
value: []
|
|
86
|
-
});
|
|
87
|
-
Object.defineProperty(this, "apiKey", {
|
|
88
|
-
enumerable: true,
|
|
89
|
-
configurable: true,
|
|
90
|
-
writable: true,
|
|
91
|
-
value: void 0
|
|
92
|
-
});
|
|
93
|
-
Object.defineProperty(this, "client", {
|
|
94
|
-
enumerable: true,
|
|
95
|
-
configurable: true,
|
|
96
|
-
writable: true,
|
|
97
|
-
value: void 0
|
|
98
|
-
});
|
|
99
|
-
this.modelName = fields?.modelName ?? this.modelName;
|
|
100
|
-
this.temperature = fields?.temperature ?? this.temperature;
|
|
101
|
-
if (this.temperature && (this.temperature < 0 || this.temperature > 1)) {
|
|
102
|
-
throw new Error("`temperature` must be in the range of [0.0,1.0]");
|
|
103
|
-
}
|
|
104
|
-
this.topP = fields?.topP ?? this.topP;
|
|
105
|
-
if (this.topP && this.topP < 0) {
|
|
106
|
-
throw new Error("`topP` must be a positive integer");
|
|
107
|
-
}
|
|
108
|
-
this.topK = fields?.topK ?? this.topK;
|
|
109
|
-
if (this.topK && this.topK < 0) {
|
|
110
|
-
throw new Error("`topK` must be a positive integer");
|
|
111
|
-
}
|
|
112
|
-
this.examples =
|
|
113
|
-
fields?.examples?.map((example) => {
|
|
114
|
-
if ((isBaseMessage(example.input) &&
|
|
115
|
-
typeof example.input.content !== "string") ||
|
|
116
|
-
(isBaseMessage(example.output) &&
|
|
117
|
-
typeof example.output.content !== "string")) {
|
|
118
|
-
throw new Error("GooglePaLM example messages may only have string content.");
|
|
119
|
-
}
|
|
120
|
-
return {
|
|
121
|
-
input: {
|
|
122
|
-
...example.input,
|
|
123
|
-
content: example.input?.content,
|
|
124
|
-
},
|
|
125
|
-
output: {
|
|
126
|
-
...example.output,
|
|
127
|
-
content: example.output?.content,
|
|
128
|
-
},
|
|
129
|
-
};
|
|
130
|
-
}) ?? this.examples;
|
|
131
|
-
this.apiKey =
|
|
132
|
-
fields?.apiKey ?? getEnvironmentVariable("GOOGLE_PALM_API_KEY");
|
|
133
|
-
if (!this.apiKey) {
|
|
134
|
-
throw new Error("Please set an API key for Google Palm 2 in the environment variable GOOGLE_PALM_API_KEY or in the `apiKey` field of the GooglePalm constructor");
|
|
135
|
-
}
|
|
136
|
-
this.client = new DiscussServiceClient({
|
|
137
|
-
authClient: new GoogleAuth().fromAPIKey(this.apiKey),
|
|
138
|
-
});
|
|
139
|
-
}
|
|
140
|
-
_combineLLMOutput() {
|
|
141
|
-
return [];
|
|
142
|
-
}
|
|
143
|
-
_llmType() {
|
|
144
|
-
return "googlepalm";
|
|
145
|
-
}
|
|
146
|
-
async _generate(messages, options, runManager) {
|
|
147
|
-
const palmMessages = await this.caller.callWithOptions({ signal: options.signal }, this._generateMessage.bind(this), this._mapBaseMessagesToPalmMessages(messages), this._getPalmContextInstruction(messages), this.examples);
|
|
148
|
-
const chatResult = this._mapPalmMessagesToChatResult(palmMessages);
|
|
149
|
-
// Google Palm doesn't provide streaming as of now. But to support streaming handlers
|
|
150
|
-
// we call the handler with entire response text
|
|
151
|
-
void runManager?.handleLLMNewToken(chatResult.generations.length > 0 ? chatResult.generations[0].text : "");
|
|
152
|
-
return chatResult;
|
|
153
|
-
}
|
|
154
|
-
async _generateMessage(messages, context, examples) {
|
|
155
|
-
const [palmMessages] = await this.client.generateMessage({
|
|
156
|
-
candidateCount: 1,
|
|
157
|
-
model: this.modelName,
|
|
158
|
-
temperature: this.temperature,
|
|
159
|
-
topK: this.topK,
|
|
160
|
-
topP: this.topP,
|
|
161
|
-
prompt: {
|
|
162
|
-
context,
|
|
163
|
-
examples,
|
|
164
|
-
messages,
|
|
165
|
-
},
|
|
166
|
-
});
|
|
167
|
-
return palmMessages;
|
|
168
|
-
}
|
|
169
|
-
_getPalmContextInstruction(messages) {
|
|
170
|
-
// get the first message and checks if it's a system 'system' messages
|
|
171
|
-
const systemMessage = messages.length > 0 && getMessageAuthor(messages[0]) === "system"
|
|
172
|
-
? messages[0]
|
|
173
|
-
: undefined;
|
|
174
|
-
if (systemMessage?.content !== undefined &&
|
|
175
|
-
typeof systemMessage.content !== "string") {
|
|
176
|
-
throw new Error("Non-string system message content is not supported.");
|
|
177
|
-
}
|
|
178
|
-
return systemMessage?.content;
|
|
179
|
-
}
|
|
180
|
-
_mapBaseMessagesToPalmMessages(messages) {
|
|
181
|
-
// remove all 'system' messages
|
|
182
|
-
const nonSystemMessages = messages.filter((m) => getMessageAuthor(m) !== "system");
|
|
183
|
-
// requires alternate human & ai messages. Throw error if two messages are consecutive
|
|
184
|
-
nonSystemMessages.forEach((msg, index) => {
|
|
185
|
-
if (index < 1)
|
|
186
|
-
return;
|
|
187
|
-
if (getMessageAuthor(msg) === getMessageAuthor(nonSystemMessages[index - 1])) {
|
|
188
|
-
throw new Error(`Google PaLM requires alternate messages between authors`);
|
|
189
|
-
}
|
|
190
|
-
});
|
|
191
|
-
return nonSystemMessages.map((m) => {
|
|
192
|
-
if (typeof m.content !== "string") {
|
|
193
|
-
throw new Error("ChatGooglePaLM does not support non-string message content.");
|
|
194
|
-
}
|
|
195
|
-
return {
|
|
196
|
-
author: getMessageAuthor(m),
|
|
197
|
-
content: m.content,
|
|
198
|
-
citationMetadata: {
|
|
199
|
-
citationSources: m.additional_kwargs.citationSources,
|
|
200
|
-
},
|
|
201
|
-
};
|
|
202
|
-
});
|
|
203
|
-
}
|
|
204
|
-
_mapPalmMessagesToChatResult(msgRes) {
|
|
205
|
-
if (msgRes.candidates &&
|
|
206
|
-
msgRes.candidates.length > 0 &&
|
|
207
|
-
msgRes.candidates[0]) {
|
|
208
|
-
const message = msgRes.candidates[0];
|
|
209
|
-
return {
|
|
210
|
-
generations: [
|
|
211
|
-
{
|
|
212
|
-
text: message.content ?? "",
|
|
213
|
-
message: new AIMessage({
|
|
214
|
-
content: message.content ?? "",
|
|
215
|
-
name: message.author === null ? undefined : message.author,
|
|
216
|
-
additional_kwargs: {
|
|
217
|
-
citationSources: message.citationMetadata?.citationSources,
|
|
218
|
-
filters: msgRes.filters, // content filters applied
|
|
219
|
-
},
|
|
220
|
-
}),
|
|
221
|
-
},
|
|
222
|
-
],
|
|
223
|
-
};
|
|
224
|
-
}
|
|
225
|
-
// if rejected or error, return empty generations with reason in filters
|
|
226
|
-
return {
|
|
227
|
-
generations: [],
|
|
228
|
-
llmOutput: {
|
|
229
|
-
filters: msgRes.filters,
|
|
230
|
-
},
|
|
231
|
-
};
|
|
232
|
-
}
|
|
233
|
-
}
|
|
1
|
+
export * from "@langchain/community/chat_models/googlepalm";
|
|
@@ -1,42 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* Enables calls to the Google Cloud's Vertex AI API to access
|
|
9
|
-
* Large Language Models in a chat-like fashion.
|
|
10
|
-
*
|
|
11
|
-
* To use, you will need to have one of the following authentication
|
|
12
|
-
* methods in place:
|
|
13
|
-
* - You are logged into an account permitted to the Google Cloud project
|
|
14
|
-
* using Vertex AI.
|
|
15
|
-
* - You are running this on a machine using a service account permitted to
|
|
16
|
-
* the Google Cloud project using Vertex AI.
|
|
17
|
-
* - The `GOOGLE_APPLICATION_CREDENTIALS` environment variable is set to the
|
|
18
|
-
* path of a credentials file for a service account permitted to the
|
|
19
|
-
* Google Cloud project using Vertex AI.
|
|
20
|
-
* @example
|
|
21
|
-
* ```typescript
|
|
22
|
-
* const model = new ChatGoogleVertexAI({
|
|
23
|
-
* temperature: 0.7,
|
|
24
|
-
* });
|
|
25
|
-
* const result = await model.invoke("What is the capital of France?");
|
|
26
|
-
* ```
|
|
27
|
-
*/
|
|
28
|
-
class ChatGoogleVertexAI extends common_js_1.BaseChatGoogleVertexAI {
|
|
29
|
-
static lc_name() {
|
|
30
|
-
return "ChatVertexAI";
|
|
31
|
-
}
|
|
32
|
-
constructor(fields) {
|
|
33
|
-
super(fields);
|
|
34
|
-
const client = new googlevertexai_gauth_js_1.GAuthClient({
|
|
35
|
-
scopes: "https://www.googleapis.com/auth/cloud-platform",
|
|
36
|
-
...fields?.authOptions,
|
|
37
|
-
});
|
|
38
|
-
this.connection = new googlevertexai_connection_js_1.GoogleVertexAILLMConnection({ ...fields, ...this }, this.caller, client, false);
|
|
39
|
-
this.streamedConnection = new googlevertexai_connection_js_1.GoogleVertexAILLMConnection({ ...fields, ...this }, this.caller, client, true);
|
|
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]; } };
|
|
40
7
|
}
|
|
41
|
-
|
|
42
|
-
|
|
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/chat_models/googlevertexai"), exports);
|
|
@@ -1,28 +1 @@
|
|
|
1
|
-
|
|
2
|
-
import { BaseChatGoogleVertexAI, GoogleVertexAIChatInput } from "./common.js";
|
|
3
|
-
/**
|
|
4
|
-
* Enables calls to the Google Cloud's Vertex AI API to access
|
|
5
|
-
* Large Language Models in a chat-like fashion.
|
|
6
|
-
*
|
|
7
|
-
* To use, you will need to have one of the following authentication
|
|
8
|
-
* methods in place:
|
|
9
|
-
* - You are logged into an account permitted to the Google Cloud project
|
|
10
|
-
* using Vertex AI.
|
|
11
|
-
* - You are running this on a machine using a service account permitted to
|
|
12
|
-
* the Google Cloud project using Vertex AI.
|
|
13
|
-
* - The `GOOGLE_APPLICATION_CREDENTIALS` environment variable is set to the
|
|
14
|
-
* path of a credentials file for a service account permitted to the
|
|
15
|
-
* Google Cloud project using Vertex AI.
|
|
16
|
-
* @example
|
|
17
|
-
* ```typescript
|
|
18
|
-
* const model = new ChatGoogleVertexAI({
|
|
19
|
-
* temperature: 0.7,
|
|
20
|
-
* });
|
|
21
|
-
* const result = await model.invoke("What is the capital of France?");
|
|
22
|
-
* ```
|
|
23
|
-
*/
|
|
24
|
-
export declare class ChatGoogleVertexAI extends BaseChatGoogleVertexAI<GoogleAuthOptions> {
|
|
25
|
-
static lc_name(): string;
|
|
26
|
-
constructor(fields?: GoogleVertexAIChatInput<GoogleAuthOptions>);
|
|
27
|
-
}
|
|
28
|
-
export type { ChatExample, GoogleVertexAIChatAuthor, GoogleVertexAIChatInput, GoogleVertexAIChatInstance, GoogleVertexAIChatMessage, GoogleVertexAIChatMessageFields, GoogleVertexAIChatPrediction, } from "./common.js";
|
|
1
|
+
export * from "@langchain/community/chat_models/googlevertexai";
|