webLLM

นี่คือส่วนการกำหนดค่าของ MT ที่กำหนดเอง. วิธี webLLM อนุญาตให้โต้ตอบกับโมเดลภาษาขนาดใหญ่บนเว็บ (LLMs) โดยการทำงานอัตโนมัติของการโต้ตอบผ่านเบราว์เซอร์และการจับการตอบสนองแบบสตรีมมิง

พารามิเตอร์

  • method: string - ตั้งค่าเป็น "web_llm"

  • การเรียกกลับ: string - วิธีการเรียกกลับสำหรับการจัดการการตอบกลับ ("dataSync")

  • URL: string - ตั้งค่าเป็น null เมื่อใช้วิธี webLLM

  • URLเริ่มต้น: string - URL เริ่มต้นของอินเทอร์เฟซ LLM บนเว็บที่จะโหลด

  • เหตุการณ์ป้อนข้อมูล: อาร์เรย์ของอ็อบเจ็กต์ - ลำดับของเหตุการณ์การโต้ตอบของเบราว์เซอร์:

    • ตัวเลือก (Selector): ตั้งค่าคุณสมบัติขององค์ประกอบ <selector: string, property: string, value: string>

    • ตัวเลือกพร้อมเหตุการณ์: กระตุ้นเหตุการณ์ขององค์ประกอบ <selector: string, property: string, newEvent?: string, options?: object>

    • หยุดชั่วคราว (Sleep): รอเป็นระยะเวลาที่กำหนด <sleep: number> (ระยะเวลาเป็นมิลลิวินาที)

  • ตัวปรับเครือข่าย (streamAdapter): string - ประเภทของตัวดักจับเครือข่ายที่จะขัดขวาง:

    • "xhr" - XMLHttpRequest

    • "fetch" - Fetch API

  • การหน่วงเวลาการแทนที่สตรีม (streamOverrideDelay): number - หน่วงเวลาเป็นมิลลิวินาทีก่อนการแทนที่การตอบกลับสตรีม

  • ประเภทสตรีม (streamType): string - วิธีจัดการข้อมูลสตรีม:

    • ต่อท้าย (append) - ต่อข้อมูลใหม่เข้าไปยังเนื้อหาที่มีอยู่

    • แทนที่ (replace) - แทนที่เนื้อหาด้วยข้อมูลใหม่

  • รูปแบบสตรีม (streamFormat): string - รูปแบบที่คาดหวังของข้อมูลสตรีม:

    • "json" - รูปแบบ JSON

    • "string" - รูปแบบข้อความธรรมดา

  • ตัวกรองสตรีม (streamFilter): object - เกณฑ์การกรองสำหรับการจับคำขอเครือข่าย:

    • url: อาร์เรย์ของสตริง - กรองตามรูปแบบ URL

    • เมธอด (method): อาร์เรย์ของสตริง - กรองตามเมธอด HTTP (["GET", "POST"])

    • ประเภทเนื้อหา (contentType): อาร์เรย์ของสตริง - กรองตามเฮดเดอร์ประเภทเนื้อหา

  • การสมบูรณ์ของสตรีม (streamCompleted): object - เงื่อนไขเพื่อกำหนดว่าเมื่อใดสตรีมถือว่าสมบูรณ์:

    • ตั้งเวลา (setTimeout): number - เวลารอสูงสุดเป็นมิลลิวินาทีหลังจากรับข้อมูลครั้งสุดท้าย

    • requestReadyState: number - ค่าสถานะ ready state ของ XMLHttpRequest ที่บ่งชี้การเสร็จสิ้น

    • requestException: string - ชื่อข้อยกเว้นที่บ่งชี้การสิ้นสุดของสตรีม

  • ตัวแยกวิเคราะห์สตรีม (streamParser): อาร์เรย์ของอาร์เรย์ - ท่อของการดำเนินการแยกวิเคราะห์ที่ใช้กับแต่ละชิ้นส่วนของสตรีม แต่ละท่อเป็นอาร์เรย์ของอ็อบเจ็กต์ตัวแยกวิเคราะห์ที่มีการดำเนินการต่อไปนี้:

    • การดำเนินการตรวจสอบความถูกต้อง:

      • {"act": "isString"} - ตรวจสอบว่าค่าคือสตริงหรือไม่

      • {"act": "isArray"} - ตรวจสอบว่าค่าคืออาร์เรย์หรือไม่

      • {"act": "isObject"} - ตรวจสอบว่าค่าคืออ็อบเจ็กต์หรือไม่

      • {"act": "isNotNull"} - ตรวจสอบว่าค่าไม่เป็น null

      • {"act": "isNotEq", "value": string} - ตรวจสอบว่าค่าไม่เท่ากับค่าที่ระบุ

      • {"act": "minChar", "value": number} - ตรวจสอบว่าความยาวของสตริงอย่างน้อยเท่ากับค่าที่ระบุ

      • {"act": "maxChar", "value": number} - ตรวจสอบว่าความยาวของสตริงมากที่สุดเท่ากับค่าที่ระบุ

    • การดำเนินการกับสตริง:

      • {"act": "trim"} - เอาช่องว่างจากทั้งสองด้านออก

      • {"act": "split", "separator": string, "limit": number, "index": number} - แยกสตริงและรับองค์ประกอบที่ดัชนี

      • {"act": "replace", "find": string, "replace": string} - แทนที่การเกิดขึ้นครั้งแรก

      • {"act": "replaceAll", "find": string, "replace": string} - แทนที่การเกิดขึ้นทั้งหมด

      • {"act": "search", "text": string} - ตรวจสอบว่ามีข้อความในสตริงหรือไม่

      • {"act": "indexOf", "text": string} - รับดัชนีของข้อความในสตริง

      • {"act": "regexpMatch", "regexp": string, "global": boolean} - จับคู่โดยใช้สแควร์เรกซ์ (regular expression)

      • {"act": "regexpReplace", "regexp": string, "global": boolean, "replace": string} - แทนที่โดยใช้สแควร์เรกซ์ (regular expression)

    • การดำเนินการแปลงค่า:

      • {"act": "toJSON"} - แยกวิเคราะห์สตริงเป็น JSON

      • {"act": "toString"} - แปลงค่าที่เป็นสตริง

    • การดำเนินการกับอ็อบเจ็กต์:

      • {"act": "getValue", "key": string} - ดึงค่าจากอ็อบเจ็กต์โดยใช้คีย์