Како реплицирати МРКЛ систем користећи агенте у ЛангЦхаин-у?

Kako Replicirati Mrkl Sistem Koristeci Agente U Langchain U



Систем модуларног размишљања, знања и језика (МРКЛ) је архитектура која може да издвоји одговоре са разлозима за његову верификацију. Он интегрише језичке моделе, дискретно резоновање и екстерне изворе знања. Језички модели производе текст на људским језицима према упитима које поставља корисник. МРКЛ (изговара се: чудо) додаје образложење док производи одговоре како би одговор био тачан и валидан.

Куицк Оутлине

Овај пост ће показати следеће:







Како реплицирати МРКЛ систем користећи агенте у ЛангЦхаин-у



Закључак



Како реплицирати МРКЛ систем користећи агенте у ЛангЦхаин-у?

ЛангЦхаин омогућава кориснику да направи агенте који се могу користити за обављање више задатака за језичке моделе или цхат ботове. Агенти чувају свој рад са свим корацима у меморији која је повезана са језичким моделом. Користећи ове шаблоне, агент може да реплицира рад било ког система као што је МРКЛ да би добио оптимизоване резултате без потребе да их поново гради.





Да бисте научили процес реплицирања МРКЛ система помоћу агената у ЛангЦхаин-у, једноставно прођите кроз наведене кораке:

Корак 1: Инсталирање оквира

Пре свега, инсталирајте експерименталне модуле ЛангЦхаин користећи пип са командом лангцхаин-екпериментал:



пип инсталл лангцхаин-екпериментал

Инсталирајте ОпенАИ модул да бисте направили језички модел за МРКЛ систем:

пип инсталл опенаи

Корак 2: Подешавање ОпенАИ окружења

Увезите библиотеке ос и гетпасс да бисте приступили оперативном и затражили од корисника да обезбеди АПИ кључеве за ОпенАИ и СерпАПи налоге:

увоз ти

увоз гетпасс

ти . Приближно [ „ОПЕНАИ_АПИ_КЕИ“ ] = гетпасс . гетпасс ( „ОпенАИ АПИ кључ:“ )

ти . Приближно [ „СЕРПАПИ_АПИ_КЕИ“ ] = гетпасс . гетпасс ( „Серпапи АПИ кључ:“ )

Корак 3: Увоз библиотека

Користите зависности из ЛангЦхаин-а да увезете потребне библиотеке за изградњу језичког модела, алата и агената:

из лангцхаин. ланцима увоз ЛЛММатхЦхаин

из лангцхаин. ллмс увоз ОпенАИ

из лангцхаин. комуналне услуге увоз СерпАПИВраппер

из лангцхаин. комуналне услуге увоз СКЛДатабасе

из лангцхаин_екпериментал. скл увоз СКЛДатабасеЦхаин

из лангцхаин. агенти увоз иницијализовати_агент , Оруђе

из лангцхаин. агенти увоз АгентТипе

Корак 4: Изградња базе података

МРКЛ користи екстерне изворе знања за издвајање информација из података. Овај пост користи СКЛите који се може преузети помоћу овога Водич за изградњу базе података. Следећа команда потврђује процес преузимања СКЛите-а тако што приказује његову инсталирану верзију:

склите3

Користите следеће команде у директоријуму да бисте креирали базу података помоћу командне линије:

цд Десктоп

цд мидб

склите3 Цхиноок. дб

Преузмите База података датотеку и сачувајте је у директоријуму да бисте користили следећу команду за креирање „ .дб ” фајл:

. читати Цхиноок_Склите. скл

СЕЛЕЦТ * ФРОМ Артист ЛИМИТ 10 ;

Корак 5: Учитавање базе података

Када се база података успешно креира, отпремите датотеку у Гоогле сарадњу:

из гоогле. ЕТ АЛ увоз фајлови

уплоадед = фајлови. отпремити ( )

Корисник може да приступи отпремљеној датотеци у бележници да копира њену путању из падајућег менија:

Корак 6: Конфигурисање алата

Након изградње базе података, конфигуришите језички модел, алате и ланце за агенте:

Претрага = СерпАПИВраппер ( )
ллм = ОпенАИ ( температура = 0 )
ллм_матх_цхаин = ЛЛММатхЦхаин ( ллм = ллм , вербосе = Истина )
дб = СКЛДатабасе. фром_ури ( 'склите:///../../../../../цонтент/Цхиноок.дб' )
дб_цхаин = СКЛДатабасеЦхаин. фром_ллм ( ллм , дб , вербосе = Истина )
алата = [
Оруђе (
име = 'Претрага' ,
фунц = Претрага. трцати ,
Опис = „Питајте циљане упите да бисте добили одговоре о недавним пословима“
) ,
Оруђе (
име = 'калкулатор' ,
фунц = ллм_матх_цхаин. трцати ,
Опис = 'корисно за одговарање/решавање математичких проблема'
) ,
Оруђе (
име = 'ФооБар ДБ' ,
фунц = дб_цхаин. трцати ,
Опис = „корисно за одговарање на упите из базе података и улазно питање мора имати потпуни контекст“
)
]
  • Дефинишите ллм променљива користећи ОпенАИ() метод за добијање језичког модела.
  • Тхе Претрага је алатка која позива СерпАПИВраппер() метод за приступ свом окружењу.
  • Тхе ЛЛММатхЦхаин() метода се користи за добијање одговора у вези са математичким проблемима.
  • Дефинишите дб променљива са путањом датотеке унутар СКЛДатабасе() методом.
  • Тхе СКЛДатабасеЦхаин() метода се може користити за добијање информација из базе података.
  • Дефинишите алате као што су Претрага , калкулатор , и ФооБар ДБ за изградњу агента за издвајање података из различитих извора:

