AgentInspect டெவலப்பர்கள் ஒரு AI ஏஜென்ட்டின் படி-படிநிலைச் செயல்பாடுகளை JSONL பதிவுகளாக (logs) சேமிக்க அனுமதிக்கிறது. இதன் மூலம் தேவையான கருவிகள் (tools) இயக்கப்பட்டன என்பதைச் சரிபார்க்க முடியும் - இதற்கெல்லாம் OpenTelemetry-ஐ ஸ்டேக் (stack) உடன் இணைக்க வேண்டிய அவசியமில்லை.
Vercel AI SDK மூலம் உருவாக்கப்பட்ட வானிலை சரிபார்ப்பு உதாரணத்தைக் கொண்டு செய்யப்பட்ட ஒரு விரைவான சோதனையில், AgentInspect ஒரு "மௌனத் தோல்வியைக்" (silent failure) கண்டறிந்தது: இறுதிப் பதில் சரியாக இருந்தது, ஆனால் weather-tool அழைப்பு (call) நடக்கவே இல்லை. ஒரு சாதாரண அவுட்புட் சோதனை (output test) தவறவிட்ட ஒரு சிக்கலை, இந்த லைப்ரரியின் செயல்முறை-நிலை சரிபார்ப்பு (process-level check) கண்டறிந்தது.
செயல்பாட்டுப் பாதை (execution path) ஏன் முக்கியமானது
ஒரு AI ஏஜென்ட்டின் பதில் என்பது பல மாடல் அழைப்புகள் (model invocations) மற்றும் வெளிப்புறக் கருவி அழைப்புகளைக் (external tool calls) கொண்ட ஒரு தொடரின் இறுதித் தயாரிப்பாகும். ஒரு ப்ராம்ப்ட் (prompt) நேரடித் தரவைப் பெற வேண்டியிருந்தால், அந்தத் தரவு பெறப்படாத நிலையில், உரை சரியாகத் தெரிந்தாலும் அது அபாயத் தன்மையை மாற்றுகிறது. பதில்-நிலை சோதனைகள் (Answer-level tests), ஒரு முக்கியமான படிநிலையைத் தவிர்க்கும் பிழையைத் தெரியாமலேயே தயாரிப்பு நிலைக்கு (production) கொண்டு செல்ல அனுமதித்துவிடும்.
AgentInspect என்ன செய்கிறது
- லேசான பதிவு (Lightweight recording) – ஒரு TypeScript அடாப்டர் (adapter) ஏஜென்ட் குறியீட்டுடன் இணைந்து, ஒவ்வொரு மாடல் அழைப்பு, கருவி அழைப்பு மற்றும் அவற்றின் வரிசைமுறையை ஒரு line-delimited JSON (JSONL) கோப்பில் எழுதுகிறது.
- விதி இயந்திரம் (Rule engine) – டெவலப்பர்கள் "the weather tool must be called" அல்லது "the finance API must not be used" போன்ற எளிய விதிகளையத் (predicates) தெரிவிக்கலாம். ஒவ்வொரு முறை இயங்கிய பிறகும் இந்த லைப்ரரி அந்த விதிகளினை மதிப்பீடு செய்கிறது.
- CLI ஆய்வு (CLI inspection) – தோல்வியடைந்த செயல்பாடுகள் கோப்புகளாகச் சேமிக்கப்படுகின்றன. உள்ளமைக்கப்பட்ட command-line கருவியைப் பயன்படுத்தி, செயல்பாட்டுத் தடயத்தை (execution trace) மனிதர்கள் எளிதில் வாசிக்கும் வகையில் மீண்டும் இயக்க முடியும்.
பதிவுகள் உள்ளூர் கோப்புகளாக (local files) இருப்பதால், ஒரு tracing backend, நெட்வொர்க் கட்டமைப்பு அல்லது தனிப்பயனாக்கப்பட்ட observability சேவை எதுவும் தேவையில்லை.
சோதனை எவ்வாறு அமைப்பானது
- செயல்முறைச் சரிபார்ப்புகள் (Process checks) – weather-tool endpoint அழைக்கப்பட்டது என்பதை ஒரு விதி சரிபார்த்தது.
- பதில்ச் சரிபார்ப்புகள் (Answer checks) – ஒரு தனிப்பயனாக்கப்பட்ட உறுதிப்படுத்தல் (assertion), உருவாக்கப்பட்ட உரையை எதிர்பார்க்கப்பட்ட உட்புறச் சுற்றுலாப் பரிந்துரையுடன் (indoor-sightseeing recommendation) ஒப்பிட்டது.
இரண்டு சூழல்கள் (scenarios) இயக்கப்பட்டன:
| சூழல் (Scenario) | பதில்ச் சரிபார்ப்பு (Answer check) | செயல்முறைச் சரிபார்ப்பு (Process check) |
|---|---|---|
| Happy path (வானிலை பெறப்பட்டது) | Pass | Pass |
| வானிலை தவிர்க்கப்பட்டது (கருவி அழைக்கப்படவில்லை) | Pass | Fail |
இரண்டாவது இயக்கம் செயல்முறைச் சரிபார்ப்புகளின் மதிப்பை நிரூபிக்கிறது: பதில் சரியாகத் தெரிந்தாலும், விடுபட்ட கருவி அழைப்பு ஒரு மறைமுகக் குறைபாட்டைச் சுட்டிக்காட்டியது.
AgentInspect vs. Promptfoo
Promptfoo என்பது ஒரு நன்கு நிறுவப்பட்ட சோதனை கட்டமைப்பாகும் (testing framework), இது OpenTelemetry மூலம் தடயங்களைக் (traces) கைப்பற்றுகிறது. ஏற்கனவே telemetry தரவை ஒரு சேகரிப்பாளருக்கு (collector) அனுப்பும் குழுக்களுக்கு இந்த அணுகுமுறை நன்றாக இருக்கும், ஆனால் இது கூடுதல் கட்டமைப்புச் சுமையையும் (configuration overhead) மற்றும் ஒரு tracing உள்கட்டமைப்பின் மீதான சார்பையும் (dependency) ஏற்படுத்துகிறது.
AgentInspect மேம்பாட்டுத் தொடக்க நிலையில் இருப்பது போல் தோன்றினாலும், இதை அமைப்பது மிகவும் எளிது.
யார் கவனிக்க வேண்டும்
- CI பைப்பலைன்கள் (CI pipelines) – AgentInspect-ஐ இயக்கி, விதி மீறல்களின் போது build-ஐத் தோல்வியடையச் செய்யும் ஒரு ஒற்றைப் படிநிலையைச் சேர்ப்பதன் மூலம், மௌனமான பிழைகளைத் தடுக்க முடியும்.
- பிழைத்திருத்தம் (Debugging) – அழைப்புகளின் துல்லியமான வரிசையை மீண்டும் இயக்க JSONL பதிவுகளை உள்ளூரிலேயே திறக்க முடியும், இது தொலைதூர trace dashboard-களில் தேடுவதை விட நேரத்தைச் சேமிக்கும்.
- தயாரிப்புக் குழுக்கள் (Product teams) – ஒரு அம்சத்தை (feature) வெளியிடுவதற்கு முன், முக்கியமான தரவுப் பெறுதல் (data fetch) உண்மையில் நடந்ததை அறிந்து கொள்வது, பயனர்களிடமிருந்து வரும் புகார்களின் அபாயத்தைக் குறைக்கிறது.
சுருக்கமாகச் சொன்னால்: ஒரு AI ஏஜென்ட்டின் துல்லியம் என்பது இறுதி உரையை மட்டும் சார்ந்து இருக்காமல், அது எடுக்கும் செயல்பாடுகளைச் சார்ந்திருக்கும் போது, AgentInspect போன்ற ஒரு லேசான பதிவாக்கி (recorder), முழுமையான tracing stack-ன் சுமை இல்லாமலேயே மறைந்திருக்கும் செயல்முறைப் பிழைகளைத் தெரியக்கூடிய, சோதிக்கக்கூடிய தோல்விகளாக மாற்ற முடியும்.
