สร้างเครื่องมือสำหรับคำนวณทางคณิตศาสตร์
ถึงเวลาสร้างเครื่องมือของคุณแล้ว สมมติว่าคุณบริหารบริษัทก่อสร้างขนาดเล็กและต้องการคำนวณความยาวของด้านหนึ่งของหลังคา หากรู้ความยาวของคานรองรับหลังคาสองเส้นที่ตั้งฉากกัน ก็สามารถคำนวณความยาวของหลังคาได้โดยใช้สูตรด้านตรงข้ามมุมฉากด้านล่างนี้ $$c = \sqrt{a^2 + b^2}$$

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การออกแบบระบบ Agentic ด้วย LangChain
คำแนะนำการฝึกหัด
- ใช้ decorator ที่เหมาะสมเพื่อกำหนดให้ฟังก์ชันเป็น tool
- ในการหาด้านตรงข้ามมุมฉาก ให้ใช้เมธอด
.split()กับสตริงinputเพื่อดึงความยาวอีกสองด้านของสามเหลี่ยมมุมฉาก - แปลงแต่ละด้านของสามเหลี่ยม
aและbให้เป็น float และใช้.strip()เพื่อลบช่องว่างส่วนเกินออกจากค่าเหล่านั้น - ใช้โมดูล
mathของ Python ยกกำลังสองความยาวaและbนำค่ามาบวกกัน แล้วหาค่ารากที่สองเพื่อให้ได้ความยาวของหลังคา
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Define this math function as a tool
____
def hypotenuse_length(input: str) -> float:
"""Calculates the length of the hypotenuse of a right-angled triangle given the lengths of the other two sides."""
# Split the input string to get the lengths of the triangle
sides = ____.____(',')
# Convert the input values to floats, removing extra spaces
a = ____(____[0].____())
b = ____(____[1].____())
# Square each of the values, add them together, and find the square root
return ____.sqrt(a____2 + b____2)