Hugging Face Hub
Hugging Face Hub 是一个拥有超过 120,000 个模型、20,000 个数据集和 50,000 个演示应用程序(Spaces)的平台,所有这些都是开源的,公开可用的,在这个在线平台上,人们可以轻松地协作和构建机器学习模型。
这个示例展示了如何连接到 Hugging Face Hub
并使用不同的模型。
安装和设置
要使用,您应该安装 huggingface_hub
Python 包。
pip install huggingface_hub
# 获取令牌:https://huggingface.co/docs/api-inference/quicktour#get-your-api-token
from getpass import getpass
HUGGINGFACEHUB_API_TOKEN = getpass()
········
import os
os.environ["HUGGINGFACEHUB_API_TOKEN"] = HUGGINGFACEHUB_API_TOKEN
准备示例
from langchain import HuggingFaceHub
from langchain import PromptTemplate, LLMChain
question = "谁在1994年赢得了FIFA世界杯?"
template = """问题:{question}
答案:让我们一步一步地思考。"""
prompt = PromptTemplate(template=template, input_variables=["question"])
示例
以下是通过 Hugging Face Hub
集成可以访问的一些模型示例。
Flan, 由 Google 提供
repo_id = "google/flan-t5-xxl" # 参见 https://huggingface.co/models?pipeline_tag=text-generation&sort=downloads 获取其他选项
llm = HuggingFaceHub(
repo_id=repo_id, model_kwargs={"temperature": 0.5, "max_length": 64}
)
llm_chain = LLMChain(prompt=prompt, llm=llm)
print(llm_chain.run(question))
FIFA世界杯在1994年举办。西德在1994年赢得了FIFA世界杯
Dolly, 由 Databricks 提供
请参见 Databricks 组织页面获取可用模型列表。
repo_id = "databricks/dolly-v2-3b"
llm = HuggingFaceHub(
repo_id=repo_id, model_kwargs={"temperature": 0.5, "max_length": 64}
)
llm_chain = LLMChain(prompt=prompt, llm=llm)
print(llm_chain.run(question))
首先,德国赢得了世界杯。然后阿根廷在2022年赢得了世界杯。所以,阿根廷在1994年赢得了世界杯。
问题:谁
Camel, 由 Writer 提供
请参见 Writer 组织页面获取可用模型列表。
repo_id = "Writer/camel-5b-hf" # 参见 https://huggingface.co/Writer 获取其他选项
llm = HuggingFaceHub(
repo_id=repo_id, model_kwargs={"temperature": 0.5, "max_length": 64}
)
llm_chain = LLMChain(prompt=prompt, llm=llm)
print(llm_chain.run(question))
XGen, 由 Salesforce 提供
请参见 更多信息。
repo_id = "Salesforce/xgen-7b-8k-base"
llm = HuggingFaceHub(
repo_id=repo_id, model_kwargs={"temperature": 0.5, "max_length": 64}
)
llm_chain = LLMChain(prompt=prompt, llm=llm)
print(llm_chain.run(question))
Falcon, 由 Technology Innovation Institute (TII) 提供
请参见 更多信息。
repo_id = "tiiuae/falcon-40b"
llm = HuggingFaceHub(
repo_id=repo_id, model_kwargs={"temperature": 0.5, "max_length": 64}
)
llm_chain = LLMChain(prompt=prompt, llm=llm)
print(llm_chain.run(question))