Първи стъпки с агенти в LangChain?

P Rvi St Pki S Agenti V Langchain



LangChain е рамката за решаване на обработката на естествен език за изграждане на приложения или софтуер, които могат да взаимодействат и да разговарят с хората. Чатботовете или големите езикови модели (LLM) са предназначени да създадат среда, която може да действа като интерфейс за чат/разговор. Тези чатове се провеждат на човешки езици, наречени естествени езици като английски и т.н., между хора и AI модел.

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

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







Какво представляват агентите в обработката на естествен език (NLP)



Първи стъпки с агенти в LangChain



Заключение





Какво представляват агентите в обработката на естествен език (NLP)?

Агентите са жизненоважните компоненти на приложението на естествен език и те използват разбирането на естествения език (NLU), за да разберат заявките. Тези агенти са програми, които действат като шаблон за разговор за взаимодействие с хора, използвайки последователността от задачи. Агентите използват множество инструменти, които могат да бъдат извикани от агента за извършване на множество действия или за определяне на следващата задача за изпълнение.

Първи стъпки с агенти в LangChain

Започнете процеса на изграждане на агентите, които да водят разговор с хора, като извлечете изход с помощта на агентите в LangChain. За да научите процеса на започване на работа с агентите в LangChain, просто следвайте изброените стъпки по-долу:



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

Първо, започнете с процеса на инсталиране на рамката LangChain, като използвате „ пип ”, за да получите необходимите зависимости за използване на агенти:

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

Инсталирайте модула OpenAI за изграждане на LLM и го използвайте за конфигуриране на агентите в LangChain:

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

Настройте средата за модула OpenAI, използвайки неговия API ключ от акаунта, като изпълните следния код:

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

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

Стъпка 2: Конфигурирайте модела на чат

Импортирайте модула ChatOpenAI от LangChain, за да изградите LLM, като използвате неговата функция:

от Langchain. chat_models импортиране ChatOpenAI

llm = ChatOpenAI ( температура = 0 )

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

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

@ инструмент

деф get_word_length ( дума: ул ) - > вътр :

'''получаване на дължината на думата'''

връщане само ( дума )

инструменти = [ get_word_length ]

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

от Langchain. подкани импортиране ChatPromptTemplate , MessagesPlaceholder

подкана = ChatPromptTemplate. от_съобщения ( [

( 'система' , 'вашият асистент е доста невероятен, но има нужда от подобрение при изчисляване на дължини' ) ,

( 'потребител' , '{вход}' ) ,

MessagesPlaceholder ( име_на_променлива = 'agent_scratchpad' ) ,

] )

Стъпка 3: Агент за изграждане

Импортирайте библиотеката с инструменти за изграждане на LLM с инструменти, използващи функциите на OpenAI от модула LangChain:

от Langchain. инструменти . изобразявам импортиране format_tool_to_openai_функция

llm_с_инструменти = llm. обвързвам (

функции = [ format_tool_to_openai_функция ( T ) за T в инструменти ]

)

Конфигурирайте агента, като използвате функционалния агент OpenAI, за да използвате изходния анализатор, за да зададете последователностите от действия/задачи:

от Langchain. агенти . format_scratchpad импортиране format_to_openai_функции

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

агент = {

'вход' : ламбда х: х [ 'вход' ] ,

'agent_scratchpad' : ламбда x: format_to_openai_functions ( х [ 'междинни_стъпки' ] )

} | подкана | llm_с_инструменти | OpenAIFunctionsAgentOutputParser ( )

Стъпка 4: Извикване на агента

Следващата стъпка използва функцията invoke() за извикване на агента с помощта на аргументите input и intermediate_steps:

агент. извиквам ( {

'вход' : 'колко букви в думата добро' ,

'междинни_стъпки' : [ ]

} )

Стъпка 5: Конфигуриране на агентски инструменти

След това просто импортирайте библиотеката AgentFinish, за да конфигурирате intermediate_steps, като интегрирате всички стъпки в последователност, за да завършите дейността:

от Langchain. схема . агент импортиране AgentFinish
междинни_стъпки = [ ]
докато Вярно :
изход = агент. извиквам ( {
'вход' : 'писма в добро' ,
'междинни_стъпки' : междинни_стъпки
} )
ако е инстанция ( изход , AgentFinish ) :
краен резултат = изход. върнати_стойности [ 'изход' ]
прекъсвам
друго :
печат ( изход. инструмент , изход. инструмент_вход )
инструмент = {
'get_word_length' : get_word_length
} [ изход. инструмент ]
наблюдение = инструмент. тичам ( изход. инструмент_вход )
междинни_стъпки. добавям ( ( изход , наблюдение ) )
печат ( краен резултат )

Стъпка 6: Тестване на агента

Сега изпълнете агента, като извикате метода AgentExecutor(), след като импортирате неговата библиотека от LangChain:

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

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

В края извикайте agent_executor с входния аргумент, за да въведете заявката за агента:

агент_изпълнител. извиквам ( { 'вход' : 'колко букви в думата добро' } )

Агентът е показал отговора на въпроса, предоставен във входния аргумент след завършване на веригата:

Това е всичко за започване на работа с агентите в рамката LangChain.

Заключение

За да започнете с агентите в LangChain, просто инсталирайте модулите, необходими за настройка на средата, като използвате OpenAI API ключа. След това конфигурирайте модела на чат, като зададете шаблона за подкана за изграждане на агента с последователността от междинни стъпки. След като агентът е конфигуриран, просто създайте инструментите, като посочите задачите, след като дадете входния низ на потребителя. Този блог демонстрира процеса на използване на агентите в LangChain.