Корак 7: Изградња и тестирање агента

Иницијализујте МРКЛ систем помоћу алата, ллм-а и агента да бисте добили одговоре на питања која поставља корисник:

мркл = иницијализовати_агент ( алата , ллм , агент = АгентТипе. ЗЕРО_СХОТ_РЕАЦТ_ДЕСЦРИПТИОН , вербосе = Истина )

Извршите МРКЛ систем користећи методу рун() са питањем као аргументом:

мркл. трцати ( „Колико је садашњих година Леа ДиЦаприа и његове девојке такође говори о њиховој старосној разлици“ )

Излаз

Агент је произвео коначни одговор са комплетном путањом коју систем користи за издвајање коначног одговора:

Корак 8: Реплицирајте МРКЛ систем

Сада, једноставно користите мркл кључну реч са методом рун() да бисте добили одговоре из различитих извора као што су базе података:

мркл. трцати ( „Које је пуно име извођача чији је албум под називом 'Тхе Сторм Бефоре тхе Цалм' недавно изашао и да ли се налазе у ФооБар бази и који од њихових албума се налазе у бази података' )

Агент је аутоматски трансформисао питање у СКЛ упит да би добио одговор из базе података. Агент тражи тачан извор да би добио одговор, а затим саставља упит да би издвојио информације:

Корак 9: Коришћење ЦхатМодел-а

Корисник може једноставно да промени језички модел користећи ЦхатОпенАИ() метод да га учини ЦхатМоделом и користи МРКЛ систем са њим:

из лангцхаин. цхат_моделс увоз ЦхатОпенАИ

Претрага = СерпАПИВраппер ( )
ллм = ЦхатОпенАИ ( температура = 0 )
ллм1 = ОпенАИ ( температура = 0 )
ллм_матх_цхаин = ЛЛММатхЦхаин ( ллм = ллм1 , вербосе = Истина )
дб = СКЛДатабасе. фром_ури ( 'склите:///../../../../../цонтент/Цхиноок.дб' )
дб_цхаин = СКЛДатабасеЦхаин. фром_ллм ( ллм1 , дб , вербосе = Истина )
алата = [
Оруђе (
име = 'Претрага' ,
фунц = Претрага. трцати ,
Опис = „Питајте циљане упите да бисте добили одговоре о недавним пословима“
) ,
Оруђе (
име = 'калкулатор' ,
фунц = ллм_матх_цхаин. трцати ,
Опис = 'корисно за одговарање/решавање математичких проблема'
) ,
Оруђе (
име = 'ФооБар ДБ' ,
фунц = дб_цхаин. трцати ,
Опис = „корисно за одговарање на упите из базе података и улазно питање мора имати потпуни контекст“
)
]

Корак 10: Тестирајте МРКЛ агент

Након тога, направите агента и иницијализујте га у мркл променљивој помоћу методе инитиализе_агент(). Додајте параметар методе да интегришете компоненте као што су алати, ллм, агент и вербосе да бисте добили комплетан процес у излазу:

мркл = иницијализовати_агент ( алата , ллм , агент = АгентТипе. ЦХАТ_ЗЕРО_СХОТ_РЕАЦТ_ДЕСЦРИПТИОН , вербосе = Истина )

Извршите питање тако што ћете покренути мркл систем као што је приказано на следећем снимку екрана:

мркл. трцати ( „Ко је девојка Леа Ди Каприја? Које су њихове тренутне године“ )

Излаз

Следећи исечак приказује коначни одговор који је издвојио агент:

Корак 11: Реплицирајте МРКЛ систем

Користите МРКЛ систем тако што ћете позвати методу рун() са питањем на природном језику да бисте извукли информације из базе података:

мркл. трцати ( „Које је пуно име извођача чији је албум под називом 'Тхе Сторм Бефоре тхе Цалм' недавно изашао и да ли се налазе у ФооБар бази и који од њихових албума се налазе у бази података' )

Излаз

Агент је приказао коначни одговор извучен из базе података као што је приказано на следећем снимку екрана:

То је све о процесу реплицирања МРКЛ система помоћу агената у ЛангЦхаин-у:

Закључак

Да бисте реплицирали МРКЛ систем користећи агенте у ЛангЦхаин-у, инсталирајте модуле да бисте добили зависности за увоз библиотека. Библиотеке су обавезне да направе језички модел или модел ћаскања да би добили одговоре из више извора користећи алате. Агенти су конфигурисани да користе алате за издвајање излаза из различитих извора као што су интернет, базе података, итд. Овај водич је разрадио процес реплицирања МРКЛ система коришћењем агената у ЛангЦхаин-у.