几行代码跨模型测 Prompt:prompttools 把 LLM 评估搬回本地
AIAI Summary (BLUF)
PromptTools 是 Hegel AI 推出的开源工具集,让开发者用几行代码就能测试和评估不同的大语言模型、向量数据库和提示词。它支持 OpenAI、Anthropic、LLaMA 等主流模型,以及 Chroma、Weaviate 等向量数据库,所有数据都在本地运行,保护隐私。
核心洞察
这个工具解决的是一个很实际的痛点:调 prompt 的时候,你总得手动一个个试模型、改参数、对比结果,烦得很。prompttools一个开源、可自托管的工具集,用于实验、测试和评估大语言模型、向量数据库和提示词。 把这些活儿收进几行代码里,跑完直接出表格。我比较意外的是它连向量数据库A database system designed to store and perform high-dimensional semantic similarity searches on vector embeddings of data.的检索准确率都能测,覆盖面比想象中宽。
核心结论
prompttools 是 Hegel AI开发 PromptTools 的公司,专注于 AI 工具和基础设施。 开源的一套工具,用于实验、测试和评估 LLMLarge Language Model, the underlying technology for generative AI.、向量数据库以及 prompt,支持通过代码、notebook 或本地 playground 三种方式操作。
该工具支持跨模型测试 prompt 和参数,已支持的 LLM API 包括 OpenAIAn AI research and deployment company whose top models were used as a performance benchmark by DeepSeek.、AnthropicAn AI research and safety company known for developing large language models like Claude.、LLaMAA collection of large language models released by Meta (Facebook) supporting multiple languages including Latin and Cyrillic scripts..Cpp、HuggingFace、Mistral AI、Google Gemini、Google PaLM、Google Vertex AI、Azure OpenAI Service 和 Replicate。
向量数据库评估方面,已支持 Chroma一个开源的向量数据库,PromptTools 支持其作为向量数据库集成。、Weaviate一个开源的向量数据库,PromptTools 支持其作为向量数据库集成。、Qdrant、LanceDB 和 Pinecone,Milvus 处于探索阶段,Epsilla 正在开发中。
所有 LLM API 调用均从用户本机直接发出,不经过任何服务器转发;API key 和输入输出数据全部留在本地,不收集任何个人身份信息。
实验结果可通过
to_csv、to_json、to_lora_json或to_mongo_db方法导出,更多持久化功能仍在开发中。
prompttools 上手:几行代码搞定 LLM 和向量数据库的测试
这是 Hegel AI 开源的一套工具,用来实验、测试和评估 LLM、向量数据库以及 prompt。核心思路是让开发者用自己熟悉的方式来做评估,比如代码、notebook,或者一个本地 playground。
几行代码就能跨模型测试你的 prompt 和参数,OpenAI、Anthropic、LLaMA 都行。向量数据库的检索准确率也能评。
from prompttools.experiment import OpenAIChatExperiment
messages = [
[{"role": "user", "content": "Tell me a joke."},],
[{"role": "user", "content": "Is 17077 a prime number?"},],
]
models = ["gpt-3.5-turbo", "gpt-4"]
temperatures = [0.0]
openai_experiment = OpenAIChatExperiment(models, messages, temperature=temperatures)
openai_experiment.run()
openai_experiment.visualize()
有问题或者想跟进后续更新,可以加他们的 Discord。
快速开始
用 pip 安装:
pip install prompttools
本地跑一个简单例子:
git clone https://github.com/hegelai/prompttools.git
cd prompttools && jupyter notebook examples/notebooks/OpenAIChatExperiment.ipynb
也可以在 Google Colab 里直接跑这个 notebook。
Playground
如果你想用图形界面来操作 prompttools,可以这样启动。
先装依赖:
pip install notebook # 如果还没装 jupyter notebook
pip install prompttools
然后克隆仓库,启动 streamlit用于快速构建数据科学和机器学习Web应用的Python框架 应用:
git clone https://github.com/hegelai/prompttools.git
cd prompttools && streamlit run prompttools/playground/playground.py
Streamlit Community Cloud 上也有一个托管版本可以直接访问。
注意:托管版本不支持 LlamaCpp
文档
完整的 API 参考和各个组件的详细说明都在文档站上,可以去翻翻。
支持的集成
目前实验功能支持的 API 列表如下:
LLM
- OpenAI(Completion、ChatCompletion、微调模型)- 已支持
- LLaMA.Cpp(LLaMA 1、LLaMA 2)- 已支持
- HuggingFace(Hub API、Inference Endpoints)- 已支持
- Anthropic - 已支持
- Mistral AI - 已支持
- Google Gemini - 已支持
- Google PaLM(旧版)- 已支持
- Google Vertex AI - 已支持
- Azure OpenAI Service - 已支持
- Replicate - 已支持
- Ollama - 开发中
向量数据库和数据工具
- Chroma - 已支持
- Weaviate - 已支持
- Qdrant - 已支持
- LanceDB - 已支持
- Milvus - 探索阶段
- Pinecone - 已支持
- Epsilla - 开发中
框架
- LangChain - 已支持
- MindsDB - 已支持
- LlamaIndex - 探索阶段
计算机视觉
- Stable Diffusion - 已支持
- Replicate 托管的 Stable Diffusion - 已支持
有想加的 API,开 issue 或者提 PR 都行,也可以到 Discord 里聊。
常见问题
- 这个库会把我的 LLM 调用转发到某个服务器再发给 OpenAI、Anthropic 吗?
不会。源码在你本机执行,所有对 LLM API 的调用都直接从你的机器发出,不经过任何转发。
- prompttools 会把我的 API key 或者 LLM 输入输出存到服务器上吗?
不会。这些数据全部留在本地。他们不收集任何个人身份信息。
- 怎么保存实验结果?
可以用 to_csv、to_json、to_lora_json 或 to_mongo_db 这几个方法导出 Experiment。更多持久化功能还在做,有具体需求可以跟他们聊。
Sentry
使用追踪
因为 API 改得比较快,有时候会因为疏忽或者文档没跟上导致一些报错。为了改善体验,他们收集正常的包使用数据来了解报错情况。这些数据会发给 Sentry,一个第三方错误追踪服务,开源软件里用得挺多的。只记录这个库自身的操作。
设置环境变量 SENTRY_OPT_OUT 就能退出。
参与贡献
欢迎提 PR 和建议。开 PR 或 issue,或者直接发邮件都行。先看看贡献指南和“Help Wanted”的 issue 列表。
使用与反馈
他们很愿意跟早期用户一起打磨设计。如果你打算在项目里用这套工具,或者有任何反馈,发邮件联系就行。
许可证
更多组件会逐步开源。当前许可证见 LICENSE 文件。有疑问的话发邮件,他们乐意配合。
常见问题(FAQ)
prompttools 是什么?它主要能做什么?
PromptTools 是 Hegel AI 推出的开源工具集,让开发者用几行代码就能测试和评估不同的大语言模型、向量数据库和提示词。它支持 OpenAI、Anthropic、LLaMA 等主流模型,以及 Chroma、Weaviate 等向量数据库,所有数据都在本地运行,保护隐私。
prompttools 如何保证我的数据隐私?
prompttools 所有数据都在本地运行,不会将你的 LLM 调用转发到任何服务器,也不会存储你的 API key 或 LLM 输入输出。源码在你本机执行,对 LLM API 的调用直接从你的机器发出,不经过任何转发。
prompttools 支持哪些模型和向量数据库?
prompttools 支持 OpenAI、Anthropic、LLaMA、HuggingFace、Mistral AI、Google Gemini 等主流 LLM,以及 Chroma、Weaviate、Qdrant、LanceDB、Pinecone 等向量数据库。此外还支持 LangChain、MindsDB 等框架和 Stable Diffusion 等计算机视觉模型。
版权与免责声明:本文仅用于信息分享与交流,不构成任何形式的法律、投资、医疗或其他专业建议,也不构成对任何结果的承诺或保证。
文中提及的商标、品牌、Logo、产品名称及相关图片/素材,其权利归各自合法权利人所有。本站内容可能基于公开资料整理,亦可能使用 AI 辅助生成或润色;我们尽力确保准确与合规,但不保证完整性、时效性与适用性,请读者自行甄别并以官方信息为准。
若本文内容或素材涉嫌侵权、隐私不当或存在错误,请相关权利人/当事人联系本站,我们将及时核实并采取删除、修正或下架等处理措施。也请勿在评论或联系信息中提交身份证号、手机号、住址等个人敏感信息。



