Home / Function/ _convert_message_to_dict() — langchain Function Reference

_convert_message_to_dict() — langchain Function Reference

Architecture documentation for the _convert_message_to_dict() function in huggingface.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  afa2f960_1285_3e53_3b4d_ef08d41d03d1["_convert_message_to_dict()"]
  d84d1503_7d4c_e393_0d48_409c5faa5e2d["huggingface.py"]
  afa2f960_1285_3e53_3b4d_ef08d41d03d1 -->|defined in| d84d1503_7d4c_e393_0d48_409c5faa5e2d
  4c7378b7_670a_b9c9_e573_d0052d7e8308["_create_message_dicts()"]
  4c7378b7_670a_b9c9_e573_d0052d7e8308 -->|calls| afa2f960_1285_3e53_3b4d_ef08d41d03d1
  41b39e2b_8d97_4cd7_2e4c_48ac19f2d8e7["_lc_tool_call_to_hf_tool_call()"]
  afa2f960_1285_3e53_3b4d_ef08d41d03d1 -->|calls| 41b39e2b_8d97_4cd7_2e4c_48ac19f2d8e7
  9c5cbe34_6385_0c12_5fd0_7ffc20dfd1d3["_lc_invalid_tool_call_to_hf_tool_call()"]
  afa2f960_1285_3e53_3b4d_ef08d41d03d1 -->|calls| 9c5cbe34_6385_0c12_5fd0_7ffc20dfd1d3
  style afa2f960_1285_3e53_3b4d_ef08d41d03d1 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

libs/partners/huggingface/langchain_huggingface/chat_models/huggingface.py lines 125–180

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):
        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_hf_tool_call(tc) for tc in message.tool_calls
            ] + [
                _lc_invalid_tool_call_to_hf_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

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/huggingface/langchain_huggingface/chat_models/huggingface.py.
Where is _convert_message_to_dict() defined?
_convert_message_to_dict() is defined in libs/partners/huggingface/langchain_huggingface/chat_models/huggingface.py at line 125.
What does _convert_message_to_dict() call?
_convert_message_to_dict() calls 2 function(s): _lc_invalid_tool_call_to_hf_tool_call, _lc_tool_call_to_hf_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