langchain_core.beta.runnables.context
.Context¶
- class langchain_core.beta.runnables.context.Context[source]¶
Context for a runnable.
The Context class provides methods for creating context scopes, getters, and setters within a runnable. It allows for managing and accessing contextual information throughout the execution of a program.
Example
from langchain_core.beta.runnables.context import Context from langchain_core.runnables.passthrough import RunnablePassthrough from langchain_core.prompts.prompt import PromptTemplate from langchain_core.output_parsers.string import StrOutputParser from tests.unit_tests.fake.llm import FakeListLLM chain = ( Context.setter("input") | { "context": RunnablePassthrough() | Context.setter("context"), "question": RunnablePassthrough(), } | PromptTemplate.from_template("{context} {question}") | FakeListLLM(responses=["hello"]) | StrOutputParser() | { "result": RunnablePassthrough(), "context": Context.getter("context"), "input": Context.getter("input"), } ) # Use the chain output = chain.invoke("What's your name?") print(output["result"]) # Output: "hello" print(output["context"]) # Output: "What's your name?" print(output["input"]) # Output: "What's your name?
Methods
__init__
()create_scope
(scope, /)Create a context scope.
getter
(key, /)setter
([_key, _value])- __init__()¶
- static create_scope(scope: str, /) PrefixContext [source]¶
Create a context scope.
- Parameters
scope (str) – The scope.
- Returns
The context scope.
- Return type
- static getter(key: Union[str, List[str]], /) ContextGet [source]¶
- Parameters
key (Union[str, List[str]]) –
- Return type
- static setter(_key: Optional[str] = None, _value: Optional[Union[Runnable[Input, Output], Callable[[Input], Output], Callable[[Input], Awaitable[Output]], Any]] = None, /, **kwargs: Union[Runnable[Input, Output], Callable[[Input], Output], Callable[[Input], Awaitable[Output]], Any]) ContextSet [source]¶
- Parameters
- Return type