ఈ పోస్ట్ LangChain ఫ్రేమ్వర్క్ ద్వారా అవుట్పుట్ పార్సర్ ఫంక్షన్లు మరియు తరగతులను ఉపయోగించే పద్ధతిని వివరిస్తుంది.
LangChain ద్వారా అవుట్పుట్ పార్సర్ను ఎలా ఉపయోగించాలి?
అవుట్పుట్ పార్సర్లు మోడల్ నుండి నిర్మాణాత్మక అవుట్పుట్ను పొందడానికి సహాయపడే అవుట్పుట్లు మరియు తరగతులు. LangChainలో అవుట్పుట్ పార్సర్లను ఉపయోగించే విధానాన్ని తెలుసుకోవడానికి, జాబితా చేయబడిన దశలను అనుసరించండి:
దశ 1: మాడ్యూల్లను ఇన్స్టాల్ చేయండి
ముందుగా, ప్రక్రియ ద్వారా వెళ్ళడానికి దాని డిపెండెన్సీలతో లాంగ్చెయిన్ మాడ్యూల్ను ఇన్స్టాల్ చేయడం ద్వారా అవుట్పుట్ పార్సర్లను ఉపయోగించే ప్రక్రియను ప్రారంభించండి:
పిప్ ఇన్స్టాల్ లాంగ్చైన్
ఆ తర్వాత, OpenAI మరియు ChatOpenAI వంటి లైబ్రరీలను ఉపయోగించడానికి OpenAI మాడ్యూల్ను ఇన్స్టాల్ చేయండి:
పిప్ ఇన్స్టాల్ ఓపెనై
ఇప్పుడు, సెటప్ చేయండి OpenAI కోసం పర్యావరణం OpenAI ఖాతా నుండి API కీని ఉపయోగించడం:
మమ్మల్ని దిగుమతి చేసుకోండి
గెట్పాస్ని దిగుమతి చేయండి
os.environ [ 'OPENAI_API_KEY' ] = getpass.getpass ( 'OpenAI API కీ:' )
దశ 2: లైబ్రరీలను దిగుమతి చేయండి
ఫ్రేమ్వర్క్లోని అవుట్పుట్ పార్సర్లను ఉపయోగించడానికి LangChain నుండి లైబ్రరీలను దిగుమతి చేసుకోవడం తదుపరి దశ:
langchain.prompts నుండి HumanMessagePromptTemplateని దిగుమతి చేయండి
పైడంటిక్ దిగుమతి ఫీల్డ్ నుండి
langchain.prompts నుండి ChatPromptTemplateని దిగుమతి చేయండి
langchain.output_parsers నుండి PydanticOutputParser దిగుమతి
pydantic దిగుమతి BaseModel నుండి
pydantic దిగుమతి వ్యాలిడేటర్ నుండి
langchain.chat_models నుండి ChatOpenAIని దిగుమతి చేయండి
langchain.llms నుండి OpenAIని దిగుమతి చేయండి
దిగుమతి జాబితాను టైప్ చేయడం నుండి
దశ 3: బిల్డింగ్ డేటా స్ట్రక్చర్
అవుట్పుట్ యొక్క నిర్మాణాన్ని నిర్మించడం అనేది పెద్ద భాషా నమూనాలలో అవుట్పుట్ పార్సర్ల యొక్క ముఖ్యమైన అప్లికేషన్. నమూనాల డేటా నిర్మాణాన్ని పొందే ముందు, అవుట్పుట్ పార్సర్ల నుండి నిర్మాణాత్మక అవుట్పుట్ను పొందడానికి మనం ఉపయోగిస్తున్న మోడల్ పేరును నిర్వచించడం అవసరం:
ఉష్ణోగ్రత = 0.0
మోడల్ = OpenAI ( మోడల్_పేరు = మోడల్_పేరు, ఉష్ణోగ్రత = ఉష్ణోగ్రత )
ఇప్పుడు, మోడల్ నుండి జోక్ పొందడానికి అవుట్పుట్ యొక్క నిర్మాణాన్ని కాన్ఫిగర్ చేయడానికి బేస్ మోడల్ను కలిగి ఉన్న జోక్ క్లాస్ని ఉపయోగించండి. ఆ తర్వాత, వినియోగదారుడు పైడాంటిక్ క్లాస్తో సులభంగా అనుకూల ధ్రువీకరణ తర్కాన్ని జోడించవచ్చు, ఇది మెరుగైన-రూపొందించిన ప్రశ్న/ప్రాంప్ట్ను ఉంచమని వినియోగదారుని అడగవచ్చు:
తరగతి జోక్ ( బేస్ మోడల్ ) :సెటప్: str = ఫీల్డ్ ( వివరణ = 'ఒక జోక్ ప్రదర్శించడానికి ప్రశ్న' )
punchline: str = ఫీల్డ్ ( వివరణ = 'ప్రశ్నకు జోక్తో సమాధానం ఇవ్వండి' )
మోడల్ సరిగ్గా అర్థం చేసుకోవాలి కాబట్టి ప్రశ్న కోసం #లాజిక్ ధ్రువీకరణ
@ వ్యాలిడేటర్ ( 'సెటప్' )
ప్రశ్న_ముగుస్తుంది_ప్రశ్న_మార్క్ ( cls, ఫీల్డ్ ) :
ఉంటే ఫీల్డ్ [ - 1 ] ! = '?' :
విలువను పెంచండి లోపం ( 'చెడుగా ఏర్పడిన ప్రశ్న!' )
తిరిగి ఫీల్డ్
దశ 4: ప్రాంప్ట్ టెంప్లేట్ని సెట్ చేయడం
దాని పారామితులను కలిగి ఉన్న PydanticOutputParser() పద్ధతిని కలిగి ఉన్న పార్సర్ వేరియబుల్ను కాన్ఫిగర్ చేయండి:
పార్సర్ను కాన్ఫిగర్ చేసిన తర్వాత, ప్రశ్న/ప్రాంప్ట్ నిర్మాణంతో PromptTemplate() పద్ధతిని ఉపయోగించి ప్రాంప్ట్ వేరియబుల్ని నిర్వచించండి:
prompt = ప్రాంప్ట్ మూస (టెంప్లేట్ = 'వినియోగదారు ప్రశ్నకు సమాధానం ఇవ్వండి. \n {format_instructions} \n {query} \n ' ,
ఇన్పుట్_వేరియబుల్స్ = [ 'ప్రశ్న' ] ,
పాక్షిక_వేరియబుల్స్ = { 'format_instructions' : parser.get_format_instructions ( ) }
)
దశ 5: అవుట్పుట్ పార్సర్ని పరీక్షించండి
అన్ని అవసరాలను కాన్ఫిగర్ చేసిన తర్వాత, ప్రశ్నను ఉపయోగించి కేటాయించిన వేరియబుల్ని సృష్టించండి మరియు ఆపై format_prompt() పద్ధతికి కాల్ చేయండి:
_input = prompt.format_prompt ( ప్రశ్న = జోక్_ప్రశ్న )
ఇప్పుడు, అవుట్పుట్ వేరియబుల్ను నిర్వచించడానికి మోడల్() ఫంక్షన్కు కాల్ చేయండి:
output = మోడల్ ( _input.to_string ( ) )అవుట్పుట్ వేరియబుల్తో పార్సర్() పద్ధతిని దాని పారామీటర్గా కాల్ చేయడం ద్వారా పరీక్ష ప్రక్రియను పూర్తి చేయండి:
parser.parse ( అవుట్పుట్ )
LangChainలో అవుట్పుట్ పార్సర్ని ఉపయోగించే ప్రక్రియ గురించి అంతే.
ముగింపు
LangChainలో అవుట్పుట్ పార్సర్ను ఉపయోగించడానికి, మాడ్యూల్లను ఇన్స్టాల్ చేయండి మరియు దాని API కీని ఉపయోగించి OpenAI వాతావరణాన్ని సెటప్ చేయండి. ఆ తర్వాత, మోడల్ను నిర్వచించి, ఆపై వినియోగదారు అందించిన ప్రశ్న యొక్క లాజిక్ ధ్రువీకరణతో అవుట్పుట్ యొక్క డేటా నిర్మాణాన్ని కాన్ఫిగర్ చేయండి. డేటా నిర్మాణం కాన్ఫిగర్ చేయబడిన తర్వాత, ప్రాంప్ట్ టెంప్లేట్ను సెట్ చేసి, ఆపై మోడల్ నుండి ఫలితాన్ని పొందడానికి అవుట్పుట్ పార్సర్ని పరీక్షించండి. ఈ గైడ్ LangChain ఫ్రేమ్వర్క్లో అవుట్పుట్ పార్సర్ను ఉపయోగించే ప్రక్రియను వివరించింది.