Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Nástroje Python rozšiřují agenta Azure SRE nad rámec integrovaných funkcí Azure. Pomocí kódu Pythonu můžete vytvářet vlastní nástroje, které se připojují k interním rozhraním API, místním databázím, multicloudovým platformám a proprietárním systémům. Popište, co potřebujete v prosté angličtině, vložte existující skripty nebo zabalte koncové body HTTP a pak otestujte a nasaďte bez restartování.
Návod
- Rozšiřte agenta tak, aby se dostal do systémů, pro které nemá integrovanou podporu.
- Připojte se k interním rozhraním API, místním databázím a multicloudovým platformám.
- Zakódujte vlastní obchodní logiku, jako jsou výpočty SLA, nákladové modely a pravidla dodržování předpisů.
Problém
Váš agent má výkonné integrované nástroje pro Azure, včetně dotazů Kusto, Azure Monitoru a operací Azure Resource Manageru. Vaše organizace ale v Azure nežije úplně:
- Interní systémy: databáze CMDB, vlastní systémy lístků a interní rozhraní API, která používá jenom vaše organizace.
- Multicloud: řídicí panely Datadog, protokoly Splunk a metriky z AWS CloudWatch a Azure.
- Starší infrastruktura: Místní databáze, proprietární protokoly a systémy bez moderních rozhraní API.
- Vlastní obchodní logika: Výpočty SLA specifické pro vaše kontrakty, vzorce přidělování nákladů a modely plánování kapacity.
Agent může diagnostikovat problémy s Azure, ale nemůže se spojit s interními systémy nebo použít jedinečnou logiku vaší organizace, pokud ji nerozšiřujete.
Jak nástroje Pythonu fungují
Nástroje Pythonu umožňují naučit agenta nové funkce. Popište, co potřebujete, vygenerujte kód, otestujte ho a nasaďte ho. Váš agent se pak může spojit se systémy a použít logiku, která ještě nebyla možná.
Vygenerovaný kód se řídí konzistentním vzorem:
- Funkce
main(), která přijímá zadané parametry. - Návratové hodnoty serializovatelné ve formátu JSON
- Popisný text, který vysvětluje logiku.
Před vytvořením nástroje ho otestujte skutečnými vstupy v dětském hřišti. Zadejte hodnoty parametrů, vyberte Test a zobrazte skutečné výsledky, nejen ověření syntaxe.
Po otestování nástroje vyberte Vytvořit nástroj. Váš agent ho může okamžitě používat bez restartování a bez potřeby nasazovacího kanálu.
Nástroje Pythonu vs. konektory MCP
Pro jiné platformy než Microsoft máte dvě možnosti.
| Přístup | Nejvhodnější pro | Příklady |
|---|---|---|
| Konektory MCP | Oblíbené platformy se standardními rozhraními API | Datadog, Splunk, ServiceNow, GitHub |
| Nástroje Pythonu | Interní systémy, vlastní logika, platformy bez MCP | Vaše CMDB, proprietární rozhraní API, vlastní výpočty |
Konektory MCP použijte, pokud existuje konektor pro vaši platformu. MCP poskytuje strukturovaná schémata, správu ověřování a konzistentní chování.
Nástroje Pythonu použijte, když potřebujete spojit se s interními systémy, zakódovat vlastní obchodní logiku nebo se připojit k platformám bez podpory MCP.
Co to dělá jinak
Následující tabulka porovnává možnosti agentů s nástroji Pythonu a bez těchto nástrojů.
| Bez nástrojů Pythonu | S nástroji Pythonu |
|---|---|
| Agent může používat jenom integrované funkce. | Agent může komunikovat s jakýmkoli systémem, který Python může oslovit |
| Interní rozhraní API vyžadují samostatné pracovní postupy. | Interní systémy se stanou nástroji agenta. |
| Vlastní logika se nachází v externích skriptech. | Obchodní pravidla se provádějí v konverzacích agentů. |
| Místní systémy jsou odpojené od agenta. | Hybridní prostředí jsou plně přístupná |
Nástroje Pythonu mění agenta z pomocníka nativního pro Azure na rozšiřitelnou platformu, která funguje s celou infrastrukturou.
Před a po
| před | Po |
|---|---|
| Naše CMDB je na místě, agent ji nevidí. | Nástroj Python s přístupem k síti dotazuje interní systémy |
| Máme vlastní vzorce SLA, které ještě nikdo neautomatizoval. | Zakódujte své vzorce jako nástroj; agent je automaticky aplikuje. |
| "Sestavy dodržování předpisů vyžadují specifické formátování PDF" | Generování sestav pomocí ReportLabu obsluhovaného prostřednictvím agenta |
Předpoklady
- Přístup tvůrce k agentovi Azure SRE.
- Pro koncové body HTTP: adresa URL a přihlašovací údaje pro ověřování pro vaše cílové systémy.
Vytvoření nástroje Pythonu
Nástroje Pythonu můžete vytvářet pomocí tří přístupů.
| Přístup | Zadáte | Agent provádí | Nejvhodnější pro |
|---|---|---|---|
| Popis v prosté angličtině | "Vypočítejte SLA z doby provozu a výpadku" | Vygeneruje kompletní kód Pythonu. | Rychlá vlastní logika bez nutnosti psaní kódu |
| Vložení existujícího kódu | Funkce Pythonu | Zabalí ho jako nástroj. | Migrace existujících skriptů, složitá logika |
| Volání koncových bodů HTTP | Adresa URL a ověřování koncového bodu | Volání rozhraní API přes HTTP | Azure Functions, Lambda, interní rozhraní API, webhooky |
Možnost 1: Nechte AI psát kód
Popište, co potřebujete v dialogovém okně, a vyberte Generovat. AI vytvoří funkční funkci Pythonu s zadanými parametry, zpracováním chyb a dokumentací.
Popíšete: "Vypočítejte plnění SLA z minut provozu a prostojů a určete, zda splňuje prahovou hodnotu 99,9%"
Agent vygeneruje: Úplná main() funkce připravená k otestování a nasazení
Možnost 2: Používání vlastního kódu
Vložte existující Python na kartu Kód . Funkce musí dodržovat tento vzor:
def main(param1: str, param2: int) -> dict:
# Your logic here
return {"result": "value"}
Možnost 3: Volání koncových bodů HTTP
Zabalte libovolný koncový bod HTTP (Azure Functions, AWS Lambda, interní rozhraní API nebo webhooky) jako nástroj Pythonu:
def main(input_data: str) -> dict:
import requests
# Azure Function with function key
response = requests.post(
"https://<FUNCTION_APP_NAME>.azurewebsites.net/api/<ENDPOINT>?code=<FUNCTION_KEY>",
json={"data": input_data}
)
# Or internal API with bearer token
# response = requests.get(
# "https://internal-api.corp/resource",
# headers={"Authorization": "Bearer <API_TOKEN>"}
# )
return response.json()
Poznámka:
Nástroje Pythonu mají odchozí síťový přístup. Můžete volat libovolný koncový bod HTTP, který vaše síť umožňuje. Pro ověřené koncové body zahrňte klíče rozhraní API nebo tokeny do hlaviček nebo parametrů dotazu.
Ukázkové scénáře
Následující příklady ukazují běžné případy použití nástrojů Pythonu.
Interní dotaz CMDB:
def main(server_name: str) -> dict:
"""Query internal CMDB for server configuration."""
import requests
response = requests.get(f"https://cmdb.internal.corp/api/servers/{server_name}")
return response.json()
Výpočet vlastního SLA:
def main(uptime_minutes: int, downtime_minutes: int) -> dict:
"""Calculate SLA using your organization's formula."""
total = uptime_minutes + downtime_minutes
sla = (uptime_minutes / total) * 100 if total > 0 else 100.0
return {"sla_percent": round(sla, 4), "meets_target": sla >= 99.9}
Generování sestav dodržování předpisů:
def main(incidents: list, month: str) -> dict:
"""Generate PDF compliance report."""
from reportlab.platypus import SimpleDocTemplate
doc = SimpleDocTemplate(f"/mnt/data/compliance-{month}.pdf")
# Build report...
return {"report_path": f"/api/files/compliance-{month}.pdf"}
Ověření fungování nástroje
Po vytvoření nástroje ho otestujte v novém chatu:
Calculate SLA for 43185 minutes uptime and 15 minutes downtime
Váš agent by měl rozpoznat, že úloha odpovídá vašemu nástroji, a spustit ji automaticky.
Spouštěcí prostředí
Následující tabulka popisuje spouštěcí prostředí pro nástroje Pythonu.
| Vlastnictví | Hodnota |
|---|---|
| Přerušení zápasu | 5 až 900 sekund (výchozí hodnota: 120) |
| Izolace | Nový kontejner pro každé spuštění |
| Systém souborů |
/mnt/data pro dočasné soubory |
| Network | Povolené odchozí připojení |
| Balíky | 700 a více předinstalovaných aplikací (pandas, requests, azure-identity, reportlab a další) |
| Kraj | Žádná trvalost mezi voláními |
Ověřování pro prostředky Azure
Nástroje Pythonu se můžou ověřit v prostředcích Azure pomocí spravované identity s přednastavenými obory.
| Scope | Přístup |
|---|---|
| ARM | Azure Resource Manager (management.azure.com) |
| Úložiště klíčů | Tajné kódy, klíče, certifikáty (vault.azure.net) |
| Úložiště | Úložiště blobů, front a tabulek (storage.azure.com) |
Povolte ověřování na kartě Identita při vytváření nástroje.
Omezení
- Žádný trvalý stav: Každé spuštění začíná znovu. V případě potřeby uložte výsledky externě.
- Maximální časový limit: 900 sekund (15 minut) pro dlouhotrvající operace.
- Bez GPU: Spouštěcí prostředí jen pro procesor.
- Povinný výstup JSON: Návratové hodnoty musí být serializovatelné ve formátu JSON.
Související obsah
| Schopnost | Co přidává |
|---|---|
| Přehled nástrojů | Všechny typy nástrojů, které může váš agent používat |
| Konektory | Integrované integrace pro běžné platformy |