Langfuse 文档 中文 英文原文 ↗
文档 / Trace URL

Trace URL

每个 trace 都有一个唯一的 URL,你可以用它与他人分享或直接访问。

获取 trace url

有时,直接在 SDK 中获取 trace URL 很有用。例如把它加到你的日志中,或在 notebook 中运行实验时交互式查看。

使用 @observe() 装饰器时:

python
from langfuse import observe, get_client

@observe()
def process_data():
    langfuse = get_client()

    # Get the URL of the current trace
    trace_url = langfuse.get_trace_url()
    print(f"View trace at: {trace_url}")

    # or pass the trace id
    trace_id = langfuse.get_current_trace_id()
    trace_url = langfuse.get_trace_url(trace_id=trace_id)

使用上下文管理器时:

python
from langfuse import get_client

langfuse = get_client()

with langfuse.start_as_current_observation(as_type="span", name="process-request") as span:
    # Get the URL of this trace
    trace_url = langfuse.get_trace_url()
    print(f"View trace at: {trace_url}")

    # or pass the trace id
    trace_id = langfuse.get_current_trace_id()
    trace_url = langfuse.get_trace_url(trace_id=trace_id)
ts
import { LangfuseClient } from "@langfuse/client";
import { startObservation } from "@langfuse/tracing";

const langfuse = new LangfuseClient();

const rootSpan = startObservation("my-trace");
const traceUrl = await langfuse.getTraceUrl(rootSpan.traceId);

console.log("Trace URL: ", traceUrl);

利用 Langfuse SDK 与 Langchain 集成的互操作性来获取 trace 的 URL(互操作文档)。

ts
import { CallbackHandler } from "@langfuse/langchain";
import { startActiveObservation } from "@langfuse/tracing";
import { LangfuseClient } from "@langfuse/client";

const langfuse = new LangfuseClient();
const langfuseHandler = new CallbackHandler();

await startActiveObservation("langchain-call", async (span) => {
  await chain.invoke(
    { input: "<user_input>" },
    { callbacks: [langfuseHandler] },
  );

  // Get the trace URL
  const traceUrl = await langfuse.getTraceUrl(span.traceId);
  console.log("Trace URL: ", traceUrl);
});

通过 url 分享 trace

默认情况下,只有你 Langfuse 项目的成员才能查看 trace。

你可以将 trace 设为 public,通过公开链接分享。这允许他人在无需登录或成为你 Langfuse 项目成员的情况下查看该 trace。

示例:https://cloud.langfuse.com/project/clkpwwm0m000gmm094odg11gi/traces/2d6b96f2-0a4d-4366-99a5-1ad558c66e99

使用 @observe() 装饰器时:

python
from langfuse import observe, get_client

@observe()
def process_data():
    langfuse = get_client()

    # Make the current trace public
    langfuse.set_current_trace_as_public()

使用上下文管理器时:

python
from langfuse import get_client

langfuse = get_client()

with langfuse.start_as_current_observation(as_type="span", name="process-request") as span:
    # Make this trace public
    span.set_trace_as_public()

    # Get the URL to share
    trace_id = langfuse.get_current_trace_id()
    trace_url = langfuse.get_trace_url(trace_id=trace_id)
    print(f"Share this trace at: {trace_url}")
ts
import { startObservation } from "@langfuse/tracing";

const rootSpan = startObservation("my-trace");

rootSpan.setTraceAsPublic();

rootSpan.end();
非官方中文翻译 · 图片/视频/代码均链接官方资源 · 版权归 Langfuse GmbH 所有 查看英文原文 ↗