langchain_community.callbacks.streamlit.streamlit_callback_handler
.StreamlitCallbackHandler¶
- class langchain_community.callbacks.streamlit.streamlit_callback_handler.StreamlitCallbackHandler(parent_container: DeltaGenerator, *, max_thought_containers: int = 4, expand_new_thoughts: bool = True, collapse_completed_thoughts: bool = True, thought_labeler: Optional[LLMThoughtLabeler] = None)[source]¶
Callback handler that writes to a Streamlit app.
Create a StreamlitCallbackHandler instance.
- Parameters
parent_container (DeltaGenerator) – The st.container that will contain all the Streamlit elements that the Handler creates.
max_thought_containers (int) – The max number of completed LLM thought containers to show at once. When this threshold is reached, a new thought will cause the oldest thoughts to be collapsed into a “History” expander. Defaults to 4.
expand_new_thoughts (bool) – Each LLM “thought” gets its own st.expander. This param controls whether that expander is expanded by default. Defaults to True.
collapse_completed_thoughts (bool) – If True, LLM thought expanders will be collapsed when completed. Defaults to True.
thought_labeler (Optional[LLMThoughtLabeler]) – An optional custom LLMThoughtLabeler instance. If unspecified, the handler will use the default thought labeling logic. Defaults to None.
Attributes
ignore_agent
Whether to ignore agent callbacks.
ignore_chain
Whether to ignore chain callbacks.
ignore_chat_model
Whether to ignore chat model callbacks.
ignore_llm
Whether to ignore LLM callbacks.
ignore_retriever
Whether to ignore retriever callbacks.
ignore_retry
Whether to ignore retry callbacks.
raise_error
run_inline
Methods
__init__
(parent_container, *[, ...])Create a StreamlitCallbackHandler instance.
on_agent_action
(action[, color])Run on agent action.
on_agent_finish
(finish[, color])Run on agent end.
on_chain_end
(outputs, **kwargs)Run when chain ends running.
on_chain_error
(error, **kwargs)Run when chain errors.
on_chain_start
(serialized, inputs, **kwargs)Run when chain starts running.
on_chat_model_start
(serialized, messages, *, ...)Run when a chat model starts running.
on_llm_end
(response, **kwargs)Run when LLM ends running.
on_llm_error
(error, **kwargs)Run when LLM errors. :param error: The error that occurred. :type error: BaseException :param kwargs: Additional keyword arguments. - response (LLMResult): The response which was generated before the error occurred. :type kwargs: Any.
on_llm_new_token
(token, **kwargs)Run on new LLM token.
on_llm_start
(serialized, prompts, **kwargs)Run when LLM starts running.
on_retriever_end
(documents, *, run_id[, ...])Run when Retriever ends running.
on_retriever_error
(error, *, run_id[, ...])Run when Retriever errors.
on_retriever_start
(serialized, query, *, run_id)Run when Retriever starts running.
on_retry
(retry_state, *, run_id[, parent_run_id])Run on a retry event.
on_text
(text[, color, end])Run on arbitrary text.
on_tool_end
(output[, color, ...])Run when tool ends running.
on_tool_error
(error, **kwargs)Run when tool errors.
on_tool_start
(serialized, input_str, **kwargs)Run when tool starts running.
- __init__(parent_container: DeltaGenerator, *, max_thought_containers: int = 4, expand_new_thoughts: bool = True, collapse_completed_thoughts: bool = True, thought_labeler: Optional[LLMThoughtLabeler] = None)[source]¶
Create a StreamlitCallbackHandler instance.
- Parameters
parent_container (DeltaGenerator) – The st.container that will contain all the Streamlit elements that the Handler creates.
max_thought_containers (int) – The max number of completed LLM thought containers to show at once. When this threshold is reached, a new thought will cause the oldest thoughts to be collapsed into a “History” expander. Defaults to 4.
expand_new_thoughts (bool) – Each LLM “thought” gets its own st.expander. This param controls whether that expander is expanded by default. Defaults to True.
collapse_completed_thoughts (bool) – If True, LLM thought expanders will be collapsed when completed. Defaults to True.
thought_labeler (Optional[LLMThoughtLabeler]) – An optional custom LLMThoughtLabeler instance. If unspecified, the handler will use the default thought labeling logic. Defaults to None.
- on_agent_action(action: AgentAction, color: Optional[str] = None, **kwargs: Any) Any [source]¶
Run on agent action.
- Parameters
action (AgentAction) –
color (Optional[str]) –
kwargs (Any) –
- Return type
Any
- on_agent_finish(finish: AgentFinish, color: Optional[str] = None, **kwargs: Any) None [source]¶
Run on agent end.
- Parameters
finish (AgentFinish) –
color (Optional[str]) –
kwargs (Any) –
- Return type
None
- on_chain_end(outputs: Dict[str, Any], **kwargs: Any) None [source]¶
Run when chain ends running.
- Parameters
outputs (Dict[str, Any]) –
kwargs (Any) –
- Return type
None
- on_chain_error(error: BaseException, **kwargs: Any) None [source]¶
Run when chain errors.
- Parameters
error (BaseException) –
kwargs (Any) –
- Return type
None
- on_chain_start(serialized: Dict[str, Any], inputs: Dict[str, Any], **kwargs: Any) None [source]¶
Run when chain starts running.
- Parameters
serialized (Dict[str, Any]) –
inputs (Dict[str, Any]) –
kwargs (Any) –
- Return type
None
- on_chat_model_start(serialized: Dict[str, Any], messages: List[List[BaseMessage]], *, run_id: UUID, parent_run_id: Optional[UUID] = None, tags: Optional[List[str]] = None, metadata: Optional[Dict[str, Any]] = None, **kwargs: Any) Any ¶
Run when a chat model starts running.
- ATTENTION: This method is called for chat models. If you’re implementing
a handler for a non-chat model, you should use on_llm_start instead.
- Parameters
serialized (Dict[str, Any]) –
messages (List[List[BaseMessage]]) –
run_id (UUID) –
parent_run_id (Optional[UUID]) –
tags (Optional[List[str]]) –
metadata (Optional[Dict[str, Any]]) –
kwargs (Any) –
- Return type
Any
- on_llm_end(response: LLMResult, **kwargs: Any) None [source]¶
Run when LLM ends running.
- Parameters
response (LLMResult) –
kwargs (Any) –
- Return type
None
- on_llm_error(error: BaseException, **kwargs: Any) None [source]¶
Run when LLM errors. :param error: The error that occurred. :type error: BaseException :param kwargs: Additional keyword arguments.
- response (LLMResult): The response which was generated before
the error occurred.
- Parameters
error (BaseException) –
kwargs (Any) –
- Return type
None
- on_llm_new_token(token: str, **kwargs: Any) None [source]¶
Run on new LLM token. Only available when streaming is enabled.
- Parameters
token (str) – The new token.
chunk (GenerationChunk | ChatGenerationChunk) – The new generated chunk,
information. (containing content and other) –
kwargs (Any) –
- Return type
None
- on_llm_start(serialized: Dict[str, Any], prompts: List[str], **kwargs: Any) None [source]¶
Run when LLM starts running.
- ATTENTION: This method is called for non-chat models (regular LLMs). If
you’re implementing a handler for a chat model, you should use on_chat_model_start instead.
- Parameters
serialized (Dict[str, Any]) –
prompts (List[str]) –
kwargs (Any) –
- Return type
None
- on_retriever_end(documents: Sequence[Document], *, run_id: UUID, parent_run_id: Optional[UUID] = None, **kwargs: Any) Any ¶
Run when Retriever ends running.
- Parameters
documents (Sequence[Document]) –
run_id (UUID) –
parent_run_id (Optional[UUID]) –
kwargs (Any) –
- Return type
Any
- on_retriever_error(error: BaseException, *, run_id: UUID, parent_run_id: Optional[UUID] = None, **kwargs: Any) Any ¶
Run when Retriever errors.
- Parameters
error (BaseException) –
run_id (UUID) –
parent_run_id (Optional[UUID]) –
kwargs (Any) –
- Return type
Any
- on_retriever_start(serialized: Dict[str, Any], query: str, *, run_id: UUID, parent_run_id: Optional[UUID] = None, tags: Optional[List[str]] = None, metadata: Optional[Dict[str, Any]] = None, **kwargs: Any) Any ¶
Run when Retriever starts running.
- Parameters
serialized (Dict[str, Any]) –
query (str) –
run_id (UUID) –
parent_run_id (Optional[UUID]) –
tags (Optional[List[str]]) –
metadata (Optional[Dict[str, Any]]) –
kwargs (Any) –
- Return type
Any
- on_retry(retry_state: RetryCallState, *, run_id: UUID, parent_run_id: Optional[UUID] = None, **kwargs: Any) Any ¶
Run on a retry event.
- Parameters
retry_state (RetryCallState) –
run_id (UUID) –
parent_run_id (Optional[UUID]) –
kwargs (Any) –
- Return type
Any
- on_text(text: str, color: Optional[str] = None, end: str = '', **kwargs: Any) None [source]¶
Run on arbitrary text.
- Parameters
text (str) –
color (Optional[str]) –
end (str) –
kwargs (Any) –
- Return type
None
- on_tool_end(output: Any, color: Optional[str] = None, observation_prefix: Optional[str] = None, llm_prefix: Optional[str] = None, **kwargs: Any) None [source]¶
Run when tool ends running.
- Parameters
output (Any) –
color (Optional[str]) –
observation_prefix (Optional[str]) –
llm_prefix (Optional[str]) –
kwargs (Any) –
- Return type
None