langchain-cohere

An integration package connecting Cohere and LangChain

MIT 38 个版本 Python <4.0,>=3.10
安装
pip install langchain-cohere
poetry add langchain-cohere
pipenv install langchain-cohere
conda install langchain-cohere
描述

Langchain-Cohere

This package contains the LangChain integrations for Cohere.

Cohere empowers every developer and enterprise to build amazing products and capture true business value with language AI.

Installation

  • Install the langchain-cohere package:
pip install langchain-cohere
  • Get a Cohere API key and set it as an environment variable (COHERE_API_KEY)

Migration from langchain-community

Cohere's integrations used to be part of the langchain-community package, but since version 0.0.30 the integration in langchain-community has been deprecated in favour langchain-cohere.

The two steps to migrate are:

  1. Import from langchain_cohere instead of langchain_community, for example:

    • from langchain_community.chat_models import ChatCohere -> from langchain_cohere import ChatCohere
    • from langchain_community.retrievers import CohereRagRetriever -> from langchain_cohere import CohereRagRetriever
    • from langchain.embeddings import CohereEmbeddings -> from langchain_cohere import CohereEmbeddings
    • from langchain.retrievers.document_compressors import CohereRerank -> from langchain_cohere import CohereRerank
  2. The Cohere Python SDK version is now managed by this package and only v5+ is supported.

    • There's no longer a need to specify cohere as a dependency in requirements.txt/pyproject.toml (etc.)

Supported LangChain Integrations

API description Endpoint docs Import Example usage
Chat Build chat bots chat from langchain_cohere import ChatCohere notebook
RAG Retriever Connect to external data sources chat + rag from langchain_cohere import CohereRagRetriever notebook
Text Embedding Embed strings to vectors embed from langchain_cohere import CohereEmbeddings notebook
Rerank Retriever Rank strings based on relevance rerank from langchain_cohere import CohereRerank notebook
ReAct Agent Let the model choose a sequence of actions to take chat + rag from langchain_cohere.react_multi_hop.agent import create_cohere_react_agent notebook

Usage Examples

Chat

from langchain_cohere import ChatCohere
from langchain_core.messages import HumanMessage

llm = ChatCohere()

messages = [HumanMessage(content="Hello, can you introduce yourself?")]
print(llm.invoke(messages))

Vision (Image Inputs)

Command A Vision models can process images alongside text. Supports both URL and base64-encoded images.

from langchain_cohere import ChatCohere
from langchain_core.messages import HumanMessage

# Initialize the vision model
llm = ChatCohere(model="command-a-vision-07-2025")

# Using an image URL
message = HumanMessage(
    content=[
        {"type": "text", "text": "What's in this image?"},
        {
            "type": "image_url",
            "image_url": {"url": "https://example.com/image.jpg"}
        }
    ]
)
response = llm.invoke([message])
print(response.content)

# Using a base64-encoded image with detail level
message = HumanMessage(
    content=[
        {"type": "text", "text": "Describe this chart in detail"},
        {
            "type": "image_url",
            "image_url": {
                "url": "data:image/png;base64,iVBORw0KG...",
                "detail": "high"  # Options: "low", "high", or "auto" (default)
            }
        }
    ]
)
response = llm.invoke([message])
print(response.content)

# Multiple images
message = HumanMessage(
    content=[
        {"type": "text", "text": "Compare these images"},
        {"type": "image_url", "image_url": {"url": "https://example.com/image1.jpg"}},
        {"type": "image_url", "image_url": {"url": "https://example.com/image2.jpg"}}
    ]
)
response = llm.invoke([message])
print(response.content)

Image Requirements:

  • Maximum 20 images per request or 20MB total
  • Supported formats: PNG, JPEG, WEBP, non-animated GIF
  • Detail levels affect token usage:
    • "low": 256 tokens per image (faster, lower cost)
    • "high": More tokens based on image size (better quality)
    • "auto": Automatically selects appropriate detail level

For more information, see Cohere's Vision documentation.

ReAct Agent

from langchain_community.tools.tavily_search import TavilySearchResults
from langchain_cohere import ChatCohere, create_cohere_react_agent
from langchain.prompts import ChatPromptTemplate
from langchain.agents import AgentExecutor

llm = ChatCohere()

internet_search = TavilySearchResults(max_results=4)
internet_search.name = "internet_search"
internet_search.description = "Route a user query to the internet"

prompt = ChatPromptTemplate.from_template("{input}")

agent = create_cohere_react_agent(
    llm,
    [internet_search],
    prompt
)

agent_executor = AgentExecutor(agent=agent, tools=[internet_search], verbose=True)

agent_executor.invoke({
    "input": "In what year was the company that was founded as Sound of Music added to the S&P 500?",
})

RAG Retriever

from langchain_cohere import ChatCohere, CohereRagRetriever

rag = CohereRagRetriever(llm=ChatCohere())
print(rag.get_relevant_documents("Who are Cohere?"))

Text Embedding

from langchain_cohere import CohereEmbeddings

embeddings = CohereEmbeddings(model="embed-english-light-v3.0")
print(embeddings.embed_documents(["This is a test document."]))

Contributing

Contributions to this project are welcomed and appreciated. The LangChain contribution guide has instructions on how to setup a local environment and contribute pull requests.

版本列表
0.6.0 2026-06-01
0.5.1 2026-04-15
0.5.0 2025-11-04
0.4.6 2025-09-12
0.4.5 2025-08-04
0.4.4 2025-04-11
0.4.3 2025-03-13
0.4.2 2025-01-24
0.4.1 2025-01-23
0.3.5 2025-01-21
0.3.4 2024-12-20
0.3.3 2024-11-27
0.3.2 2024-11-21
0.3.1 2024-10-14
0.3.0 2024-09-14
0.3.0.dev2 2024-09-10
0.2.4 2024-09-04
0.2.3 2024-08-27
0.2.2 2024-08-13
0.2.1 2024-08-12
0.2.0 2024-07-31
0.2.1rc0 2024-08-06
0.1.9 2024-07-10
0.1.8 2024-06-17
0.1.7 2024-06-11
0.1.5 2024-05-15
0.1.4 2024-04-24
0.1.3 2024-04-17
0.1.2 2024-04-11
0.1.1 2024-04-08
0.1.0 2024-04-02
0.1.4rc1 2024-04-22
0.1.4rc0 2024-04-18
0.1.3rc1 2024-04-17
0.1.3rc0 2024-04-12
0.1.1rc0 2024-04-05
0.1.0rc1 2024-03-28
0.1.0rc0 2024-03-25