精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

使用Streamlit、LangChain和Bedrock構(gòu)建一個交互式聊天機器人 原創(chuàng)

發(fā)布于 2024-11-1 14:48
瀏覽
0收藏

本文將幫助你使用低代碼前端、用于會話管理的LangChain以及用于生成響應(yīng)的Bedrock LLM來創(chuàng)建聊天機器人。

在不斷發(fā)展的AI領(lǐng)域,聊天機器人已成為一種不可或缺的工具,用于增強用戶參與度和簡化信息傳遞。本文將逐步介紹構(gòu)建交互式聊天機器人的具體過程,使用Streamlit作為前端、使用LangChain用于協(xié)調(diào)交互,以及使用基于Amazon Bedrock的Anthropic Claude模型作為大語言模型(LLM)后端。我們將深入研究前端和后端的代碼片段,并解釋使這個聊天機器人切實可行的關(guān)鍵組件。

核心組件

  • Streamlit前端:Streamlit的直觀界面便于我們不用花多大的力氣就能創(chuàng)建一個對用戶友好的低代碼聊天界面。我們將探討代碼如何創(chuàng)建聊天窗口、處理用戶輸入和顯示聊天機器人的響應(yīng)。
  • LangChain編排:LangChain使我們能夠管理會話流程和內(nèi)存,確保聊天機器人維護上下文并提供相關(guān)的響應(yīng)。我們將討論如何整合LangChain的ConversationSummaryBufferMemory和ConversationChain。
  • Bedrock/Claude LLM后端:真正的魔力在于LLM后端。我們將看看如何利用Amazon Bedrock的claude基礎(chǔ)模型來生成上下文感知的智能響應(yīng)。

使用Streamlit、LangChain和Bedrock構(gòu)建一個交互式聊天機器人-AI.x社區(qū)

圖1. 聊天機器人體系結(jié)構(gòu)

體系結(jié)構(gòu)的概念闡述

  • 用戶交互:用戶通過在Streamlit創(chuàng)建的聊天界面中輸入消息來發(fā)起對話。該消息可以是問題、請求或用戶希望提供的任何其他形式的輸入。
  • 輸入捕獲和處理:Streamlit的聊天輸入組件捕獲用戶的消息,并將其傳遞給LangChain框架進行進一步處理。
  • 語境化結(jié)合LangChain記憶:LangChain在保持對話的上下文方面起著至關(guān)重要的作用。它將用戶的最新輸入與存儲在內(nèi)存中的相關(guān)對話歷史記錄結(jié)合起來。這確保了聊天機器人擁有必要的信息,以生成有意義且符合上下文的響應(yīng)。
  • 利用LLM:然后將結(jié)合的上下文發(fā)送到Bedrock/Claude LLM。這個強大的語言模型利用其豐富的知識以及對語言的理解來分析上下文,并生成響應(yīng),以大量的豐富信息回復(fù)用戶的輸入。
  • 響應(yīng)檢索:LangChain從LLM接收生成的響應(yīng),并準(zhǔn)備將其提供給用戶。
  • 響應(yīng)顯示:最后,Streamlit獲得聊天機器人的響應(yīng)后將其顯示在聊天窗口中,使其看起來好像聊天機器人正與用戶進行自然地對話。這營造了一種直觀的、對用戶友好的體驗,鼓勵進一步的交互。

代碼片段

前端(Streamlit)

Python

import streamlit 
import chatbot_backend 
from langchain.chains import ConversationChain
 from langchain.memory import ConversationSummaryBufferMemory
 import boto3
 from langchain_aws import ChatBedrock
import pandas as pd
 
 # 2 Set Title for Chatbot - streamlit.title("Hi, This is your Chatbott")  
 
 # 3 LangChain memory to the session cache - Session State - 
if 'memory' not in streamlit.session_state:
    streamlit.session_state.memory = demo.demo_memory()  

 # 4 Add the UI chat history to the session cache - Session State 
 if 'chat_history' not in streamlit.session_state:  
    streamlit.session_state.chat_history = []  

