Skip to main content

LoongSuite BFCL v4 Instrumentation

LoongSuite Python instrumentation for the Berkeley Function Call Leaderboard v4 (bfcl-eval, package bfcl_eval).

Span Topology

ENTRY  enter_ai_application_system          gen_ai.span.kind=ENTRY,  op=enter
└─ AGENT  invoke_agent {test_entry_id}      gen_ai.span.kind=AGENT,  op=invoke_agent
   ├─ STEP  react step                      gen_ai.span.kind=STEP,   op=react
   │   ├─ LLM   chat {model}                (created by downstream vendor SDK probe)
   │   └─ TOOL  execute_tool {fn}           gen_ai.span.kind=TOOL,   op=execute_tool
   └─ STEP  react step
       └─ ...

This instrumentation deliberately does not create LLM spans. They are emitted by the downstream vendor SDK probe (OpenAI / Anthropic / Google / DashScope / LiteLLM / etc.) so that token usage and request payloads stay in sync with the SDK that actually performed the request.

Installation

pip install loongsuite-instrumentation-bfclv4

Usage

opentelemetry-instrument bfcl generate \
    --model gpt-4o-2024-11-20-FC \
    --test-category simple_python \
    --num-threads 2

Or programmatically:

from opentelemetry.instrumentation.bfclv4 import BFCLv4Instrumentor

BFCLv4Instrumentor().instrument()
# ... run BFCL ...
BFCLv4Instrumentor().uninstrument()

Compatibility With Downstream LLM SDK Probes

Scenario Recommended downstream probe
OpenAI / OpenAI Responses / OSS via vLLM / SGLang / DeepSeek (OpenAI-compatible) opentelemetry-instrumentation-openai
Anthropic / Claude loongsuite-instrumentation-claude-agent-sdk
Gemini / Google loongsuite-instrumentation-google-adk
Qwen / DashScope loongsuite-instrumentation-dashscope
LiteLLM loongsuite-instrumentation-litellm

OSS Provider Notes

For OSS handlers (vLLM / SGLang served via the OpenAI-compatible API), the BFCL probe sets gen_ai.provider.name to vllm / sglang / oss and adds bfcl.oss.backend for disambiguation. Downstream OpenAI probes will still report gen_ai.provider.name=openai on the LLM span; this is expected.

Custom Attributes

Attribute Where Description
gen_ai.framework = bfclv4 ENTRY/AGENT/STEP/TOOL Framework tag
bfcl.test_category ENTRY/AGENT Test category
bfcl.num_threads ENTRY Configured thread pool size
bfcl.test_case_count ENTRY Number of test cases
bfcl.run_ids ENTRY Whether the run targeted specific IDs
bfcl.test_entry_id AGENT Test entry id
bfcl.turn_idx STEP Multi-turn turn index (0-based)
bfcl.query_mode STEP FC or prompting
bfcl.oss.backend AGENT/STEP vllm / sglang / unknown (only OSS)
bfcl.tool.duration_is_estimated TOOL True (latency is averaged across batch)

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file loongsuite_instrumentation_bfclv4-0.9.0-py3-none-any.whl.

File metadata

File hashes

Hashes for loongsuite_instrumentation_bfclv4-0.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7cddd23b57c9fbf720cd951ae8d33a3832d74e2764ef4877d53a421a2fc11c38
MD5 bafa5f4ac73a00875f73d355cac16751
BLAKE2b-256 97c2c0b82febf4c6b77dee43ee1b447a63a3a7c48bb18405a4922b66986f0d4c

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.9.0 This release

1 file

0.8.0

1 file

0.7.0

1 file

0.6.0

1 file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page