chatstack
1.0.0
รหัส Python นี้ให้การใช้งาน chatbot ด้วยการจัดการบริบทโดยใช้โมเดลแชท GPT-3.5-turbo หรือ GPT-4 ของ OpenAI chatbot รักษาประวัติการสนทนาและช่วยจัดการสถานะบริบทและขนาดเป็นโทเค็น
Chatstack ค้นหาคีย์ OpenAI API ของคุณผ่านตัวแปรสภาพแวดล้อม OpenAI_API_KEY
ChatRoleMessage : คลาสข้อมูลพื้นฐานสำหรับข้อความที่มีบทบาทข้อความและโทเค็นSystemMessage : คลาสข้อมูลสำหรับแสดงข้อความที่มีบทบาท 'ระบบ'ContextMessage : คลาสข้อมูลที่แสดงบริบทข้อมูลเพิ่มเติมสำหรับโมเดลAssistantMessage : คลาสข้อมูลสำหรับแสดงข้อความที่มีบทบาท 'ผู้ช่วย'UserMessage : คลาสข้อมูลสำหรับแสดงข้อความที่มีบทบาท 'ผู้ใช้'ChatContext : คลาสที่จัดการบริบทการสนทนาและสร้างคำตอบโดยใช้โมเดลอินเตอร์เฟสข้อความ OpenAIChatReponse : คลาสข้อมูลที่มีการตอบสนองแบบจำลองไปยังข้อความผู้ใช้พร้อมกับบันทึกบริบทอินพุตที่ส่งไปยังโมเดลและรายละเอียดที่สำคัญอื่น ๆ เช่นโมเดลที่ใช้จำนวนโทเค็นที่ใช้และค่าใช้จ่ายโดยประมาณของคำขอChatContextChatContext ด้วยการกำหนดค่าที่ต้องการuser_message หรือ user_message_stream ด้วยข้อความข้อความของผู้ใช้เพื่อรับการตอบกลับจาก chatbotตัวอย่าง:
from chatstack import ChatContext
BASE_SYSTEM_PROMPT = "You are a clever bot. Do not apologize, or make excuses. "
BASE_SYSTEM_PROMPT += "Do not mention that you are an AI language model since that is annoying to users."
def main ():
chat_context = ChatContext ( base_system_msg_text = BASE_SYSTEM_PROMPT )
print ( "Welcome to the Chatbot!" )
while True :
user_input = input ( "You: " )
print ( "Chatbot:" )
response = chat_context . user_message ( user_input , stream = True )
print ( response . text )
if __name__ == "__main__" :
main () คลาส ChatContext ยอมรับพารามิเตอร์ต่อไปนี้:
min_response_tokens : จำนวนโทเค็นขั้นต่ำเพื่อสำรองสำหรับการตอบกลับแบบจำลองmax_response_tokens : จำนวนโทเค็นสูงสุดที่จะอนุญาตให้ตอบสนองแบบจำลองเสร็จสมบูรณ์chat_context_messages : จำนวนผู้ช่วยล่าสุดและข้อความผู้ใช้เพื่อเก็บไว้ในบริบทmodel : ชื่อของรุ่น GPT ที่จะใช้ (ค่าเริ่มต้น: "GPT-3.5-turbo")temperature : อุณหภูมิสำหรับการสร้างการตอบสนองของแบบจำลองbase_system_msg_text : ข้อความข้อความพื้นฐานเพื่อให้บริบทสำหรับโมเดลวิธีหลักของ chatcontext คือ user_message () ซึ่งใช้เพื่อประกอบบริบทอินพุตกับโมเดลและสร้างความสมบูรณ์
user_message(msg_text: str) -> ChatResponseวิธีนี้ใช้ข้อความของผู้ใช้เป็นอินพุตและสร้างการตอบกลับจาก chatbot โดยใช้บริบทการสนทนา
user_message_stream(msg_text: str) -> ChatResponse วิธีนี้เป็นเครื่องกำเนิดไฟฟ้าที่ใช้ข้อความข้อความของผู้ใช้เป็นอินพุตและให้ผลผลิต ChatResponse วัตถุที่มีข้อความตอบกลับที่เพิ่มขึ้นและสะสมจาก chatbot โดยใช้บริบทการสนทนา
add_message(msg : ChatRoleMessage)เพิ่มข้อความไปยังบริบทสำหรับการนำเสนอไปยังโมเดลในคำขอเสร็จสิ้นในภายหลัง
msg_text (str): ข้อความของข้อความของผู้ใช้ ChatResponse : อินสแตนซ์ของคลาสข้อมูล ChatResponse ที่มีข้อความตอบกลับโมเดลข้อความอินพุตจริงที่ส่งไปยังโมเดลและรายละเอียดอื่น ๆ ที่เกี่ยวข้องเช่นจำนวนโทเค็นและราคาโดยประมาณของการเสร็จสิ้น