การดำเนินการเซิร์ฟเวอร์ AI

AI server actions extend NightPOS's automation framework by allowing artificial intelligence to make decisions during a workflow.

ได้รับการออกแบบมาสำหรับกรณีที่ตรรกะไม่สามารถแสดงออกได้ทั้งหมดผ่านเงื่อนไขคงที่ แต่ยังคงต้องการการดำเนินการที่มีการควบคุมผ่านการดำเนินการเซิร์ฟเวอร์มาตรฐาน

การทำงานของการดำเนินการเซิร์ฟเวอร์ AI

AI-driven workflows in NightPOS are built around a clear separation of responsibilities between the AI server action, or the Manager, and the tool, or the Worker.

การดำเนินการเซิร์ฟเวอร์ AI: ผู้จัดการ

การดำเนินการเซิร์ฟเวอร์ AI ทำหน้าที่เป็นผู้ตัดสินใจหรือผู้จัดการ อ่านเรคคอร์ดและบริบท ตีความพร้อมท์ AI และตัดสินใจว่าจะเรียกเครื่องมือใดและใช้อาร์กิวเมนต์ใด

การดำเนินการเซิร์ฟเวอร์ไม่บังคับใช้กฎทางธุรกิจ แก้ไขเรคคอร์ดโดยตรง หรือรับประกันความถูกต้องของการดำเนินงาน บทบาทของมันถูกจำกัดเพียงการตัดสินใจเท่านั้น

เครื่องมือ AI: ผู้ปฏิบัติงาน

เครื่องมือคือการดำเนินการเซิร์ฟเวอร์มาตรฐานที่เปิดใช้งานตัวเลือก ใช้ใน AI ในแท็บ การใช้งาน เครื่องมือประกอบด้วยตรรกะการดำเนินการทั้งหมดและทำการอัปเดต ย้าย หรือเขียนเรคคอร์ด เครื่องมือ ต้อง บังคับใช้กฎทางธุรกิจอย่างชัดเจนในโค้ด Python

หากเครื่องมือถูกเรียกโดยการดำเนินการเซิร์ฟเวอร์ AI จะดำเนินการโดยไม่มีเงื่อนไข เว้นแต่โค้ดเองจะป้องกันไว้

เวิร์กโฟลว์การดำเนินการเซิร์ฟเวอร์ AI

เวิร์กโฟลว์การดำเนินการเซิร์ฟเวอร์ AI ทำตามลำดับนี้:

  1. เรคคอร์ดเรียกใช้การดำเนินการเซิร์ฟเวอร์ AI

  2. ประเมินพร้อมท์ AI โดยใช้เรคคอร์ดเป็นบริบท

  3. AI เลือกเครื่องมือหนึ่งจากเครื่องมือที่มีอยู่

  4. AI จัดเตรียมอาร์กิวเมนต์ที่เครื่องมือต้องการ

  5. เครื่องมือที่เลือกจะเรียกใช้โค้ด Python

Important

AI server actions work without custom logic only when the underlying behavior already exists in NightPOS, such as moving a document to a folder. In these cases, the AI selects parameters, and NightPOS executes the action.

ตัวอย่างกรณีการใช้งาน

ตัวอย่าง จัดเรียงเอกสารในกล่องขาเข้าอัตโนมัติ แสดงให้เห็นรูปแบบการดำเนินการเซิร์ฟเวอร์ AI แบบเต็มรูปแบบ ไปยังเมนู การดำเนินการเซิร์ฟเวอร์ โดยไปที่ การตั้งค่า ‣ เทคนิค ‣ การดำเนินการเซิร์ฟเวอร์

Note

การดำเนินการเซิร์ฟเวอร์นี้ถูกออกแบบมาเพื่อตรวจสอบเนื้อหาของเอกสารและเพิ่มแท็ก การดำเนินการนี้**ไม่ได้**ย้ายเอกสารหรือเพิ่มแท็ก แต่จะตัดสินใจเท่านั้นว่าควรใช้เครื่องมือใดตามเนื้อหาของเอกสาร

โมเดล สำหรับการดำเนินการนี้ถูกระบุเป็น เอกสาร และ ประเภท คือ AI

รายการบันทึกสำหรับการดำเนินการเซิร์ฟเวอร์จัดเรียงเอกสารในกล่องขาเข้าอัตโนมัติ

พร้อมท์สำหรับการดำเนินการนี้ให้บริบทเกี่ยวกับเอกสาร รวมถึงเจตนาของการดำเนินการ

