如何用50行代码开发出一个人工智能机器人
这年头,机器人程序(bot)是新的应用程序,机器人程序商店就是新的应用程序商店。结合人工智能,机器人程序变得功能日益强大,而且在学习新的本领。我在本文中将介绍如何使用IBM Watson API,用短短50行代码,编写出一个Telegram语音转换成文本的机器人程序。
这年头,机器人程序是新的应用程序,大家都在谈论机器人程序。微软宣布,机器人程序是改善Skyper的战略的一部分,Facebook拥有面向Messenger的机器人程序。至于其他公司,Telegram和Slack早已拥有机器人程序。
随着时间的推移,越来越多的公司认识到机器人程序大有潜力。加上人工智能的不断发展,开发出与现有应用程序轻松整合起来的、人工智能驱动的机器人程序已变得很容易。
我在本文中将为大家介绍基于IBM Watson的人工智能机器人程序,它有望成为许多项目的一个不错的起点。Watson API是一种可整合的出色服务,它随带完备的说明文档和丰富的实例。
最近,我在Hacker News上看到了一篇帖子,软件工程师菲利浦·朗汉斯(Philipp Langhans)分享了一篇文章,介绍如何编写一个基本的机器人程序。
这款人工智能机器人程序解决了语音信息并非始终很方便的问题,你可能在聊天时不想听语音信息。原因可能是在某个公共场所,或者对方是你的好友。
菲利浦介绍了如何构建一个语音转换成文本的机器人程序,它可以将语音信息转换成文本。为此,如前所述,他借助了世界上智能化程度最高的机器人程序IBM Watson。
如何编写IBM Watson人工智能机器人程序?
让Watson为你的人工智能机器人程序作好准备:
首先,你需要注册免费使用30天的Watson试用版,这让你可以获得2GB的运行时环境和容器内存以运行应用程序,还有无限制的IBM服务和API。
完成注册并设置好区域和公司之后,可以在需要时随时浏览Web用户界面了。
完成这一步后,按照这个一目了然的说明文档,使用命令行,创建语音转换成文本的服务。
现在回到Web界面,找到刚创建的那个服务,并获得登录信息。
用50行代码构建Telegram机器人程序:
这一步很简单,你只需要将BotFather添加到你的联系人。现在,使用/newbot命令,按说明操作即可,比如添加你的姓名和用户名。
确保你记下了自己的API令牌。为了获得更多的帮助,你可以访问Telegram的机器人程序指南。
完成这一切后,下面是可以用来自行构建机器人程序的开源代码。不妨看一下:
var Bot = require('node-telegram-bot-api') var watson = require('watson-developer-cloud'); var request = require('request'); var config = require('./config'); var speech_to_text = watson.speech_to_text({ username: config.watson.username, password: config.watson.password, version: 'v1', url: 'https://stream.watsonplatform.net/speech-to-text/api' }); var params = { content_type: 'audio/ogg;codecs=opus', continuous: true, interim_results: false }; var bot = new Bot(config.telegram.token, { polling: true }); bot.on('message', function (msg) { if(msg['voice']){ return onVoiceMessage(msg); } }); function onVoiceMessage(msg){ var chatId = msg.chat.id; bot.getFileLink(msg.voice.file_id).then(function(link){ //setup new recognizer stream var recognizeStream = speech_to_text.createRecognizeStream(params); recognizeStream.setEncoding('utf8'); recognizeStream.on('results', function(data){ if(data && data.results && data.results.length>0 && data.results[0].alternatives && data.results[0].alternatives.length>0){ var result = data.results[0].alternatives[0].transcript; console.log("result: ", result); //send speech recognizer result back to chat bot.sendMessage(chatId, result, { disable_notification: true, reply_to_message_id: msg.message_id }).then(function () { // reply sent! }); } }); ['data', 'error', 'connection-close'].forEach(function(eventName){ recognizeStream.on(eventName, console.log.bind(console, eventName + ' event: ')); }); //pipe voice message to recognizer -> send to watson request(link).pipe(recognizeStream); }); }
你还可以在Telegram上试一试这个机器人程序,只要将@speech2textbot添加到你的联系人或任何聊天即可。
下面是它呈现的样子,并附有所有语音信息的文字记录:
英文原文:How To Code Your Own ‘Watson’ AI Bot In 50 Lines Of Code?/
你也许感兴趣的:
- 我受够了维护 AI 生成的代码
- 【外评】作为全栈开发人员如何跟上 AI/ML 的发展?
- 大模型集体失智!9.11和9.9哪个大,几乎全翻车了
- 【外评】为什么似乎没有人在意人工智能给出了错误的答案?
- 【程序员搞笑图片】AI 编程
- 【外评】黑客工具可提取 Windows 全新人工智能 Recall 功能收集到的所有数据
- 【外评】如果人工智能能胜任你的工作,也许它还能取代你的首席执行官
- 【外评】人工智能提供假冒的 Facebook 客户服务电话导致一男子陷入骗局
- 【外评】训练与聊天不同:ChatGPT 和其他 LLM 不会记住你说的每一句话
- 【外评】让Windows完全回忆(Recall)用户所做的一切是一个隐私雷区
Good Job.
Good job.
厉害