<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
      網(wǎng)易首頁 > 網(wǎng)易號(hào) > 正文 申請(qǐng)入駐

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

      0
      分享至

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



      使用OpenAI API,可以使用gpt-3.5-turbo構(gòu)建自己的應(yīng)用程序,可執(zhí)行以下任務(wù):

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

      創(chuàng)建對(duì)話代理,回答各類問題

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

      在各種學(xué)科中進(jìn)行輔導(dǎo)

      翻譯語言

      為視頻游戲模擬角色等

      待發(fā)掘的各種應(yīng)用場(chǎng)景……

      下面用Python來講解如何使用openai python SDK實(shí)現(xiàn)自己的聊天機(jī)器人。如果你之前使用過openai python SDK,請(qǐng)確保升級(jí)到了最新版本(0.27.0),如果還沒有安裝Python運(yùn)行環(huán)境,請(qǐng)先安裝python 3.10。

      獲取API Key

      你需要獲取API Key,如果你已經(jīng)使用過openai SDK那么你可能已經(jīng)有API Key了(這種情況請(qǐng)?zhí)^本節(jié)內(nèi)容)。

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

      注意:API Key內(nèi)容只會(huì)顯示一次。點(diǎn)擊復(fù)制按鈕把API Key復(fù)制并保存好。



      創(chuàng)建API

      用FastAPI快速創(chuàng)建一個(gè)API,它的接口定義如下:

      POST/chatbot/talk

      Request Body:

      “message”:"你好!"

      Response:

      “content”:“bot response message”

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

      pip install fastapi uvicorn openai

      為了演示方便,此處簡(jiǎn)化了一些最佳實(shí)踐,下面是一個(gè)最基本的FastAPI服務(wù)實(shí)現(xiàn),文件保存在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

      現(xiàn)在只需創(chuàng)建一個(gè)run.py文件來啟動(dòng)FastAPI服務(wù)。

      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"

      接下來運(yùn)行run.py。

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



      點(diǎn)擊Try it out,在message里填入一個(gè)句子,例如我們這里輸入的”你好”,點(diǎn)擊Execute按鈕。如果沒有問題應(yīng)該能得到下面的響應(yīng)結(jié)果:



      OK,到這里我們的后臺(tái)服務(wù)就已經(jīng)準(zhǔn)備好了。

      UI界面

      接下來我們做一個(gè)基于VUE的UI界面來實(shí)現(xiàn)聊天窗口。要實(shí)現(xiàn)基于VUE的聊天界面,需要執(zhí)行以下步驟:

      在Vue項(xiàng)目中創(chuàng)建一個(gè)聊天組件,例如Chat.vue。

      在Chat.vue中添加一個(gè)文本框和一個(gè)發(fā)送按鈕,用于向聊天機(jī)器人發(fā)送消息。

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

      在發(fā)送按鈕上添加一個(gè)點(diǎn)擊事件,該事件將調(diào)用一個(gè)發(fā)送消息的方法,該方法將使用Axios(或其他HTTP庫(kù))將消息POST到聊天機(jī)器人API。

      在發(fā)送成功后,使用Axios響應(yīng)中的數(shù)據(jù)更新Vue組件數(shù)據(jù)屬性的值,以顯示聊天機(jī)器人的響應(yīng)消息。

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

      {{message.content}}

      {{message.content}}

      Send

      在這個(gè)示例中,messages是一個(gè)數(shù)組,它用于存儲(chǔ)聊天記錄。

      sendMessage方法將新消息添加到messages數(shù)組中,并使用Axios發(fā)送消息并更新響應(yīng)的數(shù)據(jù)屬性。

      最后,它清空了message數(shù)據(jù)屬性,以便用戶可以輸入下一個(gè)消息。

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

      運(yùn)行

      最后,要在瀏覽器中運(yùn)行Vue應(yīng)用程序,需要執(zhí)行以下步驟。

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

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

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

      cnpm install-g@vue/cli

      (2)使用以下命令創(chuàng)建一個(gè)新的Vue項(xiàng)目:

      vue create my-chat-app

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

      可以根據(jù)需求進(jìn)行選擇,稍等片刻項(xiàng)目即可創(chuàng)建成功,如下圖所示:



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

      cnpm install axios--save

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

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

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

      (4)在命令行終端中運(yùn)行以下命令啟動(dòng)開發(fā)服務(wù)器:

      pm run serve



      如上圖所示,Web Server已經(jīng)啟動(dòng)完畢,用瀏覽器打開http://localhost:8081/可以看到一個(gè)基本的聊天窗口,當(dāng)然這里只有一個(gè)簡(jiǎn)單的示例來展示基本操作:



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

      最后:在我的V:atstudy-js,可以費(fèi)領(lǐng)取一份10G軟件測(cè)試工程師面試寶典文檔資料。以及相對(duì)應(yīng)的視頻學(xué)習(xí)教程免費(fèi)分享!其中包括了有基礎(chǔ)知識(shí)、Linux必備、Shell、互聯(lián)網(wǎng)程序原理、Mysql數(shù)據(jù)庫(kù)、抓包工具專題、接口測(cè)試工具、測(cè)試進(jìn)階-Python編程、Web自動(dòng)化測(cè)試、APP自動(dòng)化測(cè)試、接口自動(dòng)化測(cè)試、測(cè)試高級(jí)持續(xù)集成、測(cè)試架構(gòu)開發(fā)測(cè)試框架、性能測(cè)試、安全測(cè)試等。


      特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺(tái)“網(wǎng)易號(hào)”用戶上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。

      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.

      相關(guān)推薦
      熱點(diǎn)推薦
      吳邦國(guó)的狂草技藝,讓書壇驚嘆不已!

      吳邦國(guó)的狂草技藝,讓書壇驚嘆不已!

      書畫相約
      2026-04-07 07:08:05
      陳麗華生前與趙本山聚餐與演員們喝酒時(shí)的一幕,喝酒非常的豪爽。

      陳麗華生前與趙本山聚餐與演員們喝酒時(shí)的一幕,喝酒非常的豪爽。

      小椰的奶奶
      2026-04-18 13:09:00
      大的要來了!穆杰塔巴擼掉伊朗革命衛(wèi)隊(duì)總司令,換了個(gè)不怕死的

      大的要來了!穆杰塔巴擼掉伊朗革命衛(wèi)隊(duì)總司令,換了個(gè)不怕死的

      杰絲聊古今
      2026-04-11 19:07:34
      徐冬冬尹子維官宣生娃:不辦婚禮不曬娃,這屆明星終于活明白了

      徐冬冬尹子維官宣生娃:不辦婚禮不曬娃,這屆明星終于活明白了

      小貓娛樂叭叭
      2026-04-18 17:34:18
      48 小時(shí)驚天反轉(zhuǎn)!下周油價(jià)和 A 股都要變天?周末重要資訊發(fā)布

      48 小時(shí)驚天反轉(zhuǎn)!下周油價(jià)和 A 股都要變天?周末重要資訊發(fā)布

      風(fēng)風(fēng)順
      2026-04-19 06:49:08
      恒大夏海鈞:當(dāng)一個(gè)人高智商,有資源,無下限,會(huì)壞到什么地步?

      恒大夏海鈞:當(dāng)一個(gè)人高智商,有資源,無下限,會(huì)壞到什么地步?

      道術(shù)意義
      2026-04-08 07:32:08
      440公斤濃縮鈾引爆美伊危機(jī),伊朗導(dǎo)彈產(chǎn)能激增

      440公斤濃縮鈾引爆美伊危機(jī),伊朗導(dǎo)彈產(chǎn)能激增

      享用人生
      2026-04-15 21:19:18
      那年過春節(jié),我家沒買一兩肉,大年三十傍晚有人提一大帆布包上門

      那年過春節(jié),我家沒買一兩肉,大年三十傍晚有人提一大帆布包上門

      人間百態(tài)大全
      2026-04-19 09:01:12
      92年,男子花500元購(gòu)買深圳廢棄水塔入住,14年后拆遷時(shí)他傻了

      92年,男子花500元購(gòu)買深圳廢棄水塔入住,14年后拆遷時(shí)他傻了

      奶茶麥子
      2026-04-16 13:10:19
      10億都救不了一命!京東副總裁蔡磊,生命進(jìn)入倒計(jì)時(shí)

      10億都救不了一命!京東副總裁蔡磊,生命進(jìn)入倒計(jì)時(shí)

      聽風(fēng)喃
      2026-04-06 11:16:04
      加內(nèi)特:文班亞馬應(yīng)該和美國(guó)黑女約會(huì),需要去成人夜總會(huì)逛逛

      加內(nèi)特:文班亞馬應(yīng)該和美國(guó)黑女約會(huì),需要去成人夜總會(huì)逛逛

      懂球帝
      2026-04-19 11:17:26
      200名中企工人海外務(wù)工被欠薪,向普京求援,俄方:已解約不擔(dān)責(zé)

      200名中企工人海外務(wù)工被欠薪,向普京求援,俄方:已解約不擔(dān)責(zé)

      杰絲聊古今
      2026-04-18 15:44:36
      尹錫悅是家中獨(dú)子,52歲才結(jié)婚沒有孩子,父親最后的遺言令人感動(dòng)

      尹錫悅是家中獨(dú)子,52歲才結(jié)婚沒有孩子,父親最后的遺言令人感動(dòng)

      小噎論事
      2026-04-18 16:25:46
      接父母來城里養(yǎng)老90天,我才明白:沒退休金的老人,孝順也養(yǎng)不起

      接父母來城里養(yǎng)老90天,我才明白:沒退休金的老人,孝順也養(yǎng)不起

      木子言故事
      2026-04-19 10:47:16
      下周二晚!油價(jià)即將大跌!

      下周二晚!油價(jià)即將大跌!

      huaibei8
      2026-04-18 21:56:57
      火箭98-107湖人,但因禍得福,賽后收獲三個(gè)利好

      火箭98-107湖人,但因禍得福,賽后收獲三個(gè)利好

      銜春信
      2026-04-19 13:00:48
      1969年,廚師于存失誤做了苦瓜炒雞丁,毛主席好奇:這是誰的發(fā)明

      1969年,廚師于存失誤做了苦瓜炒雞丁,毛主席好奇:這是誰的發(fā)明

      鶴羽說個(gè)事
      2026-04-11 22:15:10
      四川飼料大王首富變“首負(fù)”:欠了近千億,一年光利息就要18億

      四川飼料大王首富變“首負(fù)”:欠了近千億,一年光利息就要18億

      夢(mèng)回千年aa
      2026-04-12 05:53:20
      賽道生吃雅馬哈、杜卡迪!張雪機(jī)車下一站恐將遭BOP削弱:增重并限制動(dòng)力

      賽道生吃雅馬哈、杜卡迪!張雪機(jī)車下一站恐將遭BOP削弱:增重并限制動(dòng)力

      快科技
      2026-04-19 08:40:06
      中國(guó)為何能“打完就撤”,俄羅斯卻陷在烏克蘭出不來

      中國(guó)為何能“打完就撤”,俄羅斯卻陷在烏克蘭出不來

      民間胡扯老哥
      2026-03-22 20:32:40
      2026-04-19 13:44:49
      51Testing軟件測(cè)試網(wǎng) incentive-icons
      51Testing軟件測(cè)試網(wǎng)
      中國(guó)軟件測(cè)試人的精神家園
      1558文章數(shù) 13260關(guān)注度
      往期回顧 全部

      科技要聞

      50分26秒破人類紀(jì)錄!300臺(tái)機(jī)器人狂飆半馬

      頭條要聞

      牛彈琴:伊朗遭到特朗普"羞辱"被激怒 結(jié)果印度遭了殃

      頭條要聞

      牛彈琴:伊朗遭到特朗普"羞辱"被激怒 結(jié)果印度遭了殃

      體育要聞

      湖人1比0火箭:老詹比烏度卡像教練

      娛樂要聞

      張?zhí)鞇墼u(píng)論區(qū)淪陷!被曝卷入小三風(fēng)波

      財(cái)經(jīng)要聞

      華誼兄弟,8年虧光85億

      汽車要聞

      29分鐘大定破萬 極氪8X為什么這么多人買?

      態(tài)度原創(chuàng)

      藝術(shù)
      家居
      親子
      本地
      公開課

      藝術(shù)要聞

      當(dāng)代著名畫家 | 全山石人物油畫23幅

      家居要聞

      法式線條 時(shí)光靜淌

      親子要聞

      不能隱瞞爸爸媽媽的四件事兒

      本地新聞

      12噸巧克力有難,全網(wǎng)化身超級(jí)偵探添亂

      公開課

      李玫瑾:為什么性格比能力更重要?

      無障礙瀏覽 進(jìn)入關(guān)懷版