_convert_message_to_dict() — langchain Function Reference
Architecture documentation for the _convert_message_to_dict() function in chat_models.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD b36238d4_3fcc_a7ef_cadf_a0901de86384["_convert_message_to_dict()"] 21b8cbde_a9dc_13d6_83f9_010248e2bfc8["chat_models.py"] b36238d4_3fcc_a7ef_cadf_a0901de86384 -->|defined in| 21b8cbde_a9dc_13d6_83f9_010248e2bfc8 db2ab649_5bf1_261f_34a0_aed78a625fdf["_create_message_dicts()"] db2ab649_5bf1_261f_34a0_aed78a625fdf -->|calls| b36238d4_3fcc_a7ef_cadf_a0901de86384 79153718_44df_faf2_a635_ffa396d910fa["_lc_tool_call_to_fireworks_tool_call()"] b36238d4_3fcc_a7ef_cadf_a0901de86384 -->|calls| 79153718_44df_faf2_a635_ffa396d910fa b85528ae_3f70_4d07_7eae_7823cb963ca8["_lc_invalid_tool_call_to_fireworks_tool_call()"] b36238d4_3fcc_a7ef_cadf_a0901de86384 -->|calls| b85528ae_3f70_4d07_7eae_7823cb963ca8 style b36238d4_3fcc_a7ef_cadf_a0901de86384 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
libs/partners/fireworks/langchain_fireworks/chat_models.py lines 158–216
def _convert_message_to_dict(message: BaseMessage) -> dict:
"""Convert a LangChain message to a dictionary.
Args:
message: The LangChain message.
Returns:
The dictionary.
"""
message_dict: dict[str, Any]
if isinstance(message, ChatMessage):
message_dict = {"role": message.role, "content": message.content}
elif isinstance(message, HumanMessage):
message_dict = {"role": "user", "content": message.content}
elif isinstance(message, AIMessage):
# Translate v1 content
if message.response_metadata.get("output_version") == "v1":
message = _convert_from_v1_to_chat_completions(message)
message_dict = {"role": "assistant", "content": message.content}
if "function_call" in message.additional_kwargs:
message_dict["function_call"] = message.additional_kwargs["function_call"]
# If function call only, content is None not empty string
if message_dict["content"] == "":
message_dict["content"] = None
if message.tool_calls or message.invalid_tool_calls:
message_dict["tool_calls"] = [
_lc_tool_call_to_fireworks_tool_call(tc) for tc in message.tool_calls
] + [
_lc_invalid_tool_call_to_fireworks_tool_call(tc)
for tc in message.invalid_tool_calls
]
elif "tool_calls" in message.additional_kwargs:
message_dict["tool_calls"] = message.additional_kwargs["tool_calls"]
# If tool calls only, content is None not empty string
if "tool_calls" in message_dict and message_dict["content"] == "":
message_dict["content"] = None
else:
pass
elif isinstance(message, SystemMessage):
message_dict = {"role": "system", "content": message.content}
elif isinstance(message, FunctionMessage):
message_dict = {
"role": "function",
"content": message.content,
"name": message.name,
}
elif isinstance(message, ToolMessage):
message_dict = {
"role": "tool",
"content": message.content,
"tool_call_id": message.tool_call_id,
}
else:
msg = f"Got unknown type {message}"
raise TypeError(msg)
if "name" in message.additional_kwargs:
message_dict["name"] = message.additional_kwargs["name"]
return message_dict
Domain
Subdomains
Called By
Source
Frequently Asked Questions
What does _convert_message_to_dict() do?
_convert_message_to_dict() is a function in the langchain codebase, defined in libs/partners/fireworks/langchain_fireworks/chat_models.py.
Where is _convert_message_to_dict() defined?
_convert_message_to_dict() is defined in libs/partners/fireworks/langchain_fireworks/chat_models.py at line 158.
What does _convert_message_to_dict() call?
_convert_message_to_dict() calls 2 function(s): _lc_invalid_tool_call_to_fireworks_tool_call, _lc_tool_call_to_fireworks_tool_call.
What calls _convert_message_to_dict()?
_convert_message_to_dict() is called by 1 function(s): _create_message_dicts.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free