开放性增强与替代性沟通应用程序

人工智能可以帮助人们进行沟通!
本项目使用OpenAI向量嵌入将用户的文本/语音翻译成易于理解的AAC符号。OpenAAC应用程序使用OpenAI匹配符号到文本,将自然语言转换为AAC象形图。
更新:如果向量数据库没有高匹配度,OpenAAC将使用OpenAI DALL-E 3来生成符号图像。
目标是通过移动设备协助神经典型用户和非神经典型用户之间的沟通。
后台
我叫Ronan O’Driscoll。我是一名软件开发人员,我的儿子患有自闭症。通过治疗和辅助沟通工具,他的沟通能力与他大部分时间非语言的状态相比有了显著提高。
然而,我经常需要将他的iPad递来递去,通过他的AAC应用程序进行沟通。所以我想到创建一个通用的移动应用程序,让我也能输入他的符号。我们使用Speak4Yourself应用程序,但它只在iOS上可用。我想创建一个免费的开源替代品,可以在任何移动设备上使用。
OpenAAC应用程序可以与任何AAC符号集一起使用,但您需要手动生成和上传它们。此存储库中的db/文件夹包含许多工具,用于准备和上传您的图像,并将它们作为向量嵌入上传到Pinecone在线向量数据库。
app/open_aac文件夹包含将使用Pinecone数据库匹配文本到符号的Flutter应用程序。
人工智能是一个强大的工具。我希望这个项目能帮助人们更好地沟通。
AAC符号集
- Open Symbols库
- Speak4Yourself
- 在此处免费下载Speak4Yourself AAC符号:https://smartysymbols.com/download/free-speak-for-yourself-printable/
技术栈
- Flutter:跨平台移动应用框架
- Pinecone:Pinecone向量数据库
- Langchain:LangChain提供了一组可用的组件,用于处理语言模型和链的概念,这允许将组件“链接”起来,为LLM构建更高级的用例。
- OpenAI嵌入:OpenAI的文本嵌入衡量文本字符串的相关性
- OpenAI DALL-E 3
安装
- 安装Flutter:https://flutterdart.cn/docs/get-started/install
- 创建Pinecone账户:https://www.pinecone.io/。您可以为此项目使用免费套餐。
- 创建OpenAI API账户:https://platform.openai.com/。我们将使用“text-embedding-ada-002”模型,该模型价格非常便宜(截至2024年1月为0.0001美元/1K tokens)。有关更多详细信息,请参阅此页面。对于图像生成,我们将使用“dall-e-3”,这是免费的(截至2024年1月)。
- 克隆此仓库
- 按照
db/文件夹中的说明创建Pinecone数据库并上传您的AAC符号。 - 将生成的图标复制到
app/open_aac/assets/images文件夹。 - 在
app/open_aac文件夹中使用flutter在本地运行应用程序。 - 通过使用
flutter install将设备连接到计算机进行安装。有关更多详细信息,请参阅此页面。
用法
- 打开应用程序
- 点击右上角的设置图标。
- 输入您的OpenAI和Pinecone API密钥,以及Pinecone项目ID和环境。
- 点击保存
- 返回主屏幕
- 在文本框中输入句子
- 按下搜索按钮
- 应用程序将返回与文本匹配的符号列表
- 文本框旁边的“清除”按钮将清除文本和符号
未来目标
- 单词到图像的本地缓存,以减少API调用
使用大型语言模型(Dalle-3)在向量数据库中低置信度匹配时生成符号。- 与其他AAC符号集的更好集成
- 允许用户上传自己的自定义符号
- 离线模式,以便应用程序可以在没有互联网连接和/或Pinecone数据库的情况下使用。需要本地向量数据库。
- 文本到语音选项:一个使用设备文本到语音引擎朗读文本的按钮。这也会在朗读时突出显示符号。
- 在Google Play商店和Apple App Store上免费提供
