2024-05-03|閱讀時間 ‧ 約 22 分鐘

使用Meta釋出的模型,實作Chat GPT - Part 6

到目前為止,我們已經完成RAG技術的實作,在上一篇文章使用Meta釋出的模型,實作Chat GPT - Part 5中,可以看到加入RAG之後,可以讓我的大型語言模型回答更為精確。

現在我們要把它用一個畫面做呈現,而不是以程式碼來給大家看,就類似Chat GPT這樣,背後有複雜的程式運行,但是眾人所看到的是漂亮的UI畫面,以下開始實作:

import gradio as gr
Chat_History = []

with gr.Blocks() as GUI:
chatbot = gr.Chatbot()
msg = gr.Textbox()
clear = gr.ClearButton([msg, chatbot])

def respond(message, chat_history):
bot_message = RAG({"question": message, "chat_history": Chat_History})['answer']
Chat_History.append((message, bot_message)) # Chatting Used
chat_history.append((message, bot_message)) # UI Showing
return "", chat_history

msg.submit(respond, [msg, chatbot], [msg, chatbot])

GUI.launch()

程式撰寫後,如下,我們一樣按「紅色框框」執行,大約四秒後,執行完成,可以在「紅色框框」處的綠色提示得知 (4秒處)

執行完成後,可以在執行結果處看到以下畫面,點擊當中的藍色網址即可跳出新的畫面,這串藍色網址會因人而異,不需要跟我的執行結果一致沒關係。

然後就可以跳出一個漂亮的UI畫面了,如下圖:

接著我在Textbox這個欄位輸入:「what is 1688 ?」,看它是不是會回我訊息。

稍等一段時間後,它回我如下訊息:

接著我可以在Textbox再輸入一些訊息,比方說我質問它真的嗎?

可以看到它就會再做一些額外陳述,藉此我們就完成一個窮人版的Chat GPT搭配RAG技術的實作。

分享至
成為作者繼續創作的動力吧!
© 2024 vocus All rights reserved.