Concept internals

ตัวบ่งชี้สถานะกำลังพิมพ์

ตัวบ่งชี้การพิมพ์จะถูกส่งไปยังช่องแชทในขณะที่การรันยังทำงานอยู่ ใช้ agents.defaults.typingMode เพื่อควบคุมว่าเริ่มแสดงการพิมพ์ เมื่อใด และใช้ typingIntervalSeconds เพื่อควบคุมว่ารีเฟรช บ่อยเพียงใด

ค่าเริ่มต้น

เมื่อ ไม่ได้ตั้งค่า agents.defaults.typingMode OpenClaw จะคงพฤติกรรมเดิมไว้:

  • แชทโดยตรง: การพิมพ์เริ่มทันทีเมื่อลูปโมเดลเริ่มทำงาน
  • แชทกลุ่มที่มีการกล่าวถึง: การพิมพ์เริ่มทันที
  • แชทกลุ่มที่ไม่มีการกล่าวถึง: การพิมพ์เริ่มเมื่อการรันที่ถูกรับเข้ามีกิจกรรมที่ผู้ใช้มองเห็นได้ เช่น กิจกรรมการดำเนินการของ harness หรือข้อความ
  • การรัน Heartbeat: การพิมพ์เริ่มเมื่อการรัน Heartbeat เริ่มต้น หากเป้าหมาย Heartbeat ที่ resolve แล้วเป็นแชทที่รองรับการพิมพ์ และไม่ได้ปิดใช้งานการพิมพ์

โหมด

ตั้งค่า agents.defaults.typingMode เป็นหนึ่งในค่าต่อไปนี้:

  • never - ไม่มีตัวบ่งชี้การพิมพ์เลย
  • instant - เริ่มพิมพ์ ทันทีที่ลูปโมเดลเริ่มทำงาน แม้ว่าภายหลังการรันจะส่งคืนเฉพาะโทเค็นตอบกลับแบบเงียบ
  • thinking - เริ่มพิมพ์เมื่อมี เดลตาการให้เหตุผลรายการแรก หรือเมื่อมีการดำเนินการ harness ที่ทำงานอยู่หลังจากรับเทิร์นแล้ว
  • message - เริ่มพิมพ์เมื่อมี กิจกรรมตอบกลับที่ผู้ใช้มองเห็นได้รายการแรก เช่น การดำเนินการ harness ที่ทำงานอยู่ หรือเดลตาข้อความที่ไม่ใช่แบบเงียบ โทเค็นตอบกลับแบบเงียบ เช่น NO_REPLY จะไม่นับเป็นกิจกรรมข้อความ

ลำดับของ "เริ่มทำงานเร็วแค่ไหน": nevermessage/thinkinginstant

การกำหนดค่า

ตั้งค่าเริ่มต้นระดับเอเจนต์:

json5
{  agents: {    defaults: {      typingMode: "thinking",      typingIntervalSeconds: 6,    },  },}

แทนที่โหมดหรือจังหวะต่อเซสชัน:

json5
{  session: {    typingMode: "message",    typingIntervalSeconds: 4,  },}

หมายเหตุ

  • โหมด message จะไม่เริ่มจากโทเค็นตอบกลับแบบเงียบ แต่การดำเนินการที่ทำงานอยู่ยังสามารถแสดงการพิมพ์ก่อนที่ข้อความของผู้ช่วยจะพร้อมใช้งาน
  • thinking ยังคงตอบสนองต่อการสตรีมการให้เหตุผล (reasoningLevel: "stream") และยังสามารถเริ่มจากการดำเนินการที่ทำงานอยู่ก่อนที่เดลตาการให้เหตุผลจะมาถึงได้ด้วย
  • การพิมพ์ของ Heartbeat เป็นสัญญาณความพร้อมใช้งานสำหรับเป้าหมายการส่งที่ resolve แล้ว โดยจะเริ่มเมื่อการรัน Heartbeat เริ่มต้น แทนที่จะทำตามจังหวะสตรีมของ message หรือ thinking ตั้งค่า typingMode: "never" เพื่อปิดใช้งาน
  • Heartbeat จะไม่แสดงการพิมพ์เมื่อ target: "none" เมื่อไม่สามารถ resolve เป้าหมายได้ เมื่อการส่งผ่านแชทถูกปิดใช้งานสำหรับ Heartbeat หรือเมื่อช่องไม่รองรับการพิมพ์
  • typingIntervalSeconds ควบคุม จังหวะการรีเฟรช ไม่ใช่เวลาเริ่มต้น ค่าเริ่มต้นคือ 6 วินาที

ที่เกี่ยวข้อง

Was this useful?
On this page

On this page