किसी भी LLM से विश्वसनीय JSON प्राप्त करें
अधिकांश डेवलपर्स को उम्मीद होती है कि उनके LLM वैध JSON आउटपुट देंगे। उम्मीद कोई रणनीति नहीं है।
प्रोडक्शन ऐप्स के लिए आपको विश्वसनीय डेटा की आवश्यकता होती है। इसे प्राप्त करने के चार तरीके हैं।
- पार्सर के साथ प्लेन टेक्स्ट। यह अक्सर विफल हो जाता है।
- JSON मोड। यह मदद करता है लेकिन फिर भी विफल हो सकता है।
- फंक्शन या टूल कॉलिंग। यह बेहतर है।
- कंस्ट्रेंड डिकोडिंग (constrained decoding) के साथ नेटिव स्ट्रक्चर्ड आउटपुट। यह गोल्ड स्टैंडर्ड है।
कंस्ट्रेंड डिकोडिंग आपके स्ट्रक्चर की गारंटी देती है। यह किस्मत पर निर्भर नहीं करती है।
यह कैसे काम करता है: सिस्टम आपके स्कीमा को ग्रामर में कंपाइल करता है। यह एक फाइनाइट-स्टेट मशीन (finite-state machine) का उपयोग करता है। हर कदम पर, सिस्टम उन टोकन को मास्क कर देता है जो आपके नियमों को तोड़ते हैं। मॉडल ऐसा टोकन नहीं चुन सकता जो स्ट्रक्चर को खराब कर दे। आउटपुट वैध बना रहता है।
प्रमुख प्रदाता अब इसका समर्थन करते हैं:
- OpenAI: Structured Outputs
- Google Gemini: responseSchema
- Anthropic: Structured Outputs beta
- Open source: vLLM, Hugging Face TGI, llama.cpp, Outlines, and Instructor
अपने कोड में JSON त्रुटियों को ठीक करना बंद करें। उन्हें रोकने के लिए कंस्ट्रेंड डिकोडिंग का उपयोग करें।
नीचे AI Tech Connect पर पूरा लेख पढ़ें।
Source: https://dev.to/rishi_kora/reliable-json-from-any-llm-constrained-decoding-in-production-8an
Optional learning community: https://t.me/GyaanSetuAi
