Skip to main content

LangChain Integration for ContextCrunch prompt compression.

Project description

ContextCrunch-LangChain-python

Integration for ContextCrunch in a LangChain pipeline.

Usage

The ContextCruncher is a Runnable Lambda that takes in 2 inputs (as an input dictionary):

  • context: This could be your conversation history, or retrieved information from RAG
  • question: The relevant query to find in the data. ContextCrunch uses this narrow down the context to only the most essential parts.

When initializing the ContextCruncher() there is also an optional compression_ratio parameter that controls how aggresively the algorithm should compress. The general trend is the higher the compression ratio, the less information is retained. Generally, a compression ratio of 0.9 is a good start, though for small contexts, the algorithm may compress less than requested compression ratio.

Return

ContextCruncher returns a dictionary with:

  • context: The updated (compressed) context.
  • question: The original question (for later uses in a chain).

Quickstart

Install this package with pip install contextcrunch-langchain.

RAG

You can easily modify an existing RAG pipeline by simply applying a ContextCruncher() to the context before filling the prompt template.

For example, if you are using this example from the LangChain docs, the modified pipeline becomes:

rag_chain = (
    {"context": retriever | format_docs, "question": RunnablePassthrough()}
    | ContextCruncher(compression_ratio=0.95)
    | prompt
    | llm
    | StrOutputParser()
)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

contextcrunch_langchain-1.0.0.tar.gz (83.7 MB view hashes)

Uploaded Source

Built Distribution

contextcrunch_langchain-1.0.0-py3-none-any.whl (4.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page