LangChain இல் முகவர்களைப் பயன்படுத்தி MRKL அமைப்பைப் பிரதியெடுப்பது எப்படி?

Langchain Il Mukavarkalaip Payanpatutti Mrkl Amaippaip Piratiyetuppatu Eppati



மாடுலர் ரீசனிங், நாலெட்ஜ் மற்றும் லாங்குவேஜ் (எம்ஆர்கேஎல்) அமைப்பு என்பது அதன் சரிபார்ப்புக்கான காரணங்களுடன் பதில்களைப் பிரித்தெடுக்கக்கூடிய ஒரு கட்டமைப்பாகும். இது மொழி மாதிரிகள், தனித்துவமான பகுத்தறிவு மற்றும் வெளிப்புற அறிவு ஆதாரங்களை ஒருங்கிணைக்கிறது. மொழி மாதிரிகள் பயனர் கேட்கும் கேள்விகளுக்கு ஏற்ப மனித மொழிகளில் உரையை உருவாக்குகின்றன. MRKL (உச்சரிக்கப்படுகிறது: அதிசயம்) பதிலைத் துல்லியமாகவும் சரியானதாகவும் மாற்றுவதற்கு பதில்களைத் தயாரிக்கும் போது பகுத்தறிவைச் சேர்க்கிறது.

விரைவான அவுட்லைன்

இந்த இடுகை பின்வருவனவற்றை நிரூபிக்கும்:







LangChain இல் முகவர்களைப் பயன்படுத்தி MRKL அமைப்பைப் பிரதியெடுப்பது எப்படி



முடிவுரை



LangChain இல் முகவர்களைப் பயன்படுத்தி MRKL அமைப்பைப் பிரதியெடுப்பது எப்படி?

மொழி மாதிரிகள் அல்லது சாட்போட்களுக்குப் பல பணிகளைச் செய்யப் பயன்படும் முகவர்களை உருவாக்க LangChain பயனரை அனுமதிக்கிறது. மொழி மாதிரியுடன் இணைக்கப்பட்ட நினைவகத்தில் உள்ள அனைத்து படிகளிலும் முகவர்கள் தங்கள் வேலையைச் சேமிக்கிறார்கள். இந்த டெம்ப்ளேட்களைப் பயன்படுத்தி, முகவர் MRKL போன்ற எந்தவொரு அமைப்பின் செயல்பாட்டையும் மீண்டும் உருவாக்காமல், உகந்த முடிவுகளைப் பெற முடியும்.





LangChain இல் உள்ள முகவர்களைப் பயன்படுத்தி MRKL அமைப்பைப் பிரதிபலிக்கும் செயல்முறையை அறிய, பட்டியலிடப்பட்ட படிகளைப் பின்பற்றவும்:

படி 1: கட்டமைப்புகளை நிறுவுதல்

முதலில், லாங்செயின்-பரிசோதனை கட்டளையுடன் பிப்பைப் பயன்படுத்தி LangChain சோதனை தொகுதிகளை நிறுவவும்:



pip நிறுவல் langchain-பரிசோதனை

MRKL அமைப்பிற்கான மொழி மாதிரியை உருவாக்க OpenAI தொகுதியை நிறுவவும்:

pip install openai

படி 2: OpenAI சூழலை அமைத்தல்

OpenAI மற்றும் SerpAPi கணக்குகளுக்கான API விசைகளை வழங்க பயனரைத் தூண்டுவதற்காக இயக்கத்தை அணுக os மற்றும் getpass நூலகங்களை இறக்குமதி செய்யவும்:

இறக்குமதி நீ

இறக்குமதி கெட்பாஸ்

நீ . தோராயமாக [ 'OPENAI_API_KEY' ] = கெட்பாஸ் . கெட்பாஸ் ( 'OpenAI API விசை:' )

நீ . தோராயமாக [ 'SERPAPI_API_KEY' ] = கெட்பாஸ் . கெட்பாஸ் ( 'Serpapi API விசை:' )

படி 3: நூலகங்களை இறக்குமதி செய்தல்

மொழி மாதிரி, கருவிகள் மற்றும் முகவர்களை உருவாக்க தேவையான நூலகங்களை இறக்குமதி செய்ய LangChain இலிருந்து சார்புகளைப் பயன்படுத்தவும்:

இருந்து லாங்செயின். சங்கிலிகள் இறக்குமதி LLMMathChain

இருந்து லாங்செயின். llms இறக்குமதி OpenAI

இருந்து லாங்செயின். பயன்பாடுகள் இறக்குமதி SerpAPIWrapper

