快速入门
Predibase提供了微调和部署开源大型语言模型的最快方式。它基于开源项目LoRAX构建。
- 微调: 只需几个步骤即可使用SDK或UI对模型进行微调和服务
- 共享端点: 尝试使用 Python SDK 或 Web Playground 来提示无服务器端点,以便快速迭代和原型设计
- 生产就绪的私有无服务器推理: 使用SDK或UI部署您的基础模型,以服务无限数量的适配器
用6行代码部署并提示一个模型
企业和VPC客户可以使用以下六行代码部署私有无服务器端点。共享端点对所有用户开放。
pip install predibase
python
>>> from predibase import Predibase, DeploymentConfig
>>> pb = Predibase(api_token=<TOKEN>)
>>> pb.deployments.create(name='my-model', config=DeploymentConfig(base_model="mistral-7b"))
>>> print(pb.deployments.client('my-model').generate("What is a Large Language Model?", max_new_tokens=50).generated_text)
# "Large Language Models (LLMs) are a type of artificial intelligence (AI)..."
继续阅读了解更多详情!
使用SDK或REST运行推理
- 创建一个账户 here。
- 导航至Settings页面并点击Generate API Token。
- 设置一个虚拟环境并安装Python SDK(如果在本地运行 - Google Collab或类似环境不需要):
python3.9 -m venv .venv
source .venv/bin/activate
pip install -U predibase
- 查看可用的共享部署。(注意:企业客户可以部署私有无服务器部署,VPC客户必须这样做。)
- Python SDK
- REST
from predibase import Predibase, FinetuningConfig, DeploymentConfig
pb = Predibase(api_token="<PREDIBASE API TOKEN>")
# Optionally get a list of available models by calling pb.deployments.list()
lorax_client = pb.deployments.client("mistral-7b-instruct-v0-2") # Insert deployment name here
resp = lorax_client.generate("[INST] What are some popular tourist spots in San Francisco? [/INST]")
print(resp.generated_text)
# Export environment variables
export PREDIBASE_API_TOKEN="<YOUR TOKEN HERE>" # Settings > My Profile > Generate API Token
export PREDIBASE_TENANT_ID="<YOUR TENANT ID>" # Settings > My Profile > Overview > Tenant ID
export PREDIBASE_DEPLOYMENT="mistral-7b-instruct-v0-2"
# query the LLM deployment
curl -d '{"inputs": "[INST] What are some popular tourist spots in San Francisco? [/INST]"}' \
-H "Content-Type: application/json" \
-X POST https://serving.app.predibase.com/$PREDIBASE_TENANT_ID/deployments/v2/llms/$PREDIBASE_DEPLOYMENT/generate \
-H "Authorization: Bearer ${PREDIBASE_API_TOKEN}"
info
请注意在提示前后显式使用的特殊标记。这些标记与指令调优和聊天调优模型一起使用,以提高响应质量。 有关如何为每个无服务器模型端点应用这些标记的详细信息,请参阅Instruction Templates。
流式处理
- Python SDK
- REST
from predibase import Predibase, FinetuningConfig, DeploymentConfig
pb = Predibase(api_token="<PREDIBASE API TOKEN>")
lorax_client = pb.deployments.client("mistral-7b-instruct-v0-2") # Insert deployment name here
for resp in lorax_client.generate_stream("[INST] What are some popular tourist spots in San Francisco? [/INST]"):
if not resp.token.special:
print(resp.token.text, sep="", end="", flush=True)
# Export environment variables
export PREDIBASE_API_TOKEN="<YOUR TOKEN HERE>" # Settings > My Profile > Generate API Token
export PREDIBASE_TENANT_ID="<YOUR TENANT ID>" # Settings > My Profile > Overview > Tenant ID
export PREDIBASE_DEPLOYMENT="mistral-7b-instruct-v0-2"
# query the LLM deployment
curl -d '{"inputs": "[INST] What are some popular tourist spots in San Francisco? [/INST]"}' \
-H "Content-Type: application/json" \
-X POST https://serving.app.predibase.com/$PREDIBASE_TENANT_ID/deployments/v2/llms/$PREDIBASE_DEPLOYMENT/generate_stream \
-H "Authorization: Bearer ${PREDIBASE_API_TOKEN}"
后续步骤
- 尝试完整示例,使用SDK在Predibase中微调并提示适配器
- 完全不想写代码?使用UI界面连接数据集并开始微调适配器。
- 来自OpenAI?查看我们的迁移指南以了解服务
- 探索更多完整的示例
- 了解您的Predibase如何与生态系统中的其他框架集成
联系我们
如有任何问题、意见或反馈,请通过support@predibase.com联系我们,或加入我们的Discord!