国产av一二三区|日本不卡动作网站|黄色天天久久影片|99草成人免费在线视频|AV三级片成人电影在线|成年人aV不卡免费播放|日韩无码成人一级片视频|人人看人人玩开心色AV|人妻系列在线观看|亚洲av无码一区二区三区在线播放

網(wǎng)易首頁 > 網(wǎng)易號 > 正文 申請入駐

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

0
分享至

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

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

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

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

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

在各種學科中進行輔導

翻譯語言

為視頻游戲模擬角色等

待發(fā)掘的各種應用場景……

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

獲取API Key

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

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

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

創(chuàng)建API

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

POST/chatbot/talk

Request Body:

“message”:"你好!"

Response:

“content”:“bot response message”

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

pip install fastapi uvicorn openai

為了演示方便,此處簡化了一些最佳實踐,下面是一個最基本的FastAPI服務實現(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)建一個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界面已經(jīng)加載并顯示出我們的Talk API,如下圖所示:

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

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

UI界面

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

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

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

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

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

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

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

{{message.content}}

{{message.content}}

Send

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

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

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

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

運行

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

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

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

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

cnpm install-g@vue/cli

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

vue create my-chat-app

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

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

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

cnpm install axios--save

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

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

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

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

pm run serve

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

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

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

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

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.

相關推薦
熱點推薦
放棄華為百萬年薪,34歲高齡參軍入伍,如今成為國家棟梁之材!

放棄華為百萬年薪,34歲高齡參軍入伍,如今成為國家棟梁之材!

用冷眼洞悉世界
2026-02-21 10:25:00
寧愿在國外種地,也不愿意回國,培養(yǎng)出92個世界冠軍的李永波圖啥

寧愿在國外種地,也不愿意回國,培養(yǎng)出92個世界冠軍的李永波圖啥

閱微札記
2026-02-22 19:15:15
美伊戰(zhàn)爭,黃金不是最大受益品,而是工業(yè)血液原油!

美伊戰(zhàn)爭,黃金不是最大受益品,而是工業(yè)血液原油!

楊子黃金
2026-03-01 09:21:32
“全部門店將關閉,停止運營”!很多人突然收到短信!網(wǎng)友:時代的眼淚

“全部門店將關閉,停止運營”!很多人突然收到短信!網(wǎng)友:時代的眼淚

南方都市報
2026-02-28 17:41:31
伊朗伊斯蘭共和國軍隊發(fā)布第1號公告

伊朗伊斯蘭共和國軍隊發(fā)布第1號公告

界面新聞
2026-02-28 19:53:31
1.2億農村老人,每月只領200元養(yǎng)老金,買兩袋米就沒了。

1.2億農村老人,每月只領200元養(yǎng)老金,買兩袋米就沒了。

流蘇晚晴
2026-02-26 18:18:15
征服中年女人,無需套路:兩顆真心,一生相守

征服中年女人,無需套路:兩顆真心,一生相守

青蘋果sht
2025-11-04 06:10:40
王一博綦美合的“寶寶巴士”!

王一博綦美合的“寶寶巴士”!

八卦瘋叔
2026-03-01 11:10:15
伊朗外長披露哈梅內伊最新情況

伊朗外長披露哈梅內伊最新情況

第一財經(jīng)資訊
2026-02-28 23:22:00
英媒:沃爾特馬德是英超歷史最差引援,若圍繞他建隊會降級的

英媒:沃爾特馬德是英超歷史最差引援,若圍繞他建隊會降級的

懂球帝
2026-02-28 16:06:22
李奇微晚年在回憶錄里寫道:一場朝鮮戰(zhàn)爭,打出了三個超級大國

李奇微晚年在回憶錄里寫道:一場朝鮮戰(zhàn)爭,打出了三個超級大國

飯小妹說歷史
2026-02-27 14:32:55
哈佛研究揭示:高智商孩子常具兩種臉部特征不是迷信是腦科學真相

哈佛研究揭示:高智商孩子常具兩種臉部特征不是迷信是腦科學真相

一口娛樂
2026-02-27 12:42:23
中東多地響起爆炸聲

中東多地響起爆炸聲

每日經(jīng)濟新聞
2026-02-28 18:14:56
85歲老人被女婿趕出家門,臨走時外孫偷塞紙條,七字讓他轉身返回

85歲老人被女婿趕出家門,臨走時外孫偷塞紙條,七字讓他轉身返回

卡西莫多的故事
2025-05-12 17:40:50
伊朗失守的一個側面:匯率雙軌,特權分蛋糕,普通人買單

伊朗失守的一個側面:匯率雙軌,特權分蛋糕,普通人買單

蛙蛙和洼
2026-01-18 09:25:01
汪小菲直播首度回應前妻離世:忍辱一年,孩子轉學非我決定

汪小菲直播首度回應前妻離世:忍辱一年,孩子轉學非我決定

行者聊官
2026-02-28 21:11:19
全球只有5位領導人被永久保留遺體,他們都是誰

全球只有5位領導人被永久保留遺體,他們都是誰

扶蘇聊歷史
2026-01-29 16:13:42
哈梅內伊斃命伊朗大亂!霍爾木茲海峽封鎖,全球油價即將暴漲

哈梅內伊斃命伊朗大亂!霍爾木茲海峽封鎖,全球油價即將暴漲

日新現(xiàn)場
2026-03-01 12:56:10
俄軍彈藥“心臟”停跳!156萬噸產能瞬間清零,烏克蘭這波無人機立了大功

俄軍彈藥“心臟”停跳!156萬噸產能瞬間清零,烏克蘭這波無人機立了大功

Ck的蜜糖
2026-02-28 16:21:43
CCTV5+直播超級杯海港VS國安!萊昂合練 神醫(yī)再現(xiàn) 發(fā)飆沖擊克勞德

CCTV5+直播超級杯海港VS國安!萊昂合練 神醫(yī)再現(xiàn) 發(fā)飆沖擊克勞德

刀鋒體育
2026-03-01 11:01:10
2026-03-01 14:47:00
51Testing軟件測試網(wǎng) incentive-icons
51Testing軟件測試網(wǎng)
中國軟件測試人的精神家園
1528文章數(shù) 13252關注度
往期回顧 全部

科技要聞

小米超跑概念車全球首秀!殺入頂豪俱樂部

頭條要聞

揮兵伊朗之際 特朗普開炮"絕不允許企業(yè)干涉軍隊作戰(zhàn)"

頭條要聞

揮兵伊朗之際 特朗普開炮"絕不允許企業(yè)干涉軍隊作戰(zhàn)"

體育要聞

火箭輸給熱火:烏度卡又輸斯波教練

娛樂要聞

《江山為聘》:吳謹言陳哲遠燃炸朝堂

財經(jīng)要聞

中東局勢升級 如何影響A股、黃金和原油

汽車要聞

小米汽車2月交付超20000臺 雷軍:為新SU7量產作準備

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

數(shù)碼
房產
旅游
時尚
教育

數(shù)碼要聞

DDR4價格已連續(xù)11個月上漲

房產要聞

濱江九小也來了!集齊海僑北+哈羅、寰島...江東教育要炸了!

旅游要聞

意外走紅!穿過縣政府免費看國保!這里內藏中國“最美”阿育王塔

普通人穿衣不需要太復雜!顏色恰當、搭配和諧,高級又耐看

教育要聞

國家統(tǒng)計局最新數(shù)據(jù)!研究生招生首破140萬

無障礙瀏覽 進入關懷版