LangChain అనేది OpenAI పర్యావరణాన్ని ఉపయోగించి డేటాసెట్ లేదా ఇంటర్నెట్ నుండి సమాచారాన్ని పొందడానికి చాట్ మోడల్లు మరియు LLMలను రూపొందించే ఫ్రేమ్వర్క్. నిర్మాణాత్మక అవుట్పుట్ పార్సర్ బహుళ ఫీల్డ్లు లేదా వాస్తవ సమాధానం మరియు కొంత అదనపు సంబంధిత సమాచారం వంటి ప్రతిస్పందనలను పొందడానికి ఉపయోగించబడుతుంది. అవుట్పుట్ పార్సర్ లైబ్రరీలను LLMలు లేదా చాట్ మోడల్లుగా రూపొందించిన మోడల్లను ఉపయోగించి డేటాను సేకరించేందుకు LangChainతో ఉపయోగించవచ్చు.
ఈ పోస్ట్ లాంగ్చెయిన్లో నిర్మాణాత్మక అవుట్పుట్ పార్సర్ని ఉపయోగించే విధానాన్ని ప్రదర్శించింది.
LangChainలో స్ట్రక్చర్డ్ అవుట్పుట్ పార్సర్ని ఎలా ఉపయోగించాలి?
LangChainలో నిర్మాణాత్మక అవుట్పుట్ పార్సర్ని ఉపయోగించడానికి, ఈ దశలను అనుసరించండి:
దశ 1: ముందస్తు అవసరాలను ఇన్స్టాల్ చేయండి
LangChain ఫ్రేమ్వర్క్ని మీ పైథాన్ వాతావరణంలో ఇప్పటికే ఇన్స్టాల్ చేయకుంటే దాన్ని ఇన్స్టాల్ చేయడం ద్వారా ప్రక్రియను ప్రారంభించండి:
పిప్ ఇన్స్టాల్ లాంగ్చైన్
LangChainలో పార్సర్ను రూపొందించడానికి దాని పద్ధతులను యాక్సెస్ చేయడానికి OpenAI ఫ్రేమ్వర్క్ను ఇన్స్టాల్ చేయండి:
పిప్ ఇన్స్టాల్ ఓపెనై
ఆ తర్వాత, దాని పర్యావరణాన్ని యాక్సెస్ చేయడానికి దాని API కీని ఉపయోగించి OpenAI పర్యావరణానికి కనెక్ట్ చేయండి ' మీరు 'లైబ్రరీ మరియు 'ని ఉపయోగించి API కీని అందించండి getpass ' గ్రంధాలయం:
మమ్మల్ని దిగుమతి చేసుకోండిగెట్పాస్ని దిగుమతి చేయండి
os.environ [ 'OPENAI_API_KEY' ] = getpass.getpass ( 'OpenAI API కీ:' )
దశ 2: అవుట్పుట్/ప్రతిస్పందన కోసం స్కీమాను రూపొందించండి
OpenAIకి కనెక్షన్ పొందిన తర్వాత, అవుట్పుట్ను రూపొందించడానికి స్కీమాను రూపొందించడానికి లైబ్రరీలను దిగుమతి చేయండి:
langchain.output_parsers నుండి స్ట్రక్చర్డ్ అవుట్పుట్ పార్సర్, రెస్పాన్స్ స్కీమా దిగుమతిlangchain.prompts నుండి PromptTemplate, ChatPromptTemplate, HumanMessagePromptTemplate దిగుమతి
langchain.llms నుండి OpenAIని దిగుమతి చేయండి
langchain.chat_models నుండి ChatOpenAIని దిగుమతి చేయండి
అవసరానికి అనుగుణంగా ప్రతిస్పందన కోసం స్కీమాను పేర్కొనండి, తద్వారా మోడల్ తదనుగుణంగా ప్రతిస్పందనను రూపొందించాలి:
ప్రతిస్పందన_స్కీమాస్ = [రెస్పాన్స్ స్కీమా ( పేరు = 'సమాధానం' , వివరణ = 'ప్రశ్నకు సమాధానం' ) ,
రెస్పాన్స్ స్కీమా ( పేరు = 'మూలం' , వివరణ = 'సమాధానం పొందడానికి ఉపయోగించే వెబ్సైట్ మూలం' )
]
output_parser = StructuredOutputParser.from_response_schemas ( ప్రతిస్పందన_స్కీమాలు )
దశ 3: టెంప్లేట్ను ఫార్మాట్ చేయండి
అవుట్పుట్ కోసం స్కీమాను కాన్ఫిగర్ చేసిన తర్వాత, ఇన్పుట్ కోసం టెంప్లేట్ను సహజ భాషలో సెట్ చేయండి, తద్వారా మోడల్ దాని కోసం ప్రత్యుత్తరాన్ని పొందే ముందు ప్రశ్నలను అర్థం చేసుకోగలదు:
format_instructions = output_parser.get_format_instructions ( )prompt = ప్రాంప్ట్ మూస (
టెంప్లేట్ = 'యూజర్ ప్రశ్నకు సమాధానం ఇవ్వండి. \n {template} \n {query}' ,
ఇన్పుట్_వేరియబుల్స్ = [ 'ప్రశ్న' ] ,
పాక్షిక_వేరియబుల్స్ = { 'టెంప్లేట్' : format_instructions }
)
విధానం 1: భాషా నమూనాను ఉపయోగించడం
ప్రశ్నలు మరియు సమాధానాల కోసం ఫార్మాట్ టెంప్లేట్లను కాన్ఫిగర్ చేసిన తర్వాత, OpenAI() ఫంక్షన్ని ఉపయోగించి మోడల్ను రూపొందించండి:
మోడల్ = OpenAI ( ఉష్ణోగ్రత = 0 )
'లో ప్రాంప్ట్ సెట్ చేయండి ప్రశ్న ” వేరియబుల్ మరియు దానిని పాస్ చేయండి format_prompt() ఇన్పుట్గా పని చేసి, ఆపై సమాధానాన్ని “లో నిల్వ చేయండి అవుట్పుట్ ”వేరియబుల్:
_input = prompt.format_prompt ( ప్రశ్న = 'ప్రపంచంలో ఎన్ని ఖండాలు ఉన్నాయి' )output = మోడల్ ( _input.to_string ( ) )
కాల్ చేయండి అన్వయించు() మోడల్ నుండి సమాధానాన్ని పొందడానికి అవుట్పుట్ వేరియబుల్తో దాని వాదనగా పని చేయండి:
output_parser.parse ( అవుట్పుట్ )
అవుట్పుట్ పార్సర్ ప్రశ్నకు సమాధానాన్ని పొందుతుంది మరియు ప్రత్యుత్తరాన్ని పొందడానికి ఉపయోగించే వెబ్సైట్ పేజీకి లింక్తో వివరణాత్మక ప్రత్యుత్తరాన్ని ప్రదర్శిస్తుంది:
విధానం 2: చాట్ మోడల్ని ఉపయోగించడం
LangChainలో అవుట్పుట్ పార్సర్ నుండి ఫలితాలను పొందడానికి, దీన్ని ఉపయోగించండి చాట్_మోడల్ క్రింద వేరియబుల్:
chat_model = ChatOpenAI ( ఉష్ణోగ్రత = 0 )
ప్రాంప్ట్ను అర్థం చేసుకోవడానికి, చాట్ మోడల్ కోసం ప్రాంప్ట్ టెంప్లేట్ను కాన్ఫిగర్ చేయండి. అప్పుడు, ఇన్పుట్ ప్రకారం ప్రతిస్పందనను రూపొందించండి:
prompt = ChatPrompt మూస (సందేశాలు = [
HumanMessagePromptTemplate.from_template ( 'యూజర్ ప్రశ్నకు సమాధానం ఇవ్వండి. \n {format_instructions} \n {query}' )
] ,
ఇన్పుట్_వేరియబుల్స్ = [ 'ప్రశ్న' ] ,
పాక్షిక_వేరియబుల్స్ = { 'format_instructions' : format_instructions }
)
ఆ తర్వాత, ''లో ఇన్పుట్ను అందించండి ప్రశ్న ” వేరియబుల్ మరియు దానిని పాస్ చేయండి chat_model() మోడల్ నుండి అవుట్పుట్ పొందడానికి ఫంక్షన్:
_input = prompt.format_prompt ( ప్రశ్న = 'USA అంటే' )output = chat_model ( _input.to_messages ( ) )
చాట్ మోడల్ నుండి ప్రతిస్పందనను పొందడానికి, '' నుండి ఫలితాన్ని నిల్వ చేసే output_parserని ఉపయోగించండి అవుట్పుట్ ”వేరియబుల్:
output_parser.parse ( output.content )
చాట్ మోడల్ ప్రశ్నకు సమాధానాన్ని మరియు ఇంటర్నెట్ నుండి సమాధానాన్ని పొందడానికి ఉపయోగించే వెబ్సైట్ పేరును ప్రదర్శిస్తుంది:
లాంగ్చెయిన్లో నిర్మాణాత్మక అవుట్పుట్ పార్సర్ని ఉపయోగించడం గురించి అంతే.
ముగింపు
LangChainలో నిర్మాణాత్మక అవుట్పుట్ పార్సర్ని ఉపయోగించడానికి, ప్రక్రియను ప్రారంభించడానికి LangChain మరియు OpenAI మాడ్యూల్లను ఇన్స్టాల్ చేయండి. ఆ తర్వాత, దాని API కీని ఉపయోగించి OpenAI పర్యావరణానికి కనెక్ట్ చేసి, ఆపై మోడల్ కోసం ప్రాంప్ట్ మరియు ప్రతిస్పందన టెంప్లేట్లను కాన్ఫిగర్ చేయండి. అవుట్పుట్ పార్సర్ని లాంగ్వేజ్ మోడల్ లేదా చాట్ మోడల్తో ఉపయోగించవచ్చు. ఈ గైడ్ రెండు పద్ధతులతో అవుట్పుట్ పార్సర్ వినియోగాన్ని వివరిస్తుంది.