இருந்து லாங்செயின். பயன்பாடுகள் இறக்குமதி SQLDatabase

இருந்து லாங்செயின்_பரிசோதனை. சதுர லி இறக்குமதி SQLDatabaseChain

இருந்து லாங்செயின். முகவர்கள் இறக்குமதி துவக்க_முகவர் , கருவி

இருந்து லாங்செயின். முகவர்கள் இறக்குமதி முகவர் வகை

படி 4: தரவுத்தளத்தை உருவாக்குதல்

MRKL ஆனது தரவுகளிலிருந்து தகவல்களைப் பிரித்தெடுக்க வெளிப்புற அறிவு ஆதாரங்களைப் பயன்படுத்துகிறது. இந்த இடுகை SQLite ஐப் பயன்படுத்துகிறது, இதைப் பயன்படுத்தி பதிவிறக்கம் செய்யலாம் வழிகாட்டி தரவுத்தளத்தை உருவாக்க. பின்வரும் கட்டளை அதன் நிறுவப்பட்ட பதிப்பைக் காண்பிப்பதன் மூலம் SQLite ஐ பதிவிறக்கும் செயல்முறையை உறுதிப்படுத்துகிறது:

sqlite3

கட்டளை வரியில் தரவுத்தளத்தை உருவாக்க ஒரு கோப்பகத்திற்குள் பின்வரும் கட்டளைகளின் தலையைப் பயன்படுத்தவும்:

சிடி டெஸ்க்டாப்

சிடி mydb

sqlite3 சினூக். db

பதிவிறக்கவும் தரவுத்தளம் '' ஐ உருவாக்க பின்வரும் கட்டளையைப் பயன்படுத்த கோப்பகத்தில் அதைச் சேமிக்கவும். .db ' கோப்பு:

. படி சினூக்_ஸ்க்லைட். சதுர லி

கலைஞர் வரம்பிலிருந்து * தேர்ந்தெடுக்கவும் 10 ;

படி 5: தரவுத்தளத்தைப் பதிவேற்றுகிறது

தரவுத்தளம் வெற்றிகரமாக உருவாக்கப்பட்டவுடன், கோப்பை Google கூட்டுப்பணியில் பதிவேற்றவும்:

இருந்து கூகிள். ET AL இறக்குமதி கோப்புகள்

பதிவேற்றப்பட்டது = கோப்புகள். பதிவேற்றம் ( )

பயனர் அதன் கீழ்தோன்றும் மெனுவிலிருந்து அதன் பாதையை நகலெடுக்க நோட்புக்கில் பதிவேற்றிய கோப்பை அணுகலாம்:

படி 6: கருவிகளை உள்ளமைத்தல்

தரவுத்தளத்தை உருவாக்கிய பிறகு, முகவர்களுக்கான மொழி மாதிரி, கருவிகள் மற்றும் சங்கிலிகளை உள்ளமைக்கவும்:

தேடல் = SerpAPIWrapper ( )
llm = OpenAI ( வெப்ப நிலை = 0 )
llm_math_chain = LLMMathChain ( llm = llm , வாய்மொழி = உண்மை )
db = SQLDatabase. from_uri ( 'sqlite:///../../../../../content/Chinook.db' )
db_செயின் = SQLDatabaseChain. from_llm ( llm , db , வாய்மொழி = உண்மை )
கருவிகள் = [
கருவி (
பெயர் = 'தேடல்' ,
செயல்பாடு = தேடல். ஓடு ,
விளக்கம் = 'சமீபத்திய விவகாரங்கள் பற்றிய பதில்களைப் பெற இலக்கு தூண்டுதல்களைக் கேளுங்கள்'
) ,
கருவி (
பெயர் = 'கால்குலேட்டர்' ,
செயல்பாடு = llm_math_chain. ஓடு ,
விளக்கம் = 'கணித சிக்கல்களுக்கு பதிலளிக்க/தீர்க்க பயனுள்ளதாக இருக்கும்'
) ,
கருவி (
பெயர் = 'FooBar DB' ,
செயல்பாடு = db_செயின். ஓடு ,
விளக்கம் = 'ஒரு தரவுத்தளத்திலிருந்து வினவல்களுக்கு பதிலளிக்க பயனுள்ளதாக இருக்கும் மற்றும் உள்ளீட்டு கேள்விக்கு முழுமையான சூழல் இருக்க வேண்டும்'
)
]
  • வரையறுக்கவும் llm பயன்படுத்தி மாறி OpenAI() மொழி மாதிரியைப் பெறுவதற்கான முறை.
  • தி தேடல் என்பதை அழைக்கும் கருவி SerpAPIWrapper() அதன் சூழலை அணுகுவதற்கான முறை.
  • தி LLMMathChain() கணித சிக்கல்கள் தொடர்பான பதில்களைப் பெற இந்த முறை பயன்படுத்தப்படுகிறது.
  • வரையறுக்கவும் db உள்ளே இருக்கும் கோப்பின் பாதையுடன் மாறி SQLDatabase() முறை.
  • தி SQLDatabaseChain() தரவுத்தளத்திலிருந்து தகவல்களைப் பெற இந்த முறையைப் பயன்படுத்தலாம்.
  • போன்ற கருவிகளை வரையறுக்கவும் தேடல் , கால்குலேட்டர் , மற்றும் ஃபூபார் டிபி வெவ்வேறு மூலங்களிலிருந்து தரவைப் பிரித்தெடுக்க முகவரை உருவாக்குவதற்கு:

