chatbot_support_vision
)*จำเป็นต้องสมัครใช้บริการ API ภายนอก (ไม่เกี่ยวข้อง) ลิงค์ในการตั้งค่า
มีสองโหมด:
โหมด RAG นั้นฉลาดมากและรู้ข้อเท็จจริงที่โพสต์บนฟอรัมของคุณ
โหมดบอทพื้นฐานบางครั้งอาจทำผิดพลาดได้ แต่จะถูกกว่าหากเรียกใช้เนื่องจากมีการเรียกโมเดลภาษาขนาดใหญ่น้อยลง:
บอทนี้สามารถนำไปใช้ในพื้นที่สาธารณะในฟอรัมของคุณได้ เพื่อให้บอทมีประโยชน์เป็นพิเศษ เราจึงมีโหมด RAG (หนึ่งการตั้งค่าต่อระดับความน่าเชื่อถือของบอท) สิ่งนี้ไม่ได้ตั้งค่าไว้ตามค่าเริ่มต้น
ในโหมด RAG ตามค่าเริ่มต้น บอทจะถูกควบคุมโดยการตั้งค่า chatbot embeddings strategy
( benchmark_user
เริ่มต้น) ที่เป็นส่วนตัวสำหรับเนื้อหาทั้งหมดที่ผู้ใช้ระดับความน่าเชื่อถือ 1 จะเห็น ดังนั้น หากมีการโต้ตอบในหัวข้อที่เปิดเผยต่อสาธารณะ มีความเป็นไปได้ที่บอทอาจ "รั่วไหล" ข้อมูลได้ หากคุณมีแนวโน้มที่จะเกตเนื้อหาที่ระดับความน่าเชื่อถือ 0 หรือ 1 ผ่านการอนุญาตหมวดหมู่ ระดับนี้ถูกเลือกเนื่องจากจากประสบการณ์แล้ว ไซต์ส่วนใหญ่มักจะไม่เกตเนื้อหาที่ละเอียดอ่อนในระดับความน่าเชื่อถือต่ำ แต่ขึ้นอยู่กับความต้องการเฉพาะของคุณ
สำหรับโหมดนี้ ตรวจสอบให้แน่ใจว่าคุณมีผู้ใช้อย่างน้อยหนึ่งรายที่มีความน่าเชื่อถือระดับ 1 และไม่มีสมาชิกกลุ่มเพิ่มเติมนอกเหนือจากกลุ่มอัตโนมัติ (โปรดจำไว้ว่าบอทจะรู้ทุกสิ่งที่ผู้ใช้ระดับ TL1 รู้และสามารถแบ่งปันได้) คุณสามารถเลือกที่จะลด chatbot embeddings benchmark user trust level
หากคุณมีผู้ใช้ระดับความน่าเชื่อถือ 0 ที่ไม่มีสมาชิกกลุ่มเพิ่มเติมนอกเหนือจากกลุ่มอัตโนมัติ
อีกทางหนึ่ง:
chatbot embeddings strategy
เป็น category
และเติม chatbot embeddings categories
ด้วยหมวดหมู่ที่คุณต้องการให้บอททราบ (โปรดทราบว่าหากคุณเพิ่มหมวดหมู่ส่วนตัวใดๆ ก็ควรรู้เกี่ยวกับสิ่งเหล่านั้นและทุกสิ่งที่บอทพูดในที่สาธารณะ ไม่ว่าที่ใดก็ตามอาจรั่วไหลไปยังผู้ใช้ที่มีสิทธิพิเศษน้อยกว่า ดังนั้นโปรดใช้ความระมัดระวังเล็กน้อยในสิ่งที่คุณเพิ่ม)basic
เท่านั้น (แต่บอทจะไม่เห็นโพสต์ใดๆ เลย)คุณจะเห็นว่าการตั้งค่านี้เป็นการประนีประนอม เพื่อให้บอทมีประโยชน์ จะต้องมีความรู้เกี่ยวกับเนื้อหาในไซต์ของคุณ ขณะนี้ เป็นไปไม่ได้ที่บอทจะเลือกอ่านเนื้อหาเฉพาะสมาชิกและแบ่งปันเฉพาะกับสมาชิกเท่านั้น ซึ่งผู้ดูแลระบบบางคนอาจพบว่ามีข้อจำกัด แต่ไม่มีวิธีแก้ไขได้อย่างง่ายดาย ในขณะที่บอทสามารถพูดคุยในที่สาธารณะได้ ติดต่อฉันหากคุณมีความต้องการพิเศษและต้องการสนับสนุนงานบางอย่างในพื้นที่นี้ การอนุญาตบอทด้วยการค้นหาเชิงความหมายเป็นปัญหาที่ไม่สำคัญ ขณะนี้ระบบได้รับการปรับให้เหมาะสมเพื่อความเร็ว บอทไม่เคยอ่านข้อความส่วนตัวของ NB
หากคุณต้องการให้ Chatbot ทราบเกี่ยวกับเนื้อหาบนเว็บไซต์ของคุณ ให้เปิดการตั้งค่านี้:
chatbot_embeddings_enabled
จำเป็นเฉพาะในกรณีที่คุณต้องการใช้บอทประเภท RAG และตรวจสอบให้แน่ใจว่าทราบเนื้อหาในฟอรัมของคุณ ไม่ใช่เฉพาะหัวข้อปัจจุบัน
ในตอนแรก เราจำเป็นต้องสร้างการฝังสำหรับโพสต์ที่อยู่ในขอบเขตทั้งหมด เพื่อให้บอทสามารถค้นหาข้อมูลฟอรัมได้ สิ่งนี้จะเกิดขึ้นในเบื้องหลังเมื่อเปิดใช้งานการตั้งค่านี้ และคุณไม่จำเป็นต้องดำเนินการใดๆ
งานเพาะนี้อาจใช้เวลาหลายวันสำหรับไซต์ขนาดใหญ่มาก
สิ่งนี้ถูกกำหนดโดยการตั้งค่าหลายประการ:
chatbot_embeddings_strategy
ซึ่งสามารถเป็นได้ทั้ง "benchmark_user" หรือ "category"chatbot_embeddings_benchmark_user_trust_level
กำหนดระดับความน่าเชื่อถือที่เกี่ยวข้องสำหรับอันแรกchatbot_embeddings_categories
หากมีการตั้งค่ากลยุทธ์ category
จะทำให้บอทสามารถเข้าถึงการพิจารณาโพสต์ทั้งหมดในหมวดหมู่ที่ระบุหากคุณเปลี่ยนการตั้งค่าเหล่านี้ เมื่อเวลาผ่านไป จำนวนการฝังจะเปลี่ยนไป
ใส่ภาชนะ:
./launcher enter app
และรันคำสั่ง rake ต่อไปนี้:
rake chatbot:refresh_embeddings[1]
ซึ่งในปัจจุบันจะทำงานสองครั้งเนื่องจากไม่ทราบสาเหตุ (ขออภัย! โปรดอย่าลังเลที่จะประชาสัมพันธ์) แต่ [1]
ทำให้แน่ใจได้ว่าครั้งที่สองจะเพิ่มเฉพาะการฝังที่ขาดหายไปเท่านั้น (กล่าวคือ ไม่มีทันทีหลังจากการเรียกใช้ครั้งแรก) ดังนั้นจึงค่อนข้างน่าสงสัย
ในกรณีที่ไม่น่าเป็นไปได้ คุณจะได้รับอัตราที่จำกัดโดย OpenAI (ไม่น่าเป็นไปได้!) คุณสามารถทำการฝังให้เสร็จสิ้นได้โดยทำสิ่งนี้:
rake chatbot:refresh_embeddings[1,1]
ซึ่งจะเติมเต็มสิ่งที่ขาดหายไป (ดังนั้นจึงไม่มีอะไรหายไปจากข้อผิดพลาด) แต่จะดำเนินการอย่างระมัดระวังมากขึ้นโดยทำการหน่วงเวลา 1 วินาทีระหว่างการโทรแต่ละครั้งไปยัง Open AI
เมื่อเปรียบเทียบกับการโต้ตอบกับบอท การฝังนั้นไม่แพงในการสร้าง แต่ควรดูการใช้งานของคุณบนแดชบอร์ด Open AI ของคุณไม่ว่าในกรณีใด
NB Embeddings สร้างขึ้นสำหรับโพสต์เท่านั้น และเฉพาะโพสต์ที่ผู้ใช้ Trust Level One จะสามารถเข้าถึงได้ นี่ดูเหมือนเป็นการประนีประนอมที่สมเหตุสมผล จะไม่สร้างการฝังสำหรับโพสต์จากเนื้อหาที่เข้าถึงได้ระดับความน่าเชื่อถือ 2+ เท่านั้น
@ 37Rb เขียนว่า: "นี่คือแบบสอบถาม SQL ที่ฉันใช้กับปลั๊กอิน Data Explorer เพื่อตรวจสอบและตรวจสอบการฝัง… ในกรณีที่ช่วยคนอื่นได้"
SELECT e.id, e.post_id AS post, p.topic_id AS topic, p.post_number,
p.topic_id, e.created_at, e.updated_at, p.deleted_at AS post_deleted
FROM chatbot_post_embeddings e LEFT JOIN posts p ON e.post_id = p.id
คุณอาจได้รับข้อผิดพลาดเช่นนี้:
OpenAI HTTP Error (spotted in ruby-openai 6.3.1): {"error"=>{"message"=>"This model's maximum context length is 8192 tokens, however you requested 8528 tokens (8528 in your prompt; 0 for the completion). Please reduce your prompt; or completion length.", "type"=>"invalid_request_error", "param"=>nil, "code"=>nil}}
นี่คือวิธีที่คุณจะแก้ไข ...
ตามข้อความแสดงข้อผิดพลาดของคุณ โมเดลการฝังมีขีดจำกัดดังนี้:
8192 tokens
however you requested 8528
คุณต้องลดค่าปัจจุบันของการตั้งค่านี้:
chatbot_open_ai_embeddings_char_limit:
ส่วนต่างประมาณ 4 เท่าและดูว่าใช้งานได้หรือไม่ (โทเค็นมีอักขระ ประมาณ 4 ตัว)
ดังนั้นในตัวอย่างนี้ 4 x (8528 - 8192) = 1344
ดังนั้นให้ปล่อยค่าปัจจุบันของ chatbot_open_ai_embeddings_char_limit
ลง 1,500 เพื่อความปลอดภัย อย่างไรก็ตาม ค่าเริ่มต้นถูกกำหนดไว้ตามการทดสอบโพสต์ภาษาอังกฤษจำนวนมาก แต่สำหรับภาษาอื่นอาจต้องลดลง
การดำเนินการนี้จะตัดข้อความและโทเค็นคำขอเพิ่มเติม และหวังว่าการฝังจะดำเนินต่อไป หากไม่เป็นเช่นนั้น คุณจะต้องยืนยันความแตกต่างและลดขนาดลงตามนั้น ในที่สุดมันก็ต่ำพอแล้ว ดังนั้นคุณไม่จำเป็นต้องมองมันอีกครั้ง
คุณไม่จำเป็นต้องทำอะไรนอกจากเปลี่ยนการตั้งค่า เพราะงานเบื้องหลังจะจัดการสิ่งต่างๆ เอง หากจะค่อยๆ ดำเนินการ
หากคุณต้องการเร่งกระบวนการให้เร็วขึ้น ให้ทำดังนี้
chatbot_open_ai_embeddings_model
เป็นโมเดลใหม่ที่คุณต้องการ./launcher enter app
rails c
::DiscourseChatbot::PostEmbedding.delete_all
exit
(เพื่อกลับสู่รูทภายในคอนเทนเนอร์)rake chatbot:refresh_embeddings[1]
chatbot_forum_search_function_similarity_threshold
ไม่เช่นนั้นคุณอาจไม่ได้ผลลัพธ์ :) ฉันลดค่าเริ่มต้นของฉันจาก 0.8
เป็น 0.6
แต่ระยะทางของคุณอาจแตกต่างกันไป ใช้เวลาสักครู่เพื่ออ่านการตั้งค่าปลั๊กอินทั้งชุด การตั้งค่า chatbot bot type
เป็นสิ่งสำคัญ และมีหนึ่งการตั้งค่าสำหรับแชทบอทแต่ละตัว "ระดับความน่าเชื่อถือ":
โหมด RAG นั้นเหนือกว่า แต่จะทำการเรียก API มากขึ้น ซึ่งอาจเพิ่มต้นทุนได้ กล่าวคือ การลดลงของแนวโน้มที่จะทำให้เกิด 'ภาพหลอน' ในท้ายที่สุดอาจช่วยให้คุณลดระดับจาก GPT-4 เป็น GPT-3.5 ได้ และคุณอาจต้องใช้จ่ายน้อยลง แม้ว่าเอาต์พุตจะมีประโยชน์และความน่าเชื่อถือเพิ่มขึ้นก็ตาม GPT 3.5 ยังเหมาะกับประเภท Agent ตามเวลาตอบสนองมากกว่าอีกด้วย ศักยภาพที่ win-win! การทดลอง!
เพื่อให้ Chatbot ทำงานใน Chat คุณต้องเปิดใช้งาน Chat
ซึ่งส่วนใหญ่อยู่ภายใต้การตั้งค่า: chatbot_reply_job_time_delay
ซึ่งคุณต้องใช้ดุลยพินิจ
จุดประสงค์ของการตั้งค่านี้คือ:
ขณะนี้เป็นค่าเริ่มต้น '1' วินาทีและสามารถลดเป็นศูนย์ได้ ?? แต่โปรดระวังความเสี่ยงข้างต้น
การตั้งค่าศูนย์นี้และบอท แม้จะอยู่ในโหมด 'ตัวแทน' ก็จะกลายเป็น 'เร็ว' มากขึ้น
แน่นอนว่านี่อาจเป็นของปลอมเล็กน้อยและไม่มีคนจริงคนใดที่จะพิมพ์เร็วขนาดนั้น ... แต่ให้ตั้งค่าตามรสนิยมและขนาดกระเป๋าสตางค์ของคุณ
หมายเหตุ ฉันไม่สามารถควบคุมความเร็วการตอบสนองของ API ของ Open AI ได้โดยตรง - และกฎทั่วไปคือยิ่งโมเดลที่คุณตั้งค่ามีความซับซ้อนมากขึ้นเท่าใดการตอบสนองก็จะช้าลงเท่านั้น ดังนั้น GPT 3.5 จึงเร็วกว่า GPT 4 มาก ... แม้ว่าอาจมีการเปลี่ยนแปลงกับ GPT 4 Turbo รุ่นใหม่กว่าก็ตาม
เพื่อให้ Chatbot ทำงานใน Chat คุณต้องเปิดใช้งาน Chat
คุณต้องได้รับโทเค็นจาก https://platform.openai.com/ เพื่อที่จะใช้บอทปัจจุบัน มีการตั้งค่าโมเดลภาษาเริ่มต้นแล้ว (หนึ่งในภาษาที่ซับซ้อนที่สุด) แต่คุณสามารถลองใช้ทางเลือกที่ถูกกว่าได้ รายการอยู่ที่นี่
มีส่วนที่เป็นอัตโนมัติของการตั้งค่า: นอกเหนือจากวาทกรรมแล้ว ปลั๊กอินจะตั้งค่าผู้ใช้บอท AI ด้วยคุณลักษณะต่อไปนี้
คุณสามารถแก้ไขชื่อ อวตาร และประวัติได้ (ดูสตริงภาษาในผู้ดูแลระบบ -> ปรับแต่ง -> ข้อความ) ตามที่คุณต้องการ แต่ทำให้ง่ายต่อการพูดถึง
ในตอนแรกจะ ไม่มีใคร สามารถเข้าถึงบอทได้ แม้แต่พนักงานก็ตาม
การเรียก Open AI API นั้นไม่ฟรีหลังจากการจัดสรรฟรีครั้งแรกหมดอายุแล้ว! ดังนั้นฉันจึงใช้ระบบโควต้าเพื่อควบคุมสิ่งนี้ ลดต้นทุน และป้องกันการละเมิด ค่าใช้จ่ายไม่ได้บ้ากับการโต้ตอบเล็กๆ น้อยๆ เหล่านี้ แต่อาจเพิ่มขึ้นได้หากได้รับความนิยม คุณสามารถอ่านเพิ่มเติมเกี่ยวกับการกำหนดราคา OpenAI ได้ที่หน้าราคา
ในการโต้ตอบกับบอท คุณต้องอยู่ในกลุ่มที่ได้รับการเพิ่มเข้าไปในหนึ่งในสามระดับของกลุ่มที่เชื่อถือได้ ชุดกลุ่มที่เชื่อถือได้ต่ำ กลาง และสูง คุณสามารถแก้ไขจำนวนการโต้ตอบที่อนุญาตต่อสัปดาห์ต่อชุดกลุ่มที่เชื่อถือได้ในการตั้งค่าที่เกี่ยวข้อง
คุณต้องเติมข้อมูลกลุ่มด้วย การกำหนดค่านั้นขึ้นอยู่กับคุณทั้งหมด โดยเริ่มจากช่องว่าง ดังนั้นในตอนแรกจะ ไม่มีใคร สามารถเข้าถึงบอทได้ มีโควต้าที่สอดคล้องกันในการตั้งค่าเพิ่มเติมสามรายการ
โปรดทราบว่าผู้ใช้จะได้รับโควต้าตามกลุ่มที่เชื่อถือได้สูงสุดที่พวกเขาเป็นสมาชิก
มี "การตั้งค่า" ข้อความสถานที่หลายแห่งที่มีอิทธิพลต่อสิ่งที่บอทได้รับและวิธีที่บอทตอบสนอง
สิ่งที่สำคัญที่สุดที่คุณควรพิจารณาเปลี่ยนคือข้อความแจ้งของ system
บอท ข้อมูลนี้จะถูกส่งทุกครั้งที่คุณพูดคุยกับบอท
สำหรับบอทพื้นฐาน คุณสามารถลองใช้พรอมต์ของระบบเช่น:
'คุณเป็นแฟน Formula One สุดขีด คุณรักทุกสิ่งทุกอย่างที่เกี่ยวข้องกับมอเตอร์สปอร์ตและความตื่นเต้นในระดับออกเทนสูง' แทนที่จะเป็นค่าเริ่มต้น
(สำหรับบอทตัวแทน คุณต้องเก็บทุกอย่างไว้หลัง "คุณเป็นผู้ช่วยที่เป็นประโยชน์" หรือคุณอาจทำลายพฤติกรรมของตัวแทนได้ รีเซ็ตใหม่หากคุณประสบปัญหา ทดลองอีกครั้ง!)
ลองใช้วิธีที่เหมาะสมที่สุดสำหรับหัวข้อในฟอรัมของคุณ มีความคิดสร้างสรรค์!
การเปลี่ยนสตริงภาษาเหล่านี้อาจทำให้บอททำงานแตกต่างออกไปมาก แต่ไม่สามารถแก้ไขได้ทันที ฉันขอแนะนำให้เปลี่ยนเฉพาะการแจ้งเตือนของระบบเนื่องจากผู้อื่นมีบทบาทสำคัญในพฤติกรรมของเจ้าหน้าที่หรือการให้ข้อมูลว่าใครพูดอะไรกับบอท
หมายเหตุ ในหัวข้อ โพสต์แรกและชื่อหัวข้อจะถูกส่งไปเพิ่มเติมจากหน้าต่างโพสต์ (กำหนดโดยการตั้งค่าการมองย้อนกลับ) เพื่อให้บอทมีบริบทมากขึ้น
คุณสามารถแก้ไขสตริงเหล่านี้ได้ในผู้ดูแลระบบ -> ปรับแต่ง -> ข้อความใต้ chatbot.prompt.
วาทกรรม-chatbot/config/locales/server.en.yml
บรรทัด 45 ใน 262a0a4
บอทรองรับข้อความแชทและโพสต์หัวข้อ รวมถึงข้อความส่วนตัว (หากกำหนดค่าไว้)
คุณสามารถแจ้งให้บอทตอบกลับได้โดยการตอบกลับหรือ @ กล่าวถึง คุณสามารถกำหนดระยะที่บอทจะมองข้ามเพื่อรับบริบทสำหรับการตอบกลับ ยิ่งมูลค่ามากขึ้น การโทรแต่ละครั้งก็จะยิ่งมีค่าใช้จ่ายมากขึ้น
มีปุ่มแชทด่วนแบบลอยที่เชื่อมต่อคุณกับบอททันที นี้สามารถปิดการใช้งานได้ในการตั้งค่า คุณสามารถเลือกได้ว่าจะโหลดบอทในการแชทแบบ 1 ต่อ 1 หรือข้อความส่วนตัว
ตอนนี้คุณสามารถเลือกไอคอนที่คุณต้องการได้ (ค่าเริ่มต้น ? ) หรือหากปล่อยว่างไว้ ระบบจะเลือกอวตารของผู้ใช้บอท! -
และจำไว้ว่า คุณยังสามารถปรับแต่งข้อความที่ปรากฏขึ้นเมื่อมีการขยายได้โดยแก้ไขข้อความสถานที่โดยใช้ ผู้ดูแลระบบ -> ปรับแต่ง -> ข้อความ chatbot.
ขั้นตอนเดียวที่จำเป็นในการลบออกคือการลบคำสั่งโคลนออกจาก app.yml
ของคุณ
ฉัน ไม่ รับผิดชอบต่อสิ่งที่บอทตอบสนอง พิจารณาว่าปลั๊กอินอยู่ในขั้นเบต้าและสิ่งต่างๆ อาจผิดพลาดได้ มันจะปรับปรุงด้วยข้อเสนอแนะ แต่ไม่จำเป็นว่าจะต้องตอบสนองกับบอทใช่ไหม? โปรดทำความเข้าใจข้อดีข้อเสียของ LLM และสิ่งที่พวกเขาเป็นและไม่สามารถทำได้ รวมถึงข้อจำกัดของพวกเขา พวกเขาเก่งมากในการสร้างข้อความที่น่าเชื่อถือแต่มักจะผิดพลาดตามข้อเท็จจริงได้
สิ่งที่คุณเขียนในฟอรัมของคุณอาจถูกส่งต่อไปยัง Open AI โดยเป็นส่วนหนึ่งของการสแกนบอทของโพสต์สองสามโพสต์ล่าสุดเมื่อได้รับแจ้งให้ตอบกลับ (เห็นได้ชัดว่าสิ่งนี้ถูกจำกัดไว้เฉพาะหัวข้อปัจจุบันหรือช่องแชท) แม้ว่าเกือบจะแน่นอนจะไม่รวมอยู่ในโมเดลที่ได้รับการฝึกอบรมล่วงหน้า แต่พวกเขาจะใช้ข้อมูลในการวิเคราะห์และการบันทึก อย่าลืมเพิ่มข้อเท็จจริงนี้ลงใน TOS และคำชี้แจงความเป็นส่วนตัวของฟอรัมของคุณ ลิงก์ที่เกี่ยวข้อง: https://openai.com/policies/terms-of-use, https://openai.com/policies/privacy-policy, https://platform.openai.com/docs/data-usage-policies
Open AI แถลงเกี่ยวกับลิขสิทธิ์ที่นี่: https://help.openai.com/en/articles/5008634-will-openai-claim-copyright-over-what-outputs-i-generate-with-the-api