2GBのDAYU200に大規模な言語モデルをローカルにデプロイする

2GBのDAYU200に大規模な言語モデルをローカルにデプロイする

実装のアイデアと手順

軽量 LLM モデル推論フレームワーク InferLLM を OpenHarmony 標準システムに移植し、OpenHarmony で実行できるバイナリ製品をコンパイルします。 (InferLLM は、量子化されたモデルを LLM にローカルに展開できるシンプルで効率的な LLM CPU 推論フレームワークです)

OpenHarmony NDK を使用して、OpenHarmony 上で InferLLM 実行可能ファイルをコンパイルします (具体的には、OpenHarmony lycium クロスコンパイル フレームワークを使用し、いくつかのスクリプトを記述します。次に、それらを tpc_c_cplusplusSIG リポジトリに保存します)。

DAYU200に大規模な言語モデルをローカルにデプロイする

InferLLM 3 パーティ ライブラリ コンパイル製品をコンパイルして取得する

OpenHarmony SDK をダウンロードするには、ダウンロード アドレス:

http://ci.openharmony.cn/workbench/cicd/dailybuild/dailyList

このリポジトリをダウンロードする

git clone https://gitee.com/openharmony-sig/tpc_c_cplusplus.git --depth=1
 # 设置环境变量export OHOS_SDK=解压目录/ohos-sdk/linux # 请替换为你自己的解压目录cd lycium ./build.sh InferLLM

InferLLM の 3 者ライブラリ ヘッダー ファイルと生成されたライブラリを取得します。

InferLLM-405d866e4c11b884a8072b4b30659c63555be41d ディレクトリは、コンパイルされた 32 ビットおよび 64 ビットのサードパーティ ライブラリを含む tpc_c_cplusplus/thirdparty/InferLLM/ ディレクトリに生成されます。 (関連するコンパイル結果は、lycium ディレクトリの下の usr ディレクトリにパッケージ化されません)。

 InferLLM-405d866e4c11b884a8072b4b30659c63555be41d/arm64-v8a-build InferLLM-405d866e4c11b884a8072b4b30659c63555be41d/armeabi-v7a-build

コンパイルされた製品ファイルとモデルファイルを開発ボードにプッシュして実行します。

  • モデルファイルのダウンロード: https://huggingface.co/kewin4933/InferLLM-Model/tree/main
  • InferLLMをコンパイルして生成されたllama実行ファイル、OpenHarmony SDKのlibc++_shared.so、およびダウンロードしたモデルファイルchinese-alpaca-7b-q4.binをフォルダllama_fileにパッケージ化します。
 # 将llama_file文件夹发送到开发板data目录hdc file send llama_file /data
 # hdc shell 进入开发板执行cd data/llama_file # 在2GB的dayu200上加swap交换空间# 新建一个空的ram_ohos文件touch ram_ohos # 创建一个用于交换空间的文件(8GB大小的交换文件) fallocate -l 8G /data/ram_ohos # 设置文件权限,以确保所有用户可以读写该文件: chmod 777 /data/ram_ohos # 将文件设置为交换空间: mkswap /data/ram_ohos # 启用交换空间: swapon /data/ram_ohos # 设置库搜索路径export LD_LIBRARY_PATH=/data/llama_file:$LD_LIBRARY_PATH # 提升rk3568cpu频率# 查看CPU 频率cat /sys/devices/system/cpu/cpu*/cpufreq/cpuinfo_cur_freq # 查看CPU 可用频率(不同平台显示的可用频率会有所不同) cat /sys/devices/system/cpu/cpufreq/policy0/scaling_available_frequencies # 将CPU 调频模式切换为用户空间模式,这意味着用户程序可以手动控制CPU 的工作频率,而不是由系统自动管理。这样可以提供更大的灵活性和定制性,但需要注意合理调整频率以保持系统稳定性和性能。 echo userspace > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor # 设置rk3568 CPU 频率为1.9GHz echo 1992000 > /sys/devices/system/cpu/cpufreq/policy0/scaling_setspeed # 执行大语言模型chmod 777 llama ./llama -m chinese-alpaca-7b-q4.bin -t 4

InferLLM 三部ライブラリを移植して、OpenHarmmony デバイス rk3568 に大規模な言語モデルを展開し、人間とコンピューターの対話を実現します。最終的な実行効果は少し遅く、人間とコンピューターのダイアログボックスが少しゆっくりとポップアップするので、しばらくお待ちください。

<<:  GPT-4/Llama2のパフォーマンスを大幅に向上させるためにRLHFは必要ない、北京大学のチームはAlignerの新しいアライメントパラダイムを提案

>>:  OccNeRF: LIDARデータの監視は不要

推薦する

ビッグデータと人工知能 - 機械的思考から統計的思考へ

今日は、ビッグデータ、人工知能、認知問題の解決の関係ロジックについて話す記事を書こうと思います。した...

ChatGPTヘルプ! 4歳の男の子は3年間で17人の専門医に治療を受けたが、効果はなかった。大型模型が病気の原因を正確に特定した

3年間「奇妙な病気」の治療を求めても効果がなかったのですが、ついにChatGPTによって診断に成功し...

...

...

トップ 10 の AI フレームワークとリポジトリのレビュー、その長所と短所の分析

[51CTO.com クイック翻訳] 人工知能は決して新しいものではありませんが、科学の分野では古く...

...

ドローンによる食品配達が到来、こうした問題が注目を集めている

無人運転車による配達に続き、ドローンによる食品配達も現実化に向かって加速している。先日終了した202...

「回帰分析」は本当に「機械学習」なのでしょうか?

「統計」と「機械学習」の違いは何ですか?これは数え切れないほど議論されてきた質問です。この問題につ...

アメリカの企業は単純なタスクを処理するためにAIを活用することに熱心だが、若者にはトレーニングや開発の機会が不足している

7月18日のニュース、Businessinsiderによると、米国の若い労働者はキャリア危機に直面し...

シスコの調査:企業の25%以上が社内で生成AIの禁止を実施している

シスコが実施した調査によると、データプライバシーの面で生成AIに欠点があることを理解しているにもかか...

優秀なプログラマーが開発効率を上げるために知っておくべき32のアルゴリズム

検索アルゴリズム - 指定された開始点から指定された終了点までのパスを計算するグラフ検索アルゴリズム...

中国は5GやAIなどの分野で米国に追いつきつつあるが、設備や技術は依然として遅れている

米国のエレクトロニクス業界向け戦略コンサルティング会社、インターナショナル・ビジネス・ストラテジーズ...

バーチャル試着室テクノロジーの仕組み

[51CTO.com クイック翻訳]テクノロジーの進歩と発展により、バーチャル試着室が人々の生活に入...

2021年に注目すべき5つのRPAトレンド

RPA ツールの使用はここ数年で急増しています。今年のパンデミックにより、組織は、特に RPA が最...

フォーカス分析: 動画向けAIと画像向けAIの違い

[51CTO.com クイック翻訳] 画像処理と比較すると、ビデオから洞察を抽出したり、AI 技術を...