test_openai_functions_router() — langchain Function Reference
Architecture documentation for the test_openai_functions_router() function in test_openai_functions.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD 559655d4_bcb5_1063_083e_99ec09827b90["test_openai_functions_router()"] 3902d5af_33d3_b3c3_3360_35220294d3e8["test_openai_functions.py"] 559655d4_bcb5_1063_083e_99ec09827b90 -->|defined in| 3902d5af_33d3_b3c3_3360_35220294d3e8 style 559655d4_bcb5_1063_083e_99ec09827b90 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
libs/langchain/tests/unit_tests/runnables/test_openai_functions.py lines 44–97
def test_openai_functions_router(
snapshot: SnapshotAssertion,
mocker: MockerFixture,
) -> None:
revise = mocker.Mock(
side_effect=lambda kw: f"Revised draft: no more {kw['notes']}!",
)
accept = mocker.Mock(side_effect=lambda kw: f"Accepted draft: {kw['draft']}!")
router = OpenAIFunctionsRouter(
{
"revise": revise,
"accept": accept,
},
functions=[
{
"name": "revise",
"description": "Sends the draft for revision.",
"parameters": {
"type": "object",
"properties": {
"notes": {
"type": "string",
"description": "The editor's notes to guide the revision.",
},
},
},
},
{
"name": "accept",
"description": "Accepts the draft.",
"parameters": {
"type": "object",
"properties": {
"draft": {
"type": "string",
"description": "The draft to accept.",
},
},
},
},
],
)
model = FakeChatOpenAI()
chain = model.bind(functions=router.functions) | router
assert router.functions == snapshot
assert chain.invoke("Something about turtles?") == "Accepted draft: turtles!"
revise.assert_not_called()
accept.assert_called_once_with({"draft": "turtles"})
Domain
Subdomains
Source
Frequently Asked Questions
What does test_openai_functions_router() do?
test_openai_functions_router() is a function in the langchain codebase, defined in libs/langchain/tests/unit_tests/runnables/test_openai_functions.py.
Where is test_openai_functions_router() defined?
test_openai_functions_router() is defined in libs/langchain/tests/unit_tests/runnables/test_openai_functions.py at line 44.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free