AI+树莓派=阿里P8技术专家。模拟面试、学技术真的太香了 | 手把手教学
本课程由讲师御风大世界分享。
A:在java中==运算符和equals方法用于对象比较时。它们之间有什么区别。各自在什么场景下使用最为合适?
B:==比较的是值相等。equals比较的是地址是否相等。
A:上述描述比较java中的两种equality检查方式,表达不够准确。
上面最近做的项目AI面试助手。下面拆解项目如何实现。首先外观部分废弃的毛绒玩具。内部核心是树莓派开发板,或者可以叫小电脑。这一类开发板价格会贵一些。,但集成度更高。也可以选择其他开发板来代替。实验思路都一样。树莓派自带wifi模块。所以联网的问题不用担心。同时也预留USB的接口。像音频的输入输出或者安装摄像头模块,都可以快速方便的集成。可以把树莓派理解为一个集成度比较高的小电脑。然后安装麦克风和音响。可以听到说话,也可以去播放想要播放的语音或者音乐。
下面进入软件的部分。首先一个简单的架构图。可以看到整个流程非常简单。人通过麦克风讲话。可以使用阿里云提供的实时语音识别服务,把说话语音转变成文字。拿到文字以后将这段文字投喂给之前配置的AI Agent。AI agent经过一系列内部的分析计算,从而给出答复。
再次调用文字转语音的服务。将文字内容通过喇叭或者音响播放出来。整体的流程就是这样。
首先登录阿里云。在产品搜索智能语音交互。点击控制台。提示还没有开通服务。跟随指引进行开通。
目前所有服务都有三个月免费试用期。直接点击开通。配置项目。需要填入一些必要的信息。配置完成有项目的基本信息。右侧有演示模块。可以测试麦克风实时语音转写文字。包括文字转语音的效果。
接下来需要配置AI Agent。来到阿里云的百炼平台。点击我的应用。创建应用。模型选择的是通义千问的Max版本。接下来写提示词。需要让AI解决什么问题就详细把它描述出来。最后点击prompt优化。一个高水准的提示词就搞定了。
打开知识检索增强。指定知识库。这样AI在回答时就会在给定的范围里面寻找答案。一开始是没有知识的,点击上传新知识。然后选择非结构化数据或者结构化数据两种类型。比如可以上传面试的PDF。它就属于非结构化数据。也可以为数据添加不同的类目。这样管理起来会更加清爽。最后点击导入数据上传PDF就可以。到这一步只是上传数据。
还需要做数据的应用。对刚才的数据创建知识索引。创建知识库,填写名字和描述。其他的地方保持不变。点击下一步。选择让百炼处理的数据(刚才上传的PDF)。最后点击导入完成。这样就创建属于自己的知识库。
再次回到应用配置的地方,选择知识库可以看到刚才配置的知识库。其他地方保持不变。下面在右侧的对话框进行提问。AI给出的响应速度非常快。最后点击发布。AI agent就生效或者上线了。
接下来需要演示如何使用代码把上面的服务和硬件集成起来。来到代码编辑器idea里面。看完实现逻辑以后无论使用python、 Js或者是Go语言都可以轻松实现。首先需要写TOKEN的缓存或者刷新类。在调用阿里云交互时需要告诉阿里云app_key或者access_ token。就是一个服务标识(身份标识)。
定时任务是用来定时刷新TOKEN的。同时在项目启动时把第一次的TOKEN放到缓存当中。这里是简单的demo,所以直接使用内存缓存。大家也可以使用redis或者其他存储方式,然后去实施语音服务的调用。这里写了handler,其实在阿里云的文档当中有非常详细的demo示例,可以直接拿过来用。
接下来启动看输出的语音识别的结果。识别的过程非常流畅。而且在控制台实时打印识别的文字内容。
接下来需要实现AI agent的调用。参考官方的例子进行改写。运行完测试代码之后,看到提问和回复的过程比较快。
接下来把语音模块和AI agent模块打通。按照最早的架构图实现。
先让语音模块识别到人的语音,然后转写成文字,再调用AI agent。拿到AI agent的结果,去调用文字转语音的服务。把语音播放出来,整个过程完成。
下面把代码部署到树莓派当中。首先把java项目进行打包。生成小的jar包。就是整个项目可以执行的文件。下面需要通过SSH的方式把jar包上传到树莓派。可以理解为远程服务器。
树莓派在购买时可以让老板提前预装好系统。比如centos,ubuntu等。接下来启动项目java-jar框架再加上打包的jar包。控制台输出项目的启动日志。项目成功启动。
接下来把板子和电池都装到玩偶里面。接下来和玩偶做简单对话。
A:你好。我是来面试java工程师的。请您出一道简单点的面试题吧。
B:当然,让我们从一相对基础但十分关键的概念开始。请问在java中==运算符和equals方法用于比较对象时有何区别?请尽可能详细的描述这两种比较方式的使用场景及潜在的不同结果。
到此,ai项目已经完成。
在做项目的过程中发现AI没有很遥远。普通人也能拥有享受AI的权利。比如在项目中使用的实时语音的识别服务,AI agent的服务以及文字转写语音的服务等,都是人工智能的产品。都是非常成熟的产品化的AI工具。有这些服务的加持,极大简化构建AI应用的过程,也能极大加快普通人从想法到实际落地的速度。
以上为分享全部内容。