AIoT | 软件:Astra MCP边缘算力构建详解

过去,大模型与浏览器、数据库、代码仓库等外部工具的对接通常采用"一对一"的定制化方式------不同模型有不同的工具调用标准,开发者需要重复适配,效率低下且兼容性差。而MCP协议的核心价值之一在于建立了统一的"AI-工具通信语言"。在安全与治理层面,MCP支持细粒度权限控制,例如限制模型可访问的文件目录,从而防止敏感信息泄露。这一特性也与边缘计算的优势相契合,提升了数据安全性。边缘计算的专用AI模型可以更好地满足用户需求,且实现难度低、资源损耗少和任务定制方便,相较于直接使用大模型更加高效、经济。

本篇博文将带大家通过边缘设备Synaptics的Astra SL1640实现MCP协议,使其支持边缘推理任务。

实现步骤:

1. 建立环境

烧录OOBE image

SL1640的OOBEimageq缺少必要的部件,这里需要在yocto把这部分加上去,如果没有编译环境的话,尝试换到SL1680去实现

SL1640修改yocto:

这里面比较粗暴的把SL1680有的都加上了,如果不想要个别的包可以自行修改。修改完之后,按照官网指导,编译OOBE image 并烧录到板子上(Astra Yocto Linux Developer Guide --- Synaptics Astra SDK User Guide scarthgap_6.12_v2.0.0 documentation

安装python环境

git clone https://github.com/synaptics-synap/examples.git

cd examples

python3 -m venv .venv --system-site-packages

source .venv/bin/activate

pip install -r requirements.txt

pip3 install https://github.com/synaptics-synap/synap-rt/releases/download/v0.0.2-preview/synap_rt-0.0.2-py3-none-any.whl

2. 创建项目

参考例子:

可以参考前面下载的Git仓库中的示例代码(vision/object_detect.py),该代码展示了如何使用Python库调用Astra NPU进行推理。

定义异步推理函数:

沿用示例中的管道方式,将函数改为异步以防止阻塞,并添加返回数据的动作。

定义MCP tool去调用推理函数:

对返回结果进行处理,生成结构化数据。输入为本地图片路径,该路径由LLM根据用户意图传入。

定义结构化数据格式:

定义统一的数据格式,便于LLM处理。

3. 延申功能(摄像头拍照)

参考例子:

继续参考仓库中的代码(utils/photo.py)。

定义MCP tool 获取摄像头设备名:

基本直接复用示例代码。

定义MCP tool 拍照:

同样复用示例代码,但返回的数据为图片路径,LLM可将该路径传递给推理工具。同时,传入的设备名由前述工具返回。

4. 运行

这里运行部分可以参考博文Biu懂AI:硬件能力MCP------ Astra MCP - 大大通(简体站)

至此,一个具备边缘推理能力的MCP Server就搭建完成了。如果需要纯粹的Synap Python环境,可参考官方API文档:synaptics-synap/synap-python: Synaptics Synap Core Python API

以上是本期博文的全部内容,如有疑问就在博文下方评论留言,或者联系我们,我们会尽量安排上(o´ω`o)و。谢谢大家浏览,我们下期再见。

**FAQ 1:为什么边缘计算更适合特定AI模型?**

A1:边缘计算的AI模型更贴近用户需求,资源消耗少,任务定制方便,且比直接使用大模型更高效和经济。

**FAQ 2:MCP协议的主要优势是什么?**

A2:MCP协议的主要优势在于标准化工具调用接口,提升了兼容性和开发效率,同时支持细粒度权限控制以增强安全性。

**FAQ 3:Astra SL1640与SL1680的主要区别是什么?**

A3:CPU,NPU和MIPI cam等这些性能上的差异。

**FAQ 4:MCP是否支持跨平台使用?**

A4:是的,MCP协议设计为跨平台兼容,可以在不同操作系统和设备上运行。

**FAQ 5:如何确保MCP Server的稳定运行?**

A5:按照官方文档配置环境,定期更新依赖库,并进行充分的测试。

**FAQ 6:如何调试MCP Server?**

A6:可以使用MCP Inspector工具,通过浏览器连接MCP地址,查看工具列表并测试其功能。

**FAQ 7:是否可以在其他硬件平台上实现MCP协议?**

A7:可以,但是python调用的包不通用,要找到平台提供的python包。

本篇作者-诠鼎集团-声波电波就看今朝

更多资讯可点击此处前往**大联大微博**中查看,感谢支持!

相关推荐
今儿敲了吗3 分钟前
python基础学习笔记第五章——容器
笔记·python·学习
qq_3349031510 分钟前
使用Flask快速搭建轻量级Web应用
jvm·数据库·python
E_ICEBLUE21 分钟前
在 Python 中对比 Word 文档:自动生成修订报告
python·word
代码探秘者24 分钟前
【大模型应用】6.RAG 场景下的向量+关键词混合检索
java·开发语言·人工智能·python·spring
三水不滴37 分钟前
Elasticsearch 实战系列(二):SpringBoot 集成 Elasticsearch,从 0 到 1 实现商品搜索系统
经验分享·spring boot·笔记·后端·elasticsearch·搜索引擎
Ynchen. ~40 分钟前
快速复习笔记(随笔)
笔记
chikaaa1 小时前
RabbitMQ 核心机制总结笔记
java·笔记·rabbitmq·java-rabbitmq
小小怪7501 小时前
将Python Web应用部署到服务器(Docker + Nginx)
jvm·数据库·python
Sylvia33.1 小时前
体育数据API实战:用火星数据实现NBA赛事实时比分与状态同步
java·linux·开发语言·前端·python
QQ8606600161 小时前
Python基于Vue的”黄山旅游网站的设计与实现 django flask pycharm
vue.js·python·旅游