# 5 Re-render the chat history 
 for message in streamlit.session_state.chat_history:
     with streamlit.chat_message(message["role"]):
         streamlit.markdown(message["text"])
 
# 6 Enter the details for chatbot input box
input_text = streamlit.chat_input("Powered by Bedrock")  

 if input_text:
    with streamlit.chat_message("user"):
        streamlit.markdown(input_text)
 
     streamlit.session_state.chat_history.append({"role": "user", "text": input_text})
 
     chat_response = demo.demo_conversation(input_text=input_text,
                                            memory=streamlit.session_state.memory)  
    with streamlit.chat_message("assistant"):
         streamlit.markdown(chat_response)
 
     streamlit.session_state.chat_history.append({"role": "assistant", "text": chat_response})

后端(LangChain和LLM)

Python

from langchain.chains import ConversationChain
 from langchain.memory import ConversationSummaryBufferMemory
 import boto3
 from langchain_aws import ChatBedrock
 
 # 2a Write a function for invoking model- client connection with Bedrock with profile, model_id
 def demo_chatbot():
     boto3_session = boto3.Session(
              # Your aws_access_key_id, 
              # Your aws_secret_access_key,
         region_name='us-east-1'
     )
     llm = ChatBedrock(
         model_id="anthropic.claude-3-sonnet-20240229-v1:0",
         client=boto3_session.client('bedrock-runtime'),
         model_kwargs={
             "anthropic_version": "bedrock-2023-05-31",
             "max_tokens": 20000,
             "temperature": .3,
             "top_p": 0.3,
             "stop_sequences": ["\n\nHuman:"]
         }
     )
     return llm
 
 # 3 Create a Function for  ConversationSummaryBufferMemory  (llm and max token limit)
 def demo_memory():
     llm_data = demo_chatbot()
    memory = ConversationSummaryBufferMemory(llm=llm_data, max_token_limit=20000)
     return memory
 
 # 4 Create a Function for Conversation Chain - Input text + Memory
 def demo_conversation(input_text, memory):
     llm_chain_data = demo_chatbot()
 
     # Initialize ConversationChain with proper llm and memory
     llm_conversation = ConversationChain(llm=llm_chain_data, memory=memory, verbose=True)
 
     # Call the invoke method
    full_input = f" \nHuman: {input_text}"
     llm_start_time = time.time()
     chat_reply = llm_conversation.invoke({"input": full_input})
     llm_end_time = time.time()
     llm_elapsed_time = llm_end_time - llm_start_time
     memory.save_context({"input": input_text}, {"output": chat_reply.get('response', 'No Response')})
     return chat_reply.get('response', 'No Response')

結(jié)論

我們在上面探討了用Streamlit、LangChain和強大的LLM后端構(gòu)建的交互式聊天機器人的基本模塊。這個基礎(chǔ)為從客戶支持自動化到個性化學(xué)習(xí)體驗的無限可能打開了大門。你可以隨意試驗、改進和部署這個聊天機器人,以滿足自己的特定需求和使用場景。

原文標(biāo)題:??Building an Interactive Chatbot With Streamlit, LangChain, and Bedrock??,作者:Karan Bansal

