langchain 0.4.0.dev0__py3-none-any.whl → 1.0.0__py3-none-any.whl
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.
Potentially problematic release.
This version of langchain might be problematic. Click here for more details.
- langchain/__init__.py +2 -452
- langchain/agents/__init__.py +9 -178
- langchain/agents/factory.py +1582 -0
- langchain/agents/middleware/__init__.py +80 -0
- langchain/agents/middleware/_execution.py +388 -0
- langchain/agents/middleware/_redaction.py +350 -0
- langchain/agents/middleware/context_editing.py +274 -0
- langchain/agents/middleware/file_search.py +382 -0
- langchain/agents/middleware/human_in_the_loop.py +351 -0
- langchain/agents/middleware/model_call_limit.py +210 -0
- langchain/agents/middleware/model_fallback.py +137 -0
- langchain/agents/middleware/pii.py +317 -0
- langchain/agents/middleware/shell_tool.py +718 -0
- langchain/agents/middleware/summarization.py +249 -0
- langchain/agents/middleware/todo.py +219 -0
- langchain/agents/middleware/tool_call_limit.py +333 -0
- langchain/agents/middleware/tool_emulator.py +200 -0
- langchain/agents/middleware/tool_retry.py +384 -0
- langchain/agents/middleware/tool_selection.py +310 -0
- langchain/agents/middleware/types.py +1572 -0
- langchain/agents/structured_output.py +426 -0
- langchain/chat_models/__init__.py +7 -72
- langchain/chat_models/base.py +268 -358
- langchain/embeddings/__init__.py +7 -217
- langchain/embeddings/base.py +31 -43
- langchain/messages/__init__.py +72 -0
- langchain/rate_limiters/__init__.py +13 -0
- langchain/tools/__init__.py +17 -197
- langchain/tools/tool_node.py +1700 -0
- langchain-1.0.0.dist-info/METADATA +87 -0
- langchain-1.0.0.dist-info/RECORD +34 -0
- {langchain-0.4.0.dev0.dist-info → langchain-1.0.0.dist-info}/WHEEL +1 -1
- langchain/_api/__init__.py +0 -28
- langchain/_api/deprecation.py +0 -32
- langchain/_api/interactive_env.py +0 -5
- langchain/_api/module_import.py +0 -153
- langchain/_api/path.py +0 -3
- langchain/adapters/__init__.py +0 -0
- langchain/adapters/openai.py +0 -63
- langchain/agents/agent.py +0 -1824
- langchain/agents/agent_iterator.py +0 -438
- langchain/agents/agent_toolkits/__init__.py +0 -167
- langchain/agents/agent_toolkits/ainetwork/__init__.py +0 -1
- langchain/agents/agent_toolkits/ainetwork/toolkit.py +0 -25
- langchain/agents/agent_toolkits/amadeus/toolkit.py +0 -23
- langchain/agents/agent_toolkits/azure_cognitive_services.py +0 -29
- langchain/agents/agent_toolkits/base.py +0 -3
- langchain/agents/agent_toolkits/clickup/__init__.py +0 -0
- langchain/agents/agent_toolkits/clickup/toolkit.py +0 -25
- langchain/agents/agent_toolkits/conversational_retrieval/__init__.py +0 -0
- langchain/agents/agent_toolkits/conversational_retrieval/openai_functions.py +0 -87
- langchain/agents/agent_toolkits/conversational_retrieval/tool.py +0 -3
- langchain/agents/agent_toolkits/csv/__init__.py +0 -28
- langchain/agents/agent_toolkits/file_management/__init__.py +0 -31
- langchain/agents/agent_toolkits/file_management/toolkit.py +0 -29
- langchain/agents/agent_toolkits/github/__init__.py +0 -1
- langchain/agents/agent_toolkits/github/toolkit.py +0 -69
- langchain/agents/agent_toolkits/gitlab/__init__.py +0 -1
- langchain/agents/agent_toolkits/gitlab/toolkit.py +0 -25
- langchain/agents/agent_toolkits/gmail/__init__.py +0 -1
- langchain/agents/agent_toolkits/gmail/toolkit.py +0 -23
- langchain/agents/agent_toolkits/jira/__init__.py +0 -1
- langchain/agents/agent_toolkits/jira/toolkit.py +0 -23
- langchain/agents/agent_toolkits/json/__init__.py +0 -1
- langchain/agents/agent_toolkits/json/base.py +0 -25
- langchain/agents/agent_toolkits/json/prompt.py +0 -24
- langchain/agents/agent_toolkits/json/toolkit.py +0 -23
- langchain/agents/agent_toolkits/multion/__init__.py +0 -1
- langchain/agents/agent_toolkits/multion/toolkit.py +0 -25
- langchain/agents/agent_toolkits/nasa/__init__.py +0 -1
- langchain/agents/agent_toolkits/nasa/toolkit.py +0 -23
- langchain/agents/agent_toolkits/nla/__init__.py +0 -0
- langchain/agents/agent_toolkits/nla/tool.py +0 -23
- langchain/agents/agent_toolkits/nla/toolkit.py +0 -23
- langchain/agents/agent_toolkits/office365/__init__.py +0 -1
- langchain/agents/agent_toolkits/office365/toolkit.py +0 -25
- langchain/agents/agent_toolkits/openapi/__init__.py +0 -1
- langchain/agents/agent_toolkits/openapi/base.py +0 -25
- langchain/agents/agent_toolkits/openapi/planner.py +0 -52
- langchain/agents/agent_toolkits/openapi/planner_prompt.py +0 -103
- langchain/agents/agent_toolkits/openapi/prompt.py +0 -29
- langchain/agents/agent_toolkits/openapi/spec.py +0 -30
- langchain/agents/agent_toolkits/openapi/toolkit.py +0 -30
- langchain/agents/agent_toolkits/pandas/__init__.py +0 -28
- langchain/agents/agent_toolkits/playwright/__init__.py +0 -29
- langchain/agents/agent_toolkits/playwright/toolkit.py +0 -27
- langchain/agents/agent_toolkits/powerbi/__init__.py +0 -1
- langchain/agents/agent_toolkits/powerbi/base.py +0 -25
- langchain/agents/agent_toolkits/powerbi/chat_base.py +0 -27
- langchain/agents/agent_toolkits/powerbi/prompt.py +0 -36
- langchain/agents/agent_toolkits/powerbi/toolkit.py +0 -25
- langchain/agents/agent_toolkits/python/__init__.py +0 -28
- langchain/agents/agent_toolkits/slack/__init__.py +0 -1
- langchain/agents/agent_toolkits/slack/toolkit.py +0 -23
- langchain/agents/agent_toolkits/spark/__init__.py +0 -28
- langchain/agents/agent_toolkits/spark_sql/__init__.py +0 -1
- langchain/agents/agent_toolkits/spark_sql/base.py +0 -25
- langchain/agents/agent_toolkits/spark_sql/prompt.py +0 -27
- langchain/agents/agent_toolkits/spark_sql/toolkit.py +0 -25
- langchain/agents/agent_toolkits/sql/__init__.py +0 -1
- langchain/agents/agent_toolkits/sql/base.py +0 -23
- langchain/agents/agent_toolkits/sql/prompt.py +0 -29
- langchain/agents/agent_toolkits/sql/toolkit.py +0 -25
- langchain/agents/agent_toolkits/steam/__init__.py +0 -1
- langchain/agents/agent_toolkits/steam/toolkit.py +0 -23
- langchain/agents/agent_toolkits/vectorstore/__init__.py +0 -1
- langchain/agents/agent_toolkits/vectorstore/base.py +0 -219
- langchain/agents/agent_toolkits/vectorstore/prompt.py +0 -11
- langchain/agents/agent_toolkits/vectorstore/toolkit.py +0 -97
- langchain/agents/agent_toolkits/xorbits/__init__.py +0 -28
- langchain/agents/agent_toolkits/zapier/__init__.py +0 -1
- langchain/agents/agent_toolkits/zapier/toolkit.py +0 -25
- langchain/agents/agent_types.py +0 -57
- langchain/agents/chat/__init__.py +0 -0
- langchain/agents/chat/base.py +0 -180
- langchain/agents/chat/output_parser.py +0 -74
- langchain/agents/chat/prompt.py +0 -29
- langchain/agents/conversational/__init__.py +0 -1
- langchain/agents/conversational/base.py +0 -178
- langchain/agents/conversational/output_parser.py +0 -51
- langchain/agents/conversational/prompt.py +0 -35
- langchain/agents/conversational_chat/__init__.py +0 -1
- langchain/agents/conversational_chat/base.py +0 -183
- langchain/agents/conversational_chat/output_parser.py +0 -57
- langchain/agents/conversational_chat/prompt.py +0 -56
- langchain/agents/format_scratchpad/__init__.py +0 -25
- langchain/agents/format_scratchpad/log.py +0 -25
- langchain/agents/format_scratchpad/log_to_messages.py +0 -26
- langchain/agents/format_scratchpad/openai_functions.py +0 -80
- langchain/agents/format_scratchpad/openai_tools.py +0 -5
- langchain/agents/format_scratchpad/tools.py +0 -65
- langchain/agents/format_scratchpad/xml.py +0 -52
- langchain/agents/initialize.py +0 -105
- langchain/agents/json_chat/__init__.py +0 -0
- langchain/agents/json_chat/base.py +0 -196
- langchain/agents/json_chat/prompt.py +0 -8
- langchain/agents/load_tools.py +0 -13
- langchain/agents/loading.py +0 -148
- langchain/agents/mrkl/__init__.py +0 -1
- langchain/agents/mrkl/base.py +0 -218
- langchain/agents/mrkl/output_parser.py +0 -103
- langchain/agents/mrkl/prompt.py +0 -15
- langchain/agents/openai_assistant/__init__.py +0 -3
- langchain/agents/openai_assistant/base.py +0 -818
- langchain/agents/openai_functions_agent/__init__.py +0 -0
- langchain/agents/openai_functions_agent/agent_token_buffer_memory.py +0 -103
- langchain/agents/openai_functions_agent/base.py +0 -382
- langchain/agents/openai_functions_multi_agent/__init__.py +0 -0
- langchain/agents/openai_functions_multi_agent/base.py +0 -337
- langchain/agents/openai_tools/__init__.py +0 -0
- langchain/agents/openai_tools/base.py +0 -109
- langchain/agents/output_parsers/__init__.py +0 -35
- langchain/agents/output_parsers/json.py +0 -64
- langchain/agents/output_parsers/openai_functions.py +0 -103
- langchain/agents/output_parsers/openai_tools.py +0 -77
- langchain/agents/output_parsers/react_json_single_input.py +0 -87
- langchain/agents/output_parsers/react_single_input.py +0 -102
- langchain/agents/output_parsers/self_ask.py +0 -53
- langchain/agents/output_parsers/tools.py +0 -121
- langchain/agents/output_parsers/xml.py +0 -126
- langchain/agents/react/__init__.py +0 -1
- langchain/agents/react/agent.py +0 -145
- langchain/agents/react/base.py +0 -189
- langchain/agents/react/output_parser.py +0 -35
- langchain/agents/react/textworld_prompt.py +0 -51
- langchain/agents/react/wiki_prompt.py +0 -70
- langchain/agents/schema.py +0 -37
- langchain/agents/self_ask_with_search/__init__.py +0 -4
- langchain/agents/self_ask_with_search/base.py +0 -219
- langchain/agents/self_ask_with_search/output_parser.py +0 -4
- langchain/agents/self_ask_with_search/prompt.py +0 -43
- langchain/agents/structured_chat/__init__.py +0 -0
- langchain/agents/structured_chat/base.py +0 -309
- langchain/agents/structured_chat/output_parser.py +0 -112
- langchain/agents/structured_chat/prompt.py +0 -34
- langchain/agents/tool_calling_agent/__init__.py +0 -0
- langchain/agents/tool_calling_agent/base.py +0 -111
- langchain/agents/tools.py +0 -50
- langchain/agents/types.py +0 -27
- langchain/agents/utils.py +0 -19
- langchain/agents/xml/__init__.py +0 -0
- langchain/agents/xml/base.py +0 -237
- langchain/agents/xml/prompt.py +0 -21
- langchain/base_language.py +0 -7
- langchain/cache.py +0 -72
- langchain/callbacks/__init__.py +0 -139
- langchain/callbacks/aim_callback.py +0 -33
- langchain/callbacks/argilla_callback.py +0 -25
- langchain/callbacks/arize_callback.py +0 -25
- langchain/callbacks/arthur_callback.py +0 -25
- langchain/callbacks/base.py +0 -29
- langchain/callbacks/clearml_callback.py +0 -25
- langchain/callbacks/comet_ml_callback.py +0 -25
- langchain/callbacks/confident_callback.py +0 -25
- langchain/callbacks/context_callback.py +0 -25
- langchain/callbacks/file.py +0 -3
- langchain/callbacks/flyte_callback.py +0 -25
- langchain/callbacks/human.py +0 -33
- langchain/callbacks/infino_callback.py +0 -25
- langchain/callbacks/labelstudio_callback.py +0 -33
- langchain/callbacks/llmonitor_callback.py +0 -27
- langchain/callbacks/manager.py +0 -89
- langchain/callbacks/mlflow_callback.py +0 -38
- langchain/callbacks/openai_info.py +0 -25
- langchain/callbacks/promptlayer_callback.py +0 -27
- langchain/callbacks/sagemaker_callback.py +0 -27
- langchain/callbacks/stdout.py +0 -3
- langchain/callbacks/streaming_aiter.py +0 -86
- langchain/callbacks/streaming_aiter_final_only.py +0 -100
- langchain/callbacks/streaming_stdout.py +0 -5
- langchain/callbacks/streaming_stdout_final_only.py +0 -96
- langchain/callbacks/streamlit/__init__.py +0 -86
- langchain/callbacks/streamlit/mutable_expander.py +0 -33
- langchain/callbacks/streamlit/streamlit_callback_handler.py +0 -49
- langchain/callbacks/tracers/__init__.py +0 -38
- langchain/callbacks/tracers/base.py +0 -6
- langchain/callbacks/tracers/comet.py +0 -30
- langchain/callbacks/tracers/evaluation.py +0 -8
- langchain/callbacks/tracers/langchain.py +0 -8
- langchain/callbacks/tracers/langchain_v1.py +0 -3
- langchain/callbacks/tracers/log_stream.py +0 -9
- langchain/callbacks/tracers/logging.py +0 -57
- langchain/callbacks/tracers/root_listeners.py +0 -3
- langchain/callbacks/tracers/run_collector.py +0 -3
- langchain/callbacks/tracers/schemas.py +0 -27
- langchain/callbacks/tracers/stdout.py +0 -6
- langchain/callbacks/tracers/wandb.py +0 -27
- langchain/callbacks/trubrics_callback.py +0 -25
- langchain/callbacks/utils.py +0 -48
- langchain/callbacks/wandb_callback.py +0 -25
- langchain/callbacks/whylabs_callback.py +0 -25
- langchain/chains/__init__.py +0 -96
- langchain/chains/api/__init__.py +0 -1
- langchain/chains/api/base.py +0 -398
- langchain/chains/api/news_docs.py +0 -31
- langchain/chains/api/open_meteo_docs.py +0 -32
- langchain/chains/api/openapi/__init__.py +0 -0
- langchain/chains/api/openapi/chain.py +0 -23
- langchain/chains/api/openapi/prompts.py +0 -27
- langchain/chains/api/openapi/requests_chain.py +0 -29
- langchain/chains/api/openapi/response_chain.py +0 -29
- langchain/chains/api/podcast_docs.py +0 -27
- langchain/chains/api/prompt.py +0 -35
- langchain/chains/api/tmdb_docs.py +0 -36
- langchain/chains/base.py +0 -806
- langchain/chains/chat_vector_db/__init__.py +0 -0
- langchain/chains/chat_vector_db/prompts.py +0 -19
- langchain/chains/combine_documents/__init__.py +0 -15
- langchain/chains/combine_documents/base.py +0 -293
- langchain/chains/combine_documents/map_reduce.py +0 -303
- langchain/chains/combine_documents/map_rerank.py +0 -249
- langchain/chains/combine_documents/reduce.py +0 -382
- langchain/chains/combine_documents/refine.py +0 -237
- langchain/chains/combine_documents/stuff.py +0 -292
- langchain/chains/constitutional_ai/__init__.py +0 -2
- langchain/chains/constitutional_ai/base.py +0 -328
- langchain/chains/constitutional_ai/models.py +0 -11
- langchain/chains/constitutional_ai/principles.py +0 -278
- langchain/chains/constitutional_ai/prompts.py +0 -120
- langchain/chains/conversation/__init__.py +0 -1
- langchain/chains/conversation/base.py +0 -146
- langchain/chains/conversation/memory.py +0 -45
- langchain/chains/conversation/prompt.py +0 -28
- langchain/chains/conversational_retrieval/__init__.py +0 -1
- langchain/chains/conversational_retrieval/base.py +0 -576
- langchain/chains/conversational_retrieval/prompts.py +0 -19
- langchain/chains/elasticsearch_database/__init__.py +0 -3
- langchain/chains/elasticsearch_database/base.py +0 -212
- langchain/chains/elasticsearch_database/prompts.py +0 -35
- langchain/chains/ernie_functions/__init__.py +0 -44
- langchain/chains/ernie_functions/base.py +0 -49
- langchain/chains/example_generator.py +0 -22
- langchain/chains/flare/__init__.py +0 -1
- langchain/chains/flare/base.py +0 -284
- langchain/chains/flare/prompts.py +0 -46
- langchain/chains/graph_qa/__init__.py +0 -0
- langchain/chains/graph_qa/arangodb.py +0 -23
- langchain/chains/graph_qa/base.py +0 -23
- langchain/chains/graph_qa/cypher.py +0 -39
- langchain/chains/graph_qa/cypher_utils.py +0 -27
- langchain/chains/graph_qa/falkordb.py +0 -29
- langchain/chains/graph_qa/gremlin.py +0 -36
- langchain/chains/graph_qa/hugegraph.py +0 -23
- langchain/chains/graph_qa/kuzu.py +0 -29
- langchain/chains/graph_qa/nebulagraph.py +0 -23
- langchain/chains/graph_qa/neptune_cypher.py +0 -39
- langchain/chains/graph_qa/neptune_sparql.py +0 -36
- langchain/chains/graph_qa/ontotext_graphdb.py +0 -25
- langchain/chains/graph_qa/prompts.py +0 -96
- langchain/chains/graph_qa/sparql.py +0 -23
- langchain/chains/history_aware_retriever.py +0 -68
- langchain/chains/hyde/__init__.py +0 -4
- langchain/chains/hyde/base.py +0 -124
- langchain/chains/hyde/prompts.py +0 -46
- langchain/chains/llm.py +0 -447
- langchain/chains/llm_bash/__init__.py +0 -10
- langchain/chains/llm_checker/__init__.py +0 -4
- langchain/chains/llm_checker/base.py +0 -205
- langchain/chains/llm_checker/prompt.py +0 -30
- langchain/chains/llm_math/__init__.py +0 -4
- langchain/chains/llm_math/base.py +0 -319
- langchain/chains/llm_math/prompt.py +0 -43
- langchain/chains/llm_requests.py +0 -23
- langchain/chains/llm_summarization_checker/__init__.py +0 -7
- langchain/chains/llm_summarization_checker/base.py +0 -217
- langchain/chains/llm_summarization_checker/prompts/are_all_true_prompt.txt +0 -38
- langchain/chains/llm_summarization_checker/prompts/check_facts.txt +0 -10
- langchain/chains/llm_summarization_checker/prompts/create_facts.txt +0 -10
- langchain/chains/llm_summarization_checker/prompts/revise_summary.txt +0 -17
- langchain/chains/llm_symbolic_math/__init__.py +0 -10
- langchain/chains/loading.py +0 -734
- langchain/chains/mapreduce.py +0 -121
- langchain/chains/moderation.py +0 -135
- langchain/chains/natbot/__init__.py +0 -4
- langchain/chains/natbot/base.py +0 -165
- langchain/chains/natbot/crawler.py +0 -472
- langchain/chains/natbot/prompt.py +0 -143
- langchain/chains/openai_functions/__init__.py +0 -44
- langchain/chains/openai_functions/base.py +0 -237
- langchain/chains/openai_functions/citation_fuzzy_match.py +0 -169
- langchain/chains/openai_functions/extraction.py +0 -197
- langchain/chains/openai_functions/openapi.py +0 -409
- langchain/chains/openai_functions/qa_with_structure.py +0 -142
- langchain/chains/openai_functions/tagging.py +0 -174
- langchain/chains/openai_functions/utils.py +0 -40
- langchain/chains/openai_tools/__init__.py +0 -3
- langchain/chains/openai_tools/extraction.py +0 -79
- langchain/chains/prompt_selector.py +0 -65
- langchain/chains/qa_generation/__init__.py +0 -0
- langchain/chains/qa_generation/base.py +0 -128
- langchain/chains/qa_generation/prompt.py +0 -50
- langchain/chains/qa_with_sources/__init__.py +0 -5
- langchain/chains/qa_with_sources/base.py +0 -266
- langchain/chains/qa_with_sources/loading.py +0 -209
- langchain/chains/qa_with_sources/map_reduce_prompt.py +0 -54
- langchain/chains/qa_with_sources/refine_prompts.py +0 -37
- langchain/chains/qa_with_sources/retrieval.py +0 -75
- langchain/chains/qa_with_sources/stuff_prompt.py +0 -43
- langchain/chains/qa_with_sources/vector_db.py +0 -88
- langchain/chains/query_constructor/__init__.py +0 -3
- langchain/chains/query_constructor/base.py +0 -378
- langchain/chains/query_constructor/ir.py +0 -23
- langchain/chains/query_constructor/parser.py +0 -272
- langchain/chains/query_constructor/prompt.py +0 -226
- langchain/chains/query_constructor/schema.py +0 -14
- langchain/chains/question_answering/__init__.py +0 -6
- langchain/chains/question_answering/chain.py +0 -279
- langchain/chains/question_answering/map_reduce_prompt.py +0 -80
- langchain/chains/question_answering/map_rerank_prompt.py +0 -66
- langchain/chains/question_answering/refine_prompts.py +0 -72
- langchain/chains/question_answering/stuff_prompt.py +0 -33
- langchain/chains/retrieval.py +0 -67
- langchain/chains/retrieval_qa/__init__.py +0 -1
- langchain/chains/retrieval_qa/base.py +0 -374
- langchain/chains/retrieval_qa/prompt.py +0 -11
- langchain/chains/router/__init__.py +0 -12
- langchain/chains/router/base.py +0 -154
- langchain/chains/router/embedding_router.py +0 -96
- langchain/chains/router/llm_router.py +0 -198
- langchain/chains/router/multi_prompt.py +0 -184
- langchain/chains/router/multi_prompt_prompt.py +0 -32
- langchain/chains/router/multi_retrieval_prompt.py +0 -30
- langchain/chains/router/multi_retrieval_qa.py +0 -127
- langchain/chains/sequential.py +0 -220
- langchain/chains/sql_database/__init__.py +0 -1
- langchain/chains/sql_database/prompt.py +0 -282
- langchain/chains/sql_database/query.py +0 -167
- langchain/chains/structured_output/__init__.py +0 -6
- langchain/chains/structured_output/base.py +0 -584
- langchain/chains/summarize/__init__.py +0 -6
- langchain/chains/summarize/chain.py +0 -174
- langchain/chains/summarize/map_reduce_prompt.py +0 -10
- langchain/chains/summarize/refine_prompts.py +0 -23
- langchain/chains/summarize/stuff_prompt.py +0 -10
- langchain/chains/transform.py +0 -88
- langchain/chat_loaders/__init__.py +0 -19
- langchain/chat_loaders/base.py +0 -3
- langchain/chat_loaders/facebook_messenger.py +0 -32
- langchain/chat_loaders/gmail.py +0 -23
- langchain/chat_loaders/imessage.py +0 -23
- langchain/chat_loaders/langsmith.py +0 -30
- langchain/chat_loaders/slack.py +0 -23
- langchain/chat_loaders/telegram.py +0 -23
- langchain/chat_loaders/utils.py +0 -36
- langchain/chat_loaders/whatsapp.py +0 -23
- langchain/chat_models/anthropic.py +0 -30
- langchain/chat_models/anyscale.py +0 -23
- langchain/chat_models/azure_openai.py +0 -23
- langchain/chat_models/azureml_endpoint.py +0 -30
- langchain/chat_models/baichuan.py +0 -23
- langchain/chat_models/baidu_qianfan_endpoint.py +0 -27
- langchain/chat_models/bedrock.py +0 -27
- langchain/chat_models/cohere.py +0 -23
- langchain/chat_models/databricks.py +0 -23
- langchain/chat_models/ernie.py +0 -23
- langchain/chat_models/everlyai.py +0 -23
- langchain/chat_models/fake.py +0 -30
- langchain/chat_models/fireworks.py +0 -23
- langchain/chat_models/gigachat.py +0 -23
- langchain/chat_models/google_palm.py +0 -30
- langchain/chat_models/human.py +0 -23
- langchain/chat_models/hunyuan.py +0 -23
- langchain/chat_models/javelin_ai_gateway.py +0 -30
- langchain/chat_models/jinachat.py +0 -23
- langchain/chat_models/konko.py +0 -23
- langchain/chat_models/litellm.py +0 -30
- langchain/chat_models/meta.py +0 -25
- langchain/chat_models/minimax.py +0 -23
- langchain/chat_models/mlflow.py +0 -23
- langchain/chat_models/mlflow_ai_gateway.py +0 -30
- langchain/chat_models/ollama.py +0 -23
- langchain/chat_models/openai.py +0 -23
- langchain/chat_models/pai_eas_endpoint.py +0 -25
- langchain/chat_models/promptlayer_openai.py +0 -25
- langchain/chat_models/tongyi.py +0 -23
- langchain/chat_models/vertexai.py +0 -23
- langchain/chat_models/volcengine_maas.py +0 -30
- langchain/chat_models/yandex.py +0 -23
- langchain/docstore/__init__.py +0 -48
- langchain/docstore/arbitrary_fn.py +0 -23
- langchain/docstore/base.py +0 -27
- langchain/docstore/document.py +0 -3
- langchain/docstore/in_memory.py +0 -23
- langchain/docstore/wikipedia.py +0 -23
- langchain/document_loaders/__init__.py +0 -553
- langchain/document_loaders/acreom.py +0 -23
- langchain/document_loaders/airbyte.py +0 -48
- langchain/document_loaders/airbyte_json.py +0 -23
- langchain/document_loaders/airtable.py +0 -23
- langchain/document_loaders/apify_dataset.py +0 -23
- langchain/document_loaders/arcgis_loader.py +0 -23
- langchain/document_loaders/arxiv.py +0 -23
- langchain/document_loaders/assemblyai.py +0 -28
- langchain/document_loaders/async_html.py +0 -23
- langchain/document_loaders/azlyrics.py +0 -23
- langchain/document_loaders/azure_ai_data.py +0 -23
- langchain/document_loaders/azure_blob_storage_container.py +0 -25
- langchain/document_loaders/azure_blob_storage_file.py +0 -25
- langchain/document_loaders/baiducloud_bos_directory.py +0 -29
- langchain/document_loaders/baiducloud_bos_file.py +0 -27
- langchain/document_loaders/base.py +0 -3
- langchain/document_loaders/base_o365.py +0 -23
- langchain/document_loaders/bibtex.py +0 -23
- langchain/document_loaders/bigquery.py +0 -23
- langchain/document_loaders/bilibili.py +0 -23
- langchain/document_loaders/blackboard.py +0 -23
- langchain/document_loaders/blob_loaders/__init__.py +0 -36
- langchain/document_loaders/blob_loaders/file_system.py +0 -23
- langchain/document_loaders/blob_loaders/schema.py +0 -26
- langchain/document_loaders/blob_loaders/youtube_audio.py +0 -23
- langchain/document_loaders/blockchain.py +0 -28
- langchain/document_loaders/brave_search.py +0 -23
- langchain/document_loaders/browserless.py +0 -23
- langchain/document_loaders/chatgpt.py +0 -28
- langchain/document_loaders/chromium.py +0 -23
- langchain/document_loaders/college_confidential.py +0 -25
- langchain/document_loaders/concurrent.py +0 -23
- langchain/document_loaders/confluence.py +0 -28
- langchain/document_loaders/conllu.py +0 -23
- langchain/document_loaders/couchbase.py +0 -23
- langchain/document_loaders/csv_loader.py +0 -27
- langchain/document_loaders/cube_semantic.py +0 -23
- langchain/document_loaders/datadog_logs.py +0 -23
- langchain/document_loaders/dataframe.py +0 -28
- langchain/document_loaders/diffbot.py +0 -23
- langchain/document_loaders/directory.py +0 -23
- langchain/document_loaders/discord.py +0 -23
- langchain/document_loaders/docugami.py +0 -23
- langchain/document_loaders/docusaurus.py +0 -23
- langchain/document_loaders/dropbox.py +0 -23
- langchain/document_loaders/duckdb_loader.py +0 -23
- langchain/document_loaders/email.py +0 -30
- langchain/document_loaders/epub.py +0 -23
- langchain/document_loaders/etherscan.py +0 -23
- langchain/document_loaders/evernote.py +0 -23
- langchain/document_loaders/excel.py +0 -23
- langchain/document_loaders/facebook_chat.py +0 -28
- langchain/document_loaders/fauna.py +0 -23
- langchain/document_loaders/figma.py +0 -23
- langchain/document_loaders/gcs_directory.py +0 -23
- langchain/document_loaders/gcs_file.py +0 -23
- langchain/document_loaders/generic.py +0 -23
- langchain/document_loaders/geodataframe.py +0 -23
- langchain/document_loaders/git.py +0 -23
- langchain/document_loaders/gitbook.py +0 -23
- langchain/document_loaders/github.py +0 -28
- langchain/document_loaders/google_speech_to_text.py +0 -23
- langchain/document_loaders/googledrive.py +0 -23
- langchain/document_loaders/gutenberg.py +0 -23
- langchain/document_loaders/helpers.py +0 -30
- langchain/document_loaders/hn.py +0 -23
- langchain/document_loaders/html.py +0 -23
- langchain/document_loaders/html_bs.py +0 -23
- langchain/document_loaders/hugging_face_dataset.py +0 -23
- langchain/document_loaders/ifixit.py +0 -23
- langchain/document_loaders/image.py +0 -23
- langchain/document_loaders/image_captions.py +0 -23
- langchain/document_loaders/imsdb.py +0 -23
- langchain/document_loaders/iugu.py +0 -23
- langchain/document_loaders/joplin.py +0 -23
- langchain/document_loaders/json_loader.py +0 -23
- langchain/document_loaders/lakefs.py +0 -33
- langchain/document_loaders/larksuite.py +0 -23
- langchain/document_loaders/markdown.py +0 -25
- langchain/document_loaders/mastodon.py +0 -23
- langchain/document_loaders/max_compute.py +0 -23
- langchain/document_loaders/mediawikidump.py +0 -23
- langchain/document_loaders/merge.py +0 -23
- langchain/document_loaders/mhtml.py +0 -23
- langchain/document_loaders/modern_treasury.py +0 -23
- langchain/document_loaders/mongodb.py +0 -23
- langchain/document_loaders/news.py +0 -23
- langchain/document_loaders/notebook.py +0 -33
- langchain/document_loaders/notion.py +0 -23
- langchain/document_loaders/notiondb.py +0 -23
- langchain/document_loaders/nuclia.py +0 -23
- langchain/document_loaders/obs_directory.py +0 -23
- langchain/document_loaders/obs_file.py +0 -23
- langchain/document_loaders/obsidian.py +0 -23
- langchain/document_loaders/odt.py +0 -23
- langchain/document_loaders/onedrive.py +0 -23
- langchain/document_loaders/onedrive_file.py +0 -23
- langchain/document_loaders/onenote.py +0 -23
- langchain/document_loaders/open_city_data.py +0 -23
- langchain/document_loaders/org_mode.py +0 -25
- langchain/document_loaders/parsers/__init__.py +0 -58
- langchain/document_loaders/parsers/audio.py +0 -33
- langchain/document_loaders/parsers/docai.py +0 -30
- langchain/document_loaders/parsers/generic.py +0 -25
- langchain/document_loaders/parsers/grobid.py +0 -30
- langchain/document_loaders/parsers/html/__init__.py +0 -25
- langchain/document_loaders/parsers/html/bs4.py +0 -25
- langchain/document_loaders/parsers/language/__init__.py +0 -29
- langchain/document_loaders/parsers/language/cobol.py +0 -27
- langchain/document_loaders/parsers/language/code_segmenter.py +0 -29
- langchain/document_loaders/parsers/language/javascript.py +0 -29
- langchain/document_loaders/parsers/language/language_parser.py +0 -29
- langchain/document_loaders/parsers/language/python.py +0 -27
- langchain/document_loaders/parsers/msword.py +0 -25
- langchain/document_loaders/parsers/pdf.py +0 -50
- langchain/document_loaders/parsers/registry.py +0 -25
- langchain/document_loaders/parsers/txt.py +0 -23
- langchain/document_loaders/pdf.py +0 -65
- langchain/document_loaders/polars_dataframe.py +0 -23
- langchain/document_loaders/powerpoint.py +0 -25
- langchain/document_loaders/psychic.py +0 -23
- langchain/document_loaders/pubmed.py +0 -23
- langchain/document_loaders/pyspark_dataframe.py +0 -26
- langchain/document_loaders/python.py +0 -22
- langchain/document_loaders/quip.py +0 -23
- langchain/document_loaders/readthedocs.py +0 -23
- langchain/document_loaders/recursive_url_loader.py +0 -23
- langchain/document_loaders/reddit.py +0 -23
- langchain/document_loaders/roam.py +0 -23
- langchain/document_loaders/rocksetdb.py +0 -23
- langchain/document_loaders/rspace.py +0 -23
- langchain/document_loaders/rss.py +0 -23
- langchain/document_loaders/rst.py +0 -23
- langchain/document_loaders/rtf.py +0 -23
- langchain/document_loaders/s3_directory.py +0 -23
- langchain/document_loaders/s3_file.py +0 -23
- langchain/document_loaders/sharepoint.py +0 -23
- langchain/document_loaders/sitemap.py +0 -23
- langchain/document_loaders/slack_directory.py +0 -23
- langchain/document_loaders/snowflake_loader.py +0 -23
- langchain/document_loaders/spreedly.py +0 -23
- langchain/document_loaders/srt.py +0 -23
- langchain/document_loaders/stripe.py +0 -23
- langchain/document_loaders/telegram.py +0 -38
- langchain/document_loaders/tencent_cos_directory.py +0 -25
- langchain/document_loaders/tencent_cos_file.py +0 -23
- langchain/document_loaders/tensorflow_datasets.py +0 -23
- langchain/document_loaders/text.py +0 -23
- langchain/document_loaders/tomarkdown.py +0 -23
- langchain/document_loaders/toml.py +0 -23
- langchain/document_loaders/trello.py +0 -23
- langchain/document_loaders/tsv.py +0 -23
- langchain/document_loaders/twitter.py +0 -23
- langchain/document_loaders/unstructured.py +0 -54
- langchain/document_loaders/url.py +0 -23
- langchain/document_loaders/url_playwright.py +0 -33
- langchain/document_loaders/url_selenium.py +0 -23
- langchain/document_loaders/weather.py +0 -23
- langchain/document_loaders/web_base.py +0 -23
- langchain/document_loaders/whatsapp_chat.py +0 -28
- langchain/document_loaders/wikipedia.py +0 -23
- langchain/document_loaders/word_document.py +0 -30
- langchain/document_loaders/xml.py +0 -23
- langchain/document_loaders/xorbits.py +0 -23
- langchain/document_loaders/youtube.py +0 -33
- langchain/document_transformers/__init__.py +0 -77
- langchain/document_transformers/beautiful_soup_transformer.py +0 -25
- langchain/document_transformers/doctran_text_extract.py +0 -25
- langchain/document_transformers/doctran_text_qa.py +0 -25
- langchain/document_transformers/doctran_text_translate.py +0 -25
- langchain/document_transformers/embeddings_redundant_filter.py +0 -50
- langchain/document_transformers/google_translate.py +0 -25
- langchain/document_transformers/html2text.py +0 -25
- langchain/document_transformers/long_context_reorder.py +0 -23
- langchain/document_transformers/nuclia_text_transform.py +0 -25
- langchain/document_transformers/openai_functions.py +0 -32
- langchain/document_transformers/xsl/html_chunks_with_headers.xslt +0 -199
- langchain/embeddings/aleph_alpha.py +0 -30
- langchain/embeddings/awa.py +0 -23
- langchain/embeddings/azure_openai.py +0 -23
- langchain/embeddings/baidu_qianfan_endpoint.py +0 -23
- langchain/embeddings/bedrock.py +0 -23
- langchain/embeddings/bookend.py +0 -23
- langchain/embeddings/cache.py +0 -368
- langchain/embeddings/clarifai.py +0 -23
- langchain/embeddings/cloudflare_workersai.py +0 -29
- langchain/embeddings/cohere.py +0 -23
- langchain/embeddings/dashscope.py +0 -23
- langchain/embeddings/databricks.py +0 -23
- langchain/embeddings/deepinfra.py +0 -23
- langchain/embeddings/edenai.py +0 -23
- langchain/embeddings/elasticsearch.py +0 -23
- langchain/embeddings/embaas.py +0 -23
- langchain/embeddings/ernie.py +0 -23
- langchain/embeddings/fake.py +0 -30
- langchain/embeddings/fastembed.py +0 -23
- langchain/embeddings/google_palm.py +0 -23
- langchain/embeddings/gpt4all.py +0 -23
- langchain/embeddings/gradient_ai.py +0 -23
- langchain/embeddings/huggingface.py +0 -36
- langchain/embeddings/huggingface_hub.py +0 -23
- langchain/embeddings/infinity.py +0 -30
- langchain/embeddings/javelin_ai_gateway.py +0 -23
- langchain/embeddings/jina.py +0 -23
- langchain/embeddings/johnsnowlabs.py +0 -23
- langchain/embeddings/llamacpp.py +0 -23
- langchain/embeddings/llm_rails.py +0 -23
- langchain/embeddings/localai.py +0 -23
- langchain/embeddings/minimax.py +0 -23
- langchain/embeddings/mlflow.py +0 -23
- langchain/embeddings/mlflow_gateway.py +0 -23
- langchain/embeddings/modelscope_hub.py +0 -23
- langchain/embeddings/mosaicml.py +0 -23
- langchain/embeddings/nlpcloud.py +0 -23
- langchain/embeddings/octoai_embeddings.py +0 -23
- langchain/embeddings/ollama.py +0 -23
- langchain/embeddings/openai.py +0 -23
- langchain/embeddings/sagemaker_endpoint.py +0 -30
- langchain/embeddings/self_hosted.py +0 -23
- langchain/embeddings/self_hosted_hugging_face.py +0 -30
- langchain/embeddings/sentence_transformer.py +0 -21
- langchain/embeddings/spacy_embeddings.py +0 -23
- langchain/embeddings/tensorflow_hub.py +0 -23
- langchain/embeddings/vertexai.py +0 -23
- langchain/embeddings/voyageai.py +0 -23
- langchain/embeddings/xinference.py +0 -23
- langchain/env.py +0 -17
- langchain/evaluation/__init__.py +0 -128
- langchain/evaluation/agents/__init__.py +0 -5
- langchain/evaluation/agents/trajectory_eval_chain.py +0 -416
- langchain/evaluation/agents/trajectory_eval_prompt.py +0 -146
- langchain/evaluation/comparison/__init__.py +0 -36
- langchain/evaluation/comparison/eval_chain.py +0 -462
- langchain/evaluation/comparison/prompt.py +0 -59
- langchain/evaluation/criteria/__init__.py +0 -56
- langchain/evaluation/criteria/eval_chain.py +0 -606
- langchain/evaluation/criteria/prompt.py +0 -37
- langchain/evaluation/embedding_distance/__init__.py +0 -13
- langchain/evaluation/embedding_distance/base.py +0 -613
- langchain/evaluation/exact_match/__init__.py +0 -0
- langchain/evaluation/exact_match/base.py +0 -110
- langchain/evaluation/loading.py +0 -207
- langchain/evaluation/parsing/__init__.py +0 -0
- langchain/evaluation/parsing/base.py +0 -175
- langchain/evaluation/parsing/json_distance.py +0 -108
- langchain/evaluation/parsing/json_schema.py +0 -97
- langchain/evaluation/qa/__init__.py +0 -10
- langchain/evaluation/qa/eval_chain.py +0 -372
- langchain/evaluation/qa/eval_prompt.py +0 -78
- langchain/evaluation/qa/generate_chain.py +0 -36
- langchain/evaluation/qa/generate_prompt.py +0 -21
- langchain/evaluation/regex_match/__init__.py +0 -0
- langchain/evaluation/regex_match/base.py +0 -94
- langchain/evaluation/schema.py +0 -491
- langchain/evaluation/scoring/__init__.py +0 -31
- langchain/evaluation/scoring/eval_chain.py +0 -476
- langchain/evaluation/scoring/prompt.py +0 -53
- langchain/evaluation/string_distance/__init__.py +0 -13
- langchain/evaluation/string_distance/base.py +0 -472
- langchain/example_generator.py +0 -5
- langchain/formatting.py +0 -5
- langchain/globals.py +0 -180
- langchain/graphs/__init__.py +0 -57
- langchain/graphs/arangodb_graph.py +0 -28
- langchain/graphs/falkordb_graph.py +0 -23
- langchain/graphs/graph_document.py +0 -33
- langchain/graphs/graph_store.py +0 -23
- langchain/graphs/hugegraph.py +0 -23
- langchain/graphs/kuzu_graph.py +0 -23
- langchain/graphs/memgraph_graph.py +0 -23
- langchain/graphs/nebula_graph.py +0 -23
- langchain/graphs/neo4j_graph.py +0 -23
- langchain/graphs/neptune_graph.py +0 -23
- langchain/graphs/networkx_graph.py +0 -36
- langchain/graphs/rdf_graph.py +0 -23
- langchain/hub.py +0 -131
- langchain/indexes/__init__.py +0 -50
- langchain/indexes/_api.py +0 -5
- langchain/indexes/_sql_record_manager.py +0 -539
- langchain/indexes/graph.py +0 -28
- langchain/indexes/prompts/__init__.py +0 -13
- langchain/indexes/prompts/entity_extraction.py +0 -39
- langchain/indexes/prompts/entity_summarization.py +0 -24
- langchain/indexes/prompts/knowledge_triplet_extraction.py +0 -36
- langchain/indexes/vectorstore.py +0 -269
- langchain/input.py +0 -15
- langchain/llms/__init__.py +0 -734
- langchain/llms/ai21.py +0 -28
- langchain/llms/aleph_alpha.py +0 -23
- langchain/llms/amazon_api_gateway.py +0 -23
- langchain/llms/anthropic.py +0 -23
- langchain/llms/anyscale.py +0 -23
- langchain/llms/arcee.py +0 -23
- langchain/llms/aviary.py +0 -23
- langchain/llms/azureml_endpoint.py +0 -48
- langchain/llms/baidu_qianfan_endpoint.py +0 -23
- langchain/llms/bananadev.py +0 -23
- langchain/llms/base.py +0 -20
- langchain/llms/baseten.py +0 -23
- langchain/llms/beam.py +0 -23
- langchain/llms/bedrock.py +0 -28
- langchain/llms/bittensor.py +0 -23
- langchain/llms/cerebriumai.py +0 -23
- langchain/llms/chatglm.py +0 -23
- langchain/llms/clarifai.py +0 -23
- langchain/llms/cloudflare_workersai.py +0 -25
- langchain/llms/cohere.py +0 -23
- langchain/llms/ctransformers.py +0 -23
- langchain/llms/ctranslate2.py +0 -23
- langchain/llms/databricks.py +0 -23
- langchain/llms/deepinfra.py +0 -23
- langchain/llms/deepsparse.py +0 -23
- langchain/llms/edenai.py +0 -23
- langchain/llms/fake.py +0 -28
- langchain/llms/fireworks.py +0 -23
- langchain/llms/forefrontai.py +0 -23
- langchain/llms/gigachat.py +0 -23
- langchain/llms/google_palm.py +0 -23
- langchain/llms/gooseai.py +0 -23
- langchain/llms/gpt4all.py +0 -23
- langchain/llms/gradient_ai.py +0 -28
- langchain/llms/grammars/json.gbnf +0 -29
- langchain/llms/grammars/list.gbnf +0 -14
- langchain/llms/huggingface_endpoint.py +0 -23
- langchain/llms/huggingface_hub.py +0 -23
- langchain/llms/huggingface_pipeline.py +0 -23
- langchain/llms/huggingface_text_gen_inference.py +0 -23
- langchain/llms/human.py +0 -23
- langchain/llms/javelin_ai_gateway.py +0 -28
- langchain/llms/koboldai.py +0 -23
- langchain/llms/llamacpp.py +0 -23
- langchain/llms/loading.py +0 -27
- langchain/llms/manifest.py +0 -23
- langchain/llms/minimax.py +0 -23
- langchain/llms/mlflow.py +0 -23
- langchain/llms/mlflow_ai_gateway.py +0 -23
- langchain/llms/modal.py +0 -23
- langchain/llms/mosaicml.py +0 -23
- langchain/llms/nlpcloud.py +0 -23
- langchain/llms/octoai_endpoint.py +0 -23
- langchain/llms/ollama.py +0 -23
- langchain/llms/opaqueprompts.py +0 -23
- langchain/llms/openai.py +0 -32
- langchain/llms/openllm.py +0 -23
- langchain/llms/openlm.py +0 -23
- langchain/llms/pai_eas_endpoint.py +0 -23
- langchain/llms/petals.py +0 -23
- langchain/llms/pipelineai.py +0 -23
- langchain/llms/predibase.py +0 -23
- langchain/llms/predictionguard.py +0 -23
- langchain/llms/promptlayer_openai.py +0 -27
- langchain/llms/replicate.py +0 -23
- langchain/llms/rwkv.py +0 -23
- langchain/llms/sagemaker_endpoint.py +0 -28
- langchain/llms/self_hosted.py +0 -23
- langchain/llms/self_hosted_hugging_face.py +0 -23
- langchain/llms/stochasticai.py +0 -23
- langchain/llms/symblai_nebula.py +0 -23
- langchain/llms/textgen.py +0 -23
- langchain/llms/titan_takeoff.py +0 -23
- langchain/llms/titan_takeoff_pro.py +0 -23
- langchain/llms/together.py +0 -23
- langchain/llms/tongyi.py +0 -23
- langchain/llms/utils.py +0 -23
- langchain/llms/vertexai.py +0 -27
- langchain/llms/vllm.py +0 -27
- langchain/llms/volcengine_maas.py +0 -28
- langchain/llms/watsonxllm.py +0 -23
- langchain/llms/writer.py +0 -23
- langchain/llms/xinference.py +0 -23
- langchain/llms/yandex.py +0 -23
- langchain/load/__init__.py +0 -11
- langchain/load/dump.py +0 -3
- langchain/load/load.py +0 -3
- langchain/load/serializable.py +0 -19
- langchain/memory/__init__.py +0 -153
- langchain/memory/buffer.py +0 -178
- langchain/memory/buffer_window.py +0 -62
- langchain/memory/chat_memory.py +0 -104
- langchain/memory/chat_message_histories/__init__.py +0 -84
- langchain/memory/chat_message_histories/astradb.py +0 -25
- langchain/memory/chat_message_histories/cassandra.py +0 -25
- langchain/memory/chat_message_histories/cosmos_db.py +0 -25
- langchain/memory/chat_message_histories/dynamodb.py +0 -25
- langchain/memory/chat_message_histories/elasticsearch.py +0 -27
- langchain/memory/chat_message_histories/file.py +0 -25
- langchain/memory/chat_message_histories/firestore.py +0 -25
- langchain/memory/chat_message_histories/in_memory.py +0 -5
- langchain/memory/chat_message_histories/momento.py +0 -25
- langchain/memory/chat_message_histories/mongodb.py +0 -25
- langchain/memory/chat_message_histories/neo4j.py +0 -25
- langchain/memory/chat_message_histories/postgres.py +0 -25
- langchain/memory/chat_message_histories/redis.py +0 -25
- langchain/memory/chat_message_histories/rocksetdb.py +0 -25
- langchain/memory/chat_message_histories/singlestoredb.py +0 -27
- langchain/memory/chat_message_histories/sql.py +0 -33
- langchain/memory/chat_message_histories/streamlit.py +0 -25
- langchain/memory/chat_message_histories/upstash_redis.py +0 -27
- langchain/memory/chat_message_histories/xata.py +0 -25
- langchain/memory/chat_message_histories/zep.py +0 -25
- langchain/memory/combined.py +0 -85
- langchain/memory/entity.py +0 -611
- langchain/memory/kg.py +0 -23
- langchain/memory/motorhead_memory.py +0 -23
- langchain/memory/prompt.py +0 -164
- langchain/memory/readonly.py +0 -24
- langchain/memory/simple.py +0 -27
- langchain/memory/summary.py +0 -170
- langchain/memory/summary_buffer.py +0 -151
- langchain/memory/token_buffer.py +0 -74
- langchain/memory/utils.py +0 -21
- langchain/memory/vectorstore.py +0 -120
- langchain/memory/vectorstore_token_buffer_memory.py +0 -184
- langchain/memory/zep_memory.py +0 -23
- langchain/model_laboratory.py +0 -99
- langchain/output_parsers/__init__.py +0 -87
- langchain/output_parsers/boolean.py +0 -54
- langchain/output_parsers/combining.py +0 -59
- langchain/output_parsers/datetime.py +0 -58
- langchain/output_parsers/enum.py +0 -45
- langchain/output_parsers/ernie_functions.py +0 -45
- langchain/output_parsers/fix.py +0 -155
- langchain/output_parsers/format_instructions.py +0 -79
- langchain/output_parsers/json.py +0 -15
- langchain/output_parsers/list.py +0 -13
- langchain/output_parsers/loading.py +0 -22
- langchain/output_parsers/openai_functions.py +0 -13
- langchain/output_parsers/openai_tools.py +0 -7
- langchain/output_parsers/pandas_dataframe.py +0 -171
- langchain/output_parsers/prompts.py +0 -21
- langchain/output_parsers/pydantic.py +0 -3
- langchain/output_parsers/rail_parser.py +0 -25
- langchain/output_parsers/regex.py +0 -41
- langchain/output_parsers/regex_dict.py +0 -43
- langchain/output_parsers/retry.py +0 -316
- langchain/output_parsers/structured.py +0 -116
- langchain/output_parsers/xml.py +0 -3
- langchain/output_parsers/yaml.py +0 -77
- langchain/prompts/__init__.py +0 -102
- langchain/prompts/base.py +0 -21
- langchain/prompts/chat.py +0 -37
- langchain/prompts/example_selector/__init__.py +0 -42
- langchain/prompts/example_selector/base.py +0 -3
- langchain/prompts/example_selector/length_based.py +0 -5
- langchain/prompts/example_selector/ngram_overlap.py +0 -32
- langchain/prompts/example_selector/semantic_similarity.py +0 -11
- langchain/prompts/few_shot.py +0 -11
- langchain/prompts/few_shot_with_templates.py +0 -3
- langchain/prompts/loading.py +0 -23
- langchain/prompts/pipeline.py +0 -3
- langchain/prompts/prompt.py +0 -6
- langchain/pydantic_v1/__init__.py +0 -38
- langchain/pydantic_v1/dataclasses.py +0 -20
- langchain/pydantic_v1/main.py +0 -20
- langchain/python.py +0 -19
- langchain/requests.py +0 -35
- langchain/retrievers/__init__.py +0 -178
- langchain/retrievers/arcee.py +0 -23
- langchain/retrievers/arxiv.py +0 -23
- langchain/retrievers/azure_ai_search.py +0 -30
- langchain/retrievers/bedrock.py +0 -33
- langchain/retrievers/bm25.py +0 -28
- langchain/retrievers/chaindesk.py +0 -23
- langchain/retrievers/chatgpt_plugin_retriever.py +0 -23
- langchain/retrievers/cohere_rag_retriever.py +0 -23
- langchain/retrievers/contextual_compression.py +0 -81
- langchain/retrievers/databerry.py +0 -23
- langchain/retrievers/docarray.py +0 -28
- langchain/retrievers/document_compressors/__init__.py +0 -44
- langchain/retrievers/document_compressors/base.py +0 -82
- langchain/retrievers/document_compressors/chain_extract.py +0 -123
- langchain/retrievers/document_compressors/chain_extract_prompt.py +0 -10
- langchain/retrievers/document_compressors/chain_filter.py +0 -133
- langchain/retrievers/document_compressors/chain_filter_prompt.py +0 -8
- langchain/retrievers/document_compressors/cohere_rerank.py +0 -126
- langchain/retrievers/document_compressors/cross_encoder.py +0 -16
- langchain/retrievers/document_compressors/cross_encoder_rerank.py +0 -50
- langchain/retrievers/document_compressors/embeddings_filter.py +0 -140
- langchain/retrievers/document_compressors/flashrank_rerank.py +0 -27
- langchain/retrievers/document_compressors/listwise_rerank.py +0 -145
- langchain/retrievers/elastic_search_bm25.py +0 -23
- langchain/retrievers/embedchain.py +0 -23
- langchain/retrievers/ensemble.py +0 -336
- langchain/retrievers/google_cloud_documentai_warehouse.py +0 -25
- langchain/retrievers/google_vertex_ai_search.py +0 -33
- langchain/retrievers/kay.py +0 -23
- langchain/retrievers/kendra.py +0 -66
- langchain/retrievers/knn.py +0 -23
- langchain/retrievers/llama_index.py +0 -30
- langchain/retrievers/merger_retriever.py +0 -123
- langchain/retrievers/metal.py +0 -23
- langchain/retrievers/milvus.py +0 -28
- langchain/retrievers/multi_query.py +0 -233
- langchain/retrievers/multi_vector.py +0 -135
- langchain/retrievers/outline.py +0 -23
- langchain/retrievers/parent_document_retriever.py +0 -172
- langchain/retrievers/pinecone_hybrid_search.py +0 -23
- langchain/retrievers/pubmed.py +0 -23
- langchain/retrievers/pupmed.py +0 -23
- langchain/retrievers/re_phraser.py +0 -89
- langchain/retrievers/remote_retriever.py +0 -23
- langchain/retrievers/self_query/__init__.py +0 -0
- langchain/retrievers/self_query/astradb.py +0 -23
- langchain/retrievers/self_query/base.py +0 -416
- langchain/retrievers/self_query/chroma.py +0 -23
- langchain/retrievers/self_query/dashvector.py +0 -23
- langchain/retrievers/self_query/databricks_vector_search.py +0 -27
- langchain/retrievers/self_query/deeplake.py +0 -27
- langchain/retrievers/self_query/dingo.py +0 -23
- langchain/retrievers/self_query/elasticsearch.py +0 -25
- langchain/retrievers/self_query/milvus.py +0 -27
- langchain/retrievers/self_query/mongodb_atlas.py +0 -25
- langchain/retrievers/self_query/myscale.py +0 -23
- langchain/retrievers/self_query/opensearch.py +0 -23
- langchain/retrievers/self_query/pgvector.py +0 -23
- langchain/retrievers/self_query/pinecone.py +0 -23
- langchain/retrievers/self_query/qdrant.py +0 -23
- langchain/retrievers/self_query/redis.py +0 -23
- langchain/retrievers/self_query/supabase.py +0 -23
- langchain/retrievers/self_query/tencentvectordb.py +0 -27
- langchain/retrievers/self_query/timescalevector.py +0 -27
- langchain/retrievers/self_query/vectara.py +0 -27
- langchain/retrievers/self_query/weaviate.py +0 -23
- langchain/retrievers/svm.py +0 -23
- langchain/retrievers/tavily_search_api.py +0 -28
- langchain/retrievers/tfidf.py +0 -23
- langchain/retrievers/time_weighted_retriever.py +0 -196
- langchain/retrievers/vespa_retriever.py +0 -23
- langchain/retrievers/weaviate_hybrid_search.py +0 -23
- langchain/retrievers/web_research.py +0 -29
- langchain/retrievers/wikipedia.py +0 -23
- langchain/retrievers/you.py +0 -23
- langchain/retrievers/zep.py +0 -30
- langchain/retrievers/zilliz.py +0 -28
- langchain/runnables/__init__.py +0 -18
- langchain/runnables/hub.py +0 -44
- langchain/runnables/openai_functions.py +0 -57
- langchain/schema/__init__.py +0 -82
- langchain/schema/agent.py +0 -3
- langchain/schema/cache.py +0 -3
- langchain/schema/callbacks/__init__.py +0 -0
- langchain/schema/callbacks/base.py +0 -23
- langchain/schema/callbacks/manager.py +0 -55
- langchain/schema/callbacks/stdout.py +0 -3
- langchain/schema/callbacks/streaming_stdout.py +0 -3
- langchain/schema/callbacks/tracers/__init__.py +0 -0
- langchain/schema/callbacks/tracers/base.py +0 -4
- langchain/schema/callbacks/tracers/evaluation.py +0 -6
- langchain/schema/callbacks/tracers/langchain.py +0 -8
- langchain/schema/callbacks/tracers/langchain_v1.py +0 -3
- langchain/schema/callbacks/tracers/log_stream.py +0 -9
- langchain/schema/callbacks/tracers/root_listeners.py +0 -3
- langchain/schema/callbacks/tracers/run_collector.py +0 -3
- langchain/schema/callbacks/tracers/schemas.py +0 -27
- langchain/schema/callbacks/tracers/stdout.py +0 -13
- langchain/schema/chat.py +0 -3
- langchain/schema/chat_history.py +0 -3
- langchain/schema/document.py +0 -3
- langchain/schema/embeddings.py +0 -3
- langchain/schema/exceptions.py +0 -3
- langchain/schema/language_model.py +0 -15
- langchain/schema/memory.py +0 -3
- langchain/schema/messages.py +0 -51
- langchain/schema/output.py +0 -19
- langchain/schema/output_parser.py +0 -25
- langchain/schema/prompt.py +0 -3
- langchain/schema/prompt_template.py +0 -3
- langchain/schema/retriever.py +0 -3
- langchain/schema/runnable/__init__.py +0 -58
- langchain/schema/runnable/base.py +0 -38
- langchain/schema/runnable/branch.py +0 -3
- langchain/schema/runnable/config.py +0 -27
- langchain/schema/runnable/configurable.py +0 -15
- langchain/schema/runnable/fallbacks.py +0 -3
- langchain/schema/runnable/history.py +0 -11
- langchain/schema/runnable/passthrough.py +0 -8
- langchain/schema/runnable/retry.py +0 -3
- langchain/schema/runnable/router.py +0 -3
- langchain/schema/runnable/utils.py +0 -51
- langchain/schema/storage.py +0 -3
- langchain/schema/vectorstore.py +0 -3
- langchain/serpapi.py +0 -25
- langchain/smith/__init__.py +0 -103
- langchain/smith/evaluation/__init__.py +0 -68
- langchain/smith/evaluation/config.py +0 -365
- langchain/smith/evaluation/name_generation.py +0 -727
- langchain/smith/evaluation/progress.py +0 -146
- langchain/smith/evaluation/runner_utils.py +0 -1689
- langchain/smith/evaluation/string_run_evaluator.py +0 -467
- langchain/sql_database.py +0 -25
- langchain/storage/__init__.py +0 -57
- langchain/storage/_lc_store.py +0 -91
- langchain/storage/encoder_backed.py +0 -128
- langchain/storage/exceptions.py +0 -3
- langchain/storage/file_system.py +0 -176
- langchain/storage/in_memory.py +0 -13
- langchain/storage/redis.py +0 -23
- langchain/storage/upstash_redis.py +0 -27
- langchain/text_splitter.py +0 -50
- langchain/tools/ainetwork/__init__.py +0 -0
- langchain/tools/ainetwork/app.py +0 -30
- langchain/tools/ainetwork/base.py +0 -27
- langchain/tools/ainetwork/owner.py +0 -28
- langchain/tools/ainetwork/rule.py +0 -28
- langchain/tools/ainetwork/transfer.py +0 -28
- langchain/tools/ainetwork/value.py +0 -28
- langchain/tools/amadeus/__init__.py +0 -30
- langchain/tools/amadeus/base.py +0 -23
- langchain/tools/amadeus/closest_airport.py +0 -30
- langchain/tools/amadeus/flight_search.py +0 -30
- langchain/tools/arxiv/__init__.py +0 -1
- langchain/tools/arxiv/tool.py +0 -28
- langchain/tools/azure_cognitive_services/__init__.py +0 -41
- langchain/tools/azure_cognitive_services/form_recognizer.py +0 -23
- langchain/tools/azure_cognitive_services/image_analysis.py +0 -23
- langchain/tools/azure_cognitive_services/speech2text.py +0 -23
- langchain/tools/azure_cognitive_services/text2speech.py +0 -23
- langchain/tools/azure_cognitive_services/text_analytics_health.py +0 -23
- langchain/tools/base.py +0 -19
- langchain/tools/bearly/__init__.py +0 -0
- langchain/tools/bearly/tool.py +0 -33
- langchain/tools/bing_search/__init__.py +0 -29
- langchain/tools/bing_search/tool.py +0 -27
- langchain/tools/brave_search/__init__.py +0 -0
- langchain/tools/brave_search/tool.py +0 -23
- langchain/tools/clickup/__init__.py +0 -0
- langchain/tools/clickup/tool.py +0 -23
- langchain/tools/convert_to_openai.py +0 -4
- langchain/tools/dataforseo_api_search/__init__.py +0 -34
- langchain/tools/dataforseo_api_search/tool.py +0 -32
- langchain/tools/ddg_search/__init__.py +0 -25
- langchain/tools/ddg_search/tool.py +0 -32
- langchain/tools/e2b_data_analysis/__init__.py +0 -0
- langchain/tools/e2b_data_analysis/tool.py +0 -33
- langchain/tools/edenai/__init__.py +0 -50
- langchain/tools/edenai/audio_speech_to_text.py +0 -23
- langchain/tools/edenai/audio_text_to_speech.py +0 -23
- langchain/tools/edenai/edenai_base_tool.py +0 -23
- langchain/tools/edenai/image_explicitcontent.py +0 -23
- langchain/tools/edenai/image_objectdetection.py +0 -23
- langchain/tools/edenai/ocr_identityparser.py +0 -23
- langchain/tools/edenai/ocr_invoiceparser.py +0 -23
- langchain/tools/edenai/text_moderation.py +0 -23
- langchain/tools/eleven_labs/__init__.py +0 -25
- langchain/tools/eleven_labs/models.py +0 -23
- langchain/tools/eleven_labs/text2speech.py +0 -23
- langchain/tools/file_management/__init__.py +0 -47
- langchain/tools/file_management/copy.py +0 -28
- langchain/tools/file_management/delete.py +0 -28
- langchain/tools/file_management/file_search.py +0 -28
- langchain/tools/file_management/list_dir.py +0 -28
- langchain/tools/file_management/move.py +0 -28
- langchain/tools/file_management/read.py +0 -28
- langchain/tools/file_management/write.py +0 -28
- langchain/tools/github/__init__.py +0 -1
- langchain/tools/github/tool.py +0 -23
- langchain/tools/gitlab/__init__.py +0 -1
- langchain/tools/gitlab/tool.py +0 -23
- langchain/tools/gmail/__init__.py +0 -41
- langchain/tools/gmail/base.py +0 -23
- langchain/tools/gmail/create_draft.py +0 -28
- langchain/tools/gmail/get_message.py +0 -28
- langchain/tools/gmail/get_thread.py +0 -28
- langchain/tools/gmail/search.py +0 -30
- langchain/tools/gmail/send_message.py +0 -28
- langchain/tools/golden_query/__init__.py +0 -25
- langchain/tools/golden_query/tool.py +0 -23
- langchain/tools/google_cloud/__init__.py +0 -25
- langchain/tools/google_cloud/texttospeech.py +0 -23
- langchain/tools/google_finance/__init__.py +0 -27
- langchain/tools/google_finance/tool.py +0 -25
- langchain/tools/google_jobs/__init__.py +0 -25
- langchain/tools/google_jobs/tool.py +0 -23
- langchain/tools/google_lens/__init__.py +0 -25
- langchain/tools/google_lens/tool.py +0 -23
- langchain/tools/google_places/__init__.py +0 -25
- langchain/tools/google_places/tool.py +0 -28
- langchain/tools/google_scholar/__init__.py +0 -27
- langchain/tools/google_scholar/tool.py +0 -25
- langchain/tools/google_search/__init__.py +0 -29
- langchain/tools/google_search/tool.py +0 -27
- langchain/tools/google_serper/__init__.py +0 -30
- langchain/tools/google_serper/tool.py +0 -27
- langchain/tools/google_trends/__init__.py +0 -27
- langchain/tools/google_trends/tool.py +0 -25
- langchain/tools/graphql/__init__.py +0 -1
- langchain/tools/graphql/tool.py +0 -23
- langchain/tools/human/__init__.py +0 -25
- langchain/tools/human/tool.py +0 -23
- langchain/tools/ifttt.py +0 -23
- langchain/tools/interaction/__init__.py +0 -1
- langchain/tools/interaction/tool.py +0 -23
- langchain/tools/jira/__init__.py +0 -1
- langchain/tools/jira/tool.py +0 -42
- langchain/tools/json/__init__.py +0 -1
- langchain/tools/json/tool.py +0 -52
- langchain/tools/memorize/__init__.py +0 -25
- langchain/tools/memorize/tool.py +0 -27
- langchain/tools/merriam_webster/__init__.py +0 -1
- langchain/tools/merriam_webster/tool.py +0 -23
- langchain/tools/metaphor_search/__init__.py +0 -25
- langchain/tools/metaphor_search/tool.py +0 -23
- langchain/tools/multion/__init__.py +0 -33
- langchain/tools/multion/close_session.py +0 -30
- langchain/tools/multion/create_session.py +0 -30
- langchain/tools/multion/update_session.py +0 -30
- langchain/tools/nasa/__init__.py +0 -0
- langchain/tools/nasa/tool.py +0 -23
- langchain/tools/nuclia/__init__.py +0 -23
- langchain/tools/nuclia/tool.py +0 -27
- langchain/tools/office365/__init__.py +0 -41
- langchain/tools/office365/base.py +0 -23
- langchain/tools/office365/create_draft_message.py +0 -32
- langchain/tools/office365/events_search.py +0 -28
- langchain/tools/office365/messages_search.py +0 -28
- langchain/tools/office365/send_event.py +0 -28
- langchain/tools/office365/send_message.py +0 -28
- langchain/tools/openapi/__init__.py +0 -0
- langchain/tools/openapi/utils/__init__.py +0 -0
- langchain/tools/openapi/utils/api_models.py +0 -54
- langchain/tools/openapi/utils/openapi_utils.py +0 -30
- langchain/tools/openweathermap/__init__.py +0 -25
- langchain/tools/openweathermap/tool.py +0 -23
- langchain/tools/playwright/__init__.py +0 -47
- langchain/tools/playwright/base.py +0 -23
- langchain/tools/playwright/click.py +0 -28
- langchain/tools/playwright/current_page.py +0 -23
- langchain/tools/playwright/extract_hyperlinks.py +0 -32
- langchain/tools/playwright/extract_text.py +0 -23
- langchain/tools/playwright/get_elements.py +0 -28
- langchain/tools/playwright/navigate.py +0 -28
- langchain/tools/playwright/navigate_back.py +0 -23
- langchain/tools/plugin.py +0 -32
- langchain/tools/powerbi/__init__.py +0 -1
- langchain/tools/powerbi/tool.py +0 -33
- langchain/tools/pubmed/__init__.py +0 -1
- langchain/tools/pubmed/tool.py +0 -23
- langchain/tools/python/__init__.py +0 -13
- langchain/tools/reddit_search/__init__.py +0 -0
- langchain/tools/reddit_search/tool.py +0 -27
- langchain/tools/render.py +0 -23
- langchain/tools/requests/__init__.py +0 -1
- langchain/tools/requests/tool.py +0 -42
- langchain/tools/retriever.py +0 -11
- langchain/tools/scenexplain/__init__.py +0 -1
- langchain/tools/scenexplain/tool.py +0 -28
- langchain/tools/searchapi/__init__.py +0 -30
- langchain/tools/searchapi/tool.py +0 -27
- langchain/tools/searx_search/__init__.py +0 -0
- langchain/tools/searx_search/tool.py +0 -27
- langchain/tools/shell/__init__.py +0 -25
- langchain/tools/shell/tool.py +0 -28
- langchain/tools/slack/__init__.py +0 -38
- langchain/tools/slack/base.py +0 -23
- langchain/tools/slack/get_channel.py +0 -23
- langchain/tools/slack/get_message.py +0 -28
- langchain/tools/slack/schedule_message.py +0 -28
- langchain/tools/slack/send_message.py +0 -28
- langchain/tools/sleep/__init__.py +0 -1
- langchain/tools/sleep/tool.py +0 -28
- langchain/tools/spark_sql/__init__.py +0 -1
- langchain/tools/spark_sql/tool.py +0 -39
- langchain/tools/sql_database/__init__.py +0 -1
- langchain/tools/sql_database/prompt.py +0 -24
- langchain/tools/sql_database/tool.py +0 -39
- langchain/tools/stackexchange/__init__.py +0 -1
- langchain/tools/stackexchange/tool.py +0 -23
- langchain/tools/steam/__init__.py +0 -1
- langchain/tools/steam/tool.py +0 -23
- langchain/tools/steamship_image_generation/__init__.py +0 -25
- langchain/tools/steamship_image_generation/tool.py +0 -28
- langchain/tools/tavily_search/__init__.py +0 -32
- langchain/tools/tavily_search/tool.py +0 -33
- langchain/tools/vectorstore/__init__.py +0 -1
- langchain/tools/vectorstore/tool.py +0 -30
- langchain/tools/wikipedia/__init__.py +0 -1
- langchain/tools/wikipedia/tool.py +0 -23
- langchain/tools/wolfram_alpha/__init__.py +0 -25
- langchain/tools/wolfram_alpha/tool.py +0 -23
- langchain/tools/yahoo_finance_news.py +0 -23
- langchain/tools/youtube/__init__.py +0 -0
- langchain/tools/youtube/search.py +0 -23
- langchain/tools/zapier/__init__.py +0 -29
- langchain/tools/zapier/tool.py +0 -49
- langchain/utilities/__init__.py +0 -168
- langchain/utilities/alpha_vantage.py +0 -23
- langchain/utilities/anthropic.py +0 -30
- langchain/utilities/apify.py +0 -23
- langchain/utilities/arcee.py +0 -45
- langchain/utilities/arxiv.py +0 -23
- langchain/utilities/asyncio.py +0 -11
- langchain/utilities/awslambda.py +0 -23
- langchain/utilities/bibtex.py +0 -23
- langchain/utilities/bing_search.py +0 -23
- langchain/utilities/brave_search.py +0 -23
- langchain/utilities/clickup.py +0 -45
- langchain/utilities/dalle_image_generator.py +0 -25
- langchain/utilities/dataforseo_api_search.py +0 -25
- langchain/utilities/duckduckgo_search.py +0 -23
- langchain/utilities/github.py +0 -23
- langchain/utilities/gitlab.py +0 -23
- langchain/utilities/golden_query.py +0 -23
- langchain/utilities/google_finance.py +0 -23
- langchain/utilities/google_jobs.py +0 -23
- langchain/utilities/google_lens.py +0 -23
- langchain/utilities/google_places_api.py +0 -23
- langchain/utilities/google_scholar.py +0 -23
- langchain/utilities/google_search.py +0 -23
- langchain/utilities/google_serper.py +0 -23
- langchain/utilities/google_trends.py +0 -23
- langchain/utilities/graphql.py +0 -23
- langchain/utilities/jira.py +0 -23
- langchain/utilities/loading.py +0 -4
- langchain/utilities/max_compute.py +0 -23
- langchain/utilities/merriam_webster.py +0 -23
- langchain/utilities/metaphor_search.py +0 -23
- langchain/utilities/nasa.py +0 -23
- langchain/utilities/opaqueprompts.py +0 -27
- langchain/utilities/openapi.py +0 -28
- langchain/utilities/openweathermap.py +0 -23
- langchain/utilities/outline.py +0 -23
- langchain/utilities/portkey.py +0 -23
- langchain/utilities/powerbi.py +0 -23
- langchain/utilities/pubmed.py +0 -23
- langchain/utilities/python.py +0 -19
- langchain/utilities/reddit_search.py +0 -25
- langchain/utilities/redis.py +0 -33
- langchain/utilities/requests.py +0 -27
- langchain/utilities/scenexplain.py +0 -23
- langchain/utilities/searchapi.py +0 -23
- langchain/utilities/searx_search.py +0 -28
- langchain/utilities/serpapi.py +0 -28
- langchain/utilities/spark_sql.py +0 -23
- langchain/utilities/sql_database.py +0 -28
- langchain/utilities/stackexchange.py +0 -23
- langchain/utilities/steam.py +0 -23
- langchain/utilities/tavily_search.py +0 -25
- langchain/utilities/tensorflow_datasets.py +0 -23
- langchain/utilities/twilio.py +0 -23
- langchain/utilities/vertexai.py +0 -36
- langchain/utilities/wikipedia.py +0 -23
- langchain/utilities/wolfram_alpha.py +0 -23
- langchain/utilities/zapier.py +0 -23
- langchain/utils/__init__.py +0 -77
- langchain/utils/aiter.py +0 -3
- langchain/utils/env.py +0 -3
- langchain/utils/ernie_functions.py +0 -36
- langchain/utils/formatting.py +0 -3
- langchain/utils/html.py +0 -19
- langchain/utils/input.py +0 -8
- langchain/utils/iter.py +0 -3
- langchain/utils/json_schema.py +0 -11
- langchain/utils/loading.py +0 -3
- langchain/utils/math.py +0 -32
- langchain/utils/openai.py +0 -23
- langchain/utils/openai_functions.py +0 -13
- langchain/utils/pydantic.py +0 -3
- langchain/utils/strings.py +0 -3
- langchain/utils/utils.py +0 -21
- langchain/vectorstores/__init__.py +0 -262
- langchain/vectorstores/alibabacloud_opensearch.py +0 -30
- langchain/vectorstores/analyticdb.py +0 -23
- langchain/vectorstores/annoy.py +0 -23
- langchain/vectorstores/astradb.py +0 -23
- langchain/vectorstores/atlas.py +0 -23
- langchain/vectorstores/awadb.py +0 -23
- langchain/vectorstores/azure_cosmos_db.py +0 -28
- langchain/vectorstores/azuresearch.py +0 -30
- langchain/vectorstores/bageldb.py +0 -23
- langchain/vectorstores/baiducloud_vector_search.py +0 -23
- langchain/vectorstores/base.py +0 -3
- langchain/vectorstores/cassandra.py +0 -23
- langchain/vectorstores/chroma.py +0 -23
- langchain/vectorstores/clarifai.py +0 -23
- langchain/vectorstores/clickhouse.py +0 -27
- langchain/vectorstores/dashvector.py +0 -23
- langchain/vectorstores/databricks_vector_search.py +0 -23
- langchain/vectorstores/deeplake.py +0 -23
- langchain/vectorstores/dingo.py +0 -23
- langchain/vectorstores/docarray/__init__.py +0 -30
- langchain/vectorstores/docarray/base.py +0 -23
- langchain/vectorstores/docarray/hnsw.py +0 -23
- langchain/vectorstores/docarray/in_memory.py +0 -23
- langchain/vectorstores/elastic_vector_search.py +0 -27
- langchain/vectorstores/elasticsearch.py +0 -39
- langchain/vectorstores/epsilla.py +0 -23
- langchain/vectorstores/faiss.py +0 -23
- langchain/vectorstores/hippo.py +0 -23
- langchain/vectorstores/hologres.py +0 -23
- langchain/vectorstores/lancedb.py +0 -23
- langchain/vectorstores/llm_rails.py +0 -28
- langchain/vectorstores/marqo.py +0 -23
- langchain/vectorstores/matching_engine.py +0 -23
- langchain/vectorstores/meilisearch.py +0 -23
- langchain/vectorstores/milvus.py +0 -23
- langchain/vectorstores/momento_vector_index.py +0 -23
- langchain/vectorstores/mongodb_atlas.py +0 -23
- langchain/vectorstores/myscale.py +0 -30
- langchain/vectorstores/neo4j_vector.py +0 -28
- langchain/vectorstores/nucliadb.py +0 -23
- langchain/vectorstores/opensearch_vector_search.py +0 -23
- langchain/vectorstores/pgembedding.py +0 -36
- langchain/vectorstores/pgvecto_rs.py +0 -23
- langchain/vectorstores/pgvector.py +0 -28
- langchain/vectorstores/pinecone.py +0 -23
- langchain/vectorstores/qdrant.py +0 -28
- langchain/vectorstores/redis/__init__.py +0 -42
- langchain/vectorstores/redis/base.py +0 -33
- langchain/vectorstores/redis/filters.py +0 -48
- langchain/vectorstores/redis/schema.py +0 -54
- langchain/vectorstores/rocksetdb.py +0 -23
- langchain/vectorstores/scann.py +0 -23
- langchain/vectorstores/semadb.py +0 -23
- langchain/vectorstores/singlestoredb.py +0 -23
- langchain/vectorstores/sklearn.py +0 -42
- langchain/vectorstores/sqlitevss.py +0 -23
- langchain/vectorstores/starrocks.py +0 -28
- langchain/vectorstores/supabase.py +0 -23
- langchain/vectorstores/tair.py +0 -23
- langchain/vectorstores/tencentvectordb.py +0 -33
- langchain/vectorstores/tigris.py +0 -23
- langchain/vectorstores/tiledb.py +0 -23
- langchain/vectorstores/timescalevector.py +0 -23
- langchain/vectorstores/typesense.py +0 -23
- langchain/vectorstores/usearch.py +0 -23
- langchain/vectorstores/utils.py +0 -33
- langchain/vectorstores/vald.py +0 -23
- langchain/vectorstores/vearch.py +0 -23
- langchain/vectorstores/vectara.py +0 -28
- langchain/vectorstores/vespa.py +0 -23
- langchain/vectorstores/weaviate.py +0 -23
- langchain/vectorstores/xata.py +0 -23
- langchain/vectorstores/yellowbrick.py +0 -23
- langchain/vectorstores/zep.py +0 -28
- langchain/vectorstores/zilliz.py +0 -23
- langchain-0.4.0.dev0.dist-info/METADATA +0 -134
- langchain-0.4.0.dev0.dist-info/RECORD +0 -1341
- langchain-0.4.0.dev0.dist-info/entry_points.txt +0 -4
- {langchain-0.4.0.dev0.dist-info → langchain-1.0.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
import logging
|
|
2
|
-
|
|
3
|
-
from langchain_core.callbacks import (
|
|
4
|
-
AsyncCallbackManagerForRetrieverRun,
|
|
5
|
-
CallbackManagerForRetrieverRun,
|
|
6
|
-
)
|
|
7
|
-
from langchain_core.documents import Document
|
|
8
|
-
from langchain_core.language_models import BaseLLM
|
|
9
|
-
from langchain_core.output_parsers import StrOutputParser
|
|
10
|
-
from langchain_core.prompts import BasePromptTemplate
|
|
11
|
-
from langchain_core.prompts.prompt import PromptTemplate
|
|
12
|
-
from langchain_core.retrievers import BaseRetriever
|
|
13
|
-
from langchain_core.runnables import Runnable
|
|
14
|
-
|
|
15
|
-
logger = logging.getLogger(__name__)
|
|
16
|
-
|
|
17
|
-
# Default template
|
|
18
|
-
DEFAULT_TEMPLATE = """You are an assistant tasked with taking a natural language \
|
|
19
|
-
query from a user and converting it into a query for a vectorstore. \
|
|
20
|
-
In this process, you strip out information that is not relevant for \
|
|
21
|
-
the retrieval task. Here is the user query: {question}"""
|
|
22
|
-
|
|
23
|
-
# Default prompt
|
|
24
|
-
DEFAULT_QUERY_PROMPT = PromptTemplate.from_template(DEFAULT_TEMPLATE)
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
class RePhraseQueryRetriever(BaseRetriever):
|
|
28
|
-
"""Given a query, use an LLM to re-phrase it.
|
|
29
|
-
Then, retrieve docs for the re-phrased query."""
|
|
30
|
-
|
|
31
|
-
retriever: BaseRetriever
|
|
32
|
-
llm_chain: Runnable
|
|
33
|
-
|
|
34
|
-
@classmethod
|
|
35
|
-
def from_llm(
|
|
36
|
-
cls,
|
|
37
|
-
retriever: BaseRetriever,
|
|
38
|
-
llm: BaseLLM,
|
|
39
|
-
prompt: BasePromptTemplate = DEFAULT_QUERY_PROMPT,
|
|
40
|
-
) -> "RePhraseQueryRetriever":
|
|
41
|
-
"""Initialize from llm using default template.
|
|
42
|
-
|
|
43
|
-
The prompt used here expects a single input: `question`
|
|
44
|
-
|
|
45
|
-
Args:
|
|
46
|
-
retriever: retriever to query documents from
|
|
47
|
-
llm: llm for query generation using DEFAULT_QUERY_PROMPT
|
|
48
|
-
prompt: prompt template for query generation
|
|
49
|
-
|
|
50
|
-
Returns:
|
|
51
|
-
RePhraseQueryRetriever
|
|
52
|
-
"""
|
|
53
|
-
llm_chain = prompt | llm | StrOutputParser()
|
|
54
|
-
return cls(
|
|
55
|
-
retriever=retriever,
|
|
56
|
-
llm_chain=llm_chain,
|
|
57
|
-
)
|
|
58
|
-
|
|
59
|
-
def _get_relevant_documents(
|
|
60
|
-
self,
|
|
61
|
-
query: str,
|
|
62
|
-
*,
|
|
63
|
-
run_manager: CallbackManagerForRetrieverRun,
|
|
64
|
-
) -> list[Document]:
|
|
65
|
-
"""Get relevant documents given a user question.
|
|
66
|
-
|
|
67
|
-
Args:
|
|
68
|
-
query: user question
|
|
69
|
-
|
|
70
|
-
Returns:
|
|
71
|
-
Relevant documents for re-phrased question
|
|
72
|
-
"""
|
|
73
|
-
re_phrased_question = self.llm_chain.invoke(
|
|
74
|
-
query,
|
|
75
|
-
{"callbacks": run_manager.get_child()},
|
|
76
|
-
)
|
|
77
|
-
logger.info("Re-phrased question: %s", re_phrased_question)
|
|
78
|
-
return self.retriever.invoke(
|
|
79
|
-
re_phrased_question,
|
|
80
|
-
config={"callbacks": run_manager.get_child()},
|
|
81
|
-
)
|
|
82
|
-
|
|
83
|
-
async def _aget_relevant_documents(
|
|
84
|
-
self,
|
|
85
|
-
query: str,
|
|
86
|
-
*,
|
|
87
|
-
run_manager: AsyncCallbackManagerForRetrieverRun,
|
|
88
|
-
) -> list[Document]:
|
|
89
|
-
raise NotImplementedError
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
from typing import TYPE_CHECKING, Any
|
|
2
|
-
|
|
3
|
-
from langchain._api import create_importer
|
|
4
|
-
|
|
5
|
-
if TYPE_CHECKING:
|
|
6
|
-
from langchain_community.retrievers import RemoteLangChainRetriever
|
|
7
|
-
|
|
8
|
-
# Create a way to dynamically look up deprecated imports.
|
|
9
|
-
# Used to consolidate logic for raising deprecation warnings and
|
|
10
|
-
# handling optional imports.
|
|
11
|
-
DEPRECATED_LOOKUP = {"RemoteLangChainRetriever": "langchain_community.retrievers"}
|
|
12
|
-
|
|
13
|
-
_import_attribute = create_importer(__package__, deprecated_lookups=DEPRECATED_LOOKUP)
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
def __getattr__(name: str) -> Any:
|
|
17
|
-
"""Look up attributes dynamically."""
|
|
18
|
-
return _import_attribute(name)
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
__all__ = [
|
|
22
|
-
"RemoteLangChainRetriever",
|
|
23
|
-
]
|
|
File without changes
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
from typing import TYPE_CHECKING, Any
|
|
2
|
-
|
|
3
|
-
from langchain._api import create_importer
|
|
4
|
-
|
|
5
|
-
if TYPE_CHECKING:
|
|
6
|
-
from langchain_community.query_constructors.astradb import AstraDBTranslator
|
|
7
|
-
|
|
8
|
-
# Create a way to dynamically look up deprecated imports.
|
|
9
|
-
# Used to consolidate logic for raising deprecation warnings and
|
|
10
|
-
# handling optional imports.
|
|
11
|
-
DEPRECATED_LOOKUP = {
|
|
12
|
-
"AstraDBTranslator": "langchain_community.query_constructors.astradb",
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
_import_attribute = create_importer(__package__, deprecated_lookups=DEPRECATED_LOOKUP)
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
def __getattr__(name: str) -> Any:
|
|
19
|
-
"""Look up attributes dynamically."""
|
|
20
|
-
return _import_attribute(name)
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
__all__ = ["AstraDBTranslator"]
|
|
@@ -1,416 +0,0 @@
|
|
|
1
|
-
"""Retriever that generates and executes structured queries over its own data source."""
|
|
2
|
-
|
|
3
|
-
import logging
|
|
4
|
-
from collections.abc import Sequence
|
|
5
|
-
from typing import Any, Optional, Union
|
|
6
|
-
|
|
7
|
-
from langchain_core.callbacks.manager import (
|
|
8
|
-
AsyncCallbackManagerForRetrieverRun,
|
|
9
|
-
CallbackManagerForRetrieverRun,
|
|
10
|
-
)
|
|
11
|
-
from langchain_core.documents import Document
|
|
12
|
-
from langchain_core.language_models import BaseLanguageModel
|
|
13
|
-
from langchain_core.retrievers import BaseRetriever
|
|
14
|
-
from langchain_core.runnables import Runnable
|
|
15
|
-
from langchain_core.structured_query import StructuredQuery, Visitor
|
|
16
|
-
from langchain_core.vectorstores import VectorStore
|
|
17
|
-
from pydantic import ConfigDict, Field, model_validator
|
|
18
|
-
|
|
19
|
-
from langchain.chains.query_constructor.base import load_query_constructor_runnable
|
|
20
|
-
from langchain.chains.query_constructor.schema import AttributeInfo
|
|
21
|
-
|
|
22
|
-
logger = logging.getLogger(__name__)
|
|
23
|
-
QUERY_CONSTRUCTOR_RUN_NAME = "query_constructor"
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
def _get_builtin_translator(vectorstore: VectorStore) -> Visitor:
|
|
27
|
-
"""Get the translator class corresponding to the vector store class."""
|
|
28
|
-
try:
|
|
29
|
-
import langchain_community # noqa: F401
|
|
30
|
-
except ImportError as err:
|
|
31
|
-
msg = (
|
|
32
|
-
"The langchain-community package must be installed to use this feature."
|
|
33
|
-
" Please install it using `pip install langchain-community`."
|
|
34
|
-
)
|
|
35
|
-
raise ImportError(msg) from err
|
|
36
|
-
|
|
37
|
-
from langchain_community.query_constructors.astradb import AstraDBTranslator
|
|
38
|
-
from langchain_community.query_constructors.chroma import ChromaTranslator
|
|
39
|
-
from langchain_community.query_constructors.dashvector import DashvectorTranslator
|
|
40
|
-
from langchain_community.query_constructors.databricks_vector_search import (
|
|
41
|
-
DatabricksVectorSearchTranslator,
|
|
42
|
-
)
|
|
43
|
-
from langchain_community.query_constructors.deeplake import DeepLakeTranslator
|
|
44
|
-
from langchain_community.query_constructors.dingo import DingoDBTranslator
|
|
45
|
-
from langchain_community.query_constructors.elasticsearch import (
|
|
46
|
-
ElasticsearchTranslator,
|
|
47
|
-
)
|
|
48
|
-
from langchain_community.query_constructors.milvus import MilvusTranslator
|
|
49
|
-
from langchain_community.query_constructors.mongodb_atlas import (
|
|
50
|
-
MongoDBAtlasTranslator,
|
|
51
|
-
)
|
|
52
|
-
from langchain_community.query_constructors.myscale import MyScaleTranslator
|
|
53
|
-
from langchain_community.query_constructors.neo4j import Neo4jTranslator
|
|
54
|
-
from langchain_community.query_constructors.opensearch import OpenSearchTranslator
|
|
55
|
-
from langchain_community.query_constructors.pgvector import PGVectorTranslator
|
|
56
|
-
from langchain_community.query_constructors.pinecone import PineconeTranslator
|
|
57
|
-
from langchain_community.query_constructors.qdrant import QdrantTranslator
|
|
58
|
-
from langchain_community.query_constructors.redis import RedisTranslator
|
|
59
|
-
from langchain_community.query_constructors.supabase import SupabaseVectorTranslator
|
|
60
|
-
from langchain_community.query_constructors.tencentvectordb import (
|
|
61
|
-
TencentVectorDBTranslator,
|
|
62
|
-
)
|
|
63
|
-
from langchain_community.query_constructors.timescalevector import (
|
|
64
|
-
TimescaleVectorTranslator,
|
|
65
|
-
)
|
|
66
|
-
from langchain_community.query_constructors.vectara import VectaraTranslator
|
|
67
|
-
from langchain_community.query_constructors.weaviate import WeaviateTranslator
|
|
68
|
-
from langchain_community.vectorstores import (
|
|
69
|
-
AstraDB,
|
|
70
|
-
DashVector,
|
|
71
|
-
DatabricksVectorSearch,
|
|
72
|
-
DeepLake,
|
|
73
|
-
Dingo,
|
|
74
|
-
Milvus,
|
|
75
|
-
MyScale,
|
|
76
|
-
Neo4jVector,
|
|
77
|
-
OpenSearchVectorSearch,
|
|
78
|
-
PGVector,
|
|
79
|
-
Qdrant,
|
|
80
|
-
Redis,
|
|
81
|
-
SupabaseVectorStore,
|
|
82
|
-
TencentVectorDB,
|
|
83
|
-
TimescaleVector,
|
|
84
|
-
Vectara,
|
|
85
|
-
Weaviate,
|
|
86
|
-
)
|
|
87
|
-
from langchain_community.vectorstores import (
|
|
88
|
-
Chroma as CommunityChroma,
|
|
89
|
-
)
|
|
90
|
-
from langchain_community.vectorstores import (
|
|
91
|
-
ElasticsearchStore as ElasticsearchStoreCommunity,
|
|
92
|
-
)
|
|
93
|
-
from langchain_community.vectorstores import (
|
|
94
|
-
MongoDBAtlasVectorSearch as CommunityMongoDBAtlasVectorSearch,
|
|
95
|
-
)
|
|
96
|
-
from langchain_community.vectorstores import (
|
|
97
|
-
Pinecone as CommunityPinecone,
|
|
98
|
-
)
|
|
99
|
-
|
|
100
|
-
BUILTIN_TRANSLATORS: dict[type[VectorStore], type[Visitor]] = {
|
|
101
|
-
AstraDB: AstraDBTranslator,
|
|
102
|
-
PGVector: PGVectorTranslator,
|
|
103
|
-
CommunityPinecone: PineconeTranslator,
|
|
104
|
-
CommunityChroma: ChromaTranslator,
|
|
105
|
-
DashVector: DashvectorTranslator,
|
|
106
|
-
Dingo: DingoDBTranslator,
|
|
107
|
-
Weaviate: WeaviateTranslator,
|
|
108
|
-
Vectara: VectaraTranslator,
|
|
109
|
-
Qdrant: QdrantTranslator,
|
|
110
|
-
MyScale: MyScaleTranslator,
|
|
111
|
-
DeepLake: DeepLakeTranslator,
|
|
112
|
-
ElasticsearchStoreCommunity: ElasticsearchTranslator,
|
|
113
|
-
Milvus: MilvusTranslator,
|
|
114
|
-
SupabaseVectorStore: SupabaseVectorTranslator,
|
|
115
|
-
TimescaleVector: TimescaleVectorTranslator,
|
|
116
|
-
OpenSearchVectorSearch: OpenSearchTranslator,
|
|
117
|
-
CommunityMongoDBAtlasVectorSearch: MongoDBAtlasTranslator,
|
|
118
|
-
Neo4jVector: Neo4jTranslator,
|
|
119
|
-
}
|
|
120
|
-
if isinstance(vectorstore, DatabricksVectorSearch):
|
|
121
|
-
return DatabricksVectorSearchTranslator()
|
|
122
|
-
if isinstance(vectorstore, MyScale):
|
|
123
|
-
return MyScaleTranslator(metadata_key=vectorstore.metadata_column)
|
|
124
|
-
if isinstance(vectorstore, Redis):
|
|
125
|
-
return RedisTranslator.from_vectorstore(vectorstore)
|
|
126
|
-
if isinstance(vectorstore, TencentVectorDB):
|
|
127
|
-
fields = [
|
|
128
|
-
field.name for field in (vectorstore.meta_fields or []) if field.index
|
|
129
|
-
]
|
|
130
|
-
return TencentVectorDBTranslator(fields)
|
|
131
|
-
if vectorstore.__class__ in BUILTIN_TRANSLATORS:
|
|
132
|
-
return BUILTIN_TRANSLATORS[vectorstore.__class__]()
|
|
133
|
-
try:
|
|
134
|
-
from langchain_astradb.vectorstores import AstraDBVectorStore
|
|
135
|
-
except ImportError:
|
|
136
|
-
pass
|
|
137
|
-
else:
|
|
138
|
-
if isinstance(vectorstore, AstraDBVectorStore):
|
|
139
|
-
return AstraDBTranslator()
|
|
140
|
-
|
|
141
|
-
try:
|
|
142
|
-
from langchain_elasticsearch.vectorstores import ElasticsearchStore
|
|
143
|
-
except ImportError:
|
|
144
|
-
pass
|
|
145
|
-
else:
|
|
146
|
-
if isinstance(vectorstore, ElasticsearchStore):
|
|
147
|
-
return ElasticsearchTranslator()
|
|
148
|
-
|
|
149
|
-
try:
|
|
150
|
-
from langchain_pinecone import PineconeVectorStore
|
|
151
|
-
except ImportError:
|
|
152
|
-
pass
|
|
153
|
-
else:
|
|
154
|
-
if isinstance(vectorstore, PineconeVectorStore):
|
|
155
|
-
return PineconeTranslator()
|
|
156
|
-
|
|
157
|
-
try:
|
|
158
|
-
from langchain_milvus import Milvus
|
|
159
|
-
except ImportError:
|
|
160
|
-
pass
|
|
161
|
-
else:
|
|
162
|
-
if isinstance(vectorstore, Milvus):
|
|
163
|
-
return MilvusTranslator()
|
|
164
|
-
|
|
165
|
-
try:
|
|
166
|
-
from langchain_mongodb import MongoDBAtlasVectorSearch
|
|
167
|
-
except ImportError:
|
|
168
|
-
pass
|
|
169
|
-
else:
|
|
170
|
-
if isinstance(vectorstore, MongoDBAtlasVectorSearch):
|
|
171
|
-
return MongoDBAtlasTranslator()
|
|
172
|
-
|
|
173
|
-
try:
|
|
174
|
-
from langchain_neo4j import Neo4jVector
|
|
175
|
-
except ImportError:
|
|
176
|
-
pass
|
|
177
|
-
else:
|
|
178
|
-
if isinstance(vectorstore, Neo4jVector):
|
|
179
|
-
return Neo4jTranslator()
|
|
180
|
-
|
|
181
|
-
try:
|
|
182
|
-
# Trying langchain_chroma import if exists
|
|
183
|
-
from langchain_chroma import Chroma
|
|
184
|
-
except ImportError:
|
|
185
|
-
pass
|
|
186
|
-
else:
|
|
187
|
-
if isinstance(vectorstore, Chroma):
|
|
188
|
-
return ChromaTranslator()
|
|
189
|
-
|
|
190
|
-
try:
|
|
191
|
-
from langchain_postgres import PGVector
|
|
192
|
-
from langchain_postgres import PGVectorTranslator as NewPGVectorTranslator
|
|
193
|
-
except ImportError:
|
|
194
|
-
pass
|
|
195
|
-
else:
|
|
196
|
-
if isinstance(vectorstore, PGVector):
|
|
197
|
-
return NewPGVectorTranslator()
|
|
198
|
-
|
|
199
|
-
try:
|
|
200
|
-
from langchain_qdrant import QdrantVectorStore
|
|
201
|
-
except ImportError:
|
|
202
|
-
pass
|
|
203
|
-
else:
|
|
204
|
-
if isinstance(vectorstore, QdrantVectorStore):
|
|
205
|
-
return QdrantTranslator(metadata_key=vectorstore.metadata_payload_key)
|
|
206
|
-
|
|
207
|
-
try:
|
|
208
|
-
# Added in langchain-community==0.2.11
|
|
209
|
-
from langchain_community.query_constructors.hanavector import HanaTranslator
|
|
210
|
-
from langchain_community.vectorstores import HanaDB
|
|
211
|
-
except ImportError:
|
|
212
|
-
pass
|
|
213
|
-
else:
|
|
214
|
-
if isinstance(vectorstore, HanaDB):
|
|
215
|
-
return HanaTranslator()
|
|
216
|
-
|
|
217
|
-
try:
|
|
218
|
-
# Trying langchain_weaviate (weaviate v4) import if exists
|
|
219
|
-
from langchain_weaviate.vectorstores import WeaviateVectorStore
|
|
220
|
-
|
|
221
|
-
except ImportError:
|
|
222
|
-
pass
|
|
223
|
-
else:
|
|
224
|
-
if isinstance(vectorstore, WeaviateVectorStore):
|
|
225
|
-
return WeaviateTranslator()
|
|
226
|
-
|
|
227
|
-
msg = (
|
|
228
|
-
f"Self query retriever with Vector Store type {vectorstore.__class__}"
|
|
229
|
-
f" not supported."
|
|
230
|
-
)
|
|
231
|
-
raise ValueError(msg)
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
class SelfQueryRetriever(BaseRetriever):
|
|
235
|
-
"""Retriever that uses a vector store and an LLM to generate
|
|
236
|
-
the vector store queries."""
|
|
237
|
-
|
|
238
|
-
vectorstore: VectorStore
|
|
239
|
-
"""The underlying vector store from which documents will be retrieved."""
|
|
240
|
-
query_constructor: Runnable[dict, StructuredQuery] = Field(alias="llm_chain")
|
|
241
|
-
"""The query constructor chain for generating the vector store queries.
|
|
242
|
-
|
|
243
|
-
llm_chain is legacy name kept for backwards compatibility."""
|
|
244
|
-
search_type: str = "similarity"
|
|
245
|
-
"""The search type to perform on the vector store."""
|
|
246
|
-
search_kwargs: dict = Field(default_factory=dict)
|
|
247
|
-
"""Keyword arguments to pass in to the vector store search."""
|
|
248
|
-
structured_query_translator: Visitor
|
|
249
|
-
"""Translator for turning internal query language into vectorstore search params."""
|
|
250
|
-
verbose: bool = False
|
|
251
|
-
|
|
252
|
-
use_original_query: bool = False
|
|
253
|
-
"""Use original query instead of the revised new query from LLM"""
|
|
254
|
-
|
|
255
|
-
model_config = ConfigDict(
|
|
256
|
-
populate_by_name=True,
|
|
257
|
-
arbitrary_types_allowed=True,
|
|
258
|
-
)
|
|
259
|
-
|
|
260
|
-
@model_validator(mode="before")
|
|
261
|
-
@classmethod
|
|
262
|
-
def validate_translator(cls, values: dict) -> Any:
|
|
263
|
-
"""Validate translator."""
|
|
264
|
-
if "structured_query_translator" not in values:
|
|
265
|
-
values["structured_query_translator"] = _get_builtin_translator(
|
|
266
|
-
values["vectorstore"],
|
|
267
|
-
)
|
|
268
|
-
return values
|
|
269
|
-
|
|
270
|
-
@property
|
|
271
|
-
def llm_chain(self) -> Runnable:
|
|
272
|
-
"""llm_chain is legacy name kept for backwards compatibility."""
|
|
273
|
-
return self.query_constructor
|
|
274
|
-
|
|
275
|
-
def _prepare_query(
|
|
276
|
-
self,
|
|
277
|
-
query: str,
|
|
278
|
-
structured_query: StructuredQuery,
|
|
279
|
-
) -> tuple[str, dict[str, Any]]:
|
|
280
|
-
new_query, new_kwargs = self.structured_query_translator.visit_structured_query(
|
|
281
|
-
structured_query,
|
|
282
|
-
)
|
|
283
|
-
if structured_query.limit is not None:
|
|
284
|
-
new_kwargs["k"] = structured_query.limit
|
|
285
|
-
if self.use_original_query:
|
|
286
|
-
new_query = query
|
|
287
|
-
search_kwargs = {**self.search_kwargs, **new_kwargs}
|
|
288
|
-
return new_query, search_kwargs
|
|
289
|
-
|
|
290
|
-
def _get_docs_with_query(
|
|
291
|
-
self,
|
|
292
|
-
query: str,
|
|
293
|
-
search_kwargs: dict[str, Any],
|
|
294
|
-
) -> list[Document]:
|
|
295
|
-
return self.vectorstore.search(query, self.search_type, **search_kwargs)
|
|
296
|
-
|
|
297
|
-
async def _aget_docs_with_query(
|
|
298
|
-
self,
|
|
299
|
-
query: str,
|
|
300
|
-
search_kwargs: dict[str, Any],
|
|
301
|
-
) -> list[Document]:
|
|
302
|
-
return await self.vectorstore.asearch(query, self.search_type, **search_kwargs)
|
|
303
|
-
|
|
304
|
-
def _get_relevant_documents(
|
|
305
|
-
self,
|
|
306
|
-
query: str,
|
|
307
|
-
*,
|
|
308
|
-
run_manager: CallbackManagerForRetrieverRun,
|
|
309
|
-
) -> list[Document]:
|
|
310
|
-
"""Get documents relevant for a query.
|
|
311
|
-
|
|
312
|
-
Args:
|
|
313
|
-
query: string to find relevant documents for
|
|
314
|
-
|
|
315
|
-
Returns:
|
|
316
|
-
List of relevant documents
|
|
317
|
-
"""
|
|
318
|
-
structured_query = self.query_constructor.invoke(
|
|
319
|
-
{"query": query},
|
|
320
|
-
config={"callbacks": run_manager.get_child()},
|
|
321
|
-
)
|
|
322
|
-
if self.verbose:
|
|
323
|
-
logger.info("Generated Query: %s", structured_query)
|
|
324
|
-
new_query, search_kwargs = self._prepare_query(query, structured_query)
|
|
325
|
-
return self._get_docs_with_query(new_query, search_kwargs)
|
|
326
|
-
|
|
327
|
-
async def _aget_relevant_documents(
|
|
328
|
-
self,
|
|
329
|
-
query: str,
|
|
330
|
-
*,
|
|
331
|
-
run_manager: AsyncCallbackManagerForRetrieverRun,
|
|
332
|
-
) -> list[Document]:
|
|
333
|
-
"""Get documents relevant for a query.
|
|
334
|
-
|
|
335
|
-
Args:
|
|
336
|
-
query: string to find relevant documents for
|
|
337
|
-
|
|
338
|
-
Returns:
|
|
339
|
-
List of relevant documents
|
|
340
|
-
"""
|
|
341
|
-
structured_query = await self.query_constructor.ainvoke(
|
|
342
|
-
{"query": query},
|
|
343
|
-
config={"callbacks": run_manager.get_child()},
|
|
344
|
-
)
|
|
345
|
-
if self.verbose:
|
|
346
|
-
logger.info("Generated Query: %s", structured_query)
|
|
347
|
-
new_query, search_kwargs = self._prepare_query(query, structured_query)
|
|
348
|
-
return await self._aget_docs_with_query(new_query, search_kwargs)
|
|
349
|
-
|
|
350
|
-
@classmethod
|
|
351
|
-
def from_llm(
|
|
352
|
-
cls,
|
|
353
|
-
llm: BaseLanguageModel,
|
|
354
|
-
vectorstore: VectorStore,
|
|
355
|
-
document_contents: str,
|
|
356
|
-
metadata_field_info: Sequence[Union[AttributeInfo, dict]],
|
|
357
|
-
structured_query_translator: Optional[Visitor] = None,
|
|
358
|
-
chain_kwargs: Optional[dict] = None,
|
|
359
|
-
enable_limit: bool = False, # noqa: FBT001,FBT002
|
|
360
|
-
use_original_query: bool = False, # noqa: FBT001,FBT002
|
|
361
|
-
**kwargs: Any,
|
|
362
|
-
) -> "SelfQueryRetriever":
|
|
363
|
-
"""Create a SelfQueryRetriever from an LLM and a vector store.
|
|
364
|
-
|
|
365
|
-
Args:
|
|
366
|
-
llm: The language model to use for generating queries.
|
|
367
|
-
vectorstore: The vector store to use for retrieving documents.
|
|
368
|
-
document_contents: Description of the page contents of the document to be
|
|
369
|
-
queried.
|
|
370
|
-
metadata_field_info: Metadata field information for the documents.
|
|
371
|
-
structured_query_translator: Optional translator for turning internal query
|
|
372
|
-
language into vectorstore search params.
|
|
373
|
-
chain_kwargs: Additional keyword arguments for the query constructor.
|
|
374
|
-
enable_limit: Whether to enable the limit operator.
|
|
375
|
-
use_original_query: Whether to use the original query instead of the revised
|
|
376
|
-
query from the LLM.
|
|
377
|
-
**kwargs: Additional keyword arguments for the SelfQueryRetriever.
|
|
378
|
-
|
|
379
|
-
Returns:
|
|
380
|
-
An instance of SelfQueryRetriever.
|
|
381
|
-
"""
|
|
382
|
-
if structured_query_translator is None:
|
|
383
|
-
structured_query_translator = _get_builtin_translator(vectorstore)
|
|
384
|
-
chain_kwargs = chain_kwargs or {}
|
|
385
|
-
|
|
386
|
-
if (
|
|
387
|
-
"allowed_comparators" not in chain_kwargs
|
|
388
|
-
and structured_query_translator.allowed_comparators is not None
|
|
389
|
-
):
|
|
390
|
-
chain_kwargs["allowed_comparators"] = (
|
|
391
|
-
structured_query_translator.allowed_comparators
|
|
392
|
-
)
|
|
393
|
-
if (
|
|
394
|
-
"allowed_operators" not in chain_kwargs
|
|
395
|
-
and structured_query_translator.allowed_operators is not None
|
|
396
|
-
):
|
|
397
|
-
chain_kwargs["allowed_operators"] = (
|
|
398
|
-
structured_query_translator.allowed_operators
|
|
399
|
-
)
|
|
400
|
-
query_constructor = load_query_constructor_runnable(
|
|
401
|
-
llm,
|
|
402
|
-
document_contents,
|
|
403
|
-
metadata_field_info,
|
|
404
|
-
enable_limit=enable_limit,
|
|
405
|
-
**chain_kwargs,
|
|
406
|
-
)
|
|
407
|
-
query_constructor = query_constructor.with_config(
|
|
408
|
-
run_name=QUERY_CONSTRUCTOR_RUN_NAME,
|
|
409
|
-
)
|
|
410
|
-
return cls( # type: ignore[call-arg]
|
|
411
|
-
query_constructor=query_constructor,
|
|
412
|
-
vectorstore=vectorstore,
|
|
413
|
-
use_original_query=use_original_query,
|
|
414
|
-
structured_query_translator=structured_query_translator,
|
|
415
|
-
**kwargs,
|
|
416
|
-
)
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
from typing import TYPE_CHECKING, Any
|
|
2
|
-
|
|
3
|
-
from langchain._api import create_importer
|
|
4
|
-
|
|
5
|
-
if TYPE_CHECKING:
|
|
6
|
-
from langchain_community.query_constructors.chroma import ChromaTranslator
|
|
7
|
-
|
|
8
|
-
# Create a way to dynamically look up deprecated imports.
|
|
9
|
-
# Used to consolidate logic for raising deprecation warnings and
|
|
10
|
-
# handling optional imports.
|
|
11
|
-
DEPRECATED_LOOKUP = {
|
|
12
|
-
"ChromaTranslator": "langchain_community.query_constructors.chroma",
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
_import_attribute = create_importer(__package__, deprecated_lookups=DEPRECATED_LOOKUP)
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
def __getattr__(name: str) -> Any:
|
|
19
|
-
"""Look up attributes dynamically."""
|
|
20
|
-
return _import_attribute(name)
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
__all__ = ["ChromaTranslator"]
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
from typing import TYPE_CHECKING, Any
|
|
2
|
-
|
|
3
|
-
from langchain._api import create_importer
|
|
4
|
-
|
|
5
|
-
if TYPE_CHECKING:
|
|
6
|
-
from langchain_community.query_constructors.dashvector import DashvectorTranslator
|
|
7
|
-
|
|
8
|
-
# Create a way to dynamically look up deprecated imports.
|
|
9
|
-
# Used to consolidate logic for raising deprecation warnings and
|
|
10
|
-
# handling optional imports.
|
|
11
|
-
DEPRECATED_LOOKUP = {
|
|
12
|
-
"DashvectorTranslator": "langchain_community.query_constructors.dashvector",
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
_import_attribute = create_importer(__package__, deprecated_lookups=DEPRECATED_LOOKUP)
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
def __getattr__(name: str) -> Any:
|
|
19
|
-
"""Look up attributes dynamically."""
|
|
20
|
-
return _import_attribute(name)
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
__all__ = ["DashvectorTranslator"]
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
from typing import TYPE_CHECKING, Any
|
|
2
|
-
|
|
3
|
-
from langchain._api import create_importer
|
|
4
|
-
|
|
5
|
-
if TYPE_CHECKING:
|
|
6
|
-
from langchain_community.query_constructors.databricks_vector_search import (
|
|
7
|
-
DatabricksVectorSearchTranslator,
|
|
8
|
-
)
|
|
9
|
-
|
|
10
|
-
# Create a way to dynamically look up deprecated imports.
|
|
11
|
-
# Used to consolidate logic for raising deprecation warnings and
|
|
12
|
-
# handling optional imports.
|
|
13
|
-
DEPRECATED_LOOKUP = {
|
|
14
|
-
"DatabricksVectorSearchTranslator": (
|
|
15
|
-
"langchain_community.query_constructors.databricks_vector_search"
|
|
16
|
-
),
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
_import_attribute = create_importer(__package__, deprecated_lookups=DEPRECATED_LOOKUP)
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
def __getattr__(name: str) -> Any:
|
|
23
|
-
"""Look up attributes dynamically."""
|
|
24
|
-
return _import_attribute(name)
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
__all__ = ["DatabricksVectorSearchTranslator"]
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
from typing import TYPE_CHECKING, Any
|
|
2
|
-
|
|
3
|
-
from langchain._api import create_importer
|
|
4
|
-
|
|
5
|
-
if TYPE_CHECKING:
|
|
6
|
-
from langchain_community.query_constructors.deeplake import (
|
|
7
|
-
DeepLakeTranslator,
|
|
8
|
-
can_cast_to_float,
|
|
9
|
-
)
|
|
10
|
-
|
|
11
|
-
# Create a way to dynamically look up deprecated imports.
|
|
12
|
-
# Used to consolidate logic for raising deprecation warnings and
|
|
13
|
-
# handling optional imports.
|
|
14
|
-
DEPRECATED_LOOKUP = {
|
|
15
|
-
"DeepLakeTranslator": "langchain_community.query_constructors.deeplake",
|
|
16
|
-
"can_cast_to_float": "langchain_community.query_constructors.deeplake",
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
_import_attribute = create_importer(__package__, deprecated_lookups=DEPRECATED_LOOKUP)
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
def __getattr__(name: str) -> Any:
|
|
23
|
-
"""Look up attributes dynamically."""
|
|
24
|
-
return _import_attribute(name)
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
__all__ = ["DeepLakeTranslator", "can_cast_to_float"]
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
from typing import TYPE_CHECKING, Any
|
|
2
|
-
|
|
3
|
-
from langchain._api import create_importer
|
|
4
|
-
|
|
5
|
-
if TYPE_CHECKING:
|
|
6
|
-
from langchain_community.query_constructors.dingo import DingoDBTranslator
|
|
7
|
-
|
|
8
|
-
# Create a way to dynamically look up deprecated imports.
|
|
9
|
-
# Used to consolidate logic for raising deprecation warnings and
|
|
10
|
-
# handling optional imports.
|
|
11
|
-
DEPRECATED_LOOKUP = {
|
|
12
|
-
"DingoDBTranslator": "langchain_community.query_constructors.dingo",
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
_import_attribute = create_importer(__package__, deprecated_lookups=DEPRECATED_LOOKUP)
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
def __getattr__(name: str) -> Any:
|
|
19
|
-
"""Look up attributes dynamically."""
|
|
20
|
-
return _import_attribute(name)
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
__all__ = ["DingoDBTranslator"]
|