Skip to main content

Context

Context - 用于AI聊天机器人的产品分析

Context为AI聊天机器人提供产品分析。

Context帮助您了解用户如何与您的AI聊天产品进行交互。获得关键见解,优化差劲的体验,并将品牌风险降至最低。

在本指南中,我们将向您展示如何与Context集成。

安装和设置

$ pip install context-python --upgrade

获取API凭据

要获取您的ContextAPI令牌:

  1. 转到Context帐户的设置页面(https://go.getcontext.ai/settings)。
  2. 生成一个新的API令牌。
  3. 将此令牌存储在安全的位置。

设置Context

要使用ContextCallbackHandler,请从Langchain导入处理程序,并使用您的ContextAPI令牌对其进行实例化。

在使用处理程序之前,请确保已安装context-python包。

import os

from langchain.callbacks import ContextCallbackHandler

token = os.environ["CONTEXT_API_TOKEN"]

context_callback = ContextCallbackHandler(token)

用法

在聊天模型中使用Context回调

Context回调处理程序可用于直接记录用户和AI助手之间的对话。

示例

import os

from langchain.chat_models import ChatOpenAI
from langchain.schema import (
SystemMessage,
HumanMessage,
)
from langchain.callbacks import ContextCallbackHandler

token = os.environ["CONTEXT_API_TOKEN"]

chat = ChatOpenAI(
headers={"user_id": "123"}, temperature=0, callbacks=[ContextCallbackHandler(token)]
)

messages = [
SystemMessage(
content="You are a helpful assistant that translates English to French."
),
HumanMessage(content="I love programming."),
]

print(chat(messages))

在链中使用Context回调

Context回调处理程序还可用于记录链的输入和输出。请注意,链的中间步骤不会被记录 - 只记录起始输入和最终输出。

注意:确保将相同的Context对象传递给聊天模型和链。

错误:

chat = ChatOpenAI(temperature=0.9, callbacks=[ContextCallbackHandler(token)])
chain = LLMChain(llm=chat, prompt=chat_prompt_template, callbacks=[ContextCallbackHandler(token)])

正确:

handler = ContextCallbackHandler(token)
chat = ChatOpenAI(temperature=0.9, callbacks=[callback])
chain = LLMChain(llm=chat, prompt=chat_prompt_template, callbacks=[callback])

示例

import os

from langchain.chat_models import ChatOpenAI
from langchain import LLMChain
from langchain.prompts import PromptTemplate
from langchain.prompts.chat import (
ChatPromptTemplate,
HumanMessagePromptTemplate,
)
from langchain.callbacks import ContextCallbackHandler

token = os.environ["CONTEXT_API_TOKEN"]

human_message_prompt = HumanMessagePromptTemplate(
prompt=PromptTemplate(
template="What is a good name for a company that makes {product}?",
input_variables=["product"],
)
)
chat_prompt_template = ChatPromptTemplate.from_messages([human_message_prompt])
callback = ContextCallbackHandler(token)
chat = ChatOpenAI(temperature=0.9, callbacks=[callback])
chain = LLMChain(llm=chat, prompt=chat_prompt_template, callbacks=[callback])
print(chain.run("colorful socks"))