படி 7: முகவரை உருவாக்குதல் மற்றும் சோதனை செய்தல்

பயனர் கேட்கும் கேள்விகளுக்கான பதில்களைப் பெற, கருவிகள், llm மற்றும் முகவர் ஆகியவற்றைப் பயன்படுத்தி MRKL அமைப்பைத் தொடங்கவும்:

mrkl = துவக்க_முகவர் ( கருவிகள் , llm , முகவர் = முகவர் வகை. ZERO_SHOT_REACT_DESCRIPTION , வாய்மொழி = உண்மை )

ரன்() முறையைப் பயன்படுத்தி MRKL அமைப்பை அதன் வாதமாக கேள்வியுடன் இயக்கவும்:

mrkl. ஓடு ( 'லியோ டிகாப்ரியோ மற்றும் அவரது காதலியின் தற்போதைய வயது என்ன என்பதும் அவர்களின் வயது வித்தியாசத்தை கூறுகிறது' )

வெளியீடு

இறுதிப் பதிலைப் பிரித்தெடுக்க கணினி பயன்படுத்தும் முழுமையான பாதையுடன் முகவர் இறுதிப் பதிலைத் தயாரித்துள்ளார்:

படி 8: MRKL சிஸ்டத்தை நகலெடுக்கவும்

இப்போது, ​​வெறுமனே பயன்படுத்தவும் mrkl தரவுத்தளங்கள் போன்ற பல்வேறு மூலங்களிலிருந்து பதில்களைப் பெற ரன்() முறையுடன் முக்கிய சொல்:

mrkl. ஓடு ( 'சமீபத்தில் வெளியான 'தி ஸ்டார்ம் பிஃபோர் தி காம்' என்ற ஆல்பத்தின் முழுப் பெயர் என்ன, மேலும் அவர்கள் ஃபூபார் தரவுத்தளத்தில் இருக்கிறார்களா, அவர்களின் எந்த ஆல்பங்கள் தரவுத்தளத்தில் உள்ளன' )

தரவுத்தளத்திலிருந்து பதிலைப் பெற ஏஜென்ட் தானாகவே கேள்வியை SQL வினவலாக மாற்றியுள்ளார். முகவர் பதிலைப் பெற சரியான மூலத்தைத் தேடுகிறார், பின்னர் தகவலைப் பிரித்தெடுக்க வினவலைச் சேகரிக்கிறார்:

படி 9: ChatModel ஐப் பயன்படுத்துதல்

ChatOpenAI() முறையைப் பயன்படுத்தி ஒரு ChatModel ஐ உருவாக்கி, அதனுடன் MRKL அமைப்பைப் பயன்படுத்துவதன் மூலம் பயனர் மொழி மாதிரியை மாற்றலாம்:

இருந்து லாங்செயின். அரட்டை_மாதிரிகள் இறக்குமதி ChatOpenAI

