(01)Unity使用在线AI大模型(使用百度千帆服务)

目录

一、概要

二、环境说明

三、申请百度千帆Key

四、使用千帆大模型

四、给大模型套壳


一、概要

在Unity中使用在线大模型分为两篇发布,此篇文档为在Python中使用千帆大模型,整体实现逻辑是:在Python中接入大模型--->发布为可传参的exe文件--->Unity调用。

二、环境说明

三、申请百度千帆Key

1.进入官网:百度智能云千帆大模型平台ModelBuilder (baidu.com)

2.点击立即使用

3.进入百度智能云千帆大模型平台

4.进入安全认证

5.单击创建Access Key,单击后即可看到下方自动生成一条Key

其他:在过程中可能会出现余额不足无法进行到下一步的情况,充值几块钱即可,用作测试妥妥花不完

四、使用千帆大模型

1.新建一个Python项目在终端中下载千帆依赖包

2.命令:pip install qianfan

3.粘贴以下代码块

python 复制代码
import os
import qianfan
import wx

os.environ["QIANFAN_ACCESS_KEY"] = ""
os.environ["QIANFAN_SECRET_KEY"] = ""

chat_comp = qianfan.ChatCompletion()
# 调用默认模型,ERNIE-Lite-8K-0922(即ERNIE-Bot-turbo)
def qf(sendmessage):
    resp = chat_comp.do(model="ERNIE-Bot", messages=[{
        "role": "user",
        "content": str(sendmessage)
    }])

    return resp["result"]
print(qf('你好'))

4.回到百度千帆安全认证处(本文3-4位置)

5.将Access Key和Secret Key分别填入给代码行第5行和第6行赋值

至此,运行代码。

其他:代码页中qf(sendmessage)方法中的参数就是向百度千帆模型发送的消息,通过结构体会返回一组字典数组数据,其中将这个数据中的result值就是返回的具体内容,将此拿出来单独显示即可

四、给大模型套壳

将代码封装到一个假模假样的问答界面中

效果展示:

开始实操!

1.继续回到我们的PyCharm

2.在终端中下载可视化依赖包,命令:pip install wxPython

3.粘贴如下代码:

python 复制代码
import os
import qianfan
import wx

os.environ["QIANFAN_ACCESS_KEY"] = "ALTAK7qtCfC3zpqXu0CQnlLRcW"
os.environ["QIANFAN_SECRET_KEY"] = "4dff827da43744ada16a44690231addc"

chat_comp = qianfan.ChatCompletion()
# 调用默认模型,ERNIE-Lite-8K-0922(即ERNIE-Bot-turbo)
def qf(sendmessage):
    resp = chat_comp.do(model="ERNIE-Bot", messages=[{
        "role": "user",
        "content": str(sendmessage)
    }])

    return resp["result"]


class Fr(wx.Frame):
    def __init__(self):
        wx.Frame.__init__(self, None, title="百度千帆大模型测试", pos=(0, 50), size=(450, 460))
        self.pl = wx.Panel(self)
        self.resurttext = wx.TextCtrl(self.pl, size=(400,300), pos=(10,10), style=wx.TE_READONLY | wx.TE_MULTILINE)
        self.sendtext = wx.TextCtrl(self.pl, size=(400,50), pos=(10,320), style=wx.TE_MULTILINE)
        self.btn = wx.Button(self.pl, label="发送", size=(80,30), pos=(150, 380))
        self.Bind(wx.EVT_BUTTON, self.btnclick, self.btn)


    def btnclick(self, event):
        result = qf(self.sendtext.GetValue())
        self.resurttext.AppendText(str(self.sendtext.GetValue() + '\n' + result + '\n'))
        self.sendtext.Clear()

if __name__ == '__main__':
    app = wx.App()
    fream = Fr()
    fream.Show()
    app.MainLoop()

运行!

到此只是接入了在线大模型的服务,可以进行基础的问答

下一篇:(02)Unity使用在线AI大模型(调用Python)

相关推荐
aqiu~11 小时前
VSCode编辑器用于Unity项目
vscode·unity
小贺儿开发19 小时前
Unity3D 心理沙盘互动演示
unity·ai·pdf·人机交互·工具·互动·心理沙盘
CuPhoenix21 小时前
【沧海拾昧】Unity 导入中文字体文字缺失的解决方法
unity
南無忘码至尊1 天前
Unity学习90天-第1天-认识Transform + 坐标系
学习·unity·游戏引擎
南無忘码至尊1 天前
Unity学习90天-第1天-认识Unity并书写我们的第一个脚本
学习·unity·游戏引擎
风酥糖1 天前
Godot游戏练习01-第26节-轮次结束后弹出升级选项
游戏·游戏引擎·godot
雪域迷影1 天前
Hazel游戏引擎结构分析
c++·游戏引擎·hazel
Nuopiane1 天前
C#基础(1)堆栈、GC与Marshal
unity·c#
weixin_409383121 天前
godot创建两种敌人僵尸 一种吐舌头 一种在角色脚下生成圆形伤害圈 两种僵尸均继承enemy脚本 理解继承
游戏引擎·godot
mxwin2 天前
Unity Shader 跨平台兼容性:处理纹理坐标翻转与精度差异
unity·游戏引擎