Baseten
Baseten 提供了部署和提供 ML 模型的所有基础设施,具有高性能、可扩展和高效的成本。
此示例演示了如何在 Baseten 上使用 Langchain 部署模型。
设置
要运行此笔记本,您需要一个 Baseten 账户 和一个 API 密钥。
您还需要安装 Baseten Python 包:
pip install baseten
import baseten
baseten.login("YOUR_API_KEY")
单个模型调用
首先,您需要将模型部署到 Baseten。
您可以从 Baseten 模型库 一键部署基础模型,如 WizardLM 和 Alpaca,或者如果您有自己的模型,使用本教程部署它。
在此示例中,我们将使用 WizardLM。在此处部署 WizardLM,并按照部署的 模型版本 ID 进行操作。
from langchain.llms import Baseten
# 加载模型
wizardlm = Baseten(model="MODEL_VERSION_ID", verbose=True)
# 提示模型
wizardlm("巫师和巫术师之间的区别是什么?")
链式模型调用
我们可以将多个调用链接在一起,使用一个或多个模型,这就是 Langchain 的全部意义!
此示例使用 WizardLM 计划一顿饭,包括一道主菜、三道配菜以及一种酒精饮料和一种非酒精饮料的搭配。
from langchain.chains import SimpleSequentialChain
from langchain import PromptTemplate, LLMChain
# 构建链中的第一个环节
prompt = PromptTemplate(
input_variables=["cuisine"],
template="为 {cuisine} 晚餐命名一道复杂的主菜。只回答一个菜名。",
)
link_one = LLMChain(llm=wizardlm, prompt=prompt)
# 构建链中的第二个环节
prompt = PromptTemplate(
input_variables=["entree"],
template="有哪三种配菜可以搭配 {entree}。只回答一个配菜列表。",
)
link_two = LLMChain(llm=wizardlm, prompt=prompt)
# 构建链中的第三个环节
prompt = PromptTemplate(
input_variables=["sides"],
template="有哪一种酒精饮料和一种非酒精饮料可以与这些配菜搭配:{sides}。只回答饮料的名称。",
)
link_three = LLMChain(llm=wizardlm, prompt=prompt)
# 运行完整的链!
menu_maker = SimpleSequentialChain(
chains=[link_one, link_two, link_three], verbose=True
)
menu_maker.run("南印度菜")