Các bộ phận và tích hợp nâng cao LangChain (phần 39)

Các dạng Agents

Các dạng Agents trong LangChain
1. Zero-Shot ReAct Agent: Sử dụng khung ReAct để quyết định công cụ nào sử dụng mà không luận giải trung
gian. Agent này sử dụng khung ReAct (Reasoning và Acting) để quyết định động công cụ nào sẽ sử dụng và
làm cách nào trả lời, mà không yêu cầu bối cảnh hay ghi nhớ thêm. Nó được gọi là zero-shot vì nó không
yêu cầu huấn luyện tùy theo nhiệm vụ trước.
Trường hợp sử dụng
+ Ra quyết định nhanh
+ Thực hiện các nhiệm vụ đơn giản hay trả lời các câu hỏi thực tế

# zero-shot
from langchain.agents import create_react_agent
from langchain.tools import tool
from langchain.llms import OpenAI
# Define a simple calculator tool
@tool
def calculator(expression: str) -> str:

try:

result = eval(expression)
return f”Result: {result}”

except Exception:

return “Invalid expression.”

# Define the LLM and tools
llm = OpenAI(model=”text-davinci-003″, temperature=0)
tools = [calculator]
# Create a Zero-Shot ReAct Agent
agent = create_react_agent(llm=llm, tools=tools, verbose=True)
# Run the agent
query = “What is 12 * 15?”
response = agent.run(query)
print(response)
Output:
The result is 180.

Code này tạo một Zero-Shot ReAct Agent sử dụng LangChain để đánh giá một biểu thức toán học (“12 * 15”)
bằng cách định nghĩa một công cụ tính toán đơn giản và tích hợp nó với một OpenAI LLM. Agent xử lí
truy vấn, chọn công cụ phù hợp, và trả về kết quả, minh họa luận giải và sử dụng công cụ của nó mà không
huấn luyện trước.

Chia sẻ