Skip to main content

An integration package connecting Cohere and LangChain

Project description

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))

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

langchain_cohere-0.2.2.tar.gz (36.1 kB view details)

Uploaded Source

Built Distribution

langchain_cohere-0.2.2-py3-none-any.whl (43.3 kB view details)

Uploaded Python 3

File details

Details for the file langchain_cohere-0.2.2.tar.gz.

File metadata

  • Download URL: langchain_cohere-0.2.2.tar.gz
  • Upload date:
  • Size: 36.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for langchain_cohere-0.2.2.tar.gz
Algorithm Hash digest
SHA256 2f38bd6df5063b40cbe3b610d54a70d916c5cf1f5ae29bd5a60a4659fefca4e9
MD5 2d31f68364b45b4e03d9e6e69ea1db25
BLAKE2b-256 4e8c2587977c2d6239d2859ff17d8456260cf1714053992c7c084bcaeda25aec

See more details on using hashes here.

File details

Details for the file langchain_cohere-0.2.2-py3-none-any.whl.

File metadata

File hashes

Hashes for langchain_cohere-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 e8c7e81281c3acd367f830e3f52f03fc4d88a0bf04ef9b2dbd34166c4c22f396
MD5 645f3ee93a41934d33c51b043667a17e
BLAKE2b-256 0ad4111810528fa679d39d98fe9173d553f4795b0d6159bd36911c6b23c94a93

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page