Prompt 版本管理
在 Litefuse 中,prompt 的版本控制和部署通过 version 和 label 来管理。
版本与标签
每个 prompt 版本会自动分配一个 version ID。除此之外,你还可以分配 label,按照自己的版本管理方案来组织。
标签可用于把 prompt 分配到环境(staging、production)、租户(tenant-1、tenant-2)或实验(prod-a、prod-b)。
使用 Litefuse UI 给 prompt 分配标签。
按标签或版本获取
在应用中获取 prompt 时,你可以按某个具体版本或某个标签来取。 下面是按标签或版本拉取 prompt 的代码示例。
要”部署”一个 prompt 版本,你需要给该版本分配 production 标签或你创建的任意环境标签。
关于 prompt 获取的几点说明:
latest标签指向最近创建的版本。- 使用 prompt 时若不指定标签,Litefuse 会返回带
production标签的版本。
from langfuse import get_client
# Initialize Langfuse client
langfuse = get_client()
# Get specific version
prompt = langfuse.get_prompt("movie-critic", version=1)
# Get specific label
prompt = langfuse.get_prompt("movie-critic", label="staging")
# Get latest prompt version. The 'latest' label is automatically maintained by Litefuse.
prompt = langfuse.get_prompt("movie-critic", label="latest")回滚
当一个 prompt 带有 production 标签时,SDK 默认就会返回该版本。要快速回滚到之前的版本,只需在 Litefuse UI 中把 production 标签设到那个旧版本上即可。
Prompt Diff
prompt 版本 diff 视图展示你对 prompt 所做改动的历史。这能帮你理解 prompt 是如何演进的、做了哪些改动,从而调试问题或评估改动的影响。
受保护的 prompt 标签
Where is this feature available?
- Hobby(Not Available)
- Core(Not Available)
- Pro(Teams Add-on required)(Team)
- Enterprise
- Self Hosted(Enterprise Edition)(Enterprise)
受保护的 prompt 标签让项目 admin 和 owner(RBAC 文档)能够阻止标签被修改或删除,从而更好地控制 prompt 的部署。
一旦像 production 这样的标签被标记为受保护:
viewer和member角色不能在 prompt 上修改或删除该标签,从而无法改动productionprompt 版本。这同时也会阻止 prompt 被删除。admin和owner角色仍然可以修改或删除该标签,可以实际更换productionprompt 版本。
Admin 和 owner 可以在项目设置中更新某个标签的保护状态。
相关资源
- prompt 是按项目隔离的 —— 如果你在不同环境中使用不同项目,参见如何在不同项目之间同步 prompt
- 在提升某个标签之前想在数据集上对比 prompt 版本,运行 Experiments。
这个页面对你有帮助吗?