Hur begränsar utformningen av verktygsscheman en AI-agent i hemmet?

Eva Wong är Teknisk skribent och den boende fixaren på ZimaSpace. En livslång nörd med en passion för hemma-labb och öppen källkod, hon specialiserar sig på att översätta komplexa tekniska koncept till tillgängliga, praktiska guider. Eva tror att självhosting ska vara roligt, inte skrämmande. Genom sina handledningar ger hon gemenskapen verktyg att avmystifiera hårdvaruinstallationer, från att bygga sin första NAS till att bemästra Docker-containrar.

Utformningen av verktygsscheman begränsar en AI-agent i hemmet genom att begränsa vilka parametrar och handlingsformer som kan bli giltiga verktygsanrop innan de körs.

En modell kan fortfarande resonera fel, men typade fält, obligatoriska mål, uppräkningar och validering minskar vad misstaget kan uttrycka innan behörighets- och godkännandelager avgör om åtgärden får köras.

Ett verktygsschema definierar formen på en tillåten begäran

Ett agentverktyg är inte bara ett namn och en beskrivning. Schemat definierar vilka fält som kan anges, vilka typer de använder och vilka kombinationer som är strukturellt godtagbara.

Den aktuella MCP-specifikationen kräver ett inputSchema som definieras med JSON Schema. Det ger körmiljön ett maskinläsbart kontrakt i stället för att enbart förlita sig på naturligt språk. Model Context Protocol definierar verktyg med ett indataschema, vilket gör den accepterade argumentstrukturen tydlig innan ett verktygsanrop körs; se MCP:s indatascheman för verktyg.

På en hemmaserver kan detta skilja ett begränsat omstartsverktyg från ett vagt administrativt skal.

Ett anrop som inte kan uttrycka godtyckliga kommandon har redan en mindre handlingsyta.

Obligatoriska fält förhindrar ofullständiga åtgärder

Obligatoriska egenskaper tvingar modellen att ange den information som en åtgärd behöver. Ett verktyg för att flytta filer kan kräva både källa och mål; ett containerverktyg kan kräva ett mål och en åtgärd.

MCP följer JSON Schemas valideringssemantik, som stöder obligatoriska egenskaper och typbegränsningar. JSON Schema-validering definierar obligatoriska egenskaper och andra strukturella påståenden som kan avvisa ofullständiga förfrågningar, vilket stöder begränsningslagret i JSON Schemas valideringsvokabulär.

Det hindrar applikationskoden från att gissa saknade mål eller ärva farliga standardvärden. Frånvaro blir ett valideringsfel i stället för en implicit åtgärd.

Uppräkningar och intervall tar bort åtgärder som modellen inte kan uttrycka

Ett schema kan begränsa ett fält till en uppräknad mängd eller ett avgränsat intervall. Om åtgärden endast tillåter omstart, stopp och start kan delete inte passera genom det fältet.

MCP kräver att verktygsargument överensstämmer med verktygets indataschema. Strukturella begränsningar är starkare än en beskrivning som bara anger vad som vanligtvis bör ske. OpenAPI-scheman kan uttrycka uppräknade värden, numeriska gränser och typade egenskaper, vilket visar hur ett verktyg kan göra ogiltiga åtgärder omöjliga att uttrycka genom OpenAPI:s schemadefinitioner.

Hemma kan samma mekanism begränsa termostatvärden, antal dagar för lagring, tjänstenamn eller säkerhetskopieringsmål så att åtgärdsordförrådet förblir tydligt.

Beskrivningar vägleder valet, men validering upprätthåller strukturen

Beskrivningar på naturligt språk hjälper modellen att välja ett verktyg och tolka fält, men de upprätthåller inte samma gräns som en validator som avvisar anrop utanför kontraktet.

MCP beskriver verktygsbeskrivningar som en lättförståelig vägledning för modellens förståelse, medan inputSchema tillhandahåller det formella parameterkontraktet. Anthropics verktygsanvändning bygger på deklarerade verktygsparametrar för att vägleda modellgenererade anrop, men modellvägledning skiljer sig fortfarande från körningsvalidering, vilket förklaras i Anthropics scheman för verktygsanvändning.

Detta skiljer ämnet från ZimaSpaces artikel om hur verktygsval blir mindre tillförlitliga när för många agentverktyg finns tillgängliga. Valosäkerhet uppstår innan ett verktyg väljs; schemabegränsningar gäller själva det möjliga anropet.

Schemavalidering ger inte behörighet

En strukturellt giltig begäran kan fortfarande vara obehörig. Schemat kan tillåta restart(container=postgres) medan anroparen endast har behörighet att starta om en mediacontainer.

MCP behandlar verktygsanvändning som interaktion med externa system och rekommenderar säkerhets- och mänskliga godkännandekontroller kring anrop. Att schemat är korrekt utgör ett lager, inte ett komplett behörighetssystem. Google Gemini använder på liknande sätt strukturerade funktionsdeklarationer, medan auktorisering ligger utanför själva schemat; denna åtskillnad stöder scheman för Gemini-funktionsanrop.

Denna gräns knyter an till ZimaSpaces begränsningar för verktygsskopet hos AI-agenter i hemmet: schemat begränsar vilka parametrar som kan uttryckas, medan omfång och funktioner avgör vilka giltiga åtgärder som faktiskt är behöriga.

Mindre scheman är enklare att testa och granska

Ett brett verktyg med många valfria fält skapar många giltiga kombinationer.

Genom att begränsa verktygen minskar antalet beteenden som utvärderingen måste täcka.

JSON Schema stöder objektegenskaper, obligatoriska medlemmar och kontroll av ytterligare egenskaper, vilket kan avvisa oväntade fält i stället för att tyst acceptera dem. Pydantic kan generera maskinläsbara scheman från typade modeller, vilket visar varför mindre och tydliga scheman är enklare att validera och testa i Pydantics generering av JSON Schema.

Tester kan då lista tillåtna åtgärder, ogiltiga kombinationer, gränsvärden och avvisningsbeteenden innan modellen ansluts till filer, containrar, enheter eller säkerhetskopieringssystem.

Teknik- och AI-hubb

Mer att läsa

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.