mirror of
https://github.com/hwchase17/langchain
synced 2024-11-08 07:10:35 +00:00
a74f3a4979
**Description:** Batch update of alt text and title attributes for images in `md` & `mdx` files across the repo using [alttexter](https://github.com/jonathanalgar/alttexter)/[alttexter-ghclient](https://github.com/jonathanalgar/alttexter-ghclient) (built using LangChain/LangSmith). **Limitation:** cannot update `ipynb` files because of [this issue](https://github.com/langchain-ai/langchain/pull/15357#issuecomment-1885037250). Can revisit when Docusaurus is bumped to v3. I checked all the generated alt texts and titles and didn't find any technical inaccuracies. That's not to say they're _perfect_, but a lot better than what's there currently. [Deployed](https://langchain-819yf1tbk-langchain.vercel.app/docs/modules/model_io/) image example: ![chrome_yZQ7BF2GTj](https://github.com/langchain-ai/langchain/assets/93204286/43a9a4d4-70fd-41c4-8978-b6240ff63ffa) You can see LangSmith traces for all the calls out to the LLM in the PRs merged into this one: * https://github.com/jonathanalgar/langchain/pull/6 * https://github.com/jonathanalgar/langchain/pull/4 * https://github.com/jonathanalgar/langchain/pull/3 I didn't add the following files to the PR as the images already have OK alt texts: *27dca2d92f/docs/docs/integrations/providers/argilla.mdx (L3)
*27dca2d92f/docs/docs/integrations/providers/apify.mdx (L11)
--------- Co-authored-by: github-actions <github-actions@github.com>
58 lines
3.1 KiB
Markdown
58 lines
3.1 KiB
Markdown
# 🦜🍎️ LangChain Core
|
|
|
|
[![Downloads](https://static.pepy.tech/badge/langchain_core/month)](https://pepy.tech/project/langchain_core)
|
|
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
|
|
|
|
## Quick Install
|
|
|
|
```bash
|
|
pip install langchain-core
|
|
```
|
|
|
|
## What is it?
|
|
|
|
LangChain Core contains the base abstractions that power the rest of the LangChain ecosystem.
|
|
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.
|
|
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.
|
|
|
|
For full documentation see the [API reference](https://api.python.langchain.com/en/stable/core_api_reference.html).
|
|
|
|
## What is LangChain Expression Language?
|
|
|
|
LangChain Core also contains LangChain Expression Language, or LCEL, a runtime that allows users to compose arbitrary sequences together and get several benefits that are important when building LLM applications.
|
|
We call these sequences “runnables”.
|
|
|
|
All runnables expose the same interface with single-invocation, batch, streaming and async methods.
|
|
This design is useful because it is not enough to have a single sync interface when building an LLM application.
|
|
Batch is needed for efficient processing of many inputs.
|
|
Streaming (and streaming of intermediate steps) is needed to show the user that progress is being made.
|
|
Async interfaces are nice when moving into production.
|
|
Rather than having to write multiple implementations for all of those, LCEL allows you to write a runnable once and invoke it in many different ways.
|
|
|
|
For more check out the [LCEL docs](https://python.langchain.com/docs/expression_language/).
|
|
|
|
![Diagram outlining the hierarchical organization of the LangChain framework, displaying the interconnected parts across multiple layers.](../../docs/static/img/langchain_stack.png "LangChain Framework Overview")
|
|
|
|
## 📕 Releases & Versioning
|
|
|
|
`langchain-core` is currently on version `0.1.x`.
|
|
|
|
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.
|
|
|
|
Minor version increases will occur for:
|
|
|
|
- Breaking changes for any public interfaces NOT in `langchain_core.beta`
|
|
|
|
Patch version increases will occur for:
|
|
|
|
- Bug fixes
|
|
- New features
|
|
- Any changes to private interfaces
|
|
- Any changes to `langchain_core.beta`
|
|
|
|
## 💁 Contributing
|
|
|
|
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.
|
|
|
|
For detailed information on how to contribute, see the [Contributing Guide](https://python.langchain.com/docs/contributing/). |