ฟิลด์ เครื่องมือ มีหลายการดำเนินการที่อาจดำเนินการตามพร้อมท์นี้ รวมถึงการย้ายเอกสาร การเพิ่มแท็ก หรือการสร้างใบแจ้งหนี้หรือบิล

Note

AI: เพิ่มแท็ก, AI: ย้ายไปยังโฟลเดอร์ และ AI: เปลี่ยนชื่อเอกสาร ล้วนเป็นการดำเนินการเซิร์ฟเวอร์ เรียกใช้โค้ด หมายความว่าจะเรียกใช้โค้ด Python

ตัวอย่างเช่น หากการดำเนินการตัดสินใจตามเนื้อหาของเอกสารว่าเครื่องมือที่เหมาะสมที่สุดคือ AI: ย้ายไปยังโฟลเดอร์ โค้ด Python จะดำเนินการต่อไปนี้:

ai['result'] = record._ai_action_move_in_folder(folder_id)

โค้ดนี้จะเรียกใช้โดยไม่มีเงื่อนไขเมื่อถูกเรียกและดำเนินการย้ายโดยใช้เมธอดที่มีอยู่

Note

AI ไม่ได้อนุมานอาร์กิวเมนต์จากโค้ด Python หรือจากลายเซ็นเมธอด แต่อาร์กิวเมนต์ที่ส่งไปยังเครื่องมือจะถูกกำหนดโดยการกำหนดค่าของเครื่องมือทั้งหมด

สำหรับเครื่องมือ AI: ย้ายไปยังโฟลเดอร์ โค้ด Python คาดหวังตัวแปรที่ชื่อว่า folder_id AI รู้ว่าต้องจัดเตรียม folder_id เพราะมีการประกาศอย่างชัดเจนว่าเป็นอาร์กิวเมนต์ในการกำหนดค่า สามารถพบได้ในแท็บ การใช้งาน ของการดำเนินการเซิร์ฟเวอร์ ในฟิลด์ AI Schema คอลัมน์ ชื่อ ภายใต้ AI Schema ต้องตรงกับชื่อตัวแปรที่ใช้ในโค้ด Python ทุกประการ

AI ใช้คำอธิบายอาร์กิวเมนต์เพื่อทำความเข้าใจว่าพารามิเตอร์แทนอะไร คาดหวังค่าประเภทใด และเมื่อใดที่เหมาะสมที่จะจัดเตรียม

หากไม่ได้กำหนดอาร์กิวเมนต์ในแท็บการใช้งาน AI จะไม่สามารถจัดเตรียมได้ แม้ว่าโค้ด Python จะอ้างอิงถึงก็ตาม

แท็บการใช้งานของการดำเนินการเซิร์ฟเวอร์ AI ย้ายไปยังโฟลเดอร์

การสร้างเครื่องมือ AI แบบกำหนดเอง

The same pattern in the Auto-sort documents in Inbox example above can be implemented using standard NightPOS logic. For example, to create an action that can update a task description, an Execute Code action could be created with the following code:

record.write({'description': content})

เพื่อให้ทำงานได้อย่างถูกต้อง content ต้อง ถูกกำหนดเป็นอาร์กิวเมนต์ในแท็บ การใช้งาน ของเครื่องมือ

ดูเพิ่มเติม

Server Actions

ปัญหาที่พบบ่อย

ทำไมฟิลด์เครื่องมือจึงว่างเปล่า?

  • ยืนยันว่ามีการดำเนินการเซิร์ฟเวอร์อย่างน้อยหนึ่งรายการที่เปิดใช้งาน ใช้ใน AI

  • ยืนยันว่ามีการกำหนดเครื่องมืออย่างน้อยหนึ่งรายการให้กับโมเดล Model เดียวกันกับการดำเนินการเซิร์ฟเวอร์

ทำไมเครื่องมือทำงานแล้วแต่ไม่มีอะไรเกิดขึ้น?

  • โค้ด Python สิ้นสุดโดยไม่มีการเปลี่ยนแปลง

  • ขาดอาร์กิวเมนต์ที่จำเป็นหรือว่างเปล่า

  • เงื่อนไขทางธุรกิจไม่ได้ถูกนำไปใช้ในตรรกะของเครื่องมือ

ทำไม AI จึงเลือกเครื่องมือที่ไม่คาดคิด?

  • พร้อมท์ขาดบริบทที่เพียงพอ

  • มีหลายเครื่องมือที่ตรงกับเจตนาเดียวกัน

  • ไม่มีการบังคับใช้ข้อจำกัดในระดับเครื่องมือ