OpenLLMetry 项目教程

OpenLLMetry 项目教程

openllmetryOpen-source observability for your LLM application, based on OpenTelemetry项目地址:https://gitcode.com/gh_mirrors/op/openllmetry

1. 项目的目录结构及介绍

OpenLLMetry 是一个基于 OpenTelemetry 的开源项目,用于为 LLM(大型语言模型)应用程序提供完整的可观测性。项目的目录结构如下:

openllmetry/
├── docs/
│   ├── getting-started.md
│   ├── instrumentations.md
│   └── ...
├── src/
│   ├── instrumentations/
│   │   ├── openai.py
│   │   ├── anthropic.py
│   │   └── ...
│   ├── sdk/
│   │   ├── __init__.py
│   │   ├── traceloop.py
│   │   └── ...
│   └── ...
├── tests/
│   ├── test_instrumentations.py
│   ├── test_sdk.py
│   └── ...
├── .gitignore
├── LICENSE
├── README.md
├── requirements.txt
└── setup.py

目录结构介绍

  • docs/:包含项目的文档文件,如入门指南、插桩指南等。
  • src/:项目的源代码目录。
    • instrumentations/:包含各种插桩实现,如 OpenAI、Anthropic 等。
    • sdk/:包含 SDK 的核心实现,如 traceloop.py
  • tests/:包含项目的测试文件。
  • .gitignore:Git 忽略文件配置。
  • LICENSE:项目许可证文件。
  • README.md:项目介绍和使用说明。
  • requirements.txt:项目依赖文件。
  • setup.py:项目安装脚本。

2. 项目的启动文件介绍

项目的启动文件主要是 src/sdk/traceloop.py,该文件包含了 Traceloop SDK 的核心功能。以下是该文件的主要内容:

# src/sdk/traceloop.py

from opentelemetry import trace
from opentelemetry.sdk.trace import TracerProvider
from opentelemetry.sdk.trace.export import BatchSpanProcessor
from opentelemetry.exporter.otlp.proto.grpc.trace_exporter import OTLPSpanExporter

class Traceloop:
    def __init__(self):
        self.tracer_provider = TracerProvider()
        trace.set_tracer_provider(self.tracer_provider)
        span_processor = BatchSpanProcessor(OTLPSpanExporter())
        self.tracer_provider.add_span_processor(span_processor)

    def init(self, disable_batch=False):
        if disable_batch:
            span_processor = BatchSpanProcessor(OTLPSpanExporter(), disable_batch=True)
            self.tracer_provider.add_span_processor(span_processor)

# 示例使用
from traceloop import Traceloop
Traceloop().init()

启动文件介绍

  • Traceloop 类:用于初始化 OpenTelemetry 的 TracerProvider 和 SpanProcessor。
  • init 方法:用于初始化 Traceloop,可以选择是否禁用批处理。

3. 项目的配置文件介绍

项目的配置文件主要是 setup.pyrequirements.txt

setup.py

setup.py 文件用于项目的安装和打包。以下是该文件的主要内容:

# setup.py

from setuptools import setup, find_packages

setup(
    name='openllmetry',
    version='0.1.0',
    packages=find_packages(),
    install_requires=[
        'opentelemetry-api',
        'opentelemetry-sdk',
        'opentelemetry-exporter-otlp',
        # 其他依赖
    ],
    entry_points={
        'console_scripts': [
            'openllmetry=openllmetry.cli:main',
        ],
    },
)

requirements.txt

requirements.txt 文件列出了项目所需的所有依赖包。以下是该文件的示例内容:

opentelemetry-api==1.0.0
opentelemetry-sdk==1.0.0
opentelemetry-exporter-otlp==1.0.0
# 其他依赖

openllmetryOpen-source observability for your LLM application, based on OpenTelemetry项目地址:https://gitcode.com/gh_mirrors/op/openllmetry

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陆骊咪Durwin

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值