LangChainలో OpenAI ఫంక్షన్స్ ఏజెంట్‌కి మెమరీని ఎలా జోడించాలి?

Langchainlo Openai Phanksans Ejent Ki Memarini Ela Jodincali



LangChain అనేది పెద్ద భాషా నమూనాలు లేదా LLMలను రూపొందించడానికి డిపెండెన్సీలను కలిగి ఉన్న ఫ్రేమ్‌వర్క్. ఇది వినియోగదారు నుండి ప్రశ్నను పొందడం నుండి దాని సమాధానాన్ని పొందడం వరకు అన్ని ఇంటర్మీడియట్ దశలను నిర్వహించడానికి ఏజెంట్లను రూపొందించడానికి సాధనాలను కూడా అందిస్తుంది. OpenAI అనేది ఇంటర్నెట్ నుండి రీడబుల్ మరియు స్ట్రక్చర్డ్ అవుట్‌పుట్‌ను అందించే వాతావరణం 'గూగుల్-సెర్చ్-ఫలితాలు' మాడ్యూల్.

త్వరిత రూపురేఖలు

ఈ పోస్ట్ క్రింది వాటిని ప్రదర్శిస్తుంది:

LangChainలో OpenAI ఫంక్షన్స్ ఏజెంట్‌కి మెమరీని ఎలా జోడించాలి?

OpenAI అనేది ఆర్టిఫిషియల్ ఇంటెలిజెన్స్ (AI) సంస్థ, ఇది 2015లో ఏర్పడింది మరియు ఇది ప్రారంభంలో లాభాపేక్ష లేని సంస్థ. AIతో నేచురల్ లాంగ్వేజ్ ప్రాసెసింగ్ (NLP) చాట్‌బాట్‌లు మరియు లాంగ్వేజ్ మోడల్‌లతో విజృంభిస్తున్నందున Microsoft 2020 నుండి చాలా అదృష్టాన్ని పెట్టుబడి పెట్టింది.







OpenAI ఏజెంట్లను రూపొందించడం వలన డెవలపర్‌లు ఇంటర్నెట్ నుండి మరింత చదవగలిగే మరియు టు-ది-పాయింట్ ఫలితాలను పొందగలుగుతారు. ఏజెంట్లకు మెమరీని జోడించడం వలన వారు చాట్ యొక్క సందర్భాన్ని బాగా అర్థం చేసుకోగలుగుతారు మరియు మునుపటి సంభాషణలను వారి మెమరీలో కూడా నిల్వ చేయవచ్చు. LangChainలో OpenAI ఫంక్షన్ల ఏజెంట్‌కు మెమరీని జోడించే ప్రక్రియను తెలుసుకోవడానికి, ఈ క్రింది దశలను అనుసరించండి:



దశ 1: ఫ్రేమ్‌వర్క్‌లను ఇన్‌స్టాల్ చేయడం

అన్నింటిలో మొదటిది, నుండి LangChain డిపెండెన్సీలను ఇన్‌స్టాల్ చేయండి 'లాంగ్‌చెయిన్-ప్రయోగాత్మకం' కింది కోడ్‌ని ఉపయోగించి ఫ్రేమ్‌వర్క్:



పిప్ ఇన్‌స్టాల్ లాంగ్‌చెయిన్ - ప్రయోగాత్మకమైన





ఇన్‌స్టాల్ చేయండి 'గూగుల్-సెర్చ్-ఫలితాలు' Google సర్వర్ నుండి శోధన ఫలితాలను పొందడానికి మాడ్యూల్:

పిప్ గూగుల్ ఇన్‌స్టాల్ చేయండి - వెతకండి - ఫలితాలు



అలాగే, లాంగ్‌చెయిన్‌లో భాషా నమూనాలను రూపొందించడానికి ఉపయోగించే OpenAI మాడ్యూల్‌ను ఇన్‌స్టాల్ చేయండి:

pip ఇన్స్టాల్ openai

దశ 2: పర్యావరణాలను ఏర్పాటు చేయడం

మాడ్యూల్‌లను పొందిన తర్వాత, నుండి API కీలను ఉపయోగించి పరిసరాలను సెటప్ చేయండి OpenAI మరియు SerpAPi ఖాతాలు:

దిగుమతి మీరు
దిగుమతి getpass

