国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

ChatGPT實踐-構建簡單的AI聊天機器人(python)

這篇具有很好參考價值的文章主要介紹了ChatGPT實踐-構建簡單的AI聊天機器人(python)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

本文指導如何通過調用OpenAI的API完成一個簡單的聊天機器人。

背景知識

API介紹

我們可以通過任何語言的 HTTP 請求、官方 Python 、 Node.js 庫或社區(qū)維護的庫與 ChatGPT的API 進行交互,官方API文檔:

API Reference - OpenAI API (可自行去查看)

所以python是有現成包用的,會比調用原始的HTTP請求容易一些,python包:

openai/openai-python: The official Python library for the OpenAI API

本文使用Python編程語言完成一個簡單的AI聊天機器人。

一次簡單的調用

如果要調用ChatGPT的API其實非常簡單,只需要幾行代碼,像下面這樣:

import openai

openai.api_key = "替換為你的key"
openai.api_base = "如果走繞路這里填寫對應的服務商的網址"

response = openai.ChatCompletion.create(
    model='gpt-3.5-turbo',
    messages=[
        {'role': 'user', 'content': 'hello.'},
    ],
    temperature=1,  # 控制模型輸出的隨機程度
)
# 打印ChatGPT的回復
print(response.choices[0].message["content"])

運行后可以看到如下打?。?/p>

Hello! How can I assist you today?

一次調用就完成了。

幾種消息的介紹

上面的messages參數中有一個role關鍵字,它有3中類型,對應3中消息,這里介紹一下:

系統(tǒng)消息

在ChatGPT的客戶端聊天窗口是看不到系統(tǒng)消息的,這個是API中才有的,主要是給開發(fā)人員使用的。

系統(tǒng)消息主要用來設置聊天機器人的角色和行為,相當于給它一些默認的指令。

用戶消息

就是你在聊天窗口發(fā)的內容,稱為「用戶消息」,

助手消息

就是ChatGPT發(fā)給你的內容,稱為「助手消息」。

代碼

來看看一個簡單的完成的AI聊天機器人的代碼:

import openai

openai.api_key = "替換為你的"
openai.api_base = "如果走繞路這里填寫對應的服務的網址"

def get_completion_from_messages(messages, model="gpt-3.5-turbo", temperature=0):
    response = openai.ChatCompletion.create(
        model=model,
        messages=messages,
        temperature=temperature,  # 控制模型輸出的隨機程度
    )
    return response.choices[0].message["content"]

context = [
    # 上下文中定義一個系統(tǒng)角色,告訴ChatGPT他是一個友好的助手,后面的回復它都會是一個非常友好的態(tài)度
    {'role': 'system', 'content': 'You are a friendly assistant.'},
]

def chat_to_bot(prompt):
    # 我們發(fā)送的信息角色是user
    context.append({'role': 'user', 'content': f"{prompt}"})
    response = get_completion_from_messages(context)
    # 注意這里,需要將先前的內容一并發(fā)給ChatGPT
    # ChatGPT返回回來得消息的角色是assistant
    context.append({'role': 'assistant', 'content': f"{response}"})
    return f'Bot: {response}'

if __name__ == '__main__':
    while True:
        user_input = input("You: ")
        print(chat_to_bot(user_input))

代碼解釋:

  • 定義了一個get_completion_from_messages函數,該函數向 OpenAI API 發(fā)送一系列消息并獲取響應。 messages 參數是消息對象的列表,每個對象都有一個“角色”(可以是“系統(tǒng)”、“用戶”或“助理”)和“內容”(消息的內容) 。 “溫度”參數控制模型輸出的隨機性。

  • context 定義了對話的初始上下文,告訴模型它正在扮演友好助手的角色。

  • chat_to_bot此函數向聊天機器人發(fā)送消息并獲取其響應。它將用戶的消息和機器人的響應添加到對話上下文中,因此每次對話后都會更新上下文。

  • 主循環(huán)中,它反復要求用戶輸入,將該輸入發(fā)送到聊天機器人,并打印聊天機器人的響應。對話無限期地繼續(xù),直到程序被手動停止。

運行的結果是這樣的:

You: hi
Bot: Hello! How can I assist you today?
You: What did I say in the previous sentence?
Bot: In the previous sentence, you said "hi".
You:

可以看到它知道上下文,可以一直對話下去。

注意:每一次API調用都是獨立的,要讓機器人理解上下文(context),那么每次API調用都需要將之前的聊天內容全部發(fā)過去??梢钥吹?,當對話越來越長的時候,對token的消耗非常大,這是LLM的一個特點。文章來源地址http://www.zghlxwxcb.cn/news/detail-707078.html

