|
一、简介
AIBOX-1684X 作为一款高性能 AI 盒子,凭借其强大的硬件配置、出色的性能表现以及丰富的功能特点,在众多领域展现出了巨大的应用潜力。无论是对于企业级用户还是个人开发者,它都提供了一个高效、灵活且可扩展的解决方案,帮助人们在人工智能领域取得更大的突破和发展。 采用SOPHON AI 处理器BM1684X/BM1684,八核ARM Cortex-A53,主频最高2.3GHz,算力高达32TOPS/17.6T 最高支持32路1080P H.264/H.265、1路8K H.265视频解码,支持12路1080PH.264/H.265视频编码 
支持 Transformer 架构下超大规模参数模型的私有化部署,如LLaMa2、Qwen、ChatGLM等大型语言模型,以及ViT、Grounding DINO、SAM等视觉大模型 
支持CNN、RNN、LSTM等传统网络架构支持多种深度学习框架,如TensorFlow、PyTorch、MXNet、PaddlePaddle、ONNX等,并支持自定义算子开发 支持 AIGC 领域的 Stable Diffusion V1.5图像生成模型的私有化部署,支持Docker容器化管理技术 广泛适用于智能监控、AI教学、算力服务、边缘计算、大模型私有化部署、数据安全和隐私保护等场景 二、规格参数: 2.1硬件配置 处理器:搭载 SOPHON 算能 AI 处理器 BM1684X,拥有八核 ARM Cortex-A53,最高主频 2.3GHz,采用 12nm 工艺制程。该处理器具备强大的计算能力,能够高效处理各种复杂的 AI 任务,为设备的稳定运行提供了有力保障。 内存与存储:可配置 16GB 大内存以及 128GB eMMC,这样的内存和存储组合可以满足大多数 AI 应用场景下对数据存储和读取的需求,确保系统能够快速响应并处理大量数据。 视频解码能力:支持 32 路 H.265/H.264 1080p@25fps 视频解码,能够同时处理多路高清视频流,适用于视频监控、视频会议等需要多路视频处理的场景。
2.2性能表现 算力强大:支持 32TOPS(INT8)峰值算力,16TFLOPS(FP16/BF16)算力,2TFLOPS(FP32)高精度算力。在处理图像识别、目标检测等任务时,能够快速准确地输出结果,大大提高了工作效率。例如,在跑一张 512x512 的图时,生成时间不到 1s,跑一张 512x768 的图,时间也不过 1s 出头。 多路视频 AI 处理性能出色:最高支持 32 路 1080P H.264/H.265 的视频解码,32 路 1080P 高清视频全流程处理(解码 + AI 分析),能够满足视频流人脸检测、车牌识别等各类 AI 应用场景的需求,为智能安防、交通管理等领域提供了强大的技术支持。
2.3功能特点
三、外设接口:
四、应用:快速部署 Llama3 后通过fastchat和MaxKB访问 4.0 功能框图 
4.1 AXIBOX本地部署流程
使用scp命令将部署包传输至 AIBOX-1684X 机器: 在 AIBOX-1684X 上执行ifconfig命令查看其 IP 地址。 输入scp命令传输部署包,例:scp llama3.tar linaro@<aibox-ip-addr>:~/,其中<aibox-ip-addr>为 AIBOX-1684X 的 IP 地址。
解压部署包:tar -xvf ./llama3.tar。 一行命令部署 Llama3:./talk_to_llama3.sh。 注意:部署过程中无需联网,首次部署 Llama3 需要花费较长时间进行相应的软件安装(3-5分钟),请耐心等待。 4.1.1 调整内存
4.2 运行fastchat后通过局域网另一台机器的MaxKB访问AIBOX 4.2.1 什么是fastchat fastChat作为一个功能强大、灵活易用的训练、部署和评估大模型的开源框架,为开发者提供了一个便捷、高效的解决方案,用以支持各种基于大型语言模型的应用和服务的开发与部署。 详解介绍见:https://github.com/lm-sys/FastChat 4.2.1.1 在model_adapter.py文件增加模型支持 class Llama3Adapter(BaseModelAdapter): """The model adapter for Llama-2 (e.g., meta-llama/Llama-3-8b-hf)""" def match(self, model_path: str): return"bmodels"inmodel_path.lower()
def load_model(self, model_path: str, from_pretrained_kwargs: dict): print("==============>Llama3dapter:load_model") sys.path.append('/home/linaro/llama3/Llama3/python_demo/') self.devices = [0] import chat
model = chat.Llama3() model.init(self.devices,"/home/linaro/llama3/bmodels/llama3-8b_int4_1dev_256.bmodel") model.temperature = 1.0 model.top_p = 1.0 model.repeat_penalty = 1.0 model.repeat_last_n = 32 model.max_new_tokens = 1024 model.generation_mode ="greedy" model.prompt_mode ="prompted" tokenizer = AutoTokenizer.from_pretrained( "/home/linaro/llama3/Llama3/token_config/", trust_remote_code=True ) returnmodel,tokenizer
4.2.1.2 在 inference.py文件增加运用AIBOX算力进行推理的支持 @torch.inference_mode() def generate_stream( model, tokenizer, params: Dict, device: str, context_len: int, stream_interval: int = 2, judge_sent_end: bool = False, ): tok_num = 0 prompt = params["prompt"] system_prompt ='You are Llama3, a helpful AI assistant.' EOS = [tokenizer.eos_token_id, tokenizer.convert_tokens_to_ids("<|eot_id|>")] system = {"role":"system","content":system_prompt} history= [system] answer_token = [] history.append({"role":"user","content":prompt}) tokens = tokenizer.apply_chat_template(history, tokenize=True, add_generation_prompt=True) #input_ids = tokenizer(prompt) print("===========>",prompt) token = model.forward_first(tokens) # Following tokens whiletoken notinEOS and model.token_length < model.SEQLEN: word = tokenizer.decode(token, skip_special_tokens=True) answer_token += [token] print(word, flush=True, end="") tok_num += 1 token = model.forward_next() output = tokenizer.decode(answer_token) yield { "text": output, "logprobs": None, "usage": { "prompt_tokens": model.token_length, "completion_tokens": tok_num, "total_tokens": model.token_length + tok_num, }, "finish_reason": None, }
4.2.2 什么是MaxKB MaxKB是一款基于大语言模型(LLM)的和RAG开源知识库问答系统。 详细介绍见:https://github.com/1Panel-dev/MaxKB
4.2.2.1 功能特点 开箱即用:支持直接上传文档或自动爬取在线文档,能够快速构建知识库。结合智能问答功能,用户可以直接与知识库进行交互,体验出色的AI助手服务。 模型中立:支持对接多种主流的大语言模型,包括但不限于Llama3、OpenAI、通义千问等,用户可以根据需要选择最适合自己的模型,实现个性化问答服务。 灵活编排:内置强大的工作流引擎,允许用户编排AI工作过程,以适应各种复杂业务需求。无论是简单的知识检索还是复杂的业务流程,MaxKB都能轻松应对。 无缝嵌入:可以快速嵌入到现有的第三方业务系统中,为已有系统增添智能问答能力,显著提升系统的智能化水平。 4.2.2.2 技术架构 前端使用Vue.js,后端采用Python/Django,LangChain进行LLM交互,PostgreSQL/pgvector作为向量数据库,确保了系统的稳定性和性能。 4.2.2.3应用场景 MaxKB广泛应用于企业内部知识库、客户服务、学术研究与教育等场景,旨在帮助企业及个人用户快速搭建智能问答平台。 4.2.3 部署结果视频 视频中聊天数据长度为4096字节 ,处理起来有些吃力。
在AIBOX系统中运行,大模型和管理大模型的后端服fastchat,后配置MaxKB在局域网中访问 AIBOX中的模型: 至此,实现了利用AIBOX-1684X盒子,搭建本地私有智能客服机器人的方案。
随着市场需求增长、技术进步推动、产业生态完善,机器人AI功能正逐渐成为嵌入式开发板的趋势标配。 随着AIoT场景的碎片化渗透,嵌入式开发板的“AI标配化”将不再局限于功能添加,而是向“感知-决策-控制”全栈智能化演进。下一阶段竞争焦点或集中于能效比优化(如存算一体芯片)与跨平台通用性(如ONNX运行时适配),最终推动机器人应用从“功能机”时代迈向“智能体”时代。 |