మీరు. సుమారు [ 'OPENAI_API_KEY' ] = getpass. getpass ( 'OpenAI API కీ:' )
మీరు. సుమారు [ 'SERPAPI_API_KEY' ] = getpass. getpass ( 'Serpapi API కీ:' )

పర్యావరణం రెండింటినీ యాక్సెస్ చేయడానికి API కీలను నమోదు చేయడానికి పై కోడ్‌ని అమలు చేయండి మరియు నిర్ధారించడానికి ఎంటర్ నొక్కండి:

దశ 3: లైబ్రరీలను దిగుమతి చేసుకోవడం

ఇప్పుడు సెటప్ పూర్తయింది, మెమరీ మరియు ఏజెంట్‌లను నిర్మించడానికి అవసరమైన లైబ్రరీలను దిగుమతి చేయడానికి LangChain నుండి ఇన్‌స్టాల్ చేయబడిన డిపెండెన్సీలను ఉపయోగించండి:

లాంగ్‌చెయిన్ నుండి. గొలుసులు దిగుమతి LLMMathChain
లాంగ్‌చెయిన్ నుండి. llms దిగుమతి OpenAI
ఇంటర్నెట్‌లో Google నుండి శోధించడానికి #లైబ్రరీని పొందండి
లాంగ్‌చెయిన్ నుండి. వినియోగాలు దిగుమతి SerpAPIWrapper
లాంగ్‌చెయిన్ నుండి. వినియోగాలు దిగుమతి SQLDatabase
langchain_experimental నుండి. sql దిగుమతి SQLDatabaseChain
సాధనాలను రూపొందించడానికి #లైబ్రరీని పొందండి కోసం ఏజెంట్‌ను ప్రారంభించడం
లాంగ్‌చెయిన్ నుండి. ఏజెంట్లు దిగుమతి ఏజెంట్ రకం , సాధనం , ప్రారంభించు_ఏజెంట్
లాంగ్‌చెయిన్ నుండి. చాట్_మోడల్స్ దిగుమతి ChatOpenAI

దశ 4: బిల్డింగ్ డేటాబేస్

ఈ గైడ్‌తో కొనసాగడానికి, మేము డేటాబేస్‌ను రూపొందించాలి మరియు దాని నుండి సమాధానాలను సేకరించేందుకు ఏజెంట్‌కి కనెక్ట్ చేయాలి. డేటాబేస్ను నిర్మించడానికి, దీన్ని ఉపయోగించి SQLiteని డౌన్‌లోడ్ చేయడం అవసరం మార్గదర్శకుడు మరియు కింది ఆదేశాన్ని ఉపయోగించి సంస్థాపనను నిర్ధారించండి:

sqlite3

లో పై ఆదేశాన్ని అమలు చేస్తోంది విండోస్ టెర్మినల్ SQLite యొక్క ఇన్‌స్టాల్ చేసిన సంస్కరణను ప్రదర్శిస్తుంది (3.43.2):

ఆ తర్వాత, డేటాబేస్ నిర్మించబడి నిల్వ చేయబడే మీ కంప్యూటర్‌లోని డైరెక్టరీకి వెళ్లండి:

cd డెస్క్‌టాప్
cd mydb
sqlite3 చినూక్. db

వినియోగదారు దీని నుండి డేటాబేస్ యొక్క కంటెంట్‌లను డౌన్‌లోడ్ చేసుకోవచ్చు లింక్ డైరెక్టరీలో మరియు డేటాబేస్ను నిర్మించడానికి కింది ఆదేశాన్ని అమలు చేయండి:

. చదవండి చినూక్_స్క్లైట్. sql
ఎంచుకోండి * ఆర్టిస్ట్ లిమిట్ నుండి 10 ;

డేటాబేస్ విజయవంతంగా నిర్మించబడింది మరియు వినియోగదారు వివిధ ప్రశ్నలను ఉపయోగించి దాని నుండి డేటా కోసం శోధించవచ్చు:

దశ 5: డేటాబేస్ అప్‌లోడ్ చేస్తోంది

డేటాబేస్ విజయవంతంగా నిర్మించబడిన తర్వాత, అప్‌లోడ్ చేయండి '.db' కింది కోడ్‌ని ఉపయోగించి Google సహకారానికి ఫైల్ చేయండి:

