Echodiary:基于 AWS Amplify 的 AI 日记
这是AWS Amplify 全栈 TypeScript 挑战赛的参赛作品
我们建造了什么
我们利用 AWS Amplify Gen 2 开发了Echodiary,一款用户友好的日记 Web 应用。Echodiary 允许用户通过与我们的吉祥物Echo对话(Echo 会将语音转文字)或手动输入文字来记录每日经历。用户还可以添加照片来丰富日记内容,让回忆更加生动。该应用还提供一键式 AI 内容增强功能✨,可以优化语法和结构。此外,AI 生成的每周亮点和个性化建议还能帮助用户回顾一周,改善心理健康,促进个人成长。
Echodiary 将先进技术与用户友好功能相结合,提供流畅而丰富的日记记录体验。
演示
- 实时部署:echodiary.live
- 源代码:GitHub 仓库
仪表盘页面
创建新的日记条目
日记摘录及情绪分析
着陆页
旅行
最初,我们只是想用 Amplify 创建一个基本的 CRUD 应用,但随着开发的深入,我们被它的强大功能深深震撼。这促使我们思考如何突破极限。我们注意到,市面上缺少一款融合了人工智能的现代日记应用。于是,最初的简单日记应用逐渐演变成一个更加宏大的项目。
我们意识到传统的打字方式可能并不适合所有人,因此我们集成了语音识别功能,让用户能够口头表达自己的想法。但我们并未止步于此。我们希望提升内容的质量,使其超越简单的转录,因此我们引入了人工智能增强功能,以优化语法和结构。
然而,我们发现用户体验缺乏人情味。为了弥补这一不足,我们引入了友好的吉祥物“ Echo ”,旨在增强用户与应用之间的联系感。通过Echo,用户可以与它进行对话,使应用的使用体验更像是与朋友聊天。
随着日记的积累,我们意识到其中蕴藏着丰富的洞察。因此,我们加入了情绪追踪和人工智能生成的精彩片段,从中提炼出有意义的瞬间。最终,我们开发出了一款不仅能记录瞬间,还能丰富和反思这些瞬间的应用程序。
随着开发的推进,我们接触并熟悉了许多功能,例如 Amplify Serverless Functions,并利用 AWS Bedrock 来增强我们的 AI 能力,最终改进了我们的应用程序,使其达到最佳性能。
互联组件和功能齐全
我们使用了互联组件及其全部四个功能:数据、身份验证、无服务器函数和文件存储。
- 数据:日记条目安全地存储在 Amplify Storage (DynamoDB) 中,并有授权规则确保只有日记所有者才能访问。
- 身份验证:用户通过 Amplify Auth(Cognito)进行身份验证,才能访问仪表板并创建日记条目。
- 文件存储:用户可以向日记条目添加图片,这些图片会使用 Amplify Storage 安全地存储在私有/受保护的 S3 存储桶中。
-
无服务器函数:我们利用无服务器函数调用AWS Bedrock模型(mistral-7b-instruct)来增强日记文本内容并为用户生成每周亮点。
-
连接组件:我们使用身份验证器连接组件来管理用户身份验证,并使用存储映像和存储管理器组件来处理日记条目中的图像。
附加功能
- AWS Bedrock:我们使用 AWS Bedrock 来增强日记文本内容,并使用 Mistral AI 的 mistral-7b-instruct 模型生成每周亮点。
- Amplify AI/ML Predictions(AWS Comprehend):我们使用 Amplify Predictions 对用户的日记进行情感分析,以分析他们的情绪。
- 语音日记:我们使用Web 语音识别 API让用户用语音表达他们的想法,并将其转录成日记文本。
- AI 内容增强:我们使用 AWS Bedrock 来增强日记的文本内容,改进语法和结构,并生成每周亮点。




