From 8f907161e3c7dc13e7fbbf858875301f01580b89 Mon Sep 17 00:00:00 2001 From: Harrison Chase Date: Fri, 4 Nov 2022 08:02:21 -0700 Subject: [PATCH] Harrison/initial glossary (#61) --- README.md | 2 +- docs/conf.py | 9 ++++++ docs/glossary.md | 71 +++++++++++++++++++++++++++++++++++++++++++ docs/index.rst | 7 +++++ docs/requirements.txt | 1 + 5 files changed, 89 insertions(+), 1 deletion(-) create mode 100644 docs/glossary.md diff --git a/README.md b/README.md index d7b4b27a..0eab2eeb 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ ⚡ Building applications with LLMs through composability ⚡ -[![lint](https://github.com/hwchase17/langchain/actions/workflows/lint.yml/badge.svg)](https://github.com/hwchase17/langchain/actions/workflows/lint.yml) [![test](https://github.com/hwchase17/langchain/actions/workflows/test.yml/badge.svg)](https://github.com/hwchase17/langchain/actions/workflows/test.yml) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) +[![lint](https://github.com/hwchase17/langchain/actions/workflows/lint.yml/badge.svg)](https://github.com/hwchase17/langchain/actions/workflows/lint.yml) [![test](https://github.com/hwchase17/langchain/actions/workflows/test.yml/badge.svg)](https://github.com/hwchase17/langchain/actions/workflows/test.yml) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![](https://dcbadge.vercel.app/api/server/6adMQxSpJS?style=social)](https://discord.gg/6adMQxSpJS) diff --git a/docs/conf.py b/docs/conf.py index e06816b6..17b2c4b1 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -38,6 +38,7 @@ extensions = [ "sphinx.ext.autosummary", "sphinx.ext.napoleon", "sphinxcontrib.autodoc_pydantic", + "myst_parser", ] autodoc_pydantic_model_show_json = False @@ -68,6 +69,14 @@ exclude_patterns = ["_build", "Thumbs.db", ".DS_Store"] html_theme = "sphinx_rtd_theme" # html_theme = "sphinx_typlog_theme" +html_context = { + "display_github": True, # Integrate GitHub + "github_user": "hwchase17", # Username + "github_repo": "langchain", # Repo name + "github_version": "master", # Version + "conf_py_path": "/docs/", # Path in the checkout to the docs root +} + # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". diff --git a/docs/glossary.md b/docs/glossary.md new file mode 100644 index 00000000..11621a36 --- /dev/null +++ b/docs/glossary.md @@ -0,0 +1,71 @@ +# Glossary + +This is a collection of terminology commonly used when developing LLM applications. +It contains reference to external papers or sources where the concept was first introduced, +as well as to places in LangChain where the concept is used. + +### Chain of Thought Prompting + +A prompting technique used to encourage the model to generate a series of intermediate reasoning steps. +A less formal way to induce this behavior is to include “Let’s think step-by-step” in the prompt. + +Resources: +- [Chain-of-Thought Paper](https://arxiv.org/pdf/2201.11903.pdf) +- [Step-by-Step Paper](https://arxiv.org/abs/2112.00114) + +### Action Plan Generation + +A prompt usage that uses a language model to generate actions to take. +The results of these actions can then be fed back into the language model to generate a subsequent action. + +Resources: +- [WebGPT Paper](https://arxiv.org/pdf/2112.09332.pdf) +- [SayCan Paper](https://say-can.github.io/assets/palm_saycan.pdf) + +### ReAct Prompting + +A prompting technique that combines Chain-of-Thought prompting with action plan generation. +This induces the to model to think about what action to take, then take it. + +Resources: +- [Paper](https://arxiv.org/pdf/2210.03629.pdf) +- [LangChain Example](https://github.com/hwchase17/langchain/blob/master/examples/react.ipynb) + +### Self-ask + +A prompting method that builds on top of chain-of-thought prompting. +In this method, the model explicitly asks itself follow-up questions, which are then answered by an external search engine. + +Resources: +- [Paper](https://ofir.io/self-ask.pdf) +- [LangChain Example](https://github.com/hwchase17/langchain/blob/master/examples/self_ask_with_search.ipynb) + +### Prompt Chaining + +Combining multiple LLM calls together, with the output of one step being the input to the next. + +Resources: +- [Paper](https://arxiv.org/pdf/2203.06566.pdf) + +### Mimetic Proxy + +Encouraging the LLM to respond in a certain way framing the discussion in a context that the model knows of and that will result in that type of response. For example, as a conversation between a student and a teacher. + +Resources: +- [Paper](https://arxiv.org/pdf/2102.07350.pdf) + +### Self Consistency + +A decoding strategy that samples a diverse set of reasoning paths and then selects the most consistent answer. +Is most effective when combined with Chain-of-thought prompting. + +Resources: +- [Paper](https://arxiv.org/pdf/2203.11171.pdf) + +### Inception + +Also called “First Person Instruction”. +Encouraging the model to think a certain way by including the start of the model’s response in the prompt. + +Resources: +- [Example](https://twitter.com/goodside/status/1583262455207460865?s=20&t=8Hz7XBnK1OF8siQrxxCIGQ) diff --git a/docs/index.rst b/docs/index.rst index 418a0816..2acf057f 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -9,3 +9,10 @@ Welcome to LangChain modules/llms modules/embeddings modules/chains + +.. toctree:: + :maxdepth: 1 + :caption: Resources + + glossary.md + Discord diff --git a/docs/requirements.txt b/docs/requirements.txt index 4d382156..81cf4106 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -3,3 +3,4 @@ sphinx-autobuild==2021.3.14 sphinx_rtd_theme==1.0.0 sphinx-typlog-theme==0.8.0 autodoc_pydantic==1.8.0 +myst_parser