到了這里,關于ChatGPT實踐-構建簡單的AI聊天機器人(python)的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯(lián)網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 《花雕學AI》34:用13種Prompt玩轉AI聊天機器人—揭秘ChatGPT模型

    《花雕學AI》34:用13種Prompt玩轉AI聊天機器人—揭秘ChatGPT模型

    引言: 聊天機器人是一種能夠通過自然語言進行交流的智能系統(tǒng),它可以模仿人類的對話方式,提供各種信息、服務或娛樂。隨著人工智能技術的發(fā)展,聊天機器人的應用越來越廣泛,從電商、教育、醫(yī)療、旅游等領域,到社交、游戲、文學等領域,都可以看到聊天機器人的

    2024年02月05日
    瀏覽(29)
  • 基于GPT-4和LangChain構建云端定制化PDF知識庫AI聊天機器人

    基于GPT-4和LangChain構建云端定制化PDF知識庫AI聊天機器人

    參考: GitHub - mayooear/gpt4-pdf-chatbot-langchain: GPT4 LangChain Chatbot for large PDF docs 使用新的GPT-4 api為多個大型PDF文件構建chatGPT聊天機器人。 使用的技術棧包括LangChain, Pinecone, Typescript, Openai和Next.js。LangChain是一個框架,可以更容易地構建可擴展的AI/LLM大語言模型應用程序和聊天機器

    2024年02月11日
    瀏覽(19)
  • 基于Llama2和LangChain構建本地化定制化知識庫AI聊天機器人

    基于Llama2和LangChain構建本地化定制化知識庫AI聊天機器人

    參考: 本項目?https://github.com/PromtEngineer/localGPT 模型?https://huggingface.co/TheBloke/Llama-2-7B-Chat-GGML 云端知識庫項目:基于GPT-4和LangChain構建云端定制化PDF知識庫AI聊天機器人_Entropy-Go的博客-CSDN博客? ????????相比OpenAI的LLM ChatGPT模型必須網絡連接并通過API key云端調用模型,擔心

    2024年02月08日
    瀏覽(33)
  • ChatGPT使用拓展資料:AI大模型之美 -客戶服務、聊天機器人和情感分析

    本文將介紹一款基于OpenAI API的人工智能(AI)應用程序,該應用程序可以用于客戶服務、聊天機器人和情感分析等任務。該應用程序使用Python編程語言和OpenAI API實現,可以自動化回答用戶的問題,并根據用戶的輸入生成智能響應。 OpenAI是一家致力于人工智能研究的公司,其

    2024年02月13日
    瀏覽(26)
  • 不會編程也能搭建聊天機器人?ChatGPT + Notion AI助你一臂之力!

    不會編程也能搭建聊天機器人?ChatGPT + Notion AI助你一臂之力!

    體驗鏈接:Aitrend ChatBot (無需環(huán)境,無需賬號,打開即用,完全免費,回答能力同ChatGPT) 背景介紹 本文主要談關于如何使用ChatGPT(實際使用主力工具為Notion AI),應用官方API接口,搭建一個完整的聊天機器人。 本文的核心目的不是教會讀者如何去搭建一個機器人,而是學會

    2024年02月12日
    瀏覽(25)
  • 探索ChatGLM-LLaMA-chinese:新一代AI聊天機器人與多語言建模的創(chuàng)新實踐

    項目地址:https://gitcode.com/27182812/ChatGLM-LLaMA-chinese-insturct 在人工智能領域,語言模型的進步不斷刷新我們的認知。今天,我們將深度剖析一個令人矚目的開源項目——ChatGLM-LLaMA-chinese,它是一個基于阿里云大模型的多語言聊天機器人,具有豐富的功能和高度的可定制性。 Chat

    2024年04月11日
    瀏覽(25)
  • ChatGPT提示詞指令大全調教指南,6個網站讓你輕松玩轉AI聊天機器人!

    ChatGPT 的火熱程度大家都看在眼里。很多人都想知道 : 要想用好 ChatGPT 需要什么 Prompt 提示詞、提問模板 經常想“要怎么才能讓ChatGPT更好的回答問題” ? 其實 ChatGPT 的操作一點也不難 我覺得甚至不用特別專業(yè)的指導就可以去掌握它 你就當他是一個真人 然后和他對話就行了

    2024年02月06日
    瀏覽(29)
  • 聊天機器人意圖構建與反饋收集

    聊天機器人意圖構建與反饋收集 隨著越來越多的企業(yè)投入到聊天機器人項目,如何管理日益復雜的聊天機器人成為行業(yè)的一個挑戰(zhàn)。構建一個聊天機器人變得越來越容易,但項目中出現問題也變得越發(fā)普遍,特別是在意圖(intent)架構不恰當時。 不恰當意圖架構引發(fā)的問題 聊

    2024年04月12日
    瀏覽(23)
  • Azure Machine Learning - 聊天機器人構建

    Azure Machine Learning - 聊天機器人構建

    本文介紹如何部署和運行適用于 Python 的企業(yè)聊天應用示例。 此示例使用 Python、Azure OpenAI 服務和 Azure AI 搜索中的檢索擴充生成(RAG)實現聊天應用,以獲取虛構公司員工福利的解答。 關注TechLead,分享AI全維度知識。作者擁有10+年互聯(lián)網服務架構、AI產品研發(fā)經驗、團隊管理

    2024年01月19日
    瀏覽(26)
  • 使用LangChain構建問答聊天機器人案例實戰(zhàn)(一)

    使用LangChain構建問答聊天機器人案例實戰(zhàn)(一)

    使用LangChain構建問答聊天機器人案例實戰(zhàn) 現場演示GPT-4代碼生成 本節(jié)我們會通過一個綜合案例,跟大家講解LangChain,這個案例產生的代碼會直接在瀏覽器中運行,并且會輸出結果,如圖14-1所示,用戶問:“What was the highest close price of IBM?”(“IBM的最高收盤價是多少?”)

    2024年02月15日
    瀏覽(111)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包