langchain-core 0.3.75__py3-none-any.whl → 0.3.76__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-core might be problematic. Click here for more details.
- langchain_core/_api/beta_decorator.py +17 -40
- langchain_core/_api/deprecation.py +19 -6
- langchain_core/_api/path.py +19 -2
- langchain_core/_import_utils.py +7 -0
- langchain_core/agents.py +10 -6
- langchain_core/beta/runnables/context.py +1 -2
- langchain_core/callbacks/base.py +11 -4
- langchain_core/callbacks/manager.py +81 -69
- langchain_core/callbacks/usage.py +4 -2
- langchain_core/chat_history.py +4 -6
- langchain_core/document_loaders/base.py +34 -9
- langchain_core/document_loaders/langsmith.py +3 -0
- langchain_core/documents/base.py +35 -10
- langchain_core/documents/transformers.py +4 -2
- langchain_core/embeddings/fake.py +8 -5
- langchain_core/env.py +2 -3
- langchain_core/example_selectors/base.py +12 -0
- langchain_core/exceptions.py +7 -0
- langchain_core/globals.py +17 -28
- langchain_core/indexing/api.py +56 -44
- langchain_core/indexing/base.py +5 -8
- langchain_core/indexing/in_memory.py +23 -3
- langchain_core/language_models/__init__.py +3 -2
- langchain_core/language_models/base.py +31 -20
- langchain_core/language_models/chat_models.py +94 -25
- langchain_core/language_models/fake_chat_models.py +5 -7
- langchain_core/language_models/llms.py +49 -17
- langchain_core/load/dump.py +2 -3
- langchain_core/load/load.py +15 -1
- langchain_core/load/serializable.py +38 -43
- langchain_core/memory.py +7 -3
- langchain_core/messages/ai.py +36 -19
- langchain_core/messages/base.py +13 -6
- langchain_core/messages/content_blocks.py +23 -2
- langchain_core/messages/human.py +2 -6
- langchain_core/messages/system.py +2 -6
- langchain_core/messages/tool.py +33 -13
- langchain_core/messages/utils.py +182 -72
- langchain_core/output_parsers/base.py +5 -2
- langchain_core/output_parsers/json.py +4 -4
- langchain_core/output_parsers/list.py +7 -22
- langchain_core/output_parsers/openai_functions.py +3 -0
- langchain_core/output_parsers/openai_tools.py +6 -1
- langchain_core/output_parsers/pydantic.py +4 -0
- langchain_core/output_parsers/string.py +5 -1
- langchain_core/output_parsers/xml.py +19 -19
- langchain_core/outputs/chat_generation.py +18 -7
- langchain_core/outputs/generation.py +14 -3
- langchain_core/outputs/llm_result.py +8 -1
- langchain_core/prompt_values.py +10 -4
- langchain_core/prompts/base.py +4 -9
- langchain_core/prompts/chat.py +87 -58
- langchain_core/prompts/dict.py +16 -8
- langchain_core/prompts/few_shot.py +9 -11
- langchain_core/prompts/few_shot_with_templates.py +5 -1
- langchain_core/prompts/image.py +12 -5
- langchain_core/prompts/message.py +5 -6
- langchain_core/prompts/pipeline.py +13 -8
- langchain_core/prompts/prompt.py +22 -8
- langchain_core/prompts/string.py +18 -10
- langchain_core/prompts/structured.py +7 -2
- langchain_core/rate_limiters.py +2 -2
- langchain_core/retrievers.py +7 -6
- langchain_core/runnables/base.py +402 -183
- langchain_core/runnables/branch.py +14 -19
- langchain_core/runnables/config.py +9 -15
- langchain_core/runnables/configurable.py +34 -19
- langchain_core/runnables/fallbacks.py +20 -13
- langchain_core/runnables/graph.py +44 -37
- langchain_core/runnables/graph_ascii.py +40 -17
- langchain_core/runnables/graph_mermaid.py +27 -15
- langchain_core/runnables/graph_png.py +27 -31
- langchain_core/runnables/history.py +55 -58
- langchain_core/runnables/passthrough.py +44 -21
- langchain_core/runnables/retry.py +9 -5
- langchain_core/runnables/router.py +9 -8
- langchain_core/runnables/schema.py +2 -0
- langchain_core/runnables/utils.py +51 -89
- langchain_core/stores.py +13 -25
- langchain_core/sys_info.py +9 -8
- langchain_core/tools/base.py +30 -23
- langchain_core/tools/convert.py +24 -13
- langchain_core/tools/simple.py +35 -3
- langchain_core/tools/structured.py +25 -2
- langchain_core/tracers/base.py +2 -2
- langchain_core/tracers/context.py +5 -1
- langchain_core/tracers/core.py +109 -39
- langchain_core/tracers/evaluation.py +22 -26
- langchain_core/tracers/event_stream.py +40 -27
- langchain_core/tracers/langchain.py +12 -3
- langchain_core/tracers/langchain_v1.py +10 -2
- langchain_core/tracers/log_stream.py +56 -17
- langchain_core/tracers/root_listeners.py +4 -20
- langchain_core/tracers/run_collector.py +6 -16
- langchain_core/tracers/schemas.py +5 -1
- langchain_core/utils/aiter.py +14 -6
- langchain_core/utils/env.py +3 -0
- langchain_core/utils/function_calling.py +37 -20
- langchain_core/utils/interactive_env.py +6 -2
- langchain_core/utils/iter.py +11 -3
- langchain_core/utils/json.py +5 -2
- langchain_core/utils/json_schema.py +15 -5
- langchain_core/utils/loading.py +5 -1
- langchain_core/utils/mustache.py +24 -15
- langchain_core/utils/pydantic.py +32 -4
- langchain_core/utils/utils.py +24 -8
- langchain_core/vectorstores/base.py +7 -20
- langchain_core/vectorstores/in_memory.py +18 -12
- langchain_core/vectorstores/utils.py +18 -12
- langchain_core/version.py +1 -1
- langchain_core-0.3.76.dist-info/METADATA +77 -0
- langchain_core-0.3.76.dist-info/RECORD +174 -0
- langchain_core-0.3.75.dist-info/METADATA +0 -106
- langchain_core-0.3.75.dist-info/RECORD +0 -174
- {langchain_core-0.3.75.dist-info → langchain_core-0.3.76.dist-info}/WHEEL +0 -0
- {langchain_core-0.3.75.dist-info → langchain_core-0.3.76.dist-info}/entry_points.txt +0 -0
|
@@ -27,6 +27,13 @@ if TYPE_CHECKING:
|
|
|
27
27
|
from langchain_core.embeddings import Embeddings
|
|
28
28
|
from langchain_core.indexing import UpsertResponse
|
|
29
29
|
|
|
30
|
+
try:
|
|
31
|
+
import numpy as np
|
|
32
|
+
|
|
33
|
+
_HAS_NUMPY = True
|
|
34
|
+
except ImportError:
|
|
35
|
+
_HAS_NUMPY = False
|
|
36
|
+
|
|
30
37
|
|
|
31
38
|
class InMemoryVectorStore(VectorStore):
|
|
32
39
|
"""In-memory vector store implementation.
|
|
@@ -83,7 +90,7 @@ class InMemoryVectorStore(VectorStore):
|
|
|
83
90
|
Search:
|
|
84
91
|
.. code-block:: python
|
|
85
92
|
|
|
86
|
-
results = vector_store.similarity_search(query="thud",k=1)
|
|
93
|
+
results = vector_store.similarity_search(query="thud", k=1)
|
|
87
94
|
for doc in results:
|
|
88
95
|
print(f"* {doc.page_content} [{doc.metadata}]")
|
|
89
96
|
|
|
@@ -97,6 +104,7 @@ class InMemoryVectorStore(VectorStore):
|
|
|
97
104
|
def _filter_function(doc: Document) -> bool:
|
|
98
105
|
return doc.metadata.get("bar") == "baz"
|
|
99
106
|
|
|
107
|
+
|
|
100
108
|
results = vector_store.similarity_search(
|
|
101
109
|
query="thud", k=1, filter=_filter_function
|
|
102
110
|
)
|
|
@@ -111,9 +119,7 @@ class InMemoryVectorStore(VectorStore):
|
|
|
111
119
|
Search with score:
|
|
112
120
|
.. code-block:: python
|
|
113
121
|
|
|
114
|
-
results = vector_store.similarity_search_with_score(
|
|
115
|
-
query="qux", k=1
|
|
116
|
-
)
|
|
122
|
+
results = vector_store.similarity_search_with_score(query="qux", k=1)
|
|
117
123
|
for doc, score in results:
|
|
118
124
|
print(f"* [SIM={score:3f}] {doc.page_content} [{doc.metadata}]")
|
|
119
125
|
|
|
@@ -135,7 +141,7 @@ class InMemoryVectorStore(VectorStore):
|
|
|
135
141
|
|
|
136
142
|
# search with score
|
|
137
143
|
results = await vector_store.asimilarity_search_with_score(query="qux", k=1)
|
|
138
|
-
for doc,score in results:
|
|
144
|
+
for doc, score in results:
|
|
139
145
|
print(f"* [SIM={score:3f}] {doc.page_content} [{doc.metadata}]")
|
|
140
146
|
|
|
141
147
|
.. code-block:: none
|
|
@@ -190,7 +196,6 @@ class InMemoryVectorStore(VectorStore):
|
|
|
190
196
|
ids: Optional[list[str]] = None,
|
|
191
197
|
**kwargs: Any,
|
|
192
198
|
) -> list[str]:
|
|
193
|
-
"""Add documents to the store."""
|
|
194
199
|
texts = [doc.page_content for doc in documents]
|
|
195
200
|
vectors = self.embedding.embed_documents(texts)
|
|
196
201
|
|
|
@@ -224,7 +229,6 @@ class InMemoryVectorStore(VectorStore):
|
|
|
224
229
|
async def aadd_documents(
|
|
225
230
|
self, documents: list[Document], ids: Optional[list[str]] = None, **kwargs: Any
|
|
226
231
|
) -> list[str]:
|
|
227
|
-
"""Add documents to the store."""
|
|
228
232
|
texts = [doc.page_content for doc in documents]
|
|
229
233
|
vectors = await self.embedding.aembed_documents(texts)
|
|
230
234
|
|
|
@@ -372,7 +376,11 @@ class InMemoryVectorStore(VectorStore):
|
|
|
372
376
|
docs = [
|
|
373
377
|
doc
|
|
374
378
|
for doc in docs
|
|
375
|
-
if filter(
|
|
379
|
+
if filter(
|
|
380
|
+
Document(
|
|
381
|
+
id=doc["id"], page_content=doc["text"], metadata=doc["metadata"]
|
|
382
|
+
)
|
|
383
|
+
)
|
|
376
384
|
]
|
|
377
385
|
|
|
378
386
|
if not docs:
|
|
@@ -499,14 +507,12 @@ class InMemoryVectorStore(VectorStore):
|
|
|
499
507
|
filter=filter,
|
|
500
508
|
)
|
|
501
509
|
|
|
502
|
-
|
|
503
|
-
import numpy as np
|
|
504
|
-
except ImportError as e:
|
|
510
|
+
if not _HAS_NUMPY:
|
|
505
511
|
msg = (
|
|
506
512
|
"numpy must be installed to use max_marginal_relevance_search "
|
|
507
513
|
"pip install numpy"
|
|
508
514
|
)
|
|
509
|
-
raise ImportError(msg)
|
|
515
|
+
raise ImportError(msg)
|
|
510
516
|
|
|
511
517
|
mmr_chosen_indices = maximal_marginal_relevance(
|
|
512
518
|
np.array(embedding, dtype=np.float32),
|
|
@@ -10,9 +10,21 @@ import logging
|
|
|
10
10
|
import warnings
|
|
11
11
|
from typing import TYPE_CHECKING, Union
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
try:
|
|
14
14
|
import numpy as np
|
|
15
15
|
|
|
16
|
+
_HAS_NUMPY = True
|
|
17
|
+
except ImportError:
|
|
18
|
+
_HAS_NUMPY = False
|
|
19
|
+
|
|
20
|
+
try:
|
|
21
|
+
import simsimd as simd # type: ignore[import-not-found]
|
|
22
|
+
|
|
23
|
+
_HAS_SIMSIMD = True
|
|
24
|
+
except ImportError:
|
|
25
|
+
_HAS_SIMSIMD = False
|
|
26
|
+
|
|
27
|
+
if TYPE_CHECKING:
|
|
16
28
|
Matrix = Union[list[list[float]], list[np.ndarray], np.ndarray]
|
|
17
29
|
|
|
18
30
|
logger = logging.getLogger(__name__)
|
|
@@ -33,14 +45,12 @@ def _cosine_similarity(x: Matrix, y: Matrix) -> np.ndarray:
|
|
|
33
45
|
ValueError: If the number of columns in X and Y are not the same.
|
|
34
46
|
ImportError: If numpy is not installed.
|
|
35
47
|
"""
|
|
36
|
-
|
|
37
|
-
import numpy as np
|
|
38
|
-
except ImportError as e:
|
|
48
|
+
if not _HAS_NUMPY:
|
|
39
49
|
msg = (
|
|
40
50
|
"cosine_similarity requires numpy to be installed. "
|
|
41
51
|
"Please install numpy with `pip install numpy`."
|
|
42
52
|
)
|
|
43
|
-
raise ImportError(msg)
|
|
53
|
+
raise ImportError(msg)
|
|
44
54
|
|
|
45
55
|
if len(x) == 0 or len(y) == 0:
|
|
46
56
|
return np.array([[]])
|
|
@@ -70,9 +80,7 @@ def _cosine_similarity(x: Matrix, y: Matrix) -> np.ndarray:
|
|
|
70
80
|
f"and Y has shape {y.shape}."
|
|
71
81
|
)
|
|
72
82
|
raise ValueError(msg)
|
|
73
|
-
|
|
74
|
-
import simsimd as simd # type: ignore[import-not-found]
|
|
75
|
-
except ImportError:
|
|
83
|
+
if not _HAS_SIMSIMD:
|
|
76
84
|
logger.debug(
|
|
77
85
|
"Unable to import simsimd, defaulting to NumPy implementation. If you want "
|
|
78
86
|
"to use simsimd please install with `pip install simsimd`."
|
|
@@ -113,14 +121,12 @@ def maximal_marginal_relevance(
|
|
|
113
121
|
Raises:
|
|
114
122
|
ImportError: If numpy is not installed.
|
|
115
123
|
"""
|
|
116
|
-
|
|
117
|
-
import numpy as np
|
|
118
|
-
except ImportError as e:
|
|
124
|
+
if not _HAS_NUMPY:
|
|
119
125
|
msg = (
|
|
120
126
|
"maximal_marginal_relevance requires numpy to be installed. "
|
|
121
127
|
"Please install numpy with `pip install numpy`."
|
|
122
128
|
)
|
|
123
|
-
raise ImportError(msg)
|
|
129
|
+
raise ImportError(msg)
|
|
124
130
|
|
|
125
131
|
if min(k, len(embedding_list)) <= 0:
|
|
126
132
|
return []
|
langchain_core/version.py
CHANGED
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: langchain-core
|
|
3
|
+
Version: 0.3.76
|
|
4
|
+
Summary: Building applications with LLMs through composability
|
|
5
|
+
License: MIT
|
|
6
|
+
Project-URL: Source Code, https://github.com/langchain-ai/langchain/tree/master/libs/core
|
|
7
|
+
Project-URL: Release Notes, https://github.com/langchain-ai/langchain/releases?q=tag%3A%22langchain-core%3D%3D0%22&expanded=true
|
|
8
|
+
Project-URL: repository, https://github.com/langchain-ai/langchain
|
|
9
|
+
Requires-Python: >=3.9
|
|
10
|
+
Requires-Dist: langsmith>=0.3.45
|
|
11
|
+
Requires-Dist: tenacity!=8.4.0,<10.0.0,>=8.1.0
|
|
12
|
+
Requires-Dist: jsonpatch<2.0,>=1.33
|
|
13
|
+
Requires-Dist: PyYAML>=5.3
|
|
14
|
+
Requires-Dist: typing-extensions>=4.7
|
|
15
|
+
Requires-Dist: packaging>=23.2
|
|
16
|
+
Requires-Dist: pydantic>=2.7.4
|
|
17
|
+
Description-Content-Type: text/markdown
|
|
18
|
+
|
|
19
|
+
# 🦜🍎️ LangChain Core
|
|
20
|
+
|
|
21
|
+
[](https://opensource.org/licenses/MIT)
|
|
22
|
+
[](https://pypistats.org/packages/langchain-core)
|
|
23
|
+
|
|
24
|
+
## Quick Install
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
pip install langchain-core
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## What is it?
|
|
31
|
+
|
|
32
|
+
LangChain Core contains the base abstractions that power the the LangChain ecosystem.
|
|
33
|
+
|
|
34
|
+
These abstractions are designed to be as modular and simple as possible.
|
|
35
|
+
|
|
36
|
+
The benefit of having these abstractions is that any provider can implement the required interface and then easily be used in the rest of the LangChain ecosystem.
|
|
37
|
+
|
|
38
|
+
For full documentation see the [API reference](https://python.langchain.com/api_reference/core/index.html).
|
|
39
|
+
|
|
40
|
+
## ⛰️ Why build on top of LangChain Core?
|
|
41
|
+
|
|
42
|
+
The LangChain ecosystem is built on top of `langchain-core`. Some of the benefits:
|
|
43
|
+
|
|
44
|
+
- **Modularity**: We've designed Core around abstractions that are independent of each other, and not tied to any specific model provider.
|
|
45
|
+
- **Stability**: We are committed to a stable versioning scheme, and will communicate any breaking changes with advance notice and version bumps.
|
|
46
|
+
- **Battle-tested**: Core components have the largest install base in the LLM ecosystem, and are used in production by many companies.
|
|
47
|
+
|
|
48
|
+
## 1️⃣ Core Interface: Runnables
|
|
49
|
+
|
|
50
|
+
The concept of a `Runnable` is central to LangChain Core – it is the interface that most LangChain Core components implement, giving them
|
|
51
|
+
|
|
52
|
+
- A common invocation interface (`invoke()`, `batch()`, `stream()`, etc.)
|
|
53
|
+
- Built-in utilities for retries, fallbacks, schemas and runtime configurability
|
|
54
|
+
- Easy deployment with [LangGraph](https://github.com/langchain-ai/langgraph)
|
|
55
|
+
|
|
56
|
+
For more check out the [`Runnable` docs](https://python.langchain.com/docs/concepts/runnables/). Examples of components that implement the interface include: Chat Models, Tools, Retrievers, and Output Parsers.
|
|
57
|
+
|
|
58
|
+
## 📕 Releases & Versioning
|
|
59
|
+
|
|
60
|
+
As `langchain-core` contains the base abstractions and runtime for the whole LangChain ecosystem, we will communicate any breaking changes with advance notice and version bumps. The exception for this is anything in `langchain_core.beta`. The reason for `langchain_core.beta` is that given the rate of change of the field, being able to move quickly is still a priority, and this module is our attempt to do so.
|
|
61
|
+
|
|
62
|
+
Minor version increases will occur for:
|
|
63
|
+
|
|
64
|
+
- Breaking changes for any public interfaces NOT in `langchain_core.beta`
|
|
65
|
+
|
|
66
|
+
Patch version increases will occur for:
|
|
67
|
+
|
|
68
|
+
- Bug fixes
|
|
69
|
+
- New features
|
|
70
|
+
- Any changes to private interfaces
|
|
71
|
+
- Any changes to `langchain_core.beta`
|
|
72
|
+
|
|
73
|
+
## 💁 Contributing
|
|
74
|
+
|
|
75
|
+
As an open-source project in a rapidly developing field, we are extremely open to contributions, whether it be in the form of a new feature, improved infrastructure, or better documentation.
|
|
76
|
+
|
|
77
|
+
For detailed information on how to contribute, see the [Contributing Guide](https://python.langchain.com/docs/contributing/).
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
langchain_core-0.3.76.dist-info/METADATA,sha256=ZhBB9FyNj2n3utI8osSza8-x4fbLyMPQA5QCldNiOZM,3724
|
|
2
|
+
langchain_core-0.3.76.dist-info/WHEEL,sha256=9P2ygRxDrTJz3gsagc0Z96ukrxjr-LFBGOgv3AuKlCA,90
|
|
3
|
+
langchain_core-0.3.76.dist-info/entry_points.txt,sha256=6OYgBcLyFCUgeqLgnvMyOJxPCWzgy7se4rLPKtNonMs,34
|
|
4
|
+
langchain_core/__init__.py,sha256=TgvhxbrjCRVJwr2HddiyHvtH8W94K-uLM6-6ifNIBXo,713
|
|
5
|
+
langchain_core/_api/__init__.py,sha256=WDOMw4faVuscjDCL5ttnRQNienJP_M9vGMmJUXS6L5w,1976
|
|
6
|
+
langchain_core/_api/beta_decorator.py,sha256=LM5C32LB7_KNLfePssM2hgFRt7aPvqddf9J_TiOWIsw,8877
|
|
7
|
+
langchain_core/_api/deprecation.py,sha256=fHtx24pEGMOl20xWWtWafPL4QO7-Rt9MUrINRF1Pdqo,20952
|
|
8
|
+
langchain_core/_api/internal.py,sha256=aOZkYANu747LyWzyAk-0KE4RjdTYj18Wtlh7F9_qyPM,683
|
|
9
|
+
langchain_core/_api/path.py,sha256=raXCzfgMf6AoPo8UP6I1qHRKlIBcBuR18qMHaFyIvhU,1405
|
|
10
|
+
langchain_core/_import_utils.py,sha256=NvAiw5PLvsKCux8LcRndpbZL9m_rHkL1-iWZcNLzQMc,1458
|
|
11
|
+
langchain_core/agents.py,sha256=Z9AFByLkZp__LM_icC699Ge-8dCxPiYQNOdEqrZUiDw,8468
|
|
12
|
+
langchain_core/beta/__init__.py,sha256=8phOlCdTByvzqN1DR4CU_rvaO4SDRebKATmFKj0B5Nw,68
|
|
13
|
+
langchain_core/beta/runnables/__init__.py,sha256=KPVZTs2phF46kEB7mn0M75UeSw8nylbTZ4HYpLT0ywE,17
|
|
14
|
+
langchain_core/beta/runnables/context.py,sha256=kiaDITMNJ8en7n5H5cofFNQ74VChHRsq6VbB1s5Y9F4,13400
|
|
15
|
+
langchain_core/caches.py,sha256=d_6h0Bb0h7sLK0mrQ1BwSljJKnLBvKvoXQMVSnpcqlI,9665
|
|
16
|
+
langchain_core/callbacks/__init__.py,sha256=jXp7StVQk5GeWudGtnnkFV_L-WHCl44ESznc6-0pOVg,4347
|
|
17
|
+
langchain_core/callbacks/base.py,sha256=6A5vPF9W-0vSjZ3WBoRfpjfKApK8oS4vdAky5FByeSo,37154
|
|
18
|
+
langchain_core/callbacks/file.py,sha256=dLBuDRqeLxOBTB9k6c9KEh8dx5UgGfQ9uUF-dhiykZM,8532
|
|
19
|
+
langchain_core/callbacks/manager.py,sha256=hLyjHpS07NwlAwsgHcoM-nv7U12tyS5PTk-o7rJFJ84,90999
|
|
20
|
+
langchain_core/callbacks/stdout.py,sha256=hQ1gjpshNHGdbCS8cH6_oTc4nM8tCWzGNXrbm9dJeaY,4113
|
|
21
|
+
langchain_core/callbacks/streaming_stdout.py,sha256=92UQWxL9HBzdCpn47AF-ZE_jGkkebMn2Z_l24ndMBMI,4646
|
|
22
|
+
langchain_core/callbacks/usage.py,sha256=S2sBShC_0br6HtRB5Cow6ILOl_gX7TaDcEAge2MyjYo,5107
|
|
23
|
+
langchain_core/chat_history.py,sha256=BXJBhyRS806BXf3m6eRRHsAwC_l9mNAe0zMGxycpZQ8,8388
|
|
24
|
+
langchain_core/chat_loaders.py,sha256=b57Gl3KGPxq9gYJjetsHfJm1I6kSqi7bDE91fJJOR84,601
|
|
25
|
+
langchain_core/chat_sessions.py,sha256=YEO3ck5_wRGd3a2EnGD7M_wTvNC_4T1IVjQWekagwaM,564
|
|
26
|
+
langchain_core/document_loaders/__init__.py,sha256=DkZPp9cEVmsnz9SM1xtuefH_fGQFvA2WtpRG6iePPBs,975
|
|
27
|
+
langchain_core/document_loaders/base.py,sha256=nBv07847NrsB9EZpC0YU7Zv_Y08T7pisLREMrJwE7Bg,4666
|
|
28
|
+
langchain_core/document_loaders/blob_loaders.py,sha256=4m1k8boiwXw3z4yMYT8bnYUA-eGTPtEZyUxZvI3GbTs,1077
|
|
29
|
+
langchain_core/document_loaders/langsmith.py,sha256=QGgBhyr0uq3_84nTzuBB8Bk-DiubjuTVsfvSj-Y8RvU,5513
|
|
30
|
+
langchain_core/documents/__init__.py,sha256=KT_l-TSINKrTXldw5n57wx1yGBtJmGAGxAQL0ceQefc,850
|
|
31
|
+
langchain_core/documents/base.py,sha256=qxf8E06ga9kblxvTECyNXViHoLx1_MWPTM92ATSWlX8,10598
|
|
32
|
+
langchain_core/documents/compressor.py,sha256=91aCQC3W4XMoFXtAmlOCSPb8pSdrirY6Lg8ZLBxTX4s,2001
|
|
33
|
+
langchain_core/documents/transformers.py,sha256=lL0BdmL8xkNO_NqY3vqaLPhPdzte0BUKVoG2IMJqe2s,2584
|
|
34
|
+
langchain_core/embeddings/__init__.py,sha256=0SfcdkVSSXmTFXznUyeZq_b1ajpwIGDueGAAfwyMpUY,774
|
|
35
|
+
langchain_core/embeddings/embeddings.py,sha256=u50T2VxLLyfGBCKcVtWfSiZrtKua8sOSHwSSHRKtcno,2405
|
|
36
|
+
langchain_core/embeddings/fake.py,sha256=iEFwd3j7zGG6EUoCPK-Y9On9C3-q-Lu0Syld27UhsnQ,3954
|
|
37
|
+
langchain_core/env.py,sha256=RHExSWJ2bW-6Wxb6UyBGxU5flLoNYOAeslZ9iTjomQE,598
|
|
38
|
+
langchain_core/example_selectors/__init__.py,sha256=k8y0chtEhaHf8Y1_nZVDsb9CWDdRIWFb9U806mnbGvo,1394
|
|
39
|
+
langchain_core/example_selectors/base.py,sha256=4wRCERHak6Ci5JEKHeidQ_pbBgzQyc-vnQsz2sqBFzA,1716
|
|
40
|
+
langchain_core/example_selectors/length_based.py,sha256=VlWoGhppKrKYKRyi0qBdhq4TbD-6pDHobx3fMGWoqfY,3375
|
|
41
|
+
langchain_core/example_selectors/semantic_similarity.py,sha256=flhao1yNBnaDkM2MlwFd2m4m2dBc_IlEMnmSWV61IVE,13739
|
|
42
|
+
langchain_core/exceptions.py,sha256=JurkMF4p-DOmv7SQJqif7A-5kfKOHCcl8R_wXmMUfSE,3327
|
|
43
|
+
langchain_core/globals.py,sha256=yl9GRxC3INm6AqRplHmKjxr0bn1YWXSU34iul5dnBl8,8823
|
|
44
|
+
langchain_core/indexing/__init__.py,sha256=VOvbbBJYY_UZdMKAeJCdQdszMiAOhAo3Cbht1HEkk8g,1274
|
|
45
|
+
langchain_core/indexing/api.py,sha256=tQPaAQZ-luJb8xq6438YN3jVWViKWLSwNLVU4eDdXpA,38473
|
|
46
|
+
langchain_core/indexing/base.py,sha256=PWxwX4bH1xq8gKaVnGiNnThPRmwhoDKrJRlEotjtERo,23015
|
|
47
|
+
langchain_core/indexing/in_memory.py,sha256=YPVOGKE3d5-APCy7T0sJvSPjJJUcshSfPeCpq7BA4j0,3326
|
|
48
|
+
langchain_core/language_models/__init__.py,sha256=LBszonEJ6Zu56rVJfSWQt4Q_mr5hD-epcPvSaTClC4E,3764
|
|
49
|
+
langchain_core/language_models/_utils.py,sha256=4TS92kBO5ee4QNH68FFWhX-2uCTe8QaxTXVFMiJLXt4,4786
|
|
50
|
+
langchain_core/language_models/base.py,sha256=cvZOME14JI90NkuDw2Vr1yYx7xKap1dkXgCM8yMu31U,14566
|
|
51
|
+
langchain_core/language_models/chat_models.py,sha256=EXkeArgGkfUJl1JxVZHzdX52GCEQBRRJCOW9u-796Ec,72619
|
|
52
|
+
langchain_core/language_models/fake.py,sha256=h9LhVTkmYLXkJ1_VvsKhqYVpkQsM7eAr9geXF_IVkPs,3772
|
|
53
|
+
langchain_core/language_models/fake_chat_models.py,sha256=cihlKSiec-bDDdHAgpuejKlkXpCgKVK4zabo0eSydNg,12818
|
|
54
|
+
langchain_core/language_models/llms.py,sha256=0KNfdoTHwJv_wFoY8Ng8It0E6tt_mtMcXYuLFTqp5PQ,57887
|
|
55
|
+
langchain_core/load/__init__.py,sha256=m3_6Fk2gpYZO0xqyTnZzdQigvsYHjMariLq_L2KwJFk,1150
|
|
56
|
+
langchain_core/load/dump.py,sha256=N34h-I3VeLFzuwrYlVSY_gFx0iaZhEi72D04yxkx3cc,2654
|
|
57
|
+
langchain_core/load/load.py,sha256=eDyYNBGbfVDLGOA3p2cAOWY0rLqbf9E9qNfstw0PKDY,9729
|
|
58
|
+
langchain_core/load/mapping.py,sha256=nnFXiTdQkfdv41_wP38aWGtpp9svxW6fwVyC3LmRkok,29633
|
|
59
|
+
langchain_core/load/serializable.py,sha256=P29Coe7ZE8-13goAmAtSt0rl85fKaUd96znRQuIHG9k,11722
|
|
60
|
+
langchain_core/memory.py,sha256=bYgZGSldIa79GqpEd2m9Ve78euCq6SJatzTsHAHKosk,3693
|
|
61
|
+
langchain_core/messages/__init__.py,sha256=8H1BnLGi2oSXdIz_LWtVAwmxFvK_6_CqiDRq2jnGtw0,4253
|
|
62
|
+
langchain_core/messages/ai.py,sha256=QLYd2875WnyQ-7EBxz_PKwhyia64aZVLxP3mQbeV74M,18370
|
|
63
|
+
langchain_core/messages/base.py,sha256=tuyXQ6tXxayPkEmCFqJ9s0qH_9sbRzML16I93r2rMAY,9605
|
|
64
|
+
langchain_core/messages/chat.py,sha256=Vgk3y03F9NP-wKkXAjBDLOtrH43NpEMN2xaWRp6qhRA,2260
|
|
65
|
+
langchain_core/messages/content_blocks.py,sha256=E_AvS5yy1JHPquyKN7Wj5A7Gl9AvxOAGgR770FVhhtk,5487
|
|
66
|
+
langchain_core/messages/function.py,sha256=QO2WgKmJ5nm7QL-xXG11Fmz3qFkHm1lL0k41WjDeEZE,2157
|
|
67
|
+
langchain_core/messages/human.py,sha256=5xh31bLYeqbU3NxBaPjFNj5YzSUxPysrftx-48rW_Gc,1854
|
|
68
|
+
langchain_core/messages/modifier.py,sha256=ch0RedUM_uA7wOEJHk8mkoJSNR0Rli_32BmOfdbS1dU,894
|
|
69
|
+
langchain_core/messages/system.py,sha256=8vhHi99gjkY84ca6GhPiNyjgZ2MtaPkv6UvWUpba_qA,1666
|
|
70
|
+
langchain_core/messages/tool.py,sha256=lIgW9geAMCeSfVYjCeoq6spDAJxUG6QyAjQUydnO0yQ,12567
|
|
71
|
+
langchain_core/messages/utils.py,sha256=qYR_E3sN7EMVD1AOS-SYQOZjLtLSV1H9hpRTytDyY5c,69837
|
|
72
|
+
langchain_core/output_parsers/__init__.py,sha256=R8L0GwY-vD9qvqze3EVELXF6i45IYUJ_FbSfno_IREg,2873
|
|
73
|
+
langchain_core/output_parsers/base.py,sha256=53Yt9dOlR686ku0dP2LK9hHKGprxw_YEsAsY04dejmE,11225
|
|
74
|
+
langchain_core/output_parsers/format_instructions.py,sha256=8oUbeysnVGvXWyNd5gqXlEL850D31gMTy74GflsuvRU,553
|
|
75
|
+
langchain_core/output_parsers/json.py,sha256=Z_mcfO9jdAH96dZXrSi4rEx3o7Z9Oqn_IBkOjLBDpaQ,4589
|
|
76
|
+
langchain_core/output_parsers/list.py,sha256=WJ1fgGH2vnh_TRgGd83WZKVKGGpcqu-Q8zjDseqIA0Y,7294
|
|
77
|
+
langchain_core/output_parsers/openai_functions.py,sha256=FFy2Wh39wPFM1mO222gMzQU_wrpIFiCo5unZM8PM3jQ,10793
|
|
78
|
+
langchain_core/output_parsers/openai_tools.py,sha256=2zBuswllEu_gwN7iAd3Yvifr6XIJcvyMIVa1ER68-_k,12606
|
|
79
|
+
langchain_core/output_parsers/pydantic.py,sha256=mwB5HNa4KHLt_kD7gbwWyXSX-GnM1gX0nsM00b0OVAE,4490
|
|
80
|
+
langchain_core/output_parsers/string.py,sha256=jlUsciPkCmZ3MOfhz-KUJDjSaR0VswnzH8z0KlIfAoQ,965
|
|
81
|
+
langchain_core/output_parsers/transform.py,sha256=ntWW0SKk6GUHXQNXHZvT1PhyedQrvF61oIo_fP63fRQ,5923
|
|
82
|
+
langchain_core/output_parsers/xml.py,sha256=MDjZHJY2KeYREPLlEQJ1M2r0ALa0nb1Wec7MJ4Nk6LA,10974
|
|
83
|
+
langchain_core/outputs/__init__.py,sha256=uy2aeRTvvIfyWeLtPs0KaCw0VpG6QTkC0esmj268BIM,2119
|
|
84
|
+
langchain_core/outputs/chat_generation.py,sha256=XLJCeok5mliejMlzJka8v8aqLDs6HORd813PcxeeBRk,4681
|
|
85
|
+
langchain_core/outputs/chat_result.py,sha256=us15wVh00AYkIVNmf0VETEI9aoEQy-cT-SIXMX-98Zc,1356
|
|
86
|
+
langchain_core/outputs/generation.py,sha256=zroWD-bJxmdKJWbt1Rv-jVImyOng5s8rEn8bHMtjaLo,2644
|
|
87
|
+
langchain_core/outputs/llm_result.py,sha256=aX81609Z5JrLQGx9u2l6UDdzMLRoLgvdr5k1xDmB4UI,3935
|
|
88
|
+
langchain_core/outputs/run_info.py,sha256=xCMWdsHfgnnodaf4OCMvZaWUfS836X7mV15JPkqvZjo,594
|
|
89
|
+
langchain_core/prompt_values.py,sha256=ML6TgOes1I6-6S9BYg6KK7xYVQc7wFYSsfU6gtcQDxk,4023
|
|
90
|
+
langchain_core/prompts/__init__.py,sha256=sp3NU858CEf4YUuDYiY_-iF1x1Gb5msSyoyrk2FUI94,4123
|
|
91
|
+
langchain_core/prompts/base.py,sha256=g95varYAcsNY-2ILWrLhvQOMOw_qYr9ft7XqHgMkKbE,15971
|
|
92
|
+
langchain_core/prompts/chat.py,sha256=Q9oAvYtz1qWNtSRxly7UYYFSERap79uno1JsU7z6_x0,52635
|
|
93
|
+
langchain_core/prompts/dict.py,sha256=e4rxVs2IkMjxN_NqYtRpb9NYLyE9mimMMSzawbubrfA,4732
|
|
94
|
+
langchain_core/prompts/few_shot.py,sha256=nd1KtIw_pv8MdM49Q1V_szu4u6Wil0VAVqmiHLKzr64,16141
|
|
95
|
+
langchain_core/prompts/few_shot_with_templates.py,sha256=z1fSlcHunfdVQc7BuM9tudCWMquUn2Zztw7ROXOEOgE,7839
|
|
96
|
+
langchain_core/prompts/image.py,sha256=rrwpPo3nb2k_8I1DYF3cZv3go0T_CmSUrJsIktrQtgA,4786
|
|
97
|
+
langchain_core/prompts/loading.py,sha256=_T26PCTuZuOsCkHk_uv-h_zoIMonXojBdYJA3UsWHXE,6907
|
|
98
|
+
langchain_core/prompts/message.py,sha256=9I5IZXFn2Bwv8CIZ0zMp7k8C48xQyiAOqyv6uAYJdY0,2624
|
|
99
|
+
langchain_core/prompts/pipeline.py,sha256=Zj6aqIcU874mnYG__0I4nHmz4p7uaNAdYsJpMDb1LyQ,4612
|
|
100
|
+
langchain_core/prompts/prompt.py,sha256=RfD-w7GKolgptGB72UVIb1q3iIOm4pv2hby6EmJf9kk,11667
|
|
101
|
+
langchain_core/prompts/string.py,sha256=biN76hgwqZx-SjtXgy3qe9QmM2I2STSg8DylD0Mf0RE,10361
|
|
102
|
+
langchain_core/prompts/structured.py,sha256=V5qfOpSPWBnF5xcRl_qEmrv1u7T_IfzONHJ-rUFiTyE,5957
|
|
103
|
+
langchain_core/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
104
|
+
langchain_core/pydantic_v1/__init__.py,sha256=hqAsQjsfqLduCo5E0oAAAt21Nkls0S6bCQ4tD2moFfU,1080
|
|
105
|
+
langchain_core/pydantic_v1/dataclasses.py,sha256=q4Qst8I0g7odncWZ3-MvW-Xadfu6DQYxCo-DFZgwLPE,889
|
|
106
|
+
langchain_core/pydantic_v1/main.py,sha256=uTB_757DTfo-mFKJUn_a4qS_GxmSxlqYmL2WOCJLdS0,882
|
|
107
|
+
langchain_core/rate_limiters.py,sha256=EZtViY5BZLPBg_JBvv_kYywV9Cl3wd6AC-SDEA0fPPg,9550
|
|
108
|
+
langchain_core/retrievers.py,sha256=622gKRLmBSUXi_o4z57EoctT32XRbqCk_5f_NU7MEFE,16710
|
|
109
|
+
langchain_core/runnables/__init__.py,sha256=efTnFjwN_QSAv5ThLmKuWeu8P1BLARH-cWKZBuimfDM,3858
|
|
110
|
+
langchain_core/runnables/base.py,sha256=5MTTej3NO0mpgvwaaFgSywBayCo9WjtWa3sHBW5Nxuo,228986
|
|
111
|
+
langchain_core/runnables/branch.py,sha256=enKt0Qgc3b2UQSWGtQLcTlhOUNJGXfqNeaQwSq9AEkg,16338
|
|
112
|
+
langchain_core/runnables/config.py,sha256=lT2RORiOlFPalxPB11TV_eSAMIi1dAiIzCyfmZariZw,20297
|
|
113
|
+
langchain_core/runnables/configurable.py,sha256=Ios0MDPViYO9nO_EltAlkDkNNxdz4zXuNcZ1cuHZwzw,24695
|
|
114
|
+
langchain_core/runnables/fallbacks.py,sha256=VeHCrW_Ci9p8G9KojNp5dC7Yo6l5jdZtst9O_yt2sM0,24497
|
|
115
|
+
langchain_core/runnables/graph.py,sha256=aSPJxmUoG3J0lPaVYXJ2ulf6q5hfxBOZfK_Aro6Bdn4,23738
|
|
116
|
+
langchain_core/runnables/graph_ascii.py,sha256=DYdH8pv9dJcQHYcNupEs-XCasDd-jrGeEMTbS6K5OAk,10446
|
|
117
|
+
langchain_core/runnables/graph_mermaid.py,sha256=U04DalCmgNTamyR2gBNDo8_3zzSbSU6NqpXH9Y1-U8E,16794
|
|
118
|
+
langchain_core/runnables/graph_png.py,sha256=md4NFNKMY7SkAr3Ysf1FNOU-SIZioSkniT__IPkoUSA,5566
|
|
119
|
+
langchain_core/runnables/history.py,sha256=CeFI41kBoowUKsCuFu1HeEgBIuyhh2oEhcuUyPs_j6M,24775
|
|
120
|
+
langchain_core/runnables/passthrough.py,sha256=HvwNeGVVzhS6EkSurbjU8Ah-UXUj3nsrhiY-gmeyxhE,26443
|
|
121
|
+
langchain_core/runnables/retry.py,sha256=r5rEJ1nMqd5W-g9YJU0zKmyhgUSBhBeAJ8zFVaMhdvc,12824
|
|
122
|
+
langchain_core/runnables/router.py,sha256=HYGMfOYhpdyL3OlrEjYj1bKqEjDFyWEvFDXx2BoV3s4,7236
|
|
123
|
+
langchain_core/runnables/schema.py,sha256=ff7PsRswAeQgVEeGybzC3rvaoDHV2S8pNCwpwppRjAY,5545
|
|
124
|
+
langchain_core/runnables/utils.py,sha256=zfC4orjXPcj_zpTO2yTvz04RPAwTt2HxW6kFPYkximQ,22843
|
|
125
|
+
langchain_core/stores.py,sha256=IEsHB9kp1QnzYOBfl_eVMAnopP9M3lRgg2i-ypsV9NI,10496
|
|
126
|
+
langchain_core/structured_query.py,sha256=SmeP7cYTx2OCxOEo9UsSiHO3seqIoZPjb0CQd8JDWRk,5164
|
|
127
|
+
langchain_core/sys_info.py,sha256=HG1fu2ayPvRQmrlowyO-NdUj_I8Le1S-bPAbYB9VJTY,4045
|
|
128
|
+
langchain_core/tools/__init__.py,sha256=Uqcn6gFAoFbMM4aRXd8ACL4D-owdevGc37Gn-KOB8JU,2860
|
|
129
|
+
langchain_core/tools/base.py,sha256=DMlpWU1ekAy68pmrHgtqtqcDuo6eu0qTq13TvOhqdew,50243
|
|
130
|
+
langchain_core/tools/convert.py,sha256=ll3XrBhWtPWULONB-QlXEwAnT5FDjK9aP-kKuoi26Ds,16247
|
|
131
|
+
langchain_core/tools/render.py,sha256=BosvIWrSvOJgRg_gaSDBS58j99gwQHsLhprOXeJP53I,1842
|
|
132
|
+
langchain_core/tools/retriever.py,sha256=zlSV3HnWhhmtZtkNGbNQW9wxv8GptJKmDhzqZj8e36o,3873
|
|
133
|
+
langchain_core/tools/simple.py,sha256=f6H5VgYpSU7LI1a-zE8RvH6PMvbZ66GV35OM-hRfSf0,6957
|
|
134
|
+
langchain_core/tools/structured.py,sha256=jJOeELTZZDE3aQHFCWF4xeepeJybMks2r-YBs__k7R8,9803
|
|
135
|
+
langchain_core/tracers/__init__.py,sha256=ixZmLjtoMEPqYEFUtAxleiDDRNIaHrS01VRDo9mCPk8,1611
|
|
136
|
+
langchain_core/tracers/_streaming.py,sha256=U9pWQDJNUDH4oOYF3zvUMUtgkCecJzXQvfo-wYARmhQ,982
|
|
137
|
+
langchain_core/tracers/base.py,sha256=rbIJgMaDga3jFeCWCmzjqUZLMmp9ZczT4wFecVPL2hk,26013
|
|
138
|
+
langchain_core/tracers/context.py,sha256=xCgMjCoulBm3QXjLaVDFC8-93emgsunYcCtZCiVKcTo,7199
|
|
139
|
+
langchain_core/tracers/core.py,sha256=a40PCXd_2Yh8-drVfr1MJynvw9eUecocTWu-EIFwaDU,23773
|
|
140
|
+
langchain_core/tracers/evaluation.py,sha256=o0iIcuYx_mlD8q5_N7yxiVIaGeC3JaepHlZks0xm0nQ,8426
|
|
141
|
+
langchain_core/tracers/event_stream.py,sha256=BR8NJSmWqPvfgqWltipH-rk2UO6db0I3RH5lN6E-aHk,33810
|
|
142
|
+
langchain_core/tracers/langchain.py,sha256=bvavDPE5t2J2BNexot0cHsD0asSeoofNtWAQqYbBvTQ,10620
|
|
143
|
+
langchain_core/tracers/langchain_v1.py,sha256=QteCXOsETqngvigalofcKR3l6le6barotAtWHaE8a1w,898
|
|
144
|
+
langchain_core/tracers/log_stream.py,sha256=jaW3tOvBxR4FgSZj4lS9pjVCdc4Y8_DUJoudAEcC-wQ,25491
|
|
145
|
+
langchain_core/tracers/memory_stream.py,sha256=3A-cwA3-lq5YFbCZWYM8kglVv1bPT4kwM2L_q8axkhU,5032
|
|
146
|
+
langchain_core/tracers/root_listeners.py,sha256=44cr4itZknl2VaYS3pNitJIy2DOKmZC09WWeHIBjOnU,4184
|
|
147
|
+
langchain_core/tracers/run_collector.py,sha256=FZkocT41EichTy2QyETbhZjlOptyj-peOhEQUqEcJGg,1305
|
|
148
|
+
langchain_core/tracers/schemas.py,sha256=y16K_c1ji3LHD-addSkn4-n73eknS2RlNRAhTSgs_YM,3826
|
|
149
|
+
langchain_core/tracers/stdout.py,sha256=aZN-yz545zj34kYfrEmYzWeSz83pbqN8wNqi-ZvS1Iw,6732
|
|
150
|
+
langchain_core/utils/__init__.py,sha256=N0ZeV09FHvZIVITLJlqGibb0JNtmmLvvoareFtG0DuI,3169
|
|
151
|
+
langchain_core/utils/_merge.py,sha256=uo_n2mJ0_FuRJZUUgJemsXQ8rAC9fyYGOMmnPfbbDUg,5785
|
|
152
|
+
langchain_core/utils/aiter.py,sha256=R3_2TqQHAUbRig9BddP8NQZdeDDnW6uS9kK9gZAIRr8,10892
|
|
153
|
+
langchain_core/utils/env.py,sha256=5EnSNXr4oHAkGkKfrNf0xl_vqz2ejVKVMUQaQePXv9s,2536
|
|
154
|
+
langchain_core/utils/formatting.py,sha256=fkieArzKXxSsLcEa3B-MX60O4ZLeeLjiPtVtxCJPcOU,1480
|
|
155
|
+
langchain_core/utils/function_calling.py,sha256=qD0mEH2Wr1UwW-zwDE-cHNJzqxiN99SNWJkeUDSumc4,29398
|
|
156
|
+
langchain_core/utils/html.py,sha256=fUogMGhd-VoUbsGnMyY6v_gv9nbxJy-vmC4yfICcflM,3780
|
|
157
|
+
langchain_core/utils/image.py,sha256=1MH8Lbg0f2HfhTC4zobKMvpVoHRfpsyvWHq9ae4xENo,532
|
|
158
|
+
langchain_core/utils/input.py,sha256=z3tubdUtsoHqfTyiBGfELLr1xemSe-pGvhfAeGE6O2g,1958
|
|
159
|
+
langchain_core/utils/interactive_env.py,sha256=nm06cucX9ez9H3GBAIRDsivSp0V--2HnBIMogI4gHpQ,287
|
|
160
|
+
langchain_core/utils/iter.py,sha256=IysrW22N5R3V8QFJp1CMCRrrtllWYuwOg-7Oi7wVV_s,7560
|
|
161
|
+
langchain_core/utils/json.py,sha256=Hmyk97Ll3lGLpoFAST2PM8d-fQVNu3VHxwd1JfGdtYE,6311
|
|
162
|
+
langchain_core/utils/json_schema.py,sha256=s7g_tfXDhj-uP49DONmKljAbnEJ1waAkjMPBvckmum0,3983
|
|
163
|
+
langchain_core/utils/loading.py,sha256=zHY3y-eW_quqgJDJNY24dO7YDZW9P103Mc77dnGbEpA,1023
|
|
164
|
+
langchain_core/utils/mustache.py,sha256=j_BJH-axSkE-_DHPXx4xuIO_eqMsd9YaHm0VMtculvg,21373
|
|
165
|
+
langchain_core/utils/pydantic.py,sha256=kSwwMv9st03BT4eVbkARtPwQVv34zXF1YlFZ-d8G1Ns,18578
|
|
166
|
+
langchain_core/utils/strings.py,sha256=0LaQiqpshHwMrWBGvNfFPc-AxihLGMM9vsQcSx3uAkI,1804
|
|
167
|
+
langchain_core/utils/usage.py,sha256=EYv0poDqA7VejEsPyoA19lEt9M4L24Tppf4OPtOjGwI,1202
|
|
168
|
+
langchain_core/utils/utils.py,sha256=cE94qWbUEtuGVJZCPby997ppjly4kt9cxh2pOhKR6ZQ,15455
|
|
169
|
+
langchain_core/vectorstores/__init__.py,sha256=5P0eoeoH5LHab64JjmEeWa6SxX4eMy-etAP1MEHsETY,804
|
|
170
|
+
langchain_core/vectorstores/base.py,sha256=nWlfzbkVdOObfbPpvfdLKHw9J0PryACVohHC_Y6wWZM,41529
|
|
171
|
+
langchain_core/vectorstores/in_memory.py,sha256=RyXuB3dCr-Dgq30PhRgPwh8j8iH8GNIZAr8b9C7FHA4,18101
|
|
172
|
+
langchain_core/vectorstores/utils.py,sha256=D6St53Xg1kO73dnw4MPd8vlkro4C3gmCpcghUzcepi0,4971
|
|
173
|
+
langchain_core/version.py,sha256=7aYZr_aVmy4AITHPWIVrAMX1d3_LbCpyKUbQcD33QW4,76
|
|
174
|
+
langchain_core-0.3.76.dist-info/RECORD,,
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.1
|
|
2
|
-
Name: langchain-core
|
|
3
|
-
Version: 0.3.75
|
|
4
|
-
Summary: Building applications with LLMs through composability
|
|
5
|
-
License: MIT
|
|
6
|
-
Project-URL: Source Code, https://github.com/langchain-ai/langchain/tree/master/libs/core
|
|
7
|
-
Project-URL: Release Notes, https://github.com/langchain-ai/langchain/releases?q=tag%3A%22langchain-core%3D%3D0%22&expanded=true
|
|
8
|
-
Project-URL: repository, https://github.com/langchain-ai/langchain
|
|
9
|
-
Requires-Python: >=3.9
|
|
10
|
-
Requires-Dist: langsmith>=0.3.45
|
|
11
|
-
Requires-Dist: tenacity!=8.4.0,<10.0.0,>=8.1.0
|
|
12
|
-
Requires-Dist: jsonpatch<2.0,>=1.33
|
|
13
|
-
Requires-Dist: PyYAML>=5.3
|
|
14
|
-
Requires-Dist: typing-extensions>=4.7
|
|
15
|
-
Requires-Dist: packaging>=23.2
|
|
16
|
-
Requires-Dist: pydantic>=2.7.4
|
|
17
|
-
Description-Content-Type: text/markdown
|
|
18
|
-
|
|
19
|
-
# 🦜🍎️ LangChain Core
|
|
20
|
-
|
|
21
|
-
[](https://pepy.tech/project/langchain_core)
|
|
22
|
-
[](https://opensource.org/licenses/MIT)
|
|
23
|
-
|
|
24
|
-
## Quick Install
|
|
25
|
-
|
|
26
|
-
```bash
|
|
27
|
-
pip install langchain-core
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
## What is it?
|
|
31
|
-
|
|
32
|
-
LangChain Core contains the base abstractions that power the rest of the LangChain ecosystem.
|
|
33
|
-
|
|
34
|
-
These abstractions are designed to be as modular and simple as possible. Examples of these abstractions include those for language models, document loaders, embedding models, vectorstores, retrievers, and more.
|
|
35
|
-
|
|
36
|
-
The benefit of having these abstractions is that any provider can implement the required interface and then easily be used in the rest of the LangChain ecosystem.
|
|
37
|
-
|
|
38
|
-
For full documentation see the [API reference](https://python.langchain.com/api_reference/core/index.html).
|
|
39
|
-
|
|
40
|
-
## 1️⃣ Core Interface: Runnables
|
|
41
|
-
|
|
42
|
-
The concept of a `Runnable` is central to LangChain Core – it is the interface that most LangChain Core components implement, giving them
|
|
43
|
-
|
|
44
|
-
- a common invocation interface (`invoke()`, `batch()`, `stream()`, etc.)
|
|
45
|
-
- built-in utilities for retries, fallbacks, schemas and runtime configurability
|
|
46
|
-
- easy deployment with [LangGraph](https://github.com/langchain-ai/langgraph)
|
|
47
|
-
|
|
48
|
-
For more check out the [runnable docs](https://python.langchain.com/docs/concepts/runnables/). Examples of components that implement the interface include: LLMs, Chat Models, Prompts, Retrievers, Tools, Output Parsers.
|
|
49
|
-
|
|
50
|
-
You can use LangChain Core objects in two ways:
|
|
51
|
-
|
|
52
|
-
1. **imperative**, ie. call them directly, eg. `model.invoke(...)`
|
|
53
|
-
|
|
54
|
-
2. **declarative**, with LangChain Expression Language (LCEL)
|
|
55
|
-
|
|
56
|
-
3. or a mix of both! eg. one of the steps in your LCEL sequence can be a custom function
|
|
57
|
-
|
|
58
|
-
| Feature | Imperative | Declarative |
|
|
59
|
-
| --------- | ------------------------------- | -------------- |
|
|
60
|
-
| Syntax | All of Python | LCEL |
|
|
61
|
-
| Tracing | ✅ – Automatic | ✅ – Automatic |
|
|
62
|
-
| Parallel | ✅ – with threads or coroutines | ✅ – Automatic |
|
|
63
|
-
| Streaming | ✅ – by yielding | ✅ – Automatic |
|
|
64
|
-
| Async | ✅ – by writing async functions | ✅ – Automatic |
|
|
65
|
-
|
|
66
|
-
## ⚡️ What is LangChain Expression Language?
|
|
67
|
-
|
|
68
|
-
LangChain Expression Language (LCEL) is a _declarative language_ for composing LangChain Core runnables into sequences (or DAGs), covering the most common patterns when building with LLMs.
|
|
69
|
-
|
|
70
|
-
LangChain Core compiles LCEL sequences to an _optimized execution plan_, with automatic parallelization, streaming, tracing, and async support.
|
|
71
|
-
|
|
72
|
-
For more check out the [LCEL docs](https://python.langchain.com/docs/concepts/lcel/).
|
|
73
|
-
|
|
74
|
-

|
|
75
|
-
|
|
76
|
-
For more advanced use cases, also check out [LangGraph](https://github.com/langchain-ai/langgraph), which is a graph-based runner for cyclic and recursive LLM workflows.
|
|
77
|
-
|
|
78
|
-
## 📕 Releases & Versioning
|
|
79
|
-
|
|
80
|
-
As `langchain-core` contains the base abstractions and runtime for the whole LangChain ecosystem, we will communicate any breaking changes with advance notice and version bumps. The exception for this is anything in `langchain_core.beta`. The reason for `langchain_core.beta` is that given the rate of change of the field, being able to move quickly is still a priority, and this module is our attempt to do so.
|
|
81
|
-
|
|
82
|
-
Minor version increases will occur for:
|
|
83
|
-
|
|
84
|
-
- Breaking changes for any public interfaces NOT in `langchain_core.beta`
|
|
85
|
-
|
|
86
|
-
Patch version increases will occur for:
|
|
87
|
-
|
|
88
|
-
- Bug fixes
|
|
89
|
-
- New features
|
|
90
|
-
- Any changes to private interfaces
|
|
91
|
-
- Any changes to `langchain_core.beta`
|
|
92
|
-
|
|
93
|
-
## 💁 Contributing
|
|
94
|
-
|
|
95
|
-
As an open-source project in a rapidly developing field, we are extremely open to contributions, whether it be in the form of a new feature, improved infrastructure, or better documentation.
|
|
96
|
-
|
|
97
|
-
For detailed information on how to contribute, see the [Contributing Guide](https://python.langchain.com/docs/contributing/).
|
|
98
|
-
|
|
99
|
-
## ⛰️ Why build on top of LangChain Core?
|
|
100
|
-
|
|
101
|
-
The whole LangChain ecosystem is built on top of LangChain Core, so you're in good company when building on top of it. Some of the benefits:
|
|
102
|
-
|
|
103
|
-
- **Modularity**: LangChain Core is designed around abstractions that are independent of each other, and not tied to any specific model provider.
|
|
104
|
-
- **Stability**: We are committed to a stable versioning scheme, and will communicate any breaking changes with advance notice and version bumps.
|
|
105
|
-
- **Battle-tested**: LangChain Core components have the largest install base in the LLM ecosystem, and are used in production by many companies.
|
|
106
|
-
- **Community**: LangChain Core is developed in the open, and we welcome contributions from the community.
|