ఏ LLM నుండి అయినా నమ్మదగిన JSON
చాలా మంది డెవలపర్లు తమ LLM సరైన JSONని ఇస్తుందని ఆశిస్తారు. కానీ ఆశ అనేది ఒక వ్యూహం కాదు.
ప్రొడక్షన్ యాప్ల కోసం మీకు నమ్మదగిన డేటా అవసరం. దానిని పొందడానికి నాలుగు మార్గాలు ఉన్నాయి.
- Parserతో కూడిన Plain text. ఇది తరచుగా విఫలమవుతుంది.
- JSON mode. ఇది సహాయపడుతుంది కానీ ఇప్పటికీ లోపాలు రావచ్చు.
- Function లేదా tool calling. ఇది మెరుగైనది.
- Constrained decodingతో కూడిన Native structured output. ఇది అత్యుత్తమమైనది (gold standard).
Constrained decoding మీ స్ట్రక్చర్ను గ్యారెంటీ చేస్తుంది. ఇది అదృష్టం మీద ఆధారపడదు.
ఇది ఎలా పనిచేస్తుంది: సిస్టమ్ మీ schemaను ఒక grammarగా మారుస్తుంది. ఇది finite-state machineని ఉపయోగిస్తుంది. ప్రతి దశలోనూ, మీ నియమాలను ఉల్లంఘించే tokensను సిస్టమ్ మాస్క్ చేస్తుంది. స్ట్రక్చర్ను పాడుచేసే tokenను మోడల్ ఎంచుకోలేదు. దీనివల్ల అవుట్పుట్ ఎల్లప్పుడూ సరైనదిగా ఉంటుంది.
ప్రధాన ప్రొవైడర్లు ఇప్పుడు దీనికి మద్దతు ఇస్తున్నారు:
- OpenAI: Structured Outputs
- Google Gemini: responseSchema
- Anthropic: Structured Outputs beta
- Open source: vLLM, Hugging Face TGI, llama.cpp, Outlines, and Instructor
మీ కోడ్లో JSON ఎర్రర్లను సరిచేయడం ఆపండి. వాటిని నివారించడానికి constrained decodingని ఉపయోగించండి.
పూర్తి కథనాన్ని కింద ఉన్న 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
