Бързо очертание
Тази публикация ще демонстрира следното:
Какво представляват агентите в обработката на естествен език (NLP)
Първи стъпки с агенти в LangChain
- Инсталиране на Frameworks
- Конфигурирайте модела на чат
- Строителен агент
- Извикване на агента
- Конфигуриране на инструменти на агент
- Тестване на агента
Какво представляват агентите в обработката на естествен език (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 импортиране ChatOpenAIllm = 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.