Как да внедрите самозадаването с верига за търсене?

Kak Da Vnedrite Samozadavaneto S Veriga Za T Rsene



LangChain е модулът за изграждане на езикови модели и чатботове, които могат да разбират и извличат текст на естествен език. Естествените езици са лесно разбираеми от хората, но машините трябва да ги научат чрез многократно преглеждане на данните. Данните/документите на естествените езици могат да се използват за обучение на модела и след това да поискате подканите от данните, за да проверите ефективността на модела.

Бързо очертание

Тази публикация ще демонстрира следното:







Как да внедрите самозадаването с верига за търсене



Заключение



Как да внедрите самозадаването с верига за търсене?

Self-Ask е процесът за подобряване на верижния процес, тъй като той разбира командите напълно. Веригите разбират въпроса, като извличат данните за всички важни термини от набора от данни. След като моделът е обучен и разбере заявката, той генерира отговор на заявката, зададена от потребителя.





За да научите процеса на прилагане на самозадаването с веригите за търсене в LangChain, просто преминете през следното ръководство:

Стъпка 1: Инсталиране на Frameworks

Първо, стартирайте процеса, като инсталирате процеса LangChain, като използвате следния код и вземете всички зависимости за процеса:



pip инсталирайте langchain

След като инсталирате LangChain, инсталирайте „ резултати от търсене в google ”, за да получите резултатите от търсенето от Google с помощта на средата OpenAI:

pip инсталирате openai google-search-results

Стъпка 2: Изграждане на среда

След като модулите и рамките са инсталирани, настройте средата за OpenAI и SerpAPi използвайки техните API, използвайки следния код. Импортирайте библиотеките на os и getpass, които могат да се използват за въвеждане на API ключовете от съответните им акаунти:

импортиране Вие
импортиране getpass

Вие . приблизително [ „OPENAI_API_KEY“ ] = getpass . getpass ( „API ключ на OpenAI:“ )
Вие . приблизително [ „SERPAPI_API_KEY“ ] = getpass . getpass ( „API ключ на Serpapi:“ )

Стъпка 3: Импортиране на библиотеки

След като настроите средата, просто импортирайте необходимите библиотеки от зависимостите на LangChain като помощни програми, агенти, llm и други:

от Langchain. llms импортиране OpenAI

от Langchain. комунални услуги импортиране SerpAPIWrapper

от Langchain. агенти . изходни анализатори импортиране SelfAskOutputParser

от Langchain. агенти . format_scratchpad импортиране format_log_to_str

от Langchain импортиране хъб

от Langchain. агенти импортиране инициализиращ_агент , Инструмент

от Langchain. агенти импортиране AgentType

Стъпка 4: Изграждане на езикови модели

Получаването на горните библиотеки е необходимо през целия процес, тъй като OpenAI() се използва за конфигуриране на езиковия модел. Използвайте метода SerpAPIWrapper(), за да конфигурирате променливата за търсене и да зададете инструментите, необходими на агента за изпълнение на всички задачи:

llm = OpenAI ( температура = 0 )
Търсене = SerpAPIWrapper ( )
инструменти = [
Инструмент (
име = 'Междинен отговор' ,
функ = Търсене. тичам ,
описание = 'полезно, когато трябва да попитате с търсене' ,
)
]

Стъпка 5: Използване на езика за изразяване LangChain

Първи стъпки с конфигурирането на агента с помощта на LangChain Expression Language (LCEL) чрез зареждане на модела в променливата за подкана:

подкана = хъб. дръпнете ( 'hwchase17/self-ask-with-search' )

Дефинирайте друга променлива, която може да бъде изпълнена, за да спре генерирането на текст и да контролира дължината на отговорите:

llm_with_stop = llm. обвързвам ( Спри се = [ ' Междинен отговор:' ] )

Сега конфигурирайте агентите с помощта на Lambda, която е платформа без сървър, управлявана от събития, за генериране на отговорите на въпросите. Освен това конфигурирайте стъпките, необходими за обучение и тестване на модела, за да получите оптимизирани резултати, като използвате компонентите, конфигурирани по-рано:

агент = {
'вход' : ламбда х: х [ 'вход' ] ,
'agent_scratchpad' : ламбда x: format_log_to_str (
х [ 'междинни_стъпки' ] ,
префикс_наблюдение = ' Междинен отговор: ' ,
llm_префикс = '' ,
) ,
} | подкана | llm_with_stop | SelfAskOutputParser ( )

Стъпка 6: Конфигуриране на Agent Executor

Преди да тествате метода, просто импортирайте библиотеката AgentExecutor от LangChain, за да направите агента отзивчив:

от Langchain. агенти импортиране AgentExecutor

Дефинирайте променливата agent_executor, като извикате метода AgentExecutor() и използвате компонентите като негови аргументи:

агент_изпълнител = AgentExecutor ( агент = агент , инструменти = инструменти , многословен = Вярно )

Стъпка 7: Стартиране на агента

След като агентът изпълнител е конфигуриран, просто го тествайте, като предоставите въпроса/подканата във входната променлива:

агент_изпълнител. извиквам ( { 'вход' : „Кой е шампионът на Откритото първенство на САЩ за мъже“ } )

Изпълнението на горния код отговори с името на шампиона на US Open в резултата, т.е. Доминик Тийм:

Стъпка 8: Използване на Self-Ask Agent

След като получите отговор от агента, използвайте SELF_ASK_WITH_SEARCH агент със заявката в метода run():

self_ask_with_search = инициализиращ_агент (
инструменти , llm , агент = AgentType. SELF_ASK_WITH_SEARCH , многословен = Вярно
)
self_ask_with_search. тичам (
„Кой е родният град на Доминик Тийм, световния шампион на US Open“
)

Следната екранна снимка показва, че агентът за самозапитване извлича информацията за всеки важен термин от набора от данни. След като събере цялата информация за заявката и разбере въпросите, той просто генерира отговора. Въпросите, които агентът си задава сам са:

  • Кой е Доминик Тийм?
  • Кой е родният град на Доминик Тийм?

След като получи отговорите на тези въпроси, агентът генерира отговора на първоначалния въпрос, който е „ Винер Нойщат, Австрия ”:

Това е всичко за процеса на внедряване на самозадаването с верига за търсене, използвайки рамката LangChain.

Заключение

За да приложите самопитането с търсене в LangChain, просто инсталирайте необходимите модули като google-search-results, за да получите резултатите от агента. След това настройте средата, като използвате API ключовете от акаунтите OpenAI и SerpAPi, за да започнете процеса. Конфигурирайте агента и изградете модела с модела на самозапитване, за да го тествате с помощта на метода AgentExecutor().