OpenLIT 概述

OpenLIT 是一个开源工具,只需一行代码即可轻松监控AI代理、LLMs、VectorDBs和GPU的性能。

它提供了OpenTelemetry原生的追踪和指标功能,用于跟踪重要参数,如成本、延迟、交互和任务序列。 这种设置使您能够跟踪超参数并监控性能问题,帮助您找到随着时间的推移增强和微调代理的方法。

OpenLIT 仪表板

功能

  • 分析仪表板:通过详细的仪表板监控您的代理健康状况和性能,跟踪指标、成本和用户交互。
  • OpenTelemetry原生可观测性SDK:供应商中立的SDK,用于将跟踪和指标发送到您现有的可观测性工具,如Grafana、DataDog等。
  • 自定义和微调模型的成本跟踪:使用自定义定价文件为特定模型定制成本估算,以实现精确预算。
  • 异常监控仪表板:通过监控仪表板跟踪常见异常和错误,快速发现并解决问题。
  • 合规性和安全性:检测潜在威胁,如亵渎和PII泄露。
  • 提示注入检测: 识别潜在的代码注入和秘密泄露。
  • API密钥和秘密管理:集中安全地处理您的LLM API密钥和秘密,避免不安全的行为。
  • 提示管理:使用PromptHub管理和版本化代理提示,以便在代理之间实现一致且轻松的访问。
  • 模型游乐场 在部署之前测试和比较您的CrewAI代理的不同模型。

安装说明

1

部署 OpenLIT

1

克隆 OpenLIT 仓库

git clone git@github.com:openlit/openlit.git
2

启动 Docker Compose

OpenLIT Repo的根目录运行以下命令:

docker compose up -d
2

安装 OpenLIT SDK

pip install openlit
3

在您的应用程序中初始化 OpenLIT

将以下两行添加到您的应用程序代码中:

import openlit
openlit.init(otlp_endpoint="http://127.0.0.1:4318")

监控CrewAI代理的示例用法:

from crewai import Agent, Task, Crew, Process
import openlit

openlit.init(disable_metrics=True)
# Define your agents
researcher = Agent(
    role="Researcher",
    goal="Conduct thorough research and analysis on AI and AI agents",
    backstory="You're an expert researcher, specialized in technology, software engineering, AI, and startups. You work as a freelancer and are currently researching for a new client.",
    allow_delegation=False,
    llm='command-r'
)


# Define your task
task = Task(
    description="Generate a list of 5 interesting ideas for an article, then write one captivating paragraph for each idea that showcases the potential of a full article on this topic. Return the list of ideas with their paragraphs and your notes.",
    expected_output="5 bullet points, each with a paragraph and accompanying notes.",
)

# Define the manager agent
manager = Agent(
    role="Project Manager",
    goal="Efficiently manage the crew and ensure high-quality task completion",
    backstory="You're an experienced project manager, skilled in overseeing complex projects and guiding teams to success. Your role is to coordinate the efforts of the crew members, ensuring that each task is completed on time and to the highest standard.",
    allow_delegation=True,
    llm='command-r'
)

# Instantiate your crew with a custom manager
crew = Crew(
    agents=[researcher],
    tasks=[task],
    manager_agent=manager,
    process=Process.hierarchical,
)

# Start the crew's work
result = crew.kickoff()

print(result)

请参考OpenLIT Python SDK仓库以获取更高级的配置和使用案例。

4

可视化和分析

随着代理可观测性数据现在被收集并发送到OpenLIT,下一步是可视化和分析这些数据,以深入了解代理的性能、行为,并确定改进的领域。

只需在浏览器中访问 127.0.0.1:3000 上的 OpenLIT 即可开始探索。您可以使用默认凭据登录

  • 电子邮件: user@openlit.io
  • 密码: openlituser

OpenLIT 仪表板