langchain/libs/partners/ai21
Erick Friis 6cc6faa00e
ai21: init package (#17592)
Co-authored-by: Asaf Gardin <asafg@ai21.com>
Co-authored-by: etang <etang@ai21.com>
Co-authored-by: asafgardin <147075902+asafgardin@users.noreply.github.com>
2024-02-15 12:25:05 -08:00
..
langchain_ai21 ai21: init package (#17592) 2024-02-15 12:25:05 -08:00
scripts ai21: init package (#17592) 2024-02-15 12:25:05 -08:00
tests ai21: init package (#17592) 2024-02-15 12:25:05 -08:00
.gitignore ai21: init package (#17592) 2024-02-15 12:25:05 -08:00
LICENSE ai21: init package (#17592) 2024-02-15 12:25:05 -08:00
Makefile ai21: init package (#17592) 2024-02-15 12:25:05 -08:00
poetry.lock ai21: init package (#17592) 2024-02-15 12:25:05 -08:00
pyproject.toml ai21: init package (#17592) 2024-02-15 12:25:05 -08:00
README.md ai21: init package (#17592) 2024-02-15 12:25:05 -08:00

langchain-ai21

This package contains the LangChain integrations for AI21 through their AI21 SDK.

Installation and Setup

  • Install the AI21 partner package
pip install langchain-ai21
  • Get an AI21 api key and set it as an environment variable (AI21_API_KEY)

Chat Models

This package contains the ChatAI21 class, which is the recommended way to interface with AI21 Chat models.

To use, install the requirements, and configure your environment.

export AI21_API_KEY=your-api-key

Then initialize

from langchain_core.messages import HumanMessage
from langchain_ai21.chat_models import ChatAI21

chat = ChatAI21(model="j2-ultra")
messages = [HumanMessage(content="Hello from AI21")]
chat.invoke(messages)

LLMs

You can use AI21's generative AI models as Langchain LLMs:

from langchain.prompts import PromptTemplate
from langchain_ai21 import AI21LLM

llm = AI21LLM(model="j2-ultra")

template = """Question: {question}

Answer: Let's think step by step."""
prompt = PromptTemplate.from_template(template)

chain = prompt | llm

question = "Which scientist discovered relativity?"
print(chain.invoke({"question": question}))

Embeddings

You can use AI21's embeddings models as:

Query

from langchain_ai21 import AI21Embeddings

embeddings = AI21Embeddings()
embeddings.embed_query("Hello! This is some query")

Document

from langchain_ai21 import AI21Embeddings

embeddings = AI21Embeddings()
embeddings.embed_documents(["Hello! This is document 1", "And this is document 2!"])