Decoda.ai(google团队) 算法工程师
从2023年9月加入decoda.ai, 是怀着创业的热情和激情,是全力投身在其中的;站在广袤的十字路口上,全面拥抱大模型这一股浪潮。 每天通勤的三小时,在地铁上会挤出时间,看各种商业相关文章,寻找方向,认识市场和用户;会坐着最后一班地铁回到学校大门,发现室友早已上床休息,脑中仍然会思考代码逻辑的实现,产品功能的设计;从0搭建的产品,第一天上线后有了用户付费的喜悦,至今是难以忘怀的;半夜两点出现bug,立马oncall改代码,体会程序员不容易。
从开始代码不规范,单纯实现功能而已;到现在追求代码的简洁、复用、优美,不断追求完美,考虑到更多方面。在大家指导下,逐渐变得可以独挡一面,完成复杂的功能设计和服务。
产品:
Your Fantasy AI
这是我参与的第一款产品,基于discord平台和大模型,提供相应情绪价值服务,主要包含互动交互故事、角色扮演聊天、好感度服务开发周期:2023.10--2024.3,作为公司验证市场的一个小产品,通过用户的反馈进一步理解市场的需求。
担任角色:是最早负责该项目的工程化,实现聊天的功能,随后不断完善聊天和丰富其他的功能。代码量:95commits,20000+代码变动。
工作内容:
- prompt的设计和调整:为了达到沉浸式的聊天内容体验,符合人物性格,需要反复调整和设计prompt的内容和构造。
- 图片检索服务:保证图片和发送内容上下文具有一定的匹配度,将图片和文字转化为向量进行相似度匹配,利用chromadb提供检索服务。
- 交互故事机器人:设计交互式剧本的读取和转化,根据不同内容产生相应的选项和故事情节。
- 好感度属性:判断用户聊天内容和角色性格之间匹配度,并且根据内容进行调整变化。
Dreamle.ai
是我参与的第二个产品开发任务,通过第一个产品验证市场的需求,随后着重开发自身的平台服务,web端和移动端。产品的重点是无限制内容的情感陪伴,主要提供多模态的聊天服务,支持图片发送;查看角色的朋友圈和Post;提供图片生成、图片收集和解锁功能;排行榜显示用户的交互,宝石积分系统等服务。总体来说是功能相对丰富完整的产品,主要开发周期大致3个月时间。
担任角色:全栈工程师(后端核心开发和前端开发),后端上负责核心的聊天、长期记忆等涉及聊天核心业务开发,总代码量为:5000+代码改动;前端主要负责排行榜展示和图片生成页面,总代码量:10000+改动。
后端:
- 聊天业务:负责聊天室的CRUD以及聊天内容生成;设计prompt的构造,保证聊天内容的一致性;根据不同大模型调整参数
- 首页推荐:设计首页的bot排序和推荐算法,满足不同用户根据tags推荐感兴趣角色
- memory服务:提供将用户和角色聊天记录导出公布,同时加载其他用户memory作为自身聊天记录
- 长记忆:角色聊天保持长期记忆,因此设计记忆存储的RAG服务,提供检索、存储、总结和删除记忆的功能,保证聊天记忆拓展
- 图片检索:设计图片发送的流程事件,同时图片内容检索的RAG服务,保证聊天过程图文一致性
前端:
- 排行榜页面:根据用户和角色交互数据统计,将数据进行展示;同时根据用户的成就进行结算
- 图片制作页面:按照步骤选择对应模型、tag后生成图片,实现对图片进行保存、下载功能
- 角色卡片:实现角色卡片的设计和交互实现,同时针对不同细节优化。