google నుండి. ఎప్పటికి దిగుమతి ఫైళ్లు
అప్‌లోడ్ చేయబడింది = ఫైళ్లు. అప్లోడ్ ( )

పై క్లిక్ చేయడం ద్వారా స్థానిక సిస్టమ్ నుండి ఫైల్‌ను ఎంచుకోండి “ఫైళ్లను ఎంచుకోండి” పై కోడ్‌ని అమలు చేసిన తర్వాత బటన్:

ఫైల్ అప్‌లోడ్ చేయబడిన తర్వాత, తదుపరి దశలో ఉపయోగించబడే ఫైల్ యొక్క మార్గాన్ని కాపీ చేయండి:

దశ 6: భాషా నమూనాను కాన్ఫిగర్ చేయడం

కింది కోడ్‌ని ఉపయోగించి భాషా నమూనా, గొలుసులు, సాధనాలు మరియు గొలుసులను రూపొందించండి:

llm = ChatOpenAI ( ఉష్ణోగ్రత = 0 , మోడల్ = 'gpt-3.5-turbo-0613' )
వెతకండి = SerpAPIWrapper ( )
llm_math_chain = LLMMathChain. నుండి_llm ( llm = llm , మాటలతో కూడిన = నిజమే )
db = SQLDatabase. నుండి_uri ( 'sqlite:///../../../../../content/Chinook.db' )
db_chain = SQLDatabaseChain. నుండి_llm ( llm , db , మాటలతో కూడిన = నిజమే )
ఉపకరణాలు = [
సాధనం (
పేరు = 'వెతకండి' ,
ఫంక్ = వెతకండి. పరుగు ,
వివరణ = 'ఇటీవలి వ్యవహారాలకు సంబంధించిన ప్రశ్నలకు సమాధానాలు పొందడానికి లక్ష్యంగా ఉన్న ప్రశ్నలను అడగండి' ,
) ,
సాధనం (
పేరు = 'కాలిక్యులేటర్' ,
ఫంక్ = llm_math_chain. పరుగు ,
వివరణ = 'గణిత సమస్యలకు సమాధానమివ్వడానికి/పరిష్కరించడానికి ఉపయోగపడుతుంది' ,
) ,
సాధనం (
పేరు = 'FooBar-DB' ,
ఫంక్ = db_గొలుసు. పరుగు ,
వివరణ = 'FooBar గురించిన ప్రశ్నలకు సమాధానమివ్వడానికి ఉపయోగపడుతుంది మరియు ఇన్‌పుట్ పూర్తి సందర్భాన్ని కలిగి ఉన్న ప్రశ్న రూపంలో ఉండాలి' ,
) ,
]
  • ది llm వేరియబుల్ మోడల్ పేరుతో ChatOpenAI() పద్ధతిని ఉపయోగించి భాషా నమూనా యొక్క కాన్ఫిగరేషన్‌లను కలిగి ఉంటుంది.
  • శోధన వేరియబుల్ ఏజెంట్ కోసం సాధనాలను రూపొందించడానికి SerpAPIWrapper() పద్ధతిని కలిగి ఉంది.
  • నిర్మించండి llm_math_chain LLMMathChain() పద్ధతిని ఉపయోగించి మ్యాథమెటిక్స్ డొమైన్‌కు సంబంధించిన సమాధానాలను పొందడానికి.
  • db వేరియబుల్ డేటాబేస్ యొక్క కంటెంట్‌లను కలిగి ఉన్న ఫైల్ యొక్క పాత్‌ను కలిగి ఉంటుంది. వినియోగదారు చివరి భాగాన్ని మాత్రమే మార్చాలి “content/Chinook.db” మార్గం ఉంచడం “sqlite:///../../../../../” అదే.
  • ఉపయోగించి డేటాబేస్ నుండి ప్రశ్నలకు సమాధానమివ్వడానికి మరొక గొలుసును రూపొందించండి db_గొలుసు వేరియబుల్.
  • వంటి సాధనాలను కాన్ఫిగర్ చేయండి వెతకండి , కాలిక్యులేటర్ , మరియు FooBar-DB డేటాబేస్ నుండి వరుసగా సమాధానాన్ని శోధించడం, గణిత ప్రశ్నలకు మరియు ప్రశ్నలకు సమాధానమివ్వడం కోసం:

