Како користити ретривере у ЛангЦхаин-у?

Kako Koristiti Retrivere U Langchain U



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

Овај пост ће показати процес коришћења ретривера у ЛангЦхаин-у.

Како користити ретривере у ЛангЦхаин-у?

Ретривери се понашају као интерфејс између модела и људи тако да могу да га користе за добијање жељеног резултата користећи улаз на природним језицима. Векторске продавнице се користе за складиштење података који се могу користити за добијање/извлачење информација/података из њих.







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



Корак 1: Инсталирајте модуле
Прво, инсталирајте потребне модуле као што је ЛангЦхаин да бисте омогућили да његове библиотеке и зависности наставе са процесом:



пип инсталирај лангцхаин





Инсталирајте цхромадб векторску продавницу која се може користити за базу података да би ретривер дохватио податке из продавнице:

пип инсталирај цхромадб



Сада, инсталирајте ОпенАИ оквир да бисте добили његове библиотеке за коришћење уграђивања текста пре него што направите ретривер:

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

Након инсталирања свих потребних модула, једноставно подесите окружење користећи ОпенАИ АПИ кључ:

увози нас
импорт гетпасс

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

Корак 2: Отпремите скуп података
Сада извршите следећи код да кликнете на „Изаберите датотеке“ дугме и отпремите документ или датотеку са локалног система:

из увозних датотека гоогле.цолаб
уплоадед = филес.уплоад ( )

Корак 3: Увезите библиотеке
Увезите потребне библиотеке да бисте направили и користили ретривере у ЛангЦхаин-у као што је „ Листа ', ' Повратни позиви ', и још много тога:

из абц импорт АБЦ, апстрактнаметод
од куцања импорт Ани, Лист
фром лангцхаин.сцхема импорт Доцумент
са лангцхаин.цаллбацкс.манагер увоз повратних позива

Корак 4: Креирајте креирање индекса у једној линији
Овај корак креира индекс за ретривера који се може користити за добијање података за формирање векторске продавнице увозом потребних библиотека:

из лангцхаин.цхаинс импорт РетриевалКА
из лангцхаин.ллмс импорт ОпенАИ

Овде учитајте податке користећи ТектЛоадер() метод са путањом датотеке отпремљене у кораку 2:

импорт ТектЛоадер из лангцхаин.доцумент_лоадерс
лоадер = ТектЛоадер ( 'стате_оф_тхе_унион.ткт' , кодирање = 'утф8' )

Увези библиотеку ВецторстореИндекЦреатор са ЛангЦхаин-а да направите индекс за базу података:

импорт ВецторстореИндекЦреатор из лангцхаин.индекес

Дефинишите индекс променљиву помоћу методе ВецторстореИндекЦреатор() користећи утоваривач променљива:

индекс = ВецторстореИндекЦреатор ( ) .фром_лоадерс ( [ утоваривач ] )

Примените упит да бисте тестирали индекс преузимањем података из документа:

упит = „Шта је председник Зеленски рекао у свом говору“
индек.куери ( упит )

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

индек.вецторсторе

Следећи код ће објаснити све детаље о индексу, његовом типу и бази података:

индек.вецторсторе.ас_ретриевер ( )

Користите метод индек витх куери() тражећи резиме документа користећи изворни аргумент да бисте користили име документа:

индек.куери ( „Општи сажетак података из овог документа“ , ретриевер_кваргс = { 'сеарцх_кваргс' : { 'филтер' : { 'извор' : 'стате_оф_тхе_унион.ткт' } } } )

Корак 5: Креирајте уградње
Учитајте документ за креирање његовог уграђивања и сачувајте текст у нумеричком облику користећи векторско складиште:

документи = лоадер.лоад ( )

Започните процес уградње користећи тект_сплиттер са аргументима величине комада и преклапања:

из лангцхаин.тект_сплиттер импорт ЦхарацтерТектСплиттер
#усинг тект_сплиттер за креирање малих делова документа за коришћење ретривера
тект_сплиттер = ЦхарацтерТектСплиттер ( цхунк_сизе = 1000 , цхунк_оверлап = 0 )
текстови = тект_сплиттер.сплит_доцументс ( документи )

Примените ОпенАИЕмбеддингс() метод који се може увести са ЛангЦхаин-а:

из лангцхаин.ембеддингс импорт ОпенАИЕмбеддингс
ембеддингс = ОпенАИЕембеддингс ( )

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

са лангцхаин.вецторсторес импорт Цхрома
дб = Цхрома.фром_доцументс ( текстови, уградње )

Корак 6: Тестирајте ретривера
Једном када су уградње креиране и ускладиштене у бази података једноставно дефинишите променљиву преузимања:

ретривер = дб.ас_ретриевер ( )

Позовите ланце користећи метод РетриевалКА() са функцијом ОпенАИ() и ретриевером као аргументима:

ка = РетриевалКА.фром_цхаин_типе ( ллм =ОпенАИ ( ) , цхаин_типе = 'ствари' , ретривер =ретривер )

Обезбедите улаз за тестирање ретривера помоћу упит променљива унутар методе ка.рун():

упит = „Шта је председник Зеленски рекао у свом говору“
ка.рун ( упит )

Једноставно прилагодите ВецторстореИндекЦреатор () користећи своје аргументе за постављање различитих вредности:

индек_цреатор = ВецторстореИндекЦреатор (
вецторсторе_цлс =Цхрома,
уграђивање =ОпенАИЕмбеддингс ( ) ,
тект_сплиттер =ЦхарацтерТектСплиттер ( цхунк_сизе = 1000 , цхунк_оверлап = 0 )
)

То је све о процесу почетка рада са ретриверима у ЛангЦхаин-у.

Закључак

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