...
/دمج روبوتات الدردشة مع واجهة Streamlit
دمج روبوتات الدردشة مع واجهة Streamlit
تعرف على كيفية دمج واجهة الدردشة Streamlit مع LLMs.
سنغطي ما يلي...
مقدمة لعناصر الدردشة
يوفر Streamlit بعض عناصر الدردشة المصممة خصيصًا بناء روبوتات دردشة تفاعلية. تتيح لنا هذه العناصر بناء حوار أسئلة وأجوبة بين المستخدم ومسؤول التعليم.
st.chat_input
:يعرض هذا عنصر واجهة مستخدم إدخال الدردشة يسمح للمستخدم بكتابة الاستعلامات.st.chat_message
:يعرض هذا حاوية رسائل الدردشة التي تسمح للتطبيق بعرض الرسائل من المستخدم أو LLM.st.status
:يعرض هذا إخراج من العمليات طويلة الأمد ومكالمات واجهة برمجة API الخارجية حتى يتمكن المستخدم من الحصول على التحديثات أثناء عمل روبوت المحادثة على استجابة.
فهم عملية الترميز
بناء روبوت محادثة باستخدام Streamlit وGroq وLlama LLM. سنبدأ بشرح الكود لفهم كيفية عمل العناصر والوظائف المختلفة.
سنبدأ بترميز الملف الرئيسيapp.py
النص:
import streamlit as stimport pandas as pdfrom chatbot import generate_answer# Set the general configuration of the main pagest.set_page_config(page_title="Chatbot",page_icon="🧊",layout="wide",initial_sidebar_state="expanded")# Set the titlest.title(":rainbow[LLM chatbot]")# Initialize chat historyif "messages" not in st.session_state:st.session_state.messages = []# Display chat messages from history on app rerunfor message in st.session_state.messages:with st.chat_message(message["role"]):st.markdown(message["content"])# Accept user inputif prompt := st.chat_input("How can I help you today?"):# Add user message to chat historyst.session_state.messages.append({"role": "user", "content": prompt})# Display user message in chat message containerwith st.chat_message("user"):st.markdown(prompt)# Display assistant response in chat message containerresponse = generate_answer(prompt)st.session_state.messages.append({"role": "assistant", "content": response})
في هذا الكود نقوم بالخطوات التالية:
السطرين 1-2 : نقوم باستيراد المكتبات الضرورية، بما في ذلك ...