From 9600a48d53b700232f470ff07264399d98acf9cb Mon Sep 17 00:00:00 2001 From: Dev 2049 Date: Sat, 20 May 2023 08:15:05 -0700 Subject: [PATCH] wip --- .../installation.md | 0 docs/index.rst | 150 +++--------------- docs/reference.rst | 2 +- 3 files changed, 25 insertions(+), 127 deletions(-) rename docs/{reference => getting_started}/installation.md (100%) diff --git a/docs/reference/installation.md b/docs/getting_started/installation.md similarity index 100% rename from docs/reference/installation.md rename to docs/getting_started/installation.md diff --git a/docs/index.rst b/docs/index.rst index 913010b1d4e..7362d9ea118 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -1,63 +1,27 @@ -Welcome to LangChain +Introduction ========================== +Overview +---------------- + | **LangChain** is a framework for developing applications powered by language models. We believe that the most powerful and differentiated applications will not only call out to a language model, but will also be: -1. *Data-aware*: connect a language model to other sources of data -2. *Agentic*: allow a language model to interact with its environment +1. **Data-aware**: Connect a language model to other sources of data +2. **Agentic**: Allow a language model to interact with its environment | The LangChain framework is designed around these principles. -| This is the Python specific portion of the documentation. For a purely conceptual guide to LangChain, see `here `_. For the JavaScript documentation, see `here `_. +.. note:: + This is the Python specific portion of the documentation. See here for the `Conceptual documentation `_ and here for the `JavaScript documentation `_. -Getting Started ----------------- - -| How to get started using LangChain to create an Language Model application. - -- `Quickstart Guide <./getting_started/getting_started.html>`_ - -| Concepts and terminology. - -- `Concepts and terminology <./getting_started/concepts.html>`_ - -| Tutorials created by community experts and presented on YouTube. - -- `Tutorials <./getting_started/tutorials.html>`_ .. toctree:: :maxdepth: 2 - :caption: Getting Started - :name: getting_started + :caption: Get Started + :name: get_started :hidden: + getting_started/installation.md getting_started/getting_started.md - getting_started/concepts.md - getting_started/tutorials.md - - -Modules ------------ - -| These modules are the core abstractions which we view as the building blocks of any LLM-powered application. -For each module LangChain provides standard, extendable interfaces. LangChain also provides external integrations and even end-to-end implementations for off-the-shelf use. - -| The docs for each module contain quickstart examples, how-to guides, reference docs, and conceptual guides. - -| The modules are (from least to most complex): - -- `Models <./modules/models.html>`_: Supported model types and integrations. - -- `Prompts <./modules/prompts.html>`_: Prompt management, optimization, and serialization. - -- `Memory <./modules/memory.html>`_: Memory refers to state that is persisted between calls of a chain/agent. - -- `Indexes <./modules/indexes.html>`_: Language models become much more powerful when combined with application-specific data - this module contains interfaces and integrations for loading, querying and updating external data. - -- `Chains <./modules/chains.html>`_: Chains are structured sequences of calls (to an LLM or to a different utility). - -- `Agents <./modules/agents.html>`_: An agent is a Chain in which an LLM, given a high-level directive and a set of tools, repeatedly decides an action, executes the action and observes the outcome until the high-level directive is complete. - -- `Callbacks <./modules/callbacks/getting_started.html>`_: Callbacks let you log and stream the intermediate steps of any chain, making it easy to observe, debug, and evaluate the internals of an application. .. toctree:: :maxdepth: 1 @@ -72,35 +36,6 @@ For each module LangChain provides standard, extendable interfaces. LangChain al ./modules/chains.md ./modules/agents.md ./modules/callbacks/getting_started.ipynb - -Use Cases ----------- - -| Best practices and built-in implementations for common LangChain use cases: - -- `Autonomous Agents <./use_cases/autonomous_agents.html>`_: Autonomous agents are long-running agents that take many steps in an attempt to accomplish an objective. Examples include AutoGPT and BabyAGI. - -- `Agent Simulations <./use_cases/agent_simulations.html>`_: Putting agents in a sandbox and observing how they interact with each other and react to events can be an effective way to evaluate their long-range reasoning and planning abilities. - -- `Personal Assistants <./use_cases/personal_assistants.html>`_: One of the primary LangChain use cases. Personal assistants need to take actions, remember interactions, and have knowledge about your data. - -- `Question Answering <./use_cases/question_answering.html>`_: Another common LangChain use case. Answering questions over specific documents, only utilizing the information in those documents to construct an answer. - -- `Chatbots <./use_cases/chatbots.html>`_: Language models love to chat, making this a very natural use of them. - -- `Querying Tabular Data <./use_cases/tabular.html>`_: Recommended reading if you want to use language models to query structured data (CSVs, SQL, dataframes, etc). - -- `Code Understanding <./use_cases/code.html>`_: Recommended reading if you want to use language models to analyze code. - -- `Interacting with APIs <./use_cases/apis.html>`_: Enabling language models to interact with APIs is extremely powerful. It gives them access to up-to-date information and allows them to take actions. - -- `Extraction <./use_cases/extraction.html>`_: Extract structured information from text. - -- `Summarization <./use_cases/summarization.html>`_: Compressing longer documents. A type of Data-Augmented Generation. - -- `Evaluation <./use_cases/evaluation.html>`_: Generative models are hard to evaluate with traditional metrics. One promising approach is to use language models themselves to do the evaluation. - - .. toctree:: :maxdepth: 1 :caption: Use Cases @@ -108,46 +43,31 @@ Use Cases :hidden: ./use_cases/autonomous_agents.md - ./use_cases/agent_simulations.md ./use_cases/personal_assistants.md ./use_cases/question_answering.md ./use_cases/chatbots.md ./use_cases/tabular.rst - ./use_cases/code.md ./use_cases/apis.md - ./use_cases/summarization.md + ./use_cases/code.md ./use_cases/extraction.md + ./use_cases/summarization.md ./use_cases/evaluation.rst + ./use_cases/agent_simulations.md - -Reference Docs ---------------- - -| Full documentation on all methods, classes, installation methods, and integration setups for LangChain. - - -- `Reference Documentation <./reference.html>`_ .. toctree:: - :maxdepth: 1 :caption: Reference :name: reference + :maxdepth: 2 :hidden: - ./reference/installation.md - ./reference.rst - - -Ecosystem ------------- - -| LangChain integrates a lot of different LLMs, systems, and products. -From the other side, many systems and products depend on LangChain. -It creates a vibrant and thriving ecosystem. - - -- `Integrations <./integrations.html>`_: Guides for how other products can be used with LangChain. - -- `Dependents <./dependents.html>`_: List of repositories that use LangChain. + ./reference/models.rst + ./reference/prompts.rst + ./reference/indexes.rst + ./reference/modules/memory.rst + ./reference/modules/chains.rst + ./reference/agents.rst + ./reference/modules/utilities.rst + ./reference/modules/experimental.rst .. toctree:: @@ -160,29 +80,6 @@ It creates a vibrant and thriving ecosystem. ./integrations.rst ./dependents.md - -Additional Resources ---------------------- - -| Additional resources we think may be useful as you develop your application! - -- `LangChainHub `_: The LangChainHub is a place to share and explore other prompts, chains, and agents. - -- `Gallery `_: A collection of great projects that use Langchain, compiled by the folks at `Kyrolabs `_. Useful for finding inspiration and example implementations. - -- `Deployments <./additional_resources/deployments.html>`_: A collection of instructions, code snippets, and template repositories for deploying LangChain apps. - -- `Tracing <./additional_resources/tracing.html>`_: A guide on using tracing in LangChain to visualize the execution of chains and agents. - -- `Model Laboratory <./additional_resources/model_laboratory.html>`_: Experimenting with different prompts, models, and chains is a big part of developing the best possible application. The ModelLaboratory makes it easy to do so. - -- `Discord `_: Join us on our Discord to discuss all things LangChain! - -- `YouTube <./additional_resources/youtube.html>`_: A collection of the LangChain tutorials and videos. - -- `Production Support `_: As you move your LangChains into production, we'd love to offer more comprehensive support. Please fill out this form and we'll set up a dedicated support Slack channel. - - .. toctree:: :maxdepth: 1 :caption: Additional Resources @@ -190,6 +87,7 @@ Additional Resources :hidden: LangChainHub + getting_started/tutorials.md Gallery ./additional_resources/deployments.md ./additional_resources/tracing.md diff --git a/docs/reference.rst b/docs/reference.rst index ba9cb6f1b60..7b049bb9204 100644 --- a/docs/reference.rst +++ b/docs/reference.rst @@ -9,8 +9,8 @@ Full documentation on all methods, classes, and APIs in LangChain. ./reference/models.rst ./reference/prompts.rst - ./reference/indexes.rst ./reference/modules/memory.rst + ./reference/indexes.rst ./reference/modules/chains.rst ./reference/agents.rst ./reference/modules/utilities.rst