ChatPipeshift
这将帮助您开始使用 Pipeshift 聊天模型。有关所有 ChatPipeshift 功能和配置的详细文档,请访问 API 参考。
概览
集成细节
| Class | 包 | 本地 | 序列化 | JS支持 | Package downloads | Package 最新版本 |
|---|---|---|---|---|---|---|
| ChatPipeshift | langchain-pipeshift | ❌ | - | ❌ |
模型特性
| 工具调用 | 结构化输出 | JSON 模式 | 图像输入 | 音频输入 | 视频输入 | Token级流式传输 | 原生异步 | Token 使用 | 对数概率 |
|---|---|---|---|---|---|---|---|---|---|
| ❌ | ❌ | ✅ | ✅ | ❌ | ❌ | ✅ | ✅ | ✅ | - |
设置
要访问Pipeshift模型,您需要在Pipeshift上创建一个账户,获取API密钥,并安装langchain-pipeshift集成包。
Credentials
Head to Pipeshift to sign up to Pipeshift and generate an API key. Once you've done this set the PIPESHIFT_API_KEY environment variable:
import getpass
import os
if not os.getenv("PIPESHIFT_API_KEY"):
os.environ["PIPESHIFT_API_KEY"] = getpass.getpass("Enter your Pipeshift API key: ")
如果您希望自动跟踪模型调用,也可以通过取消注释下方的代码来设置您的LangSmith API密钥:
# os.environ["LANGSMITH_TRACING"] = "true"
# os.environ["LANGSMITH_API_KEY"] = getpass.getpass("Enter your LangSmith API key: ")
安装
LangChain Pipeshift 整合存在于 langchain-pipeshift 包中:
%pip install -qU langchain-pipeshift
Note: you may need to restart the kernel to use updated packages.
Instantiation
现在我们就可以实例化我们的模型对象并生成聊天完成内容:
from langchain_pipeshift import ChatPipeshift
llm = ChatPipeshift(
model="meta-llama/Meta-Llama-3.1-8B-Instruct",
temperature=0,
max_tokens=512,
# other params...
)
Invocation
messages = [
(
"system",
"You are a helpful assistant that translates English to French. Translate the user sentence.",
),
("human", "I love programming."),
]
ai_msg = llm.invoke(messages)
ai_msg
AIMessage(content='Here is the translation:\n\nJe suis amoureux du programme. \n\nHowever, a more common translation would be:\n\nJ\'aime programmer.\n\nNote that "Je suis amoureux" typically implies romantic love, whereas "J\'aime" is a more casual way to express affection or enjoyment for an activity, in this case, programming.', additional_kwargs={}, response_metadata={}, id='run-5cad8e5c-d089-44a8-8dcd-22736cde7d7b-0')
print(ai_msg.content)
Here is the translation:
Je suis amoureux du programme.
However, a more common translation would be:
J'aime programmer.
Note that "Je suis amoureux" typically implies romantic love, whereas "J'aime" is a more casual way to express affection or enjoyment for an activity, in this case, programming.
链式调用
我们可以通过以下方式将模型与提示模板进行链接:
from langchain_core.prompts import ChatPromptTemplate
prompt = ChatPromptTemplate(
[
(
"system",
"You are a helpful assistant that translates {input_language} to {output_language}.",
),
("human", "{input}"),
]
)
chain = prompt | llm
chain.invoke(
{
"input_language": "English",
"output_language": "German",
"input": "I love programming.",
}
)
API 参考:ChatPromptTemplate
AIMessage(content="Das ist schön! Du liebst Programmieren! (That's great! You love programming!)\n\nWould you like to know the German translation of a specific programming-related term or phrase, or would you like me to help you with something else?", additional_kwargs={}, response_metadata={}, id='run-8a4b7d56-23d9-43a7-8fb2-e05f556d94bd-0')
API 参考
详细介绍了所有ChatPipeshift功能和配置的文档,请访问API参考:https://dashboard.pipeshift.com/docs