Membangun alat kustom

Merancang Sistem Agentic dengan LangChain

Dilini K. Sumanapala, PhD

Founder & AI Engineer, Genverv, Ltd.

Menghitung luas bangunan

Denah lantai persegi panjang sebuah studio apartemen

Merancang Sistem Agentic dengan LangChain

Menghitung luas bangunan

Denah studio persegi panjang dengan panjang dan lebar bertanda "side a" dan "side b".

Merancang Sistem Agentic dengan LangChain

Membuat alat matematika

Penanganan kueri internal LangChain

"What is the area of a rectangle with 
sides 5 and 7?"

input = " 5, 7"

     

  • Input bahasa alami

         
  • Ekstrak nilai numerik sebagai string

Merancang Sistem Agentic dengan LangChain

Membuat alat matematika

Definisikan fungsi alat Anda

@tool

def rectangle_area(input: str) -> float:
"""Calculates the area of a rectangle given the lengths of sides a and b."""
sides = input.split(',')
a = float(sides[0].strip()) b = float(sides[1].strip())
return a * b

 

  • Gunakan dekorator @tool
  • Beri nama fungsi
  • Buat docstring
  • Pisahkan input dengan .split()
  • Hapus spasi dengan .strip() dan konversi ke float
  • Kalikan a dan b lalu kembalikan hasilnya
Merancang Sistem Agentic dengan LangChain

Menyiapkan alat dan kueri

# Define the tools that the agent can access
tools = [rectangle_area]

# Create a query using natural language query = "What is the area of a rectangle with sides 5 and 7?"
# Pass in the hypotenuse length tool and invoke the agent app = create_react_agent(model, tools)
Merancang Sistem Agentic dengan LangChain

Menyiapkan alat dan kueri

# Invoke the agent and print the response
response = app.invoke({"messages": [("human", query)]})
print(response['messages'][-1].content)
Luas persegi panjang dengan sisi 5 dan 7 adalah 35 satuan persegi.
Merancang Sistem Agentic dengan LangChain

Alat siap pakai dan kustom

    Ikon alat

 

Merancang Sistem Agentic dengan LangChain

Ayo berlatih!

Merancang Sistem Agentic dengan LangChain

Preparing Video For Download...