FlutterVoiceFriend是一款开源 Flutter 应用程序,旨在帮助开发人员结合使用尖端的语音转文本 (STT) 和文本转语音 (TTS) 技术来构建交互式、语音驱动的聊天机器人体验。该应用程序利用 Langchain、用于自然语言处理和 TTS 的 OpenAI,以及设备上和基于云的语音识别(包括 Deepgram)来提供灵活的语音交互功能。
无论您是开发虚拟助手、对话式 AI 工具还是教育语音伴侣,FlutterVoiceFriend 都可以为构建可定制的基于语音的应用程序提供坚实的基础。
语音对语音聊天机器人:
FlutterVoiceFriend 允许使用先进的 STT 和 TTS 技术进行无缝语音驱动的对话。用户可以对应用程序说话,它会通过自然的语音输出进行响应。
多种语音识别选项:
对设备上和基于云的 STT 技术的支持确保该应用程序可以在具有不同设备功能的不同环境中处理语音输入。
灵活且模块化:
该应用程序可以轻松定制以适应各种用例,例如虚拟助手、对话机器人、教育应用程序或娱乐平台。
开发人员可以修改聊天机器人流程、响应和行为,以根据其特定需求定制体验。
使用 Flutter 构建:
使用Flutter SDK开发,确保跨iOS、Android和Web平台的兼容性。该应用程序通过单一代码库提供流畅的用户体验。
使用 Langchain 和 OpenAI 进行自然语言处理:
集成 OpenAI 的强大模型,用于生成自然、连贯的对话。
使用 Langchain 进行复杂的对话流程,使机器人能够处理更细致的对话。
可定制的语音响应:
调整 TTS 引擎以匹配聊天机器人的个性。从多种声音和语言中进行选择,以创建个性化的用户体验。
语音到文本的灵活性:
包括用于更快离线处理的设备上 STT 选项和用于在线环境中更准确语音识别的基于云的 STT(例如 Deepgram)。
虚拟助手:创建智能语音激活虚拟助手来帮助处理任务、提醒或一般信息。
教育应用程序:构建对话伙伴,通过语音反馈引导用户完成学习体验。
娱乐和游戏:开发交互式故事驱动的应用程序,用户可以使用语音输入与角色进行交流。
医疗保健和健康:创建语音伴侣以进行健康跟踪、情感支持或健身指导。
“FlutterVoiceFriend”最初是为一款互动且引人入胜的应用程序开发的,旨在帮助孩子们通过引导冥想和自我反思练习来探索自己的情绪并培养正念。 “我心中的朋友”引导孩子们进行各种具有冥想和反思性质的活动。目标是通过有趣、简单且引人入胜的练习来教导孩子们自我同情、正念和情感意识。
iOS(iPhone 或 iPad):
从 App Store 下载该应用程序。
Flutter SDK :iOS、Android 和 Web 的跨平台开发。
语音识别:集成设备上和基于云的 STT(例如, speech_to_text
和deepgram_speech_to_text
)。
音频后端:可以使用 SoLoud 库和 just_audio 插件。
文本转语音:由 OpenAI 提供支持,可实现自然的语音输出。
大型语言模型处理:利用Langchain和OpenAI模型来处理复杂的对话流。
截至当前版本,有多项功能和增强功能已计划但尚未实施。请注意以下限制:
仅限 iOS 和 Android:该应用程序目前仅与 iOS 和 Android 设备兼容。分支中提供了对 Web 的支持,但需要特殊配置 Linux、Windows 和 Mac 平台尚未实现。
用户反馈:应用程序内没有收集用户反馈的内置机制。
开发人员文档:尚未提供针对开发人员的综合文档。
代码注释:代码库的关键部分仍然需要足够的注释。
背景声音:冥想活动期间的背景音乐或自然声音尚未实现。
用户身份验证:用户登录功能不可用。
离线模式:该应用程序当前不支持离线功能。
用户数据分析:未实施匿名使用分析。
关注点分离:应用程序的业务逻辑没有与 UI 组件完全分离。
错误记录:强大的错误记录和监控工具尚未到位。
单元和集成测试:尚未实施全面的单元测试和集成测试。
CI/CD:未建立持续集成和部署管道。
颤振 SDK >= 3.4.4
飞镖 >= 3.4.4
克隆存储库:
git 克隆 https://github.com/jbpassot/flutter_voice_friend.gitcd flutter_voice_friend
安装依赖项:
扑扑酒吧得到
生成 Isar 代码:
dart 运行 build_runner 构建
运行以下命令为 Isar(Flutter 的嵌入式 NoSQL 数据库)生成代码:
添加 API 密钥:
将.env.example
重命名为.env
。
将 OpenAI 和 Deepgram API 密钥添加到.env
文件中。
运行应用程序:
扑腾跑
配置设置:
您可以通过点击右上角的齿轮图标来访问应用程序的设置。
享受!
您可以尝试该应用程序的两个演示活动:“介绍”和“梦境分析师耳语”。
如果您在 iOS 模拟器上进行测试,请确保将语音转文本 (STT) 方法更改为使用“Deepgram”而不是“设备上”,因为设备上的 TTS 可能无法在 iOS 模拟器上正常运行。
此设置更改需要有效的 Deepgram API 密钥。访问 Deepgram 的网站获取密钥。
您可以通过点击右上角的齿轮图标直接在应用程序内调整这些设置。
该应用程序使用各种外部服务,例如用于文本生成的 OpenAI 和用于语音转文本的 Deepgram。确保在.env
文件中配置这些。
OPENAI_API_KEY=your_openai_api_keyDEEPGRAM_API_KEY=your_deepgram_api_key
有关创建新活动的快速入门指南,请参阅 SIMPLE_TUTORIAL.md 文件。
我们欢迎贡献!请检查 CONTRIBUTING.md 文件以获取有关如何贡献的指南。
该项目根据Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License获得许可。有关详细信息,请参阅许可证文件。
如果您有任何问题或反馈,请随时提出问题或通过 [j[email protected]] 与我们联系。