Promptfoo的搭建与测试,2026-0521成功版很简单
可能写的有点粗糙但是我搞通了有不懂的可以问我懒得再更新了其实我也是520当天搭建好的现在的教程也不多我就搜了搜没什么具体的步骤我想用windows感觉更方便一点但是一直不行各种版本问题还有缺失编译各种问题我就用的linux我的项目是调用的ollama本地模型然后进行Promptfoo测试项目本身windows里面下载了ollama1、下载ubuntu为的就是在linux里面使用promptfoo2、ubuntu里面下载ollama好像也可以不下载问问ai怎么连接windows里面的ollama如果不行就在ubuntu里面下载ollama然后连接不用在ubuntu的ollama里面再次下载模型文件了3、连接成功后创建一个文件夹随便起就行里面的tests写你的测试用例也可以写在yaml文件里面就是比较冗余具体里面应该怎么写可以问ai我现在可以跑可能数据属性什么的没弄懂反正思路没问题***ubuntu里面的语句***cd /mnt/d/promptfoo-demo promptfoo-demo是你自己创建的文件夹的名字promptfoo eval进行测试promptfoo view打开web端可是工具 网址是eval-JXY-2026-05-21T01:14:09 | promptfoohttp://localhost:15500/eval下面是我yaml的格式格式很重要多一个空格都不行和java后的yaml文件一样providers: - ollama:qwen3:1.7b env: OLLAMA_BASE_URL: http://192.168.××.×××:11434 prompts: - | 你是工业机床UI控制助手。 可用页面列表必须完全匹配 -主页 -程序 用户输入{{question}} 只输出JSON不要任何解释,不要加其他额外的文字。 输出格式{tool_calls:[{function:page_jump,parameters:{target_page:页面名称}}]} tests: - name: 主页 - 进入 vars: question: 进入主页 assert: - type: contains value: function:page_jump - type: contains value: target_page:主页 - name: 找边 - 打开 vars: question: 打开找边页面 assert: # 如果输出匹配任何合法页面 → 测试失败 - type: contains value: function:page_jump - type: contains value: target_page:找边 output: format: markdown file: results.md