PhaseLLM - 大型语言模型评估和工作流框架
PhaseLLM是由Phase AI开发的开源框架,旨在帮助开发者管理和测试基于大型语言模型(LLM)的产品和体验。随着ChatGPT等LLM的兴起,未来将会出现大量基于LLM的新产品和应用。无论你使用的是OpenAI的ChatGPT、Anthropic的Claude,还是其他模型,你都需要测试模型和提示对用户需求的表现。PhaseLLM框架就是为此而生的。
主要功能
-
标准化API调用:可以轻松切换使用OpenAI、Cohere、Anthropic等不同提供商的模型。
-
评估框架:比较不同模型输出,判断哪种组合能为用户带来最佳体验。
-
自动化:使用高级模型(如GPT-4)来评估简单模型(如GPT-3),找出最佳提示组合,同时考虑成本和执行速度。
安装使用
你可以通过pip安装PhaseLLM:
pip install phasellm
如果需要本地运行LLM(如DollyWrapper),请使用:
pip install phasellm[complete]
学习资源
-
官方文档 - 详细的模块参考和API说明
-
GitHub仓库 - 源代码、示例和最新更新
-
Twitter账号 - 关注获取最新动态
-
PyPI项目页面 - 查看发布历史和依赖信息
-
示例和产品 - 包含多个实际应用案例,如ResearchLLM
快速上手示例
这里有一个简单的示例,展示如何使用PhaseLLM评估旅行聊天机器人的提示:
import os
from dotenv import load_dotenv
from phasellm.eval import GPTEvaluator
from phasellm.llms import CohereWrapper, ClaudeWrapper
# 加载API密钥
load_dotenv()
openai_api_key = os.getenv("OPENAI_API_KEY")
anthropic_api_key = os.getenv("ANTHROPIC_API_KEY")
cohere_api_key = os.getenv("COHERE_API_KEY")
# 设置评估器
e = GPTEvaluator(openai_api_key)
# 定义目标和测试用例
objective = "We're building a chatbot to discuss a user's travel preferences and provide advice."
travel_chat_starts = [
"I'm planning to visit Poland in spring.",
"I'm looking for the cheapest flight to Europe next week.",
"I am trying to decide between Prague and Paris for a 5-day trip",
"I want to visit Europe but can't decide if spring, summer, or fall would be better.",
"I'm unsure I should visit Spain by flying via the UK or via France."
]
# 设置模型
cohere_model = CohereWrapper(cohere_api_key)
claude_model = ClaudeWrapper(anthropic_api_key)
# 运行测试
print("Running test. 1 = Cohere, and 2 = Claude.")
for tcs in travel_chat_starts:
messages = [{"role":"system", "content":objective},
{"role":"user", "content":tcs}]
response_cohere = cohere_model.complete_chat(messages, "assistant")
response_claude = claude_model.complete_chat(messages, "assistant")
pref = e.choose(objective, tcs, response_cohere, response_claude)
print(f"{pref}")
这个示例展示了如何使用PhaseLLM轻松地比较不同LLM模型的性能,为开发者提供了强大而灵活的工具来优化他们的AI应用。
总结
PhaseLLM为开发者提供了一个强大的框架,用于管理和评估基于大型语言模型的产品。通过标准化API调用、提供评估工具和自动化功能,PhaseLLM使得开发、测试和优化LLM应用变得更加简单。无论你是在构建聊天机器人、内容生成工具还是其他AI驱动的应用,PhaseLLM都能帮助你更快地实现目标。
欢迎访问PhaseLLM的GitHub仓库了解更多信息,或者通过w@phaseai.com与开发团队取得联系。