Självstudie: Skapa ett Python-verktyg i Azure SRE Agent

I den här självstudien skapar du ett fungerande Python-verktyg som beräknar SLA-efterlevnad för din Azure SRE-agent. Du beskriver verktygets syfte på vanlig engelska, låter AI generera koden, testa resultatet och distribuera verktyget som agenten ska använda.

I den här tutorialen lär du dig följande:

  • Beskriva verktygsfunktioner på vanlig engelska
  • Generera Python-kod med AI
  • Testa verktyget med verkliga indata innan du distribuerar
  • Spara verktyget som agenten ska använda

Uppskattad tid: 10 minuter

Förutsättningar

Kontrollera att du har följande resurser och behörigheter innan du börjar:

Öppna python-verktygsdialogrutan

Gå till agentarbetsytan och börja skapa ett Python-verktyg.

  1. Öppna SRE-agentportalen och välj din agent.
  2. Välj Builder i det vänstra navigeringsfältet.
  3. Expandera Builder och välj Agent Canvas.
  4. Välj Skapa>verktyg>Python-verktyg.

Skärmbild av menyn Skapa som visar verktygs- och Python-verktygsalternativ.

Python-verktygsdialogrutan öppnas med tre flikar: Kod, Test playground och Identitet.

Beskriv vad verktyget ska göra

I beskrivningsfältet skriver du det du vill att verktyget ska göra på vanlig engelska. Var specifik om indata, utdata och logik.

Ange följande beskrivning:

Calculate SLA compliance percentage from total uptime minutes and downtime
minutes. Return whether the SLA meets a target threshold (default 99.9%).
Include the calculated percentage and a status message.

Skärmbild av python-verktygsdialogrutan med beskrivningen angiven.

Tips/Råd

För bästa resultat anger du indataparametrar och deras typer, beskriver beräkningen eller logiken, anger vad utdata ska innehålla och nämner standardvärden när det är tillämpligt.

Generera koden

Välj Generera om du vill att AI ska skapa Python-funktionen från beskrivningen.

AI:n analyserar din beskrivning och skapar en Python-funktion med:

  • Inskrivna parametrar som matchar dina indata
  • En dokumentsträng som förklarar logiken
  • Felhantering för gränsfall
  • Ett JSON-serialiserbart returvärde

I följande exempel visas den genererade koden:

def main(total_uptime_minutes: int, total_downtime_minutes: int,
         target_sla_percent: float = 99.9) -> dict:
    """Calculate SLA compliance from uptime and downtime minutes.

    Computes SLA as (uptime / (uptime + downtime)) * 100.
    Returns the SLA percentage, whether it meets the target,
    and a status message.
    """
    total_minutes = total_uptime_minutes + total_downtime_minutes

    if total_minutes == 0:
        sla_percent = 100.0
    else:
        sla_percent = (total_uptime_minutes / total_minutes) * 100

    meets_target = sla_percent >= target_sla_percent

    return {
        "sla_percent": round(sla_percent, 4),
        "target_sla_percent": target_sla_percent,
        "meets_target": meets_target,
        "status": "Meets SLA" if meets_target else "Below SLA"
    }

Skärmbild av fliken Kod som visar den genererade Python-funktionen.

Fliken Kod visar en main() funktion med inskrivna parametrar. Verktygsnamnet kommer från din beskrivning.

Testa med verkliga indata

Innan du skapar verktyget ska du testa det med hjälp av faktiska värden.

  1. Välj fliken Testlekplats .
  2. Ange följande testvärden:
    • total_uptime_minutes: 43185
    • total_downtime_minutes: 15
    • target_sla_percent: 99.9
  3. Välj Testa.

Skärmbild av testlekplatsen som visar lyckad körning.

I följande exempel visas det förväntade resultatet:

{
  "sla_percent": 99.9653,
  "target_sla_percent": 99.9,
  "meets_target": true,
  "status": "Meets SLA"
}

Testet visar en grön framgångsindikator och JSON-utdata matchar de förväntade värdena.

Skapa verktyget

När testerna har godkänts väljer du Skapa verktyg.

Verktyget är nu tillgängligt. Agenten kan anropa den automatiskt när en uppgift matchar verktygets beskrivning.

Verifiera verktyget

I en ny chatttråd ställer du en fråga till agenten som utlöser verktyget:

What's my SLA for last month? We had 43185 minutes of uptime and 15 minutes of downtime.

Agenten känner igen att den här frågan matchar det här verktyget och kallar på det för att beräkna resultatet.

Felsökning

Använd följande information för att lösa vanliga problem.

Testknappen är inaktiverad

Knappen Test kräver:

  • Giltig Python-kod med en main() funktion
  • Alla obligatoriska parameterfält ifyllda

Kontrollera att koden inte har några syntaxfel och att alla parametrar har värden.

Koden matchar inte avsikten

Välj beskrivningsfältet, förfina texten och välj Generera igen. Var mer specifik om:

  • Parameternamn och -typer
  • Beräkningslogik
  • Förväntat utdataformat

Testet returnerar ett fel

Kontrollera felmeddelandet i resultatpanelen. Vanliga problems är:

  • Division med noll (lägg till hantering för undantagsfall)
  • Felaktiga parametertyper (se till att indata matchar förväntade typer)
  • Importfel (kontrollera att bibliotek är tillgängliga)

Redigera eller ta bort ett verktyg

Du kan ändra eller ta bort verktyg direkt från agentarbetsytan.

Redigera

  1. arbetsytan Agent väljer du verktygsnoden för att öppna informationspanelen.
  2. Välj ikonen redigera (penna) i panelrubriken.
  3. Dialogrutan Redigera öppnas. Ändra beskrivningen, koden eller parametrarna.
  4. Välj Spara.

Delete

  1. Välj verktygsnoden för att öppna informationspanelen.
  2. Välj menyn (fler åtgärder) i panelrubriken.
  3. Välj Ta bort verktyg.
  4. Bekräfta borttagningen i dialogrutan.

Nästa steg