项目介绍:BlindAI
项目概述
BlindAI 是一个开源的 AI 隐私解决方案,旨在让用户在使用 AI 模型的过程中,确保他们的数据始终保持私密。这一解决方案允许用户在查询流行的 AI 模型或部署自己的模型时,通过易于使用的 Python 库来保护数据的隐私。
BlindAI 通过硬件强制的可信执行环境(Trusted Execution Environments)来时刻保持用户数据的机密性。这个机制能够确保模型和数据的安全。
虽然 BlindAI 项目目前没有被积极维护,用户不应将其用于处理敏感数据。如果您具有需要机密数据处理的使用场景且有意愿使用 BlindAI,欢迎与我们联系商讨潜在的支持和合作机会。
核心功能
BlindAI 提供两种使用场景:
- BlindAI API:利用 BlindAI 查询由 Mithril Security 托管的流行 AI 模型。
- BlindAI Core:使用 BlindAI 的底层技术托管用户自己的 BlindAI 服务器实例,以安全地部署他们的自有模型。
技术构建
BlindAI 项目的构建使用了以下技术:
- Rust 语言,用于提供系统级的性能和内存安全。
- Python,用于提供便捷的用户界面和易于操作的 API。
- Intel-SGX,用于实现可信执行环境以保证数据的机密性。
- Tract,支持 ONNX 模型的高效推理工具。
入门指南
建议用户通过该项目的快速指南,探索开源模型 Whisper,以更好地理解 BlindAI 的功能。以下是部分展示的使用示例:
使用 BlindAI API 的音频转录
以下是使用 BlindAI API 的一个简单示例,进行音频文件的转录:
transcript = blindai.api.Audio.transcribe(
file="patient_104678.wav"
)
print(transcript)
The patient is a 55-year old male with known coronary artery disease.
使用 BlindAI Core 上传和删除模型
AI 公司可以通过以下方式将其模型上传到服务器,并在合作完成后删除:
response = client_1.upload_model(model="./COVID-Net-CXR-2.onnx")
MODEL_ID = response.model_id
print(MODEL_ID)
8afcdab8-209e-4b93-9403-f3ea2dc0c3ae
# AI 公司在使用完成后删除模型
client_1.delete_model(MODEL_ID)
在机密数据上运行模型
客户可以在确保数据机密的前提下,将数据输入模型并运行:
pos_ret = client_2.run_model(MODEL_ID, positive)
print("Probability of Covid for positive image is", pos_ret.output[0].as_flat()[0][1])
Probability of Covid for positive image is 0.890598714351654
更多示例可参考项目的官方文档。
获取帮助
- 您可以加入我们的 Discord 社区,通过#support频道寻求帮助。
- 如果您发现了 Bug,可以在 GitHub 上提交 Issue。
- 欢迎预约会议与我们进行详细交流。
许可证
BlindAI 项目在 Apache 许可证 2.0 下分发,具体信息请参阅 LICENSE.md。
联系方式
若有任何疑问或建议,欢迎与 Mithril Security 通过 contact@mithrilsecurity.io 联系,或通过 Twitter @MithrilSecurity 与我们互动。
项目链接:BlindAI GitHub 仓库