Quantcast
Channel: cc :: somkiat
Viewing all articles
Browse latest Browse all 2077

มาลองควบคุม web browser ด้วย Browser Use

$
0
0

เห็นใน feed มีการ share เรื่องการควบคุม web browser ด้วย Browser Use
โดย library ตัวนี้บอกว่าเป็น AI Agent
ซึ่งการทำงานมีขั้นตอนดังนี้

  • ทำการเปิด web browser เพื่อเข้าไปยัง URL ที่เรากำหนด
  • ทำการ extract DOM ต่าง ๆ ในหน้า web ออกมา
  • จากนั้นทำงานตามที่เรากำหนดไว้ต่อไป

ดังนั้นเรามาลองใช้งานกันดูแบบง่าย ๆ

เริ่มการใช้งาน

ในการใช้งานนั้นจะต้องติดตั้ง Python ก่อน
ส่วนการควบคุม web browser จะใช้งาน Playwright ดังนี้

[gist id="bb95b1c6897acdaf0f71e4273a743f8f" file="1.txt"]

โดยการอ่านและ extract DOM ของแต่ละ page ออกมาจะใช้งาน Playwright นั่นเอง
ดูได้จาก source code ตรงนี้
อีกอย่างในการทำงานว่าจะ execute คำสั่งอะไรของ Playwright
เพื่อควบคุมการทำงานตามคำสั่งที่เรากำหนด
จะมีการเขียน prompt ขึ้นมา สามารถดูได้ใน System prompt ซึ่งละเอียดมาก ๆ
ยกตัวอย่างของ Prompt

[gist id="bb95b1c6897acdaf0f71e4273a743f8f" file="prompt.txt"]

ขั้นตอนที่สอง ทำการเขียน code เพื่อทดลองใช้งาน

ซึ่งใช้งาน AI model=gemini-2.0-flash-exp ของ Google Genimi
จากนั้นสั่งให้ทำการเข้าไปใช้งาน https://seleniumbase.io/coffee/
มาดู code กันดู

[gist id="bb95b1c6897acdaf0f71e4273a743f8f" file="demo.py"]

รูปแบบของ task หรือคำสั่ง ให้ทำการซื้อ Americano 1 แก้ว และทำการสั่งซื้อด้วยชื่อและ email

[gist id="bb95b1c6897acdaf0f71e4273a743f8f" file="2.txt"]

ทำการ run ได้ผลดังนี้

[gist id="bb95b1c6897acdaf0f71e4273a743f8f" file="3.txt"]

จะเห็นได้ว่าตัว Agent หรือ browser use
จะทำการสร้าง task/action ออกมา
จากนั้นก็ทำการ eval หรือ เรียกใช้งาน function ของ Playwright
เพื่อทำงานต่อไป จนจะ success นั่นเอง

และผลการทำงานจะสร้างเป็น gif animation มาให้อีกด้วย
ลอง click ดู

จะมีการตีกรอบใน element/locator จะเจอบนหน้า web ด้วย

ลองใช้งานกันดูครับ
จะเป็นอีกเครื่องมือที่ช่วยดูว่า web ที่เราต้องการควบคุมนั้น
มันเหมาะหรือไม่ หรือ เราพัฒนาระบบงานให้มีความ accessibility ที่ดีหรือไม่ ?
สามารถดู code ได้ที่ GitHub

ปล. ลองใช้งาน model DeekSeek:7b พบว่าไม่สนับสนุน function call


Viewing all articles
Browse latest Browse all 2077

Trending Articles