用途:利用 Arize 的生产 trace 数据、评估结果和人工标注来优化、改进与调试 LLM 提示词。
主要能力:从 OpenInference 语义约定的 span 属性中提取提示词,包括 attributes.llm.input_messages(结构化聊天消息)、attributes.llm.prompt_template.template(含 {variable} 占位符的模板)、attributes.input.value(序列化提示词回退来源)等;按 span kind(LLM、Chain/Agent、Tool)定位提示词所在位置;收集性能信号,如 annotation.<name>.label/score/text(人工标注)、eval.<name>.label/score/explanation(LLM 评判)、attributes.output.value(模型输出)与实验输出。
使用方式:通过 ax 命令行工具操作。常用命令包括 ax spans export PROJECT --filter "attributes.openinference.span.kind = 'LLM'" -l 10 --stdout 导出 LLM span;ax spans export PROJECT --trace-id TRACE_ID 导出整条 trace;ax datasets export DATASET_NAME --space SPACE 与 ax experiments export EXPERIMENT_NAME --dataset DATASET_NAME --space SPACE 导出数据集与实验结果;用 jq 提取消息、模板与变量,并将数据集与实验按 example_id 合并。随后把原始提示词与性能数据填入优化元提示词模板,交由 LLM 生成修订版消息数组,再创建新实验对比分数、失败率与翻转样例,循环迭代。
适用场景:从失败 trace 优化提示词、基于数据集与实验优化、修复输出格式错误、降低 RAG 提示词幻觉等。
限制与注意:需具备 Arize 凭据(ax profiles)与相应 space/project;LLM 提供方密钥需通过 ax ai-integrations 获取,缺失时需用户提供;不得读取 .env 或搜索文件系统获取凭据;优化时须保留模板变量名称与占位符,避免过拟合,不将真实测试数据逐字写入提示词。资料未提供具体收费、价格与平台支持范围。