Files
TheRock/rocm-systems/experimental/python/perfxpert/perfxpert/api.py
T
derek.holloway 7502bf64a4
CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
Flatten subprojects into a single base monorepo
2026-09-02 16:34:47 -07:00

46 lines
1.7 KiB
Python

"""Public Python API for PerfXpert's agent hierarchy.
1:1 mirror of the MCP tools under :mod:`perfxpert.tools.agents`. Each
callable exported here IS the same function the MCP server wraps — the
Python API and the MCP surface share a single implementation. Use this
module to embed PerfXpert's analysis brain in your own tooling without
running the MCP server.
Examples:
>>> from perfxpert import api
>>> verdict = api.agent_root(airgap=True, user_query="why slow?")
>>> verdict["primary_bottleneck"]
'mixed'
>>> # Direct call into a Layer-2 specialist when the bottleneck is known:
>>> techniques = api.agent_compute_specialist(
... input={"gfx_id": "gfx942", "hot_kernels": hot},
... airgap=True,
... )
Every callable honors ``PERFXPERT_AIRGAP=1`` plus the shared provider
selection semantics from :func:`perfxpert.agents.runtime.build_session`.
"""
from perfxpert.tools.agents.analysis import agent_analysis
from perfxpert.tools.agents.compute import agent_compute_specialist
from perfxpert.tools.agents.correctness import agent_correctness
from perfxpert.tools.agents.diff import agent_diff_specialist
from perfxpert.tools.agents.latency import agent_latency_specialist
from perfxpert.tools.agents.memory import agent_memory_specialist
from perfxpert.tools.agents.recommendation import agent_recommendation
from perfxpert.tools.agents.root import agent_root
from perfxpert.tools.trace_diff import diff_runs as trace_diff_diff_runs
__all__ = [
"agent_root",
"agent_analysis",
"agent_recommendation",
"agent_correctness",
"agent_compute_specialist",
"agent_memory_specialist",
"agent_latency_specialist",
"agent_diff_specialist",
"trace_diff_diff_runs",
]