langchain-core 1.0.0a5__py3-none-any.whl → 1.0.3__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.
- langchain_core/__init__.py +1 -1
- langchain_core/_api/__init__.py +3 -4
- langchain_core/_api/beta_decorator.py +23 -26
- langchain_core/_api/deprecation.py +51 -64
- langchain_core/_api/path.py +3 -6
- langchain_core/_import_utils.py +3 -4
- langchain_core/agents.py +20 -22
- langchain_core/caches.py +65 -66
- langchain_core/callbacks/__init__.py +1 -8
- langchain_core/callbacks/base.py +321 -336
- langchain_core/callbacks/file.py +44 -44
- langchain_core/callbacks/manager.py +436 -513
- langchain_core/callbacks/stdout.py +29 -30
- langchain_core/callbacks/streaming_stdout.py +32 -32
- langchain_core/callbacks/usage.py +60 -57
- langchain_core/chat_history.py +53 -68
- langchain_core/document_loaders/base.py +27 -25
- langchain_core/document_loaders/blob_loaders.py +1 -1
- langchain_core/document_loaders/langsmith.py +44 -48
- langchain_core/documents/__init__.py +23 -3
- langchain_core/documents/base.py +98 -90
- langchain_core/documents/compressor.py +10 -10
- langchain_core/documents/transformers.py +34 -35
- langchain_core/embeddings/fake.py +50 -54
- langchain_core/example_selectors/length_based.py +1 -1
- langchain_core/example_selectors/semantic_similarity.py +28 -32
- langchain_core/exceptions.py +21 -20
- langchain_core/globals.py +3 -151
- langchain_core/indexing/__init__.py +1 -1
- langchain_core/indexing/api.py +121 -126
- langchain_core/indexing/base.py +73 -75
- langchain_core/indexing/in_memory.py +4 -6
- langchain_core/language_models/__init__.py +14 -29
- langchain_core/language_models/_utils.py +58 -61
- langchain_core/language_models/base.py +53 -162
- langchain_core/language_models/chat_models.py +298 -387
- langchain_core/language_models/fake.py +11 -11
- langchain_core/language_models/fake_chat_models.py +42 -36
- langchain_core/language_models/llms.py +125 -235
- langchain_core/load/dump.py +9 -12
- langchain_core/load/load.py +18 -28
- langchain_core/load/mapping.py +2 -4
- langchain_core/load/serializable.py +42 -40
- langchain_core/messages/__init__.py +10 -16
- langchain_core/messages/ai.py +148 -148
- langchain_core/messages/base.py +58 -52
- langchain_core/messages/block_translators/__init__.py +27 -17
- langchain_core/messages/block_translators/anthropic.py +6 -6
- langchain_core/messages/block_translators/bedrock_converse.py +5 -5
- langchain_core/messages/block_translators/google_genai.py +505 -20
- langchain_core/messages/block_translators/google_vertexai.py +4 -32
- langchain_core/messages/block_translators/groq.py +117 -21
- langchain_core/messages/block_translators/langchain_v0.py +5 -5
- langchain_core/messages/block_translators/openai.py +11 -11
- langchain_core/messages/chat.py +2 -6
- langchain_core/messages/content.py +337 -328
- langchain_core/messages/function.py +6 -10
- langchain_core/messages/human.py +24 -31
- langchain_core/messages/modifier.py +2 -2
- langchain_core/messages/system.py +19 -29
- langchain_core/messages/tool.py +74 -90
- langchain_core/messages/utils.py +474 -504
- langchain_core/output_parsers/__init__.py +13 -10
- langchain_core/output_parsers/base.py +61 -61
- langchain_core/output_parsers/format_instructions.py +9 -4
- langchain_core/output_parsers/json.py +12 -10
- langchain_core/output_parsers/list.py +21 -23
- langchain_core/output_parsers/openai_functions.py +49 -47
- langchain_core/output_parsers/openai_tools.py +16 -21
- langchain_core/output_parsers/pydantic.py +13 -14
- langchain_core/output_parsers/string.py +5 -5
- langchain_core/output_parsers/transform.py +15 -17
- langchain_core/output_parsers/xml.py +35 -34
- langchain_core/outputs/__init__.py +1 -1
- langchain_core/outputs/chat_generation.py +18 -18
- langchain_core/outputs/chat_result.py +1 -3
- langchain_core/outputs/generation.py +10 -11
- langchain_core/outputs/llm_result.py +10 -10
- langchain_core/prompt_values.py +11 -17
- langchain_core/prompts/__init__.py +3 -27
- langchain_core/prompts/base.py +48 -56
- langchain_core/prompts/chat.py +275 -325
- langchain_core/prompts/dict.py +5 -5
- langchain_core/prompts/few_shot.py +81 -88
- langchain_core/prompts/few_shot_with_templates.py +11 -13
- langchain_core/prompts/image.py +12 -14
- langchain_core/prompts/loading.py +4 -6
- langchain_core/prompts/message.py +3 -3
- langchain_core/prompts/prompt.py +24 -39
- langchain_core/prompts/string.py +26 -10
- langchain_core/prompts/structured.py +49 -53
- langchain_core/rate_limiters.py +51 -60
- langchain_core/retrievers.py +61 -198
- langchain_core/runnables/base.py +1478 -1630
- langchain_core/runnables/branch.py +53 -57
- langchain_core/runnables/config.py +72 -89
- langchain_core/runnables/configurable.py +120 -137
- langchain_core/runnables/fallbacks.py +83 -79
- langchain_core/runnables/graph.py +91 -97
- langchain_core/runnables/graph_ascii.py +27 -28
- langchain_core/runnables/graph_mermaid.py +38 -50
- langchain_core/runnables/graph_png.py +15 -16
- langchain_core/runnables/history.py +135 -148
- langchain_core/runnables/passthrough.py +124 -150
- langchain_core/runnables/retry.py +46 -51
- langchain_core/runnables/router.py +25 -30
- langchain_core/runnables/schema.py +75 -80
- langchain_core/runnables/utils.py +60 -67
- langchain_core/stores.py +85 -121
- langchain_core/structured_query.py +8 -8
- langchain_core/sys_info.py +27 -29
- langchain_core/tools/__init__.py +1 -14
- langchain_core/tools/base.py +285 -229
- langchain_core/tools/convert.py +160 -155
- langchain_core/tools/render.py +10 -10
- langchain_core/tools/retriever.py +12 -11
- langchain_core/tools/simple.py +19 -24
- langchain_core/tools/structured.py +32 -39
- langchain_core/tracers/__init__.py +1 -9
- langchain_core/tracers/base.py +97 -99
- langchain_core/tracers/context.py +29 -52
- langchain_core/tracers/core.py +49 -53
- langchain_core/tracers/evaluation.py +11 -11
- langchain_core/tracers/event_stream.py +65 -64
- langchain_core/tracers/langchain.py +21 -21
- langchain_core/tracers/log_stream.py +45 -45
- langchain_core/tracers/memory_stream.py +3 -3
- langchain_core/tracers/root_listeners.py +16 -16
- langchain_core/tracers/run_collector.py +2 -4
- langchain_core/tracers/schemas.py +0 -129
- langchain_core/tracers/stdout.py +3 -3
- langchain_core/utils/__init__.py +1 -4
- langchain_core/utils/_merge.py +2 -2
- langchain_core/utils/aiter.py +57 -61
- langchain_core/utils/env.py +9 -9
- langchain_core/utils/function_calling.py +89 -186
- langchain_core/utils/html.py +7 -8
- langchain_core/utils/input.py +6 -6
- langchain_core/utils/interactive_env.py +1 -1
- langchain_core/utils/iter.py +36 -40
- langchain_core/utils/json.py +4 -3
- langchain_core/utils/json_schema.py +9 -9
- langchain_core/utils/mustache.py +8 -10
- langchain_core/utils/pydantic.py +33 -35
- langchain_core/utils/strings.py +6 -9
- langchain_core/utils/usage.py +1 -1
- langchain_core/utils/utils.py +66 -62
- langchain_core/vectorstores/base.py +182 -216
- langchain_core/vectorstores/in_memory.py +101 -176
- langchain_core/vectorstores/utils.py +5 -5
- langchain_core/version.py +1 -1
- langchain_core-1.0.3.dist-info/METADATA +69 -0
- langchain_core-1.0.3.dist-info/RECORD +172 -0
- {langchain_core-1.0.0a5.dist-info → langchain_core-1.0.3.dist-info}/WHEEL +1 -1
- langchain_core/memory.py +0 -120
- langchain_core/messages/block_translators/ollama.py +0 -47
- langchain_core/prompts/pipeline.py +0 -138
- langchain_core/pydantic_v1/__init__.py +0 -30
- langchain_core/pydantic_v1/dataclasses.py +0 -23
- langchain_core/pydantic_v1/main.py +0 -23
- langchain_core/tracers/langchain_v1.py +0 -31
- langchain_core/utils/loading.py +0 -35
- langchain_core-1.0.0a5.dist-info/METADATA +0 -77
- langchain_core-1.0.0a5.dist-info/RECORD +0 -181
- langchain_core-1.0.0a5.dist-info/entry_points.txt +0 -4
langchain_core/globals.py
CHANGED
|
@@ -1,18 +1,10 @@
|
|
|
1
1
|
"""Global values and configuration that apply to all of LangChain."""
|
|
2
2
|
|
|
3
|
-
import warnings
|
|
4
3
|
from typing import TYPE_CHECKING, Optional
|
|
5
4
|
|
|
6
5
|
if TYPE_CHECKING:
|
|
7
6
|
from langchain_core.caches import BaseCache
|
|
8
7
|
|
|
9
|
-
try:
|
|
10
|
-
import langchain # type: ignore[import-not-found]
|
|
11
|
-
|
|
12
|
-
_HAS_LANGCHAIN = True
|
|
13
|
-
except ImportError:
|
|
14
|
-
_HAS_LANGCHAIN = False
|
|
15
|
-
|
|
16
8
|
|
|
17
9
|
# DO NOT USE THESE VALUES DIRECTLY!
|
|
18
10
|
# Use them only via `get_<X>()` and `set_<X>()` below,
|
|
@@ -29,26 +21,6 @@ def set_verbose(value: bool) -> None: # noqa: FBT001
|
|
|
29
21
|
Args:
|
|
30
22
|
value: The new value for the `verbose` global setting.
|
|
31
23
|
"""
|
|
32
|
-
if _HAS_LANGCHAIN:
|
|
33
|
-
# We're about to run some deprecated code, don't report warnings from it.
|
|
34
|
-
# The user called the correct (non-deprecated) code path and shouldn't get
|
|
35
|
-
# warnings.
|
|
36
|
-
with warnings.catch_warnings():
|
|
37
|
-
warnings.filterwarnings(
|
|
38
|
-
"ignore",
|
|
39
|
-
message=(
|
|
40
|
-
"Importing verbose from langchain root module "
|
|
41
|
-
"is no longer supported"
|
|
42
|
-
),
|
|
43
|
-
)
|
|
44
|
-
# N.B.: This is a workaround for an unfortunate quirk of Python's
|
|
45
|
-
# module-level `__getattr__()` implementation:
|
|
46
|
-
# https://github.com/langchain-ai/langchain/pull/11311#issuecomment-1743780004
|
|
47
|
-
#
|
|
48
|
-
# Remove it once `langchain.verbose` is no longer supported, and once all
|
|
49
|
-
# users have migrated to using `set_verbose()` here.
|
|
50
|
-
langchain.verbose = value
|
|
51
|
-
|
|
52
24
|
global _verbose # noqa: PLW0603
|
|
53
25
|
_verbose = value
|
|
54
26
|
|
|
@@ -59,35 +31,7 @@ def get_verbose() -> bool:
|
|
|
59
31
|
Returns:
|
|
60
32
|
The value of the `verbose` global setting.
|
|
61
33
|
"""
|
|
62
|
-
|
|
63
|
-
# We're about to run some deprecated code, don't report warnings from it.
|
|
64
|
-
# The user called the correct (non-deprecated) code path and shouldn't get
|
|
65
|
-
# warnings.
|
|
66
|
-
with warnings.catch_warnings():
|
|
67
|
-
warnings.filterwarnings(
|
|
68
|
-
"ignore",
|
|
69
|
-
message=(
|
|
70
|
-
".*Importing verbose from langchain root module "
|
|
71
|
-
"is no longer supported"
|
|
72
|
-
),
|
|
73
|
-
)
|
|
74
|
-
# N.B.: This is a workaround for an unfortunate quirk of Python's
|
|
75
|
-
# module-level `__getattr__()` implementation:
|
|
76
|
-
# https://github.com/langchain-ai/langchain/pull/11311#issuecomment-1743780004
|
|
77
|
-
#
|
|
78
|
-
# Remove it once `langchain.verbose` is no longer supported, and once all
|
|
79
|
-
# users have migrated to using `set_verbose()` here.
|
|
80
|
-
#
|
|
81
|
-
# In the meantime, the `verbose` setting is considered True if either the
|
|
82
|
-
# old or the new value are True. This accommodates users who haven't
|
|
83
|
-
# migrated to using `set_verbose()` yet. Those users are getting
|
|
84
|
-
# deprecation warnings directing them to use `set_verbose()` when they
|
|
85
|
-
# import `langchain.verbose`.
|
|
86
|
-
old_verbose = langchain.verbose
|
|
87
|
-
else:
|
|
88
|
-
old_verbose = False
|
|
89
|
-
|
|
90
|
-
return _verbose or old_verbose
|
|
34
|
+
return _verbose
|
|
91
35
|
|
|
92
36
|
|
|
93
37
|
def set_debug(value: bool) -> None: # noqa: FBT001
|
|
@@ -96,24 +40,6 @@ def set_debug(value: bool) -> None: # noqa: FBT001
|
|
|
96
40
|
Args:
|
|
97
41
|
value: The new value for the `debug` global setting.
|
|
98
42
|
"""
|
|
99
|
-
if _HAS_LANGCHAIN:
|
|
100
|
-
# We're about to run some deprecated code, don't report warnings from it.
|
|
101
|
-
# The user called the correct (non-deprecated) code path and shouldn't get
|
|
102
|
-
# warnings.
|
|
103
|
-
with warnings.catch_warnings():
|
|
104
|
-
warnings.filterwarnings(
|
|
105
|
-
"ignore",
|
|
106
|
-
message="Importing debug from langchain root module "
|
|
107
|
-
"is no longer supported",
|
|
108
|
-
)
|
|
109
|
-
# N.B.: This is a workaround for an unfortunate quirk of Python's
|
|
110
|
-
# module-level `__getattr__()` implementation:
|
|
111
|
-
# https://github.com/langchain-ai/langchain/pull/11311#issuecomment-1743780004
|
|
112
|
-
#
|
|
113
|
-
# Remove it once `langchain.debug` is no longer supported, and once all
|
|
114
|
-
# users have migrated to using `set_debug()` here.
|
|
115
|
-
langchain.debug = value
|
|
116
|
-
|
|
117
43
|
global _debug # noqa: PLW0603
|
|
118
44
|
_debug = value
|
|
119
45
|
|
|
@@ -124,32 +50,7 @@ def get_debug() -> bool:
|
|
|
124
50
|
Returns:
|
|
125
51
|
The value of the `debug` global setting.
|
|
126
52
|
"""
|
|
127
|
-
|
|
128
|
-
# We're about to run some deprecated code, don't report warnings from it.
|
|
129
|
-
# The user called the correct (non-deprecated) code path and shouldn't get
|
|
130
|
-
# warnings.
|
|
131
|
-
with warnings.catch_warnings():
|
|
132
|
-
warnings.filterwarnings(
|
|
133
|
-
"ignore",
|
|
134
|
-
message="Importing debug from langchain root module "
|
|
135
|
-
"is no longer supported",
|
|
136
|
-
)
|
|
137
|
-
# N.B.: This is a workaround for an unfortunate quirk of Python's
|
|
138
|
-
# module-level `__getattr__()` implementation:
|
|
139
|
-
# https://github.com/langchain-ai/langchain/pull/11311#issuecomment-1743780004
|
|
140
|
-
#
|
|
141
|
-
# Remove it once `langchain.debug` is no longer supported, and once all
|
|
142
|
-
# users have migrated to using `set_debug()` here.
|
|
143
|
-
#
|
|
144
|
-
# In the meantime, the `debug` setting is considered True if either the old
|
|
145
|
-
# or the new value are True. This accommodates users who haven't migrated
|
|
146
|
-
# to using `set_debug()` yet. Those users are getting deprecation warnings
|
|
147
|
-
# directing them to use `set_debug()` when they import `langchain.debug`.
|
|
148
|
-
old_debug = langchain.debug
|
|
149
|
-
else:
|
|
150
|
-
old_debug = False
|
|
151
|
-
|
|
152
|
-
return _debug or old_debug
|
|
53
|
+
return _debug
|
|
153
54
|
|
|
154
55
|
|
|
155
56
|
def set_llm_cache(value: Optional["BaseCache"]) -> None:
|
|
@@ -158,26 +59,6 @@ def set_llm_cache(value: Optional["BaseCache"]) -> None:
|
|
|
158
59
|
Args:
|
|
159
60
|
value: The new LLM cache to use. If `None`, the LLM cache is disabled.
|
|
160
61
|
"""
|
|
161
|
-
if _HAS_LANGCHAIN:
|
|
162
|
-
# We're about to run some deprecated code, don't report warnings from it.
|
|
163
|
-
# The user called the correct (non-deprecated) code path and shouldn't get
|
|
164
|
-
# warnings.
|
|
165
|
-
with warnings.catch_warnings():
|
|
166
|
-
warnings.filterwarnings(
|
|
167
|
-
"ignore",
|
|
168
|
-
message=(
|
|
169
|
-
"Importing llm_cache from langchain root module "
|
|
170
|
-
"is no longer supported"
|
|
171
|
-
),
|
|
172
|
-
)
|
|
173
|
-
# N.B.: This is a workaround for an unfortunate quirk of Python's
|
|
174
|
-
# module-level `__getattr__()` implementation:
|
|
175
|
-
# https://github.com/langchain-ai/langchain/pull/11311#issuecomment-1743780004
|
|
176
|
-
#
|
|
177
|
-
# Remove it once `langchain.llm_cache` is no longer supported, and
|
|
178
|
-
# once all users have migrated to using `set_llm_cache()` here.
|
|
179
|
-
langchain.llm_cache = value
|
|
180
|
-
|
|
181
62
|
global _llm_cache # noqa: PLW0603
|
|
182
63
|
_llm_cache = value
|
|
183
64
|
|
|
@@ -188,33 +69,4 @@ def get_llm_cache() -> Optional["BaseCache"]:
|
|
|
188
69
|
Returns:
|
|
189
70
|
The value of the `llm_cache` global setting.
|
|
190
71
|
"""
|
|
191
|
-
|
|
192
|
-
# We're about to run some deprecated code, don't report warnings from it.
|
|
193
|
-
# The user called the correct (non-deprecated) code path and shouldn't get
|
|
194
|
-
# warnings.
|
|
195
|
-
with warnings.catch_warnings():
|
|
196
|
-
warnings.filterwarnings(
|
|
197
|
-
"ignore",
|
|
198
|
-
message=(
|
|
199
|
-
"Importing llm_cache from langchain root module "
|
|
200
|
-
"is no longer supported"
|
|
201
|
-
),
|
|
202
|
-
)
|
|
203
|
-
# N.B.: This is a workaround for an unfortunate quirk of Python's
|
|
204
|
-
# module-level `__getattr__()` implementation:
|
|
205
|
-
# https://github.com/langchain-ai/langchain/pull/11311#issuecomment-1743780004
|
|
206
|
-
#
|
|
207
|
-
# Remove it once `langchain.llm_cache` is no longer supported, and
|
|
208
|
-
# once all users have migrated to using `set_llm_cache()` here.
|
|
209
|
-
#
|
|
210
|
-
# In the meantime, the `llm_cache` setting returns whichever of
|
|
211
|
-
# its two backing sources is truthy (not `None` and non-empty),
|
|
212
|
-
# or the old value if both are falsy. This accommodates users
|
|
213
|
-
# who haven't migrated to using `set_llm_cache()` yet.
|
|
214
|
-
# Those users are getting deprecation warnings directing them
|
|
215
|
-
# to use `set_llm_cache()` when they import `langchain.llm_cache`.
|
|
216
|
-
old_llm_cache = langchain.llm_cache
|
|
217
|
-
else:
|
|
218
|
-
old_llm_cache = None
|
|
219
|
-
|
|
220
|
-
return _llm_cache or old_llm_cache
|
|
72
|
+
return _llm_cache
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"""Code to help indexing data into a vectorstore.
|
|
2
2
|
|
|
3
3
|
This package contains helper logic to help deal with indexing data into
|
|
4
|
-
a
|
|
4
|
+
a `VectorStore` while avoiding duplicated content and over-writing content
|
|
5
5
|
if it's unchanged.
|
|
6
6
|
"""
|
|
7
7
|
|