智能聊天机器人实现 源码+解析

本文提供了一个使用图灵机器人API实现的智能聊天机器人的源码解析,包括仿微信界面的设计,图灵API的获取与使用。通过这个教程,你可以学习到如何创建一个支持聊天、问答功能的智能应用。
摘要由CSDN通过智能技术生成
                                   
               

前言:


今天带来的是智能聊天机器人实现(源码+解析), 和上一篇教程一样, 当你没有女朋友的时候, 可以用它来打发时间。这里的API是图灵机器人提供的, 实现一个十分强大的机器人。

具体功能包括:

•  支持聊天对话、智能问答
•  拥有笑话、天气、公交等丰富功能
•  支持自然语言处理及语义理解
•  数十亿知识库数据,应有尽有

运行效果:


                                   

源码下载:


源码已经传到git上了, 欢迎下载学习。 

下载链接: https://github.com/colin1994/tulingIOS


源码解析:


一。仿微信界面


如果你觉得这篇文章看起来稍微还有些吃力,或者想要系统地学习人工智能,那么推荐你去看床长人工智能教程。非常棒的大神之作,教程不仅通俗易懂,而且很风趣幽默。点击这里可以查看教程。

这个小demo的界面是仿微信的。只不过是简化版的, 包括表情, 语音什么的, 都省略了。

对于界面这一块, 我这里不多做介绍, 因为这并不是本教程主要内容。毕竟, 这个界面到自己实际项目中的时候, 肯定是需要自定义的。

这里简要介绍一下。

该界面分成两部分: 

1. UITableView: 显示聊天列表, 其中, 左边的是机器人回答, 右边是自己的提问。

另外, 列表的每个cell, 由头像和文字组成。 这个cell是自定义的, 详细可以自己查看源码。

列表添加:


  
  
  
  1. //add UItableView
  2.     self.tableView=[[ UITableView alloc]initWithFrame: CGRectMake( 0, 44, self.view.frame.size.width, self.view.frame.size.height -88) style: UITableViewStylePlain];
  3.     [ self.tableView registerClass:[ChartCell class] forCellReuseIdentifier:cellIdentifier];
  4.     self.tableView.separatorStyle= UITableViewCellSeparatorStyleNone;
  5.     self.tableView.allowsSelection = NO;
  6.     self.tableView.backgroundView = [[ UIImageView alloc] initWithImage:[ UIImage imageNamed: @"chat_bg_default.jpg"]];
  7.     self.tableView.dataSource= self;
  8.     self.tableView.delegate= self;
  9.     [ self.view addSubview: self.tableView];
  • 1

2. KeyBordVIew: 自定义的UIView, 用来显示自定义的键盘视图。

键盘添加:


  
  
  
  1.     //add keyBorad
  2.     self.keyBordView=[[KeyBordVIew alloc]initWithFrame: CGRectMake( 0, self.view.frame.size.height -44, self.view.frame.size.width, 44)];
  3.     self.keyBordView.delegate= self;
  4.     [ self.view addSubview: self.keyBordView];
  • 1


另外, 键盘涉及弹出和收起操作操作, 这个需要在视图载入之前, 注册通知, 响应相关操作。

1.注册通知

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值