தேடல் = SerpAPIWrapper ( )
llm = ChatOpenAI ( வெப்ப நிலை = 0 )
llm1 = OpenAI ( வெப்ப நிலை = 0 )
llm_math_chain = LLMMathChain ( llm = llm1 , வாய்மொழி = உண்மை )
db = SQLDatabase. from_uri ( 'sqlite:///../../../../../content/Chinook.db' )
db_செயின் = SQLDatabaseChain. from_llm ( llm1 , db , வாய்மொழி = உண்மை )
கருவிகள் = [
கருவி (
பெயர் = 'தேடல்' ,
செயல்பாடு = தேடல். ஓடு ,
விளக்கம் = 'சமீபத்திய விவகாரங்கள் பற்றிய பதில்களைப் பெற இலக்கு தூண்டுதல்களைக் கேளுங்கள்'
) ,
கருவி (
பெயர் = 'கால்குலேட்டர்' ,
செயல்பாடு = llm_math_chain. ஓடு ,
விளக்கம் = 'கணித சிக்கல்களுக்கு பதிலளிக்க/தீர்க்க பயனுள்ளதாக இருக்கும்'
) ,
கருவி (
பெயர் = 'FooBar DB' ,
செயல்பாடு = db_செயின். ஓடு ,
விளக்கம் = 'ஒரு தரவுத்தளத்திலிருந்து வினவல்களுக்கு பதிலளிக்க பயனுள்ளதாக இருக்கும் மற்றும் உள்ளீட்டு கேள்விக்கு முழுமையான சூழல் இருக்க வேண்டும்'
)
]

படி 10: MRKL முகவரைச் சோதிக்கவும்

அதன் பிறகு, முகவரை உருவாக்கி, தொடக்க_ஏஜென்ட்() முறையைப் பயன்படுத்தி mrkl மாறியில் துவக்கவும். வெளியீட்டில் முழுமையான செயல்முறையைப் பெற, கருவிகள், எல்எல்எம், ஏஜென்ட் மற்றும் வெர்போஸ் போன்ற கூறுகளை ஒருங்கிணைக்க முறையின் அளவுருவைச் சேர்க்கவும்:

mrkl = துவக்க_முகவர் ( கருவிகள் , llm , முகவர் = முகவர் வகை. CHAT_ZERO_SHOT_REACT_DESCRIPTION , வாய்மொழி = உண்மை )

பின்வரும் ஸ்கிரீன்ஷாட்டில் காட்டப்பட்டுள்ளபடி mrkl அமைப்பை இயக்குவதன் மூலம் கேள்வியை இயக்கவும்:

mrkl. ஓடு ( 'லியோ டிகாப்ரியோவின் காதலி யார்? அவர்களின் தற்போதைய வயது என்ன' )

வெளியீடு

முகவரால் பிரித்தெடுக்கப்பட்ட இறுதிப் பதிலை பின்வரும் துணுக்கு காட்டுகிறது:

படி 11: MRKL சிஸ்டத்தை நகலெடுக்கவும்

தரவுத்தளத்திலிருந்து தகவலைப் பிரித்தெடுக்க இயற்கை மொழியில் கேள்வியுடன் ரன்() முறையை அழைப்பதன் மூலம் MRKL அமைப்பைப் பயன்படுத்தவும்:

mrkl. ஓடு ( 'சமீபத்தில் வெளியான 'தி ஸ்டார்ம் பிஃபோர் தி காம்' என்ற ஆல்பத்தின் முழுப் பெயர் என்ன, மேலும் அவர்கள் ஃபூபார் தரவுத்தளத்தில் இருக்கிறார்களா, அவர்களின் எந்த ஆல்பங்கள் தரவுத்தளத்தில் உள்ளன' )

வெளியீடு

பின்வரும் ஸ்கிரீன்ஷாட்டில் காட்டப்பட்டுள்ளபடி, தரவுத்தளத்திலிருந்து பிரித்தெடுக்கப்பட்ட இறுதிப் பதிலை முகவர் காட்டியுள்ளார்:

LangChain இல் உள்ள முகவர்களைப் பயன்படுத்தி MRKL அமைப்பைப் பிரதிபலிக்கும் செயல்முறையைப் பற்றியது அவ்வளவுதான்:

முடிவுரை

LangChain இல் உள்ள முகவர்களைப் பயன்படுத்தி MRKL அமைப்பைப் பிரதிபலிக்க, நூலகங்களை இறக்குமதி செய்வதற்கான சார்புகளைப் பெற தொகுதிகளை நிறுவவும். கருவிகளைப் பயன்படுத்தி பல ஆதாரங்களில் இருந்து பதில்களைப் பெற, நூலகங்கள் மொழி மாதிரி அல்லது அரட்டை மாதிரியை உருவாக்க வேண்டும். இணையம், தரவுத்தளங்கள் போன்ற பல்வேறு ஆதாரங்களில் இருந்து வெளியீடுகளைப் பிரித்தெடுப்பதற்கான கருவிகளைப் பயன்படுத்த முகவர்கள் கட்டமைக்கப்பட்டுள்ளன. LangChain இல் உள்ள முகவர்களைப் பயன்படுத்தி MRKL அமைப்பைப் பிரதிபலிக்கும் செயல்முறையை இந்த வழிகாட்டி விரிவாகக் கூறியுள்ளது.