集成:Traceloop
评估和监控您的 LLM 应用和代理的质量
OpenLLMetry
OpenLLMetry 是 Traceloop 开发和维护的开源 Python 包,可为您的 Haystack 应用集成 OpenTelemetry。这使您可以完全了解 LLM 应用,并能融入您现有的可观察性堆栈。您还可以将其连接到 Traceloop,以获取质量评估指标和提示词 Playground 等 LLM 特有功能。
有关更多信息,请参阅 文档。
安装
pip install traceloop-sdk
示例
基本集成只需在您的代码中添加一行
Traceloop.init(app_name="your_app_name")
运行代码后,您将获得指向 Traceloop UI 的链接,您可以在其中查看应用的跟踪记录。如果您想连接到不同的可观察性平台,请遵循导出跟踪记录的指南。
使用 Traceloop API 密钥
如果您拥有 Traceloop 账户,并希望在您的账户仪表板上查看跟踪记录
- 在 Traceloop 上创建 API 密钥
- 将 API 密钥导出为一个名为
TRACELOOP_API_KEY的环境变量
跟踪 Haystack Pipelines
初始化 Traceloop 应用后,您在同一环境中运行的任何 Haystack Pipeline 都将记录在 Traceloop 生成的 URL 提供的仪表板中。例如,下面是一个简单的 Haystack Pipeline 及其 traceloop 日志。它需要设置 OPENAI_API_KEY。
from haystack.components.builders import ChatPromptBuilder
from haystack.components.generators.chat import OpenAIChatGenerator
from haystack.dataclasses import ChatMessage
from haystack import Pipeline
from traceloop.sdk import Traceloop
Traceloop.init(app_name="haystack_app")
prompt_builder = ChatPromptBuilder()
llm = OpenAIChatGenerator()
location = "Berlin"
messages = [ChatMessage.from_system("Always respond in German even if some input data is in other languages."),
ChatMessage.from_user("Tell me about {{location}}")]
pipe = Pipeline()
pipe.add_component("prompt_builder", prompt_builder)
pipe.add_component("llm", llm)
pipe.connect("prompt_builder.prompt", "llm.messages")
pipe.run(data={"prompt_builder": {"template_variables":{"location": location}, "template": messages}})
>> {'llm': {'replies': [ChatMessage(content='Berlin ist die Hauptstadt Deutschlands und die größte Stadt des Landes.
>> Es ist eine lebhafte Metropole, die für ihre Geschichte, Kultur und einzigartigen Sehenswürdigkeiten bekannt ist.
>> Berlin bietet eine vielfältige Kulturszene, beeindruckende architektonische Meisterwerke wie den Berliner Dom
>> und das Brandenburger Tor, sowie weltberühmte Museen wie das Pergamonmuseum. Die Stadt hat auch eine pulsierende
>> Clubszene und ist für ihr aufregendes Nachtleben berühmt. Berlin ist ein Schmelztiegel verschiedener Kulturen und
>> zieht jedes Jahr Millionen von Touristen an.', role=<ChatRole.ASSISTANT: 'assistant'>, name=None,
>> metadata={'model': 'gpt-4o-mini', 'index': 0, 'finish_reason': 'stop', 'usage': {'prompt_tokens': 32,
>> 'completion_tokens': 153, 'total_tokens': 185}})]}}
关于 Traceloop
Traceloop 是一个用于监控、评估和调试 LLM 应用和代理的平台。您可以自信地部署更改,并深入了解您的 LLM 执行情况。
主要功能
- 在一个地方管理您的提示词,支持版本控制、渐进式发布、A/B 测试等。
- 通过自动生成的测试集评估您的提示词和模型质量。
- 监控您的 LLM 应用性能,并在其行为异常时收到警报。
