Овај водич ће илустровати процес коришћења меморије ентитета у ЛангЦхаин-у.
Како користити меморију ентитета у ЛангЦхаин-у?
Ентитет се користи за чување кључних чињеница ускладиштених у меморији како би их издвојио када их човек затражи користећи упите/упите. Да бисте научили процес коришћења меморије ентитета у ЛангЦхаин-у, једноставно посетите следећи водич:
Корак 1: Инсталирајте модуле
Прво, инсталирајте модул ЛангЦхаин користећи команду пип да бисте добили његове зависности:
пип инсталл лангцхаин
Након тога, инсталирајте ОпенАИ модул да бисте добили његове библиотеке за прављење ЛЛМ-ова и модела ћаскања:
пип инсталл опенаи
Подесите ОпенАИ окружење користећи АПИ кључ који се може издвојити из ОпенАИ налога:
увоз ти
увоз гетпасс
ти . Приближно [ „ОПЕНАИ_АПИ_КЕИ“ ] = гетпасс . гетпасс ( „ОпенАИ АПИ кључ:“ )
Корак 2: Коришћење ентитетске меморије
Да бисте користили меморију ентитета, увезите потребне библиотеке да бисте направили ЛЛМ користећи ОпенАИ() метод:
из лангцхаин. ллмс увоз ОпенАИиз лангцхаин. меморија увоз ЦонверсатионЕнтитиМемори
ллм = ОпенАИ ( температура = 0 )
Након тога, дефинишите меморија променљива користећи метод ЦонверсатионЕнтитиМемори() да обучи модел користећи улазне и излазне варијабле:
меморија = ЦонверсатионЕнтитиМемори ( ллм = ллм )_улазни = { 'улазни' : 'Јое аре Роот ради пројекат' }
меморија. лоад_мемори_вариаблес ( _улазни )
меморија. саве_цонтект (
_улазни ,
{ 'излаз' : 'Супер! Какав је то пројекат?' }
)
Сада тестирајте меморију користећи упит/промпт у улазни променљива позивањем методе лоад_мемори_вариаблес():
меморија. лоад_мемори_вариаблес ( { 'улазни' : 'ко је Роот' } )
Сада дајте још неке информације како би модел могао додати још неколико ентитета у меморију:
меморија = ЦонверсатионЕнтитиМемори ( ллм = ллм , ретурн_мессагес = Истина )_улазни = { 'улазни' : 'Јое аре Роот ради пројекат' }
меморија. лоад_мемори_вариаблес ( _улазни )
меморија. саве_цонтект (
_улазни ,
{ 'излаз' : 'Супер! Какав је то пројекат' }
)
Извршите следећи код да бисте добили излаз користећи ентитете који су ускладиштени у меморији. Могуће је кроз улазни који садржи промпт:
меморија. лоад_мемори_вариаблес ( { 'улазни' : 'ко је Џо' } )
Корак 3: Коришћење меморије ентитета у ланцу
Да бисте користили меморију ентитета након изградње ланца, једноставно увезите потребне библиотеке користећи следећи блок кода:
из лангцхаин. ланцима увоз ЦонверсатионЦхаиниз лангцхаин. меморија увоз ЦонверсатионЕнтитиМемори
из лангцхаин. меморија . промпт увоз ЕНТИТИ_МЕМОРИ_ЦОНВЕРСАТИОН_ТЕМПЛАТЕ
из пидантиц увоз БасеМодел
из куцање увоз Листа , Дикт , Било који
Направите модел разговора користећи метод ЦонверсатионЦхаин() користећи аргументе као што је ллм:
разговор = ЦонверсатионЦхаин (ллм = ллм ,
вербосе = Истина ,
промпт = ЕНТИТИ_МЕМОРИ_ЦОНВЕРСАТИОН_ТЕМПЛАТЕ ,
меморија = ЦонверсатионЕнтитиМемори ( ллм = ллм )
)
Позовите разговор.предицт() метод са уносом иницијализованим промптом или упитом:
разговор. предвидети ( улазни = 'Јое аре Роот ради пројекат' )
Сада, узмите посебан излаз за сваки ентитет који описује информације о њему:
разговор. меморија . ентити_сторе . продавница
Користите излаз из модела да дате улаз како би модел могао да ускладишти више информација о овим ентитетима:
разговор. предвидети ( улазни = 'Покушавају да додају сложеније меморијске структуре у Лангцхаин' )
Након што дате информације које се чувају у меморији, једноставно поставите питање да бисте издвојили специфичне информације о ентитетима:
разговор. предвидети ( улазни = 'Шта знаш о Џоу и Руту' )
Корак 4: Тестирање складишта меморије
Корисник може директно да прегледа меморијска складишта да би добио информације похрањене у њима користећи следећи код:
из принт увоз принтпринт ( разговор. меморија . ентити_сторе . продавница )
Обезбедите више информација које ће се чувати у меморији јер више информација даје тачније резултате:
разговор. предвидети ( улазни = „Роот је основао предузеће под називом ХЈРС“ )
Извуците информације из складишта меморије након што додате више информација о ентитетима:
из принт увоз принтпринт ( разговор. меморија . ентити_сторе . продавница )
Меморија има информације о више ентитета као што су ХЈРС, Јое, ЛангЦхаин и Роот:
Сада извуците информације о одређеном ентитету користећи упит или промпт дефинисан у улазној променљивој:
разговор. предвидети ( улазни = 'Шта знаш о Роот-у' )
То је све о коришћењу меморије ентитета помоћу ЛангЦхаин оквира.
Закључак
Да бисте користили меморију ентитета у ЛангЦхаин-у, једноставно инсталирајте потребне модуле за увоз библиотека потребних за прављење модела након подешавања ОпенАИ окружења. Након тога, изградите ЛЛМ модел и складиштите ентитете у меморију пружањем информација о ентитетима. Корисник такође може извући информације користећи ове ентитете и изградити ове меморије у ланцима са мешаним информацијама о ентитетима. Овај пост је разрадио процес коришћења меморије ентитета у ЛангЦхаин-у.