ถ้าคุณกำลังสนใจการทำให้ AI สามารถทำงานอัตโนมัติได้มากขึ้น Function Calling คือฟีเจอร์ที่จะเปลี่ยนวิธีทำงานของคุณไปตลอดกาล ในบทความนี้เราจะมาสอนทุกขั้นตอนแบบละเอียดยิบ ไม่ต้องมีพื้นฐานก็เข้าใจได้
Function Calling คืออะไร?
ลองนึกภาพว่าคุณมีผู้ช่วย AI ที่สามารถทำงานได้หลายอย่างพร้อมกัน เช่น ค้นหาข้อมูล คำนวณตัวเลข เช็คสถานะสินค้า หรือจองตั๋ว แทนที่จะต้องพิมพ์คำสั่งยาวๆ แล้วรอให้ AI ตอบกลับมา Function Calling ช่วยให้ AI สามารถเรียกใช้ "ฟังก์ชัน" ที่เรากำหนดไว้ล่วงหน้าได้เลย โดย AI จะรู้ว่าเมื่อไหร่ควรเรียกใช้ฟังก์ชันไหน และส่งข้อมูลที่ต้องการไปให้ถูกต้อง
ตัวอย่างเช่น ถ้าคุณถามว่า "วันพรุ่งนี้กรุงเทพอากาศเป็นอย่างไร" AI จะรู้ว่าต้องเรียกใช้ฟังก์ชันดึงข้อมูลอากาศ แล้วส่งพารามิเตอร์ "กรุงเทพ" กับ "พรุ่งนี้" ไปให้ จากนั้นเมื่อได้ผลลัพธ์มา AI ก็จะสรุปให้คุณฟังในรูปแบบที่เข้าใจง่าย
เตรียมตัวก่อนเริ่มต้น
สิ่งที่ต้องมี
- บัญชี HolySheep AI — แพลตฟอร์มที่ให้บริการ API คุณภาพสูงราคาประหยัด รองรับโมเดล AI หลากหลาย เช่น GPT-4, Claude, Gemini และ DeepSeek พร้อมราคาที่คุ้มค่ามาก โดยอัตราแลกเปลี่ยน ¥1=$1 ทำให้ประหยัดได้ถึง 85% เมื่อเทียบกับบริการอื่น สมัครได้ง่ายๆ สมัครที่นี่ และรับเครดิตฟรีเมื่อลงทะเบียน
- คอมพิวเตอร์ที่ติดตั้ง Python — ภาษาโปรแกรมที่ใช้ในการเขียนโค้ด
- โปรแกรม Text Editor — เช่น VS Code หรือ Notepad++ สำหรับเขียนโค้ด
ติดตั้งโปรแกรมที่จำเป็น
ขั้นตอนที่ 1: ดาวน์โหลดและติดตั้ง Python จากเว็บไซต์ python.org โดยเลือกเวอร์ชันล่าสุดที่รองรับระบบปฏิบัติการของคุณ เมื่อติดตั้งเสร็จให้เปิด Command Prompt หรือ Terminal ขึ้นมา
ขั้นตอนที่ 2: พิมพ์คำสั่งด้านล่างเพื่อติดตั้งไลบรารีที่จำเป็น
pip install openai requests
กด Enter แล้วรอให้การติดตั้งเสร็จสมบูรณ์ จะขึ้นข้อความแสดงความสำเร็จสีเขียว
เริ่มเขียนโค้ดแบบ Step by Step
ขั้นตอนที่ 1: กำหนดค่าเริ่มต้น
สร้างไฟล์ใหม่ชื่อ function_calling.py แล้วเขียนโค้ดส่วนนี้ก่อน
from openai import OpenAI
สร้าง client เชื่อมต่อกับ HolySheep AI
client = OpenAI(
api_key="YOUR_HOLYSHEEP_API_KEY", # แทนที่ด้วย API Key ของคุณ
base_url="https://api.holysheep.ai/v1"
)
สิ่งสำคัญ: base_url ต้องเป็น https://api.holysheep.ai/v1 เท่านั้น ห้ามใช้ URL อื่นเด็ดขาด เพราะจะทำให้เชื่อมต่อไม่ได้
ขั้นตอนที่ 2: กำหนดฟังก์ชันที่ต้องการให้ AI เรียกใช้
ต่อไปเราจะกำหนดว่า AI สามารถเรียกใช้ฟังก์ชันอะไรได้บ้าง ในตัวอย่างนี้จะสร้างฟังก์ชันสำหรับคำนวณพื้นที่สี่เหลี่ยมและแปลงอุณหภูมิ
# กำหนดรายละเอียดของฟังก์ชันที่ให้ AI เรียกใช้
tools = [
{
"type": "function",
"function": {
"name": "calculate_area",
"description": "คำนวณพื้นที่สี่เหลี่ยมผืนผ้า",
"parameters": {
"type": "object",
"properties": {
"width": {
"type": "number",
"description": "ความกว้าง (เมตร)"
},
"height": {
"type": "number",
"description": "ความสูง (เมตร)"
}
},
"required": ["width", "height"]
}
}
},
{
"type": "function",
"function": {
"name": "convert_temperature",
"description": "แปลงอุณหภูมิระหว่าง Celsius และ Fahrenheit",
"parameters": {
"type": "object",
"properties": {
"celsius": {
"type": "number",
"description": "อุณหภูมิเป็นองศาเซลเซียส"
}
},
"required": ["celsius"]
}
}
}
]
ขั้นตอนที่ 3: สร้างฟังก์ชันที่ใช้งานจริง
ตอนนี้เราต้องสร้างฟังก์ชันจริงๆ ที่จะทำงานเมื่อ AI เรียกใช้
# ฟังก์ชันคำนวณพื้นที่สี่เหลี่ยมผืนผ้า
def calculate_area(width, height):
area = width * height
return f"พื้นที่สี่เหลี่ยมกว้าง {width} เมตร ยาว {height} เมตร เท่ากับ {area} ตารางเมตร"
ฟังก์ชันแปลงอุณหภูมิ
def convert_temperature(celsius):
fahrenheit = (celsius * 9/5) + 32
return f"{celsius} องศาเซลเซียส เท่ากับ {fahrenheit} องศาฟาเรนไฮต์"
รวมฟังก์ชันทั้งหมดไว้ใน dictionary
available_functions = {
"calculate_area": calculate_area,
"convert_temperature": convert_temperature
}
ขั้นตอนที่ 4: ส่งข้อความและรับผลลัพธ์
ต่อไปจะเป็นการส่งข้อความไปถาม AI แล้วดูว่า AI จะเรียกใช้ฟังก์