<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.

      相關推薦
      熱點推薦
      10萬億度需求也不買!中國攤牌,輸電專線全叫停,國產電價教做人

      10萬億度需求也不買!中國攤牌,輸電專線全叫停,國產電價教做人

      阿器談史
      2026-01-26 20:05:32
      比緬北更恐怖!曾經的旅游勝地,如今黃賭毒俱全,性交易隨處可見

      比緬北更恐怖!曾經的旅游勝地,如今黃賭毒俱全,性交易隨處可見

      來科點譜
      2025-10-24 09:25:32
      剛發,大連突發地震,后續地震可能性為……!

      剛發,大連突發地震,后續地震可能性為……!

      本賬號停運
      2026-02-09 19:48:05
      “利潤50%分給員工、不考勤不打卡”,河南男子創業學胖東來,還清105萬外債

      “利潤50%分給員工、不考勤不打卡”,河南男子創業學胖東來,還清105萬外債

      河南交通廣播1041
      2026-02-09 12:45:19
      長沙“互啃”后續:沒實錘,婚離了!中年人的體面,真輸不起!

      長沙“互啃”后續:沒實錘,婚離了!中年人的體面,真輸不起!

      王楔曉
      2026-01-08 11:31:21
      不要小瞧了日本,一旦中日開戰,日本要對中國進行“三路打擊”

      不要小瞧了日本,一旦中日開戰,日本要對中國進行“三路打擊”

      安安說
      2026-01-21 09:50:42
      中央明確!退休新規實施后,公務員及事業編制,不能延遲退休嗎?

      中央明確!退休新規實施后,公務員及事業編制,不能延遲退休嗎?

      南風不及你溫柔
      2026-02-09 23:52:36
      “不給6套房加1個億,不搬”,釘子戶張新國堅守14年,終敗給現實

      “不給6套房加1個億,不搬”,釘子戶張新國堅守14年,終敗給現實

      紅夢史說
      2025-07-11 11:23:39
      魔都天氣現場:春節天氣超前看!假期前半段暖且有雨,大年初二迎冷空氣

      魔都天氣現場:春節天氣超前看!假期前半段暖且有雨,大年初二迎冷空氣

      隨申Hi
      2026-02-09 20:57:03
      高市早苗表態:著手推動修憲

      高市早苗表態:著手推動修憲

      大風新聞
      2026-02-09 20:01:19
      在深圳,經濟一差,到處是詐騙

      在深圳,經濟一差,到處是詐騙

      愛下廚的阿釃
      2026-02-09 20:38:49
      李亞鵬宣布春節前暫停直播:不想占據熒幕叨擾大家,下次開播可能要到很久以后,將投入到嫣然醫院工作中

      李亞鵬宣布春節前暫停直播:不想占據熒幕叨擾大家,下次開播可能要到很久以后,將投入到嫣然醫院工作中

      臺州交通廣播
      2026-02-09 09:22:58
      特斯拉續航剩72公里,高速上突然斷電,售后回應引發爭議

      特斯拉續航剩72公里,高速上突然斷電,售后回應引發爭議

      大象新聞
      2026-02-09 10:01:09
      特朗普炮轟“超級碗”中場秀嘉賓,稱其表演“是對美國的侮辱”

      特朗普炮轟“超級碗”中場秀嘉賓,稱其表演“是對美國的侮辱”

      瀟湘晨報
      2026-02-09 23:17:19
      你見過最窩囊的人是啥樣?網友:原來大家都這么窩囊,我心病好了

      你見過最窩囊的人是啥樣?網友:原來大家都這么窩囊,我心病好了

      帶你感受人間冷暖
      2026-01-06 00:05:11
      巴拿馬急剎車:24小時改口保港口,中方反制有多狠?

      巴拿馬急剎車:24小時改口保港口,中方反制有多狠?

      老謝談史
      2026-02-09 14:53:19
      中國批準稀土出口,日媒歡呼:對華反制措施見效,下一秒遭打臉

      中國批準稀土出口,日媒歡呼:對華反制措施見效,下一秒遭打臉

      壹知眠羊
      2026-02-09 19:55:33
      新春走基層 | 快遞小哥成勞模大哥

      新春走基層 | 快遞小哥成勞模大哥

      人民資訊
      2026-02-08 12:02:27
      90歲焦晃現狀曝出:穿紙尿褲嚴重忘事,與小30歲妻子住無電梯頂層

      90歲焦晃現狀曝出:穿紙尿褲嚴重忘事,與小30歲妻子住無電梯頂層

      小徐講八卦
      2026-02-06 16:10:03
      德國那位軍事專家說得夠直白:美國不是怕中國,是怕打了也白打

      德國那位軍事專家說得夠直白:美國不是怕中國,是怕打了也白打

      扶蘇聊歷史
      2026-01-28 18:04:09
      2026-02-10 03:19:00
      51Testing軟件測試網 incentive-icons
      51Testing軟件測試網
      中國軟件測試人的精神家園
      1522文章數 13252關注度
      往期回顧 全部

      科技要聞

      實測|字節新模型帶著音效和復雜運鏡殺瘋了

      頭條要聞

      人民日報評"南博事件":無論涉及到什么人 絕不放任

      頭條要聞

      人民日報評"南博事件":無論涉及到什么人 絕不放任

      體育要聞

      不會打籃球,如何入選詹娜前男友第一陣容

      娛樂要聞

      央視電影活動名場面!明星站位太講究

      財經要聞

      滬深北交易所優化再融資 釋放3個信號

      汽車要聞

      長安將搭鈉電池 好比汽車要裝柴油機?

      態度原創

      教育
      本地
      數碼
      藝術
      時尚

      教育要聞

      孩子愛玩手機不愛學習?你沒用對方法!

      本地新聞

      圍觀了北京第一屆黑色羽絨服大賽,我笑瘋了

      數碼要聞

      曜越推出TG100桌面迷你機箱,219元

      藝術要聞

      301.7米!安徽最高、中國最長的樓,外墻寫滿篆書

      冬季穿衣越簡單越實用!從這些日常穿搭中收獲靈感,大方又自然

      無障礙瀏覽 進入關懷版