_moderate_output() — langchain Function Reference
Architecture documentation for the _moderate_output() function in openai_moderation.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD 171f9009_f0c5_1fb7_2224_0686c89f7a33["_moderate_output()"] 48713c67_3a9a_ec9e_ec74_46e6955f07bd["OpenAIModerationMiddleware"] 171f9009_f0c5_1fb7_2224_0686c89f7a33 -->|defined in| 48713c67_3a9a_ec9e_ec74_46e6955f07bd d785fd03_0ba8_5b39_5297_f8614287fbc5["after_model()"] d785fd03_0ba8_5b39_5297_f8614287fbc5 -->|calls| 171f9009_f0c5_1fb7_2224_0686c89f7a33 1837f115_98c9_8c34_1443_f85d68c85154["_find_last_index()"] 171f9009_f0c5_1fb7_2224_0686c89f7a33 -->|calls| 1837f115_98c9_8c34_1443_f85d68c85154 f339afc9_dc76_818a_622f_e3da922e8e0c["_extract_text()"] 171f9009_f0c5_1fb7_2224_0686c89f7a33 -->|calls| f339afc9_dc76_818a_622f_e3da922e8e0c 00b44df2_8039_fbfd_6b56_82201884b43b["_moderate()"] 171f9009_f0c5_1fb7_2224_0686c89f7a33 -->|calls| 00b44df2_8039_fbfd_6b56_82201884b43b 59081f65_8455_8937_22b3_f7febac7b501["_apply_violation()"] 171f9009_f0c5_1fb7_2224_0686c89f7a33 -->|calls| 59081f65_8455_8937_22b3_f7febac7b501 style 171f9009_f0c5_1fb7_2224_0686c89f7a33 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
libs/partners/openai/langchain_openai/middleware/openai_moderation.py lines 232–250
def _moderate_output(
self, messages: Sequence[BaseMessage]
) -> dict[str, Any] | None:
last_ai_idx = self._find_last_index(messages, AIMessage)
if last_ai_idx is None:
return None
ai_message = messages[last_ai_idx]
text = self._extract_text(ai_message)
if not text:
return None
result = self._moderate(text)
if not result.flagged:
return None
return self._apply_violation(
messages, index=last_ai_idx, stage="output", content=text, result=result
)
Domain
Subdomains
Called By
Source
Frequently Asked Questions
What does _moderate_output() do?
_moderate_output() is a function in the langchain codebase, defined in libs/partners/openai/langchain_openai/middleware/openai_moderation.py.
Where is _moderate_output() defined?
_moderate_output() is defined in libs/partners/openai/langchain_openai/middleware/openai_moderation.py at line 232.
What does _moderate_output() call?
_moderate_output() calls 4 function(s): _apply_violation, _extract_text, _find_last_index, _moderate.
What calls _moderate_output()?
_moderate_output() is called by 1 function(s): after_model.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free