దశ 7: మెమరీని జోడించడం

OpenAI ఫంక్షన్‌లను కాన్ఫిగర్ చేసిన తర్వాత, ఏజెంట్‌కు మెమరీని బిల్డ్ చేసి జోడించండి:

లాంగ్‌చెయిన్ నుండి. అడుగుతుంది దిగుమతి సందేశాలు ప్లేస్‌హోల్డర్
లాంగ్‌చెయిన్ నుండి. జ్ఞాపకశక్తి దిగుమతి సంభాషణబఫర్ మెమరీ

ఏజెంట్_క్వార్గ్స్ = {
'extra_prompt_messages' : [ సందేశాలు ప్లేస్‌హోల్డర్ ( వేరియబుల్_పేరు = 'జ్ఞాపకం' ) ] ,
}
జ్ఞాపకశక్తి = సంభాషణబఫర్ మెమరీ ( మెమరీ_కీ = 'జ్ఞాపకం' , రిటర్న్_మెసేజెస్ = నిజమే )

దశ 8: ఏజెంట్‌ను ప్రారంభించడం

బిల్డ్ మరియు ప్రారంభించే చివరి భాగం ఏజెంట్, వంటి అన్ని భాగాలను కలిగి ఉంటుంది llm , సాధనం , OPENAI_FUNCTIONS , మరియు ఈ ప్రక్రియలో ఉపయోగించాల్సిన ఇతరులు:

ఏజెంట్ = ప్రారంభించు_ఏజెంట్ (
ఉపకరణాలు ,
llm ,
ఏజెంట్ = ఏజెంట్ రకం. OPENAI_FUNCTIONS ,
మాటలతో కూడిన = నిజమే ,
ఏజెంట్_క్వార్గ్స్ = ఏజెంట్_క్వార్గ్స్ ,
జ్ఞాపకశక్తి = జ్ఞాపకశక్తి ,
)

దశ 9: ఏజెంట్‌ని పరీక్షించడం

చివరగా, 'ని ఉపయోగించి చాట్ ప్రారంభించడం ద్వారా ఏజెంట్‌ను పరీక్షించండి హాయ్ ” సందేశం:

ఏజెంట్. పరుగు ( 'హాయ్' )

దానితో ఏజెంట్‌ను అమలు చేయడం ద్వారా మెమరీకి కొంత సమాచారాన్ని జోడించండి:

ఏజెంట్. పరుగు ( 'నా పేరు జాన్ మంచు' )

ఇప్పుడు, మునుపటి చాట్ గురించి ప్రశ్న అడగడం ద్వారా మెమరీని పరీక్షించండి:

ఏజెంట్. పరుగు ( 'నా పేరు ఏమిటి' )

ఏజెంట్ మెమరీ నుండి పొందిన పేరుతో ప్రతిస్పందించారు కాబట్టి మెమరీ ఏజెంట్‌తో విజయవంతంగా అమలవుతోంది:

ఇప్పటికి ఇంతే.

ముగింపు

LangChainలో OpenAI ఫంక్షన్ల ఏజెంట్‌కు మెమరీని జోడించడానికి, లైబ్రరీలను దిగుమతి చేసుకోవడానికి డిపెండెన్సీలను పొందడానికి మాడ్యూల్‌లను ఇన్‌స్టాల్ చేయండి. ఆ తర్వాత, డేటాబేస్‌ను రూపొందించి, దానిని పైథాన్ నోట్‌బుక్‌కు అప్‌లోడ్ చేయండి, తద్వారా ఇది మోడల్‌తో ఉపయోగించబడుతుంది. మోడల్, సాధనాలు, గొలుసులు మరియు డేటాబేస్‌ను ఏజెంట్‌కు జోడించే ముందు వాటిని కాన్ఫిగర్ చేయండి మరియు దానిని ప్రారంభించండి. మెమరీని పరీక్షించే ముందు, ConversationalBufferMemory()ని ఉపయోగించి మెమరీని నిర్మించండి మరియు దానిని పరీక్షించే ముందు ఏజెంట్‌కి జోడించండి. ఈ గైడ్ LangChainలో OpenAI ఫంక్షన్ల ఏజెంట్‌కు మెమరీని ఎలా జోడించాలో వివరించింది.