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