当前位置:AIGC资讯 > AIGC > 正文

怎么调用文心一言的api接口生成一个简单的聊天机器人(python代码)

寒假在学习大模型,但也没弄出多少眉目,电脑性能还有点小问题,大模型总跑不起来,只会简单调用一下现有的大模型的接口,例如:文心一言,下面展示一下代码:

import tkinter as tk
import requests
import json

#此处需填入自己的API_KEY以及SECRET_KEY
API_KEY = "*****"
SECRET_KEY = "*******"


class ChatBot:
    def __init__(self, master):
        self.master = master
        master.title("Chat Bot")

        # 创建控件
        self.message_input = tk.Entry(master, width=50)
        self.send_button = tk.Button(master, text="Send", command=self.send_message)
        self.chat_box = tk.Text(master, width=60, height=20)

        # 布局控件
        self.message_input.pack(side=tk.LEFT, padx=10)
        self.send_button.pack(side=tk.LEFT)
        self.chat_box.pack(side=tk.BOTTOM, pady=20)

    def send_message(self):
        message = self.message_input.get()
        self.message_input.delete(0, tk.END)
        self.chat_box.insert(tk.END, "You: " + message + "\n")
        response = self.get_response(message)
        self.chat_box.insert(tk.END, "Bot: " + response + "\n")

    def get_response(self, message):
        url = "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/completions?access_token=" + self.get_access_token()
        payload = json.dumps({
            "messages": [
                {
                    "role": "user",
                    "content": message
                }
            ]
        })
        headers = {
            'Content-Type': 'application/json'
        }

        response = requests.request("POST", url, headers=headers, data=payload)
        return response.json()["result"]

    def get_access_token(self):
        url = "https://aip.baidubce.com/oauth/2.0/token"
        params = {"grant_type": "client_credentials", "client_id": API_KEY, "client_secret": SECRET_KEY}
        return str(requests.post(url, params=params).json().get("access_token"))


root = tk.Tk()
chat_bot = ChatBot(root)
root.mainloop()


至于如何获取这其中的两个key,网上有太多文章了,大家可以去找找看,比如这篇文章:百度文心一言API申请和python/Go使用教程 - 知乎 (zhihu.com)

不过内容我没细看,如果不满足要求的话可以再找找。之前我看过的那篇很有用的文章本来想推荐给大家,刚刚发现不存在了。因为网上相关太多了,我就不写了,当然,如果大家想看,我也可以出。

结果如下所示:

之前录的视频没保存,找不着了,人又比较懒,下面是我之前发在b站的视频,大家可以看看,当然,愿意关注的话,也可以关注下,虽然我b站发布的内容好像和技术没啥关系哈:

python调用文心一言大模型接口生成一个简陋版聊天机器人_哔哩哔哩_bilibili

这次就这样啦,与大家共勉。

更新时间 2024-03-27