Skip to main content

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("南印度菜")