?著作權(quán)歸作者所有,如需轉(zhuǎn)載,請注明出處,否則將追究法律責(zé)任
已于2024-11-1 14:49:25修改
收藏
回復(fù)
舉報
回復(fù)
相關(guān)推薦
爆操欧美美女| 国产又大又黄又粗的视频| 中文字幕免费高清在线观看| 国产在视频线精品视频www666| 日韩欧美在线视频免费观看| 国产一区二区无遮挡| 在线免费一区二区| 国产精品地址| 精品国产一区二区三区久久久蜜月| av动漫在线播放| 天堂在线观看av| 日本在线不卡一区| 国产+人+亚洲| 国产男女猛烈无遮挡a片漫画| 免费一区二区三区四区| 亚洲一区二区美女| 一区二区三区在线视频111| 色欲av永久无码精品无码蜜桃 | 五月天婷婷网站| 琪琪久久久久日韩精品| 在线欧美一区二区| www.日本在线播放| 在线中文字幕视频观看| 国产欧美va欧美不卡在线| 国产有码一区二区| 丰满少妇xoxoxo视频| 亚洲性人人天天夜夜摸| 久久精品国产久精国产一老狼| 中文精品在线观看| 大伊香蕉精品在线品播放| 91精品婷婷国产综合久久性色 | 裸体大乳女做爰69| 超碰国产在线观看| 国产麻豆成人精品| 国产剧情日韩欧美| 青青草视频在线观看免费| 99国产精品久久久久久久| 欧美日韩成人在线视频| 婷婷激情四射网| 日韩免费视频| 中文字幕免费精品一区高清| 欧美xxxx综合视频| 久久99久久亚洲国产| 91n在线视频| 久久国产成人午夜av影院宅| 日韩av最新在线| 国产白袜脚足j棉袜在线观看| 91麻豆精品一二三区在线| 欧美日韩aaa| 亚洲成人av免费看| 四虎影视4hu4虎成人| 色美美综合视频| 亚洲成人福利在线观看| 久久av影院| 色婷婷亚洲婷婷| www.色偷偷.com| 狠狠久久伊人中文字幕| 色综合激情五月| 亚洲高清在线免费观看| 九色porny视频在线观看| 欧美日韩精品在线| 妞干网视频在线观看| www欧美xxxx| 精品欧美一区二区三区| 男人透女人免费视频| 久久91导航| 欧美综合在线视频| 亚洲一区二区三区四区五区| 亚洲电影二区| 精品欧美一区二区三区精品久久| 亚洲少妇一区二区三区| 欧美丝袜美腿| 精品美女在线观看| 色婷婷免费视频| 精品国产一区二区三区噜噜噜| 国产亚洲精品va在线观看| 三级黄色片在线观看| 午夜精品视频| 欧美亚洲国产另类| 亚洲天堂视频网| 国产丶欧美丶日本不卡视频| 精品日韩美女| 95在线视频| 亚洲综合一二三区| 日本福利视频一区| 理论不卡电影大全神| 色婷婷av一区| 欧美性猛交xxxx乱大交91| 亚洲不卡在线| 亚洲电影免费观看高清完整版在线观看 | 亚洲欧美日韩久久| 男人日女人逼逼| 男女啪啪999亚洲精品| 亚洲精品一区二区三区精华液 | 色综合www| 日韩在线视频中文字幕| 伊人国产在线观看| 毛片不卡一区二区| 国产偷国产偷亚洲高清97cao| 午夜影院免费体验区| 一区视频在线播放| 人妻熟女一二三区夜夜爱| 免费欧美网站| 中文在线不卡视频| 蜜桃av.com| 一区二区影院| 国产成人精品综合| 免费国产羞羞网站视频| 国产精品久久久久久久久久免费看| 久久人人爽人人爽人人av| 91av久久| 日韩一区二区三区免费观看| 蜜桃av乱码一区二区三区| 亚洲天堂激情| 国产精品综合不卡av| 深夜视频在线免费| 亚洲一区在线观看免费 | 成人影音在线| 欧美日韩高清影院| 欧美黄色一级生活片| 日本久久精品| 久久免费国产视频| 国产高清免费观看| 国产精品看片你懂得| 欧美日韩亚洲一二三| 久久人人爽人人爽人人片av不| 色青青草原桃花久久综合| 中文字幕一区在线播放| 99免费精品视频| 亚洲色欲久久久综合网东京热| 日韩美香港a一级毛片| 国产亚洲欧美一区| 国产精品久免费的黄网站| 国产福利91精品一区二区三区| 亚洲一区三区电影在线观看| 性国裸体高清亚洲| 精品日韩99亚洲| 欧美做爰爽爽爽爽爽爽| 免费在线一区观看| 亚洲 日韩 国产第一区| 黑人巨大精品欧美一区二区桃花岛| 欧美一区二区三区系列电影| 99国产精品免费| 奇米一区二区三区| 亚洲精品第一区二区三区| 松下纱荣子在线观看| 亚洲精品国产精品国自产观看浪潮 | 精品人妻少妇嫩草av无码专区| 亚洲三级在线看| 久久精品一二三四| 综合一区二区三区| av在线不卡观看| 福利小视频在线| 欧美日韩国产另类一区| 国产男女猛烈无遮挡在线喷水| 精品在线亚洲视频| 国产精品av免费观看| 9国产精品午夜| 91精品国产乱码久久久久久久久| 丰满少妇一级片| 一区二区三区欧美久久| 特级特黄刘亦菲aaa级| 国产精品最新自拍| 日韩精品欧美在线| 国产精品色婷婷在线观看| 欧美黑人一区二区三区| 亚洲av成人精品一区二区三区在线播放 | 日本老熟妇毛茸茸| 秋霞欧美视频| 99精品在线直播| 蜜臀久久精品| 中文字幕日韩av| 国产男女猛烈无遮挡| 亚洲综合在线免费观看| 最新中文字幕视频| 日本欧美一区二区三区| 中文视频一区视频二区视频三区| 欧美视频精品全部免费观看| 欧美激情视频免费观看| 日本伊人精品一区二区三区介绍| 国产性xxxx高清| 国产欧美日韩精品在线| 色多多视频在线播放| 成人久久综合| 91精品久久久久久久久中文字幕 | 国产亚洲精品aa午夜观看| 日本黄网站免费| 欧美777四色影| 欧美日韩精品中文字幕一区二区| 欧美色片在线观看| 欧美高清第一页| 国产女人在线观看| 日韩欧美国产精品一区| 丁香六月婷婷综合| 亚洲男人电影天堂| 亚洲天堂美女视频| 黑人巨大精品欧美黑白配亚洲| 久久这里只有精品23| 国产一区二区三区四区五区| 国产欧美日韩高清| 免费v片在线观看| 中文精品99久久国产香蕉| 欧美一级在线免费观看| 欧美猛男gaygay网站| 中文字幕激情小说| 亚洲最色的网站| 少妇的滋味中文字幕bd| 99re热这里只有精品免费视频| 在线观看国产中文字幕| 宅男噜噜噜66一区二区| 4444在线观看| 日韩美脚连裤袜丝袜在线| 91av免费看| 欧洲成人一区| 欧美一区二区三区……| 激情av在线| 在线观看精品国产视频| 五月婷婷开心中文字幕| 欧美大片在线观看| 亚洲图片在线播放| 日韩欧美一区二区三区久久| 久久精品免费在线| 亚洲精品国产第一综合99久久| 青青草华人在线视频| 91蝌蚪porny| 国产xxxxxxxxx| 成人高清视频在线| www.四虎精品| 国产精品白丝jk黑袜喷水| 亚洲欧美国产中文| 亚洲女人av| 99福利在线观看| 久久精品网址| 国产成人久久777777| 影音先锋一区| 亚洲理论电影在线观看| 精品白丝av| 国产精品网站免费| 亚洲狠狠婷婷| www.av中文字幕| 激情综合中文娱乐网| 超碰超碰超碰超碰超碰| 欧美在线日韩| 日本熟妇人妻xxxx| 国产精品伦子伦| 久久综合九色综合欧美狠狠| 久久久久久久午夜| 99精品国产一区二区青青牛奶 | 国产精品久久久久久久久久10秀| 日本不卡二区| 欧美影院三区| 日韩一区不卡| 97精品国产| 在线观看免费黄色片| 中文字幕亚洲综合久久五月天色无吗'' | 亚洲精选一区二区三区| 日韩欧美另类在线| 亚洲欧美另类日韩| 亚洲国产成人爱av在线播放| 日本美女一级视频| 亚洲欧美中文日韩v在线观看| 国产三级在线免费观看| 亚洲一级一级97网| 天天在线视频色| 综合国产在线视频| 蜜桃av在线免费观看| 欧美精品日韩www.p站| 岛国av免费在线观看| 欧美一级大片在线观看| 成人日韩av| 成人午夜电影在线播放| 亚洲成在人线免费观看| 欧美裸体网站| 91精品国偷自产在线电影| 久久久天堂国产精品| 天天综合一区| 激情伊人五月天| 蜜臀久久99精品久久久画质超高清| 国产大片一区二区三区| 99精品欧美一区二区三区小说| www亚洲色图| 亚洲一区在线播放| 日本妇乱大交xxxxx| 精品久久久久久久久久久久包黑料 | ijzzijzzij亚洲大全| 国产欧美二区| 久久久久久久久久福利| 国产东北露脸精品视频| 中文字幕成人动漫| 亚洲欧洲成人精品av97| 久久99久久98精品免观看软件| 欧美午夜影院在线视频| 999久久久久久| 亚洲人成电影网| 少妇av在线| 国产精品一区二区电影| 国偷自产av一区二区三区| 日韩中文字幕一区二区| 亚洲黄色天堂| 奇米777在线视频| 久久精品一区蜜桃臀影院| 午夜精产品一区二区在线观看的| 26uuu色噜噜精品一区二区| 欧美激情 一区| 天天亚洲美女在线视频| 99久久国产免费| 亚洲天堂男人天堂| 国产福利电影在线播放| 成人欧美一区二区三区黑人孕妇| 九九在线高清精品视频| 天堂av免费看| 蜜臀av亚洲一区中文字幕| 国产熟女高潮一区二区三区 | 国产一级片91| 蜜芽一区二区三区| 日韩一级av毛片| 狠狠色狠狠色综合日日小说| 亚洲成人久久精品| 亚洲三级免费看| 91破解版在线观看| 99久久久精品免费观看国产 | 久久这里只有精品23| 国产一区二区三区免费观看| 永久免费av无码网站性色av| 欧美性猛交xxxxx水多| 精品国产一级片| 久久久av免费| 亚洲福利影视| 特级毛片在线免费观看| 日韩国产精品91| 国产91丝袜美女在线播放| 粉嫩av一区二区三区免费野| 日韩中文字幕免费观看| 欧美xxxx18国产| 精品国产亚洲一区二区三区在线| 在线一区日本视频| 激情综合网天天干| 夫妻性生活毛片| 欧美精品乱码久久久久久 | 国产欧美高清视频在线| 国产精品入口芒果| av动漫一区二区| 国产成人无码精品久久久久| 日韩av在线电影网| 川上优av中文字幕一区二区| 久久久综合亚洲91久久98| 好看的亚洲午夜视频在线| 思思久久精品视频| 亚洲精品国产视频| 动漫av一区二区三区| 久久露脸国产精品| 亚洲人和日本人hd| 亚洲成人动漫在线| 大尺度一区二区| 久久久午夜影院| 亚洲天堂开心观看| 97欧美成人| 蜜桃久久影院| 激情欧美日韩| 伊人免费视频二| 亚洲狠狠爱一区二区三区| 香蕉久久国产av一区二区| 日本国产高清不卡| 手机亚洲手机国产手机日韩| 中文字幕在线视频一区二区三区| 日韩一区二区免费看| 欧美一级片久久久久久久| 激情小说一区| 动漫av免费观看| 久久久久99精品一区| 中文字幕永久免费视频| 欧美成人激情图片网| 日韩aaa久久蜜桃av| 欧美日韩福利在线| 久久人人97超碰com| 成人毛片一区二区三区| 亚洲午夜av电影| 成人国产综合| 日韩av在线电影观看| 美女脱光内衣内裤视频久久网站| 伊人久久久久久久久久久久久久| 精品成a人在线观看| 国内精彩免费自拍视频在线观看网址 | 中文字幕 日韩有码| 国产网站欧美日韩免费精品在线观看| 日韩在线伦理| 一区二区不卡在线视频 午夜欧美不卡' | 西西大胆午夜视频| 欧美日本在线播放| 免费成人在线电影| 日本一区二区三区四区五区六区| 2023国产精品视频| 国产免费黄色录像| 欧美在线视频免费播放| 欧美限制电影| 亚洲熟女乱综合一区二区三区| 欧美视频在线播放| 高潮在线视频| 日韩一本精品| 99久久99久久精品免费观看|