<cite id="ffb66"></cite><cite id="ffb66"><track id="ffb66"></track></cite>
      <legend id="ffb66"><li id="ffb66"></li></legend>
      色婷婷久,激情色播,久久久无码专区,亚洲中文字幕av,国产成人A片,av无码免费,精品久久国产,99视频精品3
      網易首頁 > 網易號 > 正文 申請入駐

      Python+ChatGPT API,搭建專屬你的智能聊天機器人

      0
      分享至

      最近火出圈的ChatGPT公司OpenAI發布了Chat API和gpt-3.5-turbo模型,我們現在可以通過API來使用與ChatGPT一樣的NLP模型。



      使用OpenAI API,可以使用gpt-3.5-turbo構建自己的應用程序,可執行以下任務:

      草擬電子郵件或其他文字內容寫代碼,例如Python代碼

      創建對話代理,回答各類問題

      為您的軟件提供自然語言界面

      在各種學科中進行輔導

      翻譯語言

      為視頻游戲模擬角色等

      待發掘的各種應用場景……

      下面用Python來講解如何使用openai python SDK實現自己的聊天機器人。如果你之前使用過openai python SDK,請確保升級到了最新版本(0.27.0),如果還沒有安裝Python運行環境,請先安裝python 3.10。

      獲取API Key

      你需要獲取API Key,如果你已經使用過openai SDK那么你可能已經有API Key了(這種情況請跳過本節內容)。

      登錄https://platform.openai.com/并導航到https://platform.openai.com/account/api-keys點擊Create new secret key按鈕可以獲取一個新的API Key。

      注意:API Key內容只會顯示一次。點擊復制按鈕把API Key復制并保存好。



      創建API

      用FastAPI快速創建一個API,它的接口定義如下:

      POST/chatbot/talk

      Request Body:

      “message”:"你好!"

      Response:

      “content”:“bot response message”

      首先,你需要安裝FastAPI和OpenAI SDK,可以通過以下命令在命令行中安裝它們:

      pip install fastapi uvicorn openai

      為了演示方便,此處簡化了一些最佳實踐,下面是一個最基本的FastAPI服務實現,文件保存在main\app.py文件中。

      import openai

      from typing import List

      from fastapi import FastAPI

      from pydantic import BaseModel

      from starlette.middleware.cors import CORSMiddleware

      history=[]

      app=FastAPI()

      app.add_middleware(

      CORSMiddleware,

      allow_origins=["*"],

      allow_credentials=True,

      allow_methods=["HEAD","OPTIONS","GET","PUT","PATCH","POST","DELETE"],

      allow_headers=["*"],

      max_age=86400

      openai.api_key="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"

      class TalkRequest(BaseModel):

      message:str

      @app.post("/chatbot/talk")

      async def chatbot_talk(user_input:TalkRequest):

      if not history:

      history.append({"role":"system","content":"You are a helpful assistant."})

      history.append({"role":"user","content":user_input.message.strip()})

      response=await openai.ChatCompletion.acreate(

      model="gpt-3.5-turbo",

      messages=history)

      bot_response=response.choices[0].message

      history.append(bot_response)

      return bot_response

      現在只需創建一個run.py文件來啟動FastAPI服務。

      import uvicorn

      from main.app import app

      if__name__=='__main__':

      uvicorn.run(

      app=app,

      host="127.0.0.1",

      port=8080,

      use_colors=True,

      log_level="debug"

      接下來運行run.py。

      在瀏覽器中打開http://127.0.0.1:8080/docs即可看到Swagger界面已經加載并顯示出我們的Talk API,如下圖所示:



      點擊Try it out,在message里填入一個句子,例如我們這里輸入的”你好”,點擊Execute按鈕。如果沒有問題應該能得到下面的響應結果:



      OK,到這里我們的后臺服務就已經準備好了。

      UI界面

      接下來我們做一個基于VUE的UI界面來實現聊天窗口。要實現基于VUE的聊天界面,需要執行以下步驟:

      在Vue項目中創建一個聊天組件,例如Chat.vue。

      在Chat.vue中添加一個文本框和一個發送按鈕,用于向聊天機器人發送消息。

      使用VUE的數據綁定功能,將文本框的值綁定到一個名為message的Vue組件數據屬性。

      在發送按鈕上添加一個點擊事件,該事件將調用一個發送消息的方法,該方法將使用Axios(或其他HTTP庫)將消息POST到聊天機器人API。

      在發送成功后,使用Axios響應中的數據更新Vue組件數據屬性的值,以顯示聊天機器人的響應消息。

      下面是一個示例Chat.vue文件的基本代碼:

      {{message.content}}

      {{message.content}}

      Send

      在這個示例中,messages是一個數組,它用于存儲聊天記錄。

      sendMessage方法將新消息添加到messages數組中,并使用Axios發送消息并更新響應的數據屬性。

      最后,它清空了message數據屬性,以便用戶可以輸入下一個消息。

      在模板中,我們使用v-for循環遍歷messages數組,并根據isBot數據屬性來判斷消息是用戶的消息還是聊天機器人的消息。

      運行

      最后,要在瀏覽器中運行Vue應用程序,需要執行以下步驟。

      注意:確保已經安裝了Node.js和npm,這將使我們能夠使用Vue的命令行工具來創建和管理的項目。

      (1)打開命令行終端,導航到項目目錄,并使用以下命令安裝:

      npm install-g cnpm--registry=https://registry.npmmirror.com

      cnpm install-g@vue/cli

      (2)使用以下命令創建一個新的Vue項目:

      vue create my-chat-app

      這將提示選擇一些選項來配置我們的項目,例如要使用哪個包管理器,要使用哪些插件等等。

      可以根據需求進行選擇,稍等片刻項目即可創建成功,如下圖所示:



      (3)進入my-chat-app目錄,安裝Axios,可以使用以下命令:

      cnpm install axios--save

      打開創建的項目文件夾,將Chat.vue組件添加到src/components文件夾中。

      打開src/App.vue文件,并將以下代碼添加到模板中:

      這將把Chat組件添加到App.vue模板中,以便您可以在瀏覽器中查看聊天界面。

      (4)在命令行終端中運行以下命令啟動開發服務器:

      pm run serve



      如上圖所示,Web Server已經啟動完畢,用瀏覽器打開http://localhost:8081/可以看到一個基本的聊天窗口,當然這里只有一個簡單的示例來展示基本操作:



      因文章篇幅有限,感興趣的同行完全可以利用前端技術做出更精美的機器人聊天窗口。

      最后:在我的V:atstudy-js,可以費領取一份10G軟件測試工程師面試寶典文檔資料。以及相對應的視頻學習教程免費分享!其中包括了有基礎知識、Linux必備、Shell、互聯網程序原理、Mysql數據庫、抓包工具專題、接口測試工具、測試進階-Python編程、Web自動化測試、APP自動化測試、接口自動化測試、測試高級持續集成、測試架構開發測試框架、性能測試、安全測試等。


      特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。

      Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

      相關推薦
      熱點推薦
      潘江帶隊終于打出點東西了!末節拒用人一根筋,新三巨碾壓新疆!

      潘江帶隊終于打出點東西了!末節拒用人一根筋,新三巨碾壓新疆!

      籃球資訊達人
      2026-04-05 00:40:29
      24小時內,美軍為營救飛行員,又損失4架戰機

      24小時內,美軍為營救飛行員,又損失4架戰機

      兵國大事
      2026-04-04 19:47:00
      62年印軍戰斗力如何?陰法唐回憶:很多戰斗,印軍戰死比被俘的多

      62年印軍戰斗力如何?陰法唐回憶:很多戰斗,印軍戰死比被俘的多

      云霄紀史觀
      2026-03-29 16:54:22
      杜鋒:薩林杰拉傷影響排兵布陣 崔永熙頂四號位贏下來非常不容易

      杜鋒:薩林杰拉傷影響排兵布陣 崔永熙頂四號位贏下來非常不容易

      狼叔評論
      2026-04-04 23:10:37
      5萬美軍突踩剎車!內塔尼亞胡陷死局,狂咬中俄朝,死綁美國戰車

      5萬美軍突踩剎車!內塔尼亞胡陷死局,狂咬中俄朝,死綁美國戰車

      小蔑談事
      2026-04-04 21:13:42
      歐洲媒體沉默了,500美軍在迪拜被一鍋端,傷亡竟只有13人?

      歐洲媒體沉默了,500美軍在迪拜被一鍋端,傷亡竟只有13人?

      趙枹是個熱血青年
      2026-04-03 21:16:56
      財神爺講述:做生意人理發最好的日子,每月這3天,剪一次旺一月

      財神爺講述:做生意人理發最好的日子,每月這3天,剪一次旺一月

      古怪奇談錄
      2026-03-24 10:23:03
      網購13.8元藍莓苗后選擇“僅退款”,兩天后女子收到“萬古流芳”殯葬用品

      網購13.8元藍莓苗后選擇“僅退款”,兩天后女子收到“萬古流芳”殯葬用品

      黃河新聞網呂梁
      2026-04-03 09:25:55
      1999 鶴壁特大奸殺案:房四平一腳跺殺人,囂張語錄震碎三觀

      1999 鶴壁特大奸殺案:房四平一腳跺殺人,囂張語錄震碎三觀

      咪咖事界
      2026-04-03 14:22:33
      于東來兒媳首次正面露面,顏值封神,和婆婆馬麗撞臉像復制粘貼

      于東來兒媳首次正面露面,顏值封神,和婆婆馬麗撞臉像復制粘貼

      往史過眼云煙
      2026-03-23 19:27:43
      以軍稱空襲德黑蘭多處關鍵基礎設施

      以軍稱空襲德黑蘭多處關鍵基礎設施

      界面新聞
      2026-04-04 14:34:26
      伊朗有救了?車臣開出參戰條件,局勢變成3對1,以色列遭南北夾擊

      伊朗有救了?車臣開出參戰條件,局勢變成3對1,以色列遭南北夾擊

      董董歷史燴
      2026-04-03 20:56:59
      金昊月薪1300元,瑤瑤媽媽是鄉長,并沒高攀他家,記者最新采訪

      金昊月薪1300元,瑤瑤媽媽是鄉長,并沒高攀他家,記者最新采訪

      漢史趣聞
      2026-04-04 17:17:30
      登貝萊:第一個進球?這種球如果讓我射十次,可能也就進一次

      登貝萊:第一個進球?這種球如果讓我射十次,可能也就進一次

      懂球帝
      2026-04-04 06:03:10
      美容院老板娘大實話:脫了衣服,女人的差距根本不在臉上!

      美容院老板娘大實話:脫了衣服,女人的差距根本不在臉上!

      夜深愛雜談
      2026-03-08 21:28:24
      漫步者把唱片機塞進了音箱,只賣269元

      漫步者把唱片機塞進了音箱,只賣269元

      灰度測試中
      2026-04-03 19:25:03
      美媒:美軍兩架搜救直升機被擊中 無人受傷

      美媒:美軍兩架搜救直升機被擊中 無人受傷

      新華社
      2026-04-04 04:12:04
      51歲周迅變樣:滿頭白發臉松垮,癟嘴像老奶奶,無兒無女成遺憾

      51歲周迅變樣:滿頭白發臉松垮,癟嘴像老奶奶,無兒無女成遺憾

      悅君兮君不知
      2026-03-20 12:19:00
      逼走陳忠和,打壓劉國梁,排擠郎平,90歲“體壇惡人”如今怎樣了

      逼走陳忠和,打壓劉國梁,排擠郎平,90歲“體壇惡人”如今怎樣了

      拳擊時空
      2026-04-03 05:53:14
      張雪評哪吒汽車“5億Logo”:張雪機車Logo是白送的

      張雪評哪吒汽車“5億Logo”:張雪機車Logo是白送的

      三言科技
      2026-04-04 17:35:26
      2026-04-05 01:12:49
      51Testing軟件測試網 incentive-icons
      51Testing軟件測試網
      中國軟件測試人的精神家園
      1549文章數 13258關注度
      往期回顧 全部

      科技要聞

      內存一年漲四倍!國產手機廠商集體漲價

      頭條要聞

      特朗普發文:距離一切災難降臨在伊朗頭上僅剩48小時

      頭條要聞

      特朗普發文:距離一切災難降臨在伊朗頭上僅剩48小時

      體育要聞

      剎不住的泰格·伍茲,口袋里的兩粒藥丸

      娛樂要聞

      Q女士反擊,否認逼宋寧峰張婉婷離婚

      財經要聞

      中微董事長,給半導體潑點冷水

      汽車要聞

      17萬級海豹07EV 不僅續航長還有9分鐘滿電的快樂

      態度原創

      數碼
      家居
      藝術
      游戲
      軍事航空

      數碼要聞

      今年新款AirPods Pro、Apple TV值得等嗎?升級方向曝光

      家居要聞

      溫馨多元 愛的具象化

      藝術要聞

      你絕對不能錯過的夢幻性感攝影作品!

      好玩還上頭!創新與傳統并存的戰棋黑馬《永鈴回響》值不值得玩?

      軍事要聞

      美軍又一架戰機墜毀 此前F-15E被擊落

      無障礙瀏覽 進入關懷版