基于TCP交互的安卓chatGLM客户端

基于TCP交互的安卓chatGLM客户端

基本原理

随着chatGPT的火爆发展,如何将其快速实现部署和访问成为了急需解决的问题,为此,开发了一个基于TCP交互的安卓chatGLM客户端系统。

其中 后端在开源的 的基础上,使用socket编程实现了一个简单的服务器。

前端使用安卓开发UI,发送请求给后端请求chatGLM的回答,其中每个客户端都会保存一份

历史(会话信息),以便可以多个用户同时使用chatGLM互不干扰。

自定义协议格式

其中,自定义了TCP上层的应用层协议,其中头有21字节,如下图所示

对于封包和解包的方法进行包装,使其可以对固定的21字节返回格式化后的内容,为了解决粘包问题,

采用了协议头中带长度的做法,收到固定头长后解析出长度,既可以知道完整的包大小。

使用方法

  1. 将RD/mydemoServer py 文件放入 根目录,然后运行他。
  2. 将本安卓项目打开,修改MainActivity的服务器路径,程序打包,安装运行。

结语

本项目虽然界面较为简单,但是却综合应用了多种知识,例如:AI绘画、AI聊天、TCP/IP通信、自定义协议、安卓多线程开发等

同名项目已经在gitee.com上面开源

经验分享 程序员 微信小程序 职场和发展