From 00e7b2dada9085aad12ec47e7bd84089bad1d2bc Mon Sep 17 00:00:00 2001 From: ccurme Date: Tue, 12 Nov 2024 15:17:02 -0500 Subject: [PATCH] anthropic[patch]: add examples to API ref (#28065) --- .../langchain_anthropic/chat_models.py | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/libs/partners/anthropic/langchain_anthropic/chat_models.py b/libs/partners/anthropic/langchain_anthropic/chat_models.py index 20641c3862213..2ed41036767df 100644 --- a/libs/partners/anthropic/langchain_anthropic/chat_models.py +++ b/libs/partners/anthropic/langchain_anthropic/chat_models.py @@ -1128,6 +1128,51 @@ def get_num_tokens_from_messages( tools: If provided, sequence of dict, BaseModel, function, or BaseTools to be converted to tool schemas. + Basic usage: + .. code-block:: python + + from langchain_anthropic import ChatAnthropic + from langchain_core.messages import HumanMessage, SystemMessage + + llm = ChatAnthropic(model="claude-3-5-sonnet-20241022") + + messages = [ + SystemMessage(content="You are a scientist"), + HumanMessage(content="Hello, Claude"), + ] + llm.get_num_tokens_from_messages(messages) + + .. code-block:: none + + 14 + + Pass tool schemas: + .. code-block:: python + + from langchain_anthropic import ChatAnthropic + from langchain_core.messages import HumanMessage + from langchain_core.tools import tool + + llm = ChatAnthropic(model="claude-3-5-sonnet-20241022") + + @tool(parse_docstring=True) + def get_weather(location: str) -> str: + \"\"\"Get the current weather in a given location + + Args: + location: The city and state, e.g. San Francisco, CA + \"\"\" + return "Sunny" + + messages = [ + HumanMessage(content="What's the weather like in San Francisco?"), + ] + llm.get_num_tokens_from_messages(messages, tools=[get_weather]) + + .. code-block:: none + + 403 + .. versionchanged:: 0.3.0 Uses Anthropic's token counting API to count tokens in messages. See: