AIパーソナル・ラーニング
と実践的なガイダンス
サイバーナイフ用ドローイングミラー

MNN-LLM-Android: AndroidのためのMNNマルチモーダル言語モデリング

はじめに

MNN(Mobile Neural Network)は、アリババが開発し、モバイルデバイス向けに最適化された効率的で軽量なディープラーニングフレームワークである。MNNは、モバイルデバイス上での高速推論を可能にするだけでなく、テキスト生成、画像生成、音声処理などのマルチモーダルなタスクもサポートしている、MNNは、Taobao、Tmall、Youku、Nail、Idle Fishなどのアリババアプリケーションに統合されており、ライブストリーミング、ショートビデオキャプチャ、検索レコメンデーション、商品画像検索など、70以上の使用シナリオをカバーしています。

blank


 

機能一覧

  • マルチモーダルサポートテキスト生成、画像生成、音声処理など幅広いタスクに対応。
  • CPU推論の最適化モバイル端末で優れたCPU推論性能を実現。
  • 軽量フレームワークフレームワークは軽量で、モバイル機器のリソース制約に適した設計になっています。
  • 汎用アリババの複数のアプリケーションに統合されており、幅広いビジネスシナリオをカバーしています。
  • オープンソース統合や二次開発を容易にするために、完全なオープンソースコードとドキュメントが提供されています。

 

ヘルプの使用

設置プロセス

  1. ダウンロードとインストールGitHubリポジトリからプロジェクトコードをクローンする。
    git clone https://github.com/alibaba/MNN.git
    cd MNN
    

2. **プロジェクトのコンパイル**: コンパイル環境を設定し、プロジェクトが提供するREADMEファイルに従ってプロジェクトをコンパイルする。
``bash
mkdir build
cd build
cmake ...
make -j4
  1. Androidアプリケーションへの統合コンパイルしたライブラリファイルをAndroidプロジェクトに統合するにはbuild.gradleファイルで設定する。

使用方法

マルチモーダル機能

MNNは、テキスト生成、画像生成、音声処理など、さまざまなマルチモーダル タスクをサポートしている。以下に、これらの機能の使用例を示す:

  • テキスト生成学習済み言語モデルを使用したテキスト生成。
    インポート MNN
    interpreter = MNN.Interpreter("text_model.mnn")
    session = interpreter.createSession()
    input_tensor = interpreter.getSessionInput(session)
    # 前処理のための入力テキスト
    input_data = preprocess_text("入力テキスト")
    input_tensor.copyFrom(input_data)
    interpreter.runSession(セッション)
    output_tensor = interpreter.getSessionOutput(session)
    output_data = output_tensor.copyToHostTensor()
    result = postprocess_text(output_data)
    print(result)
    
  • 画像生成訓練済み生成モデルを用いた画像生成。
    インポート MNN
    interpreter = MNN.Interpreter("image_model.mnn")
    session = interpreter.createSession()
    input_tensor = interpreter.getSessionInput(session)
    # 前処理用入力データ
    input_data = preprocess_image("入力画像")
    input_tensor.copyFrom(input_data)
    interpreter.runSession(セッション)
    output_tensor = interpreter.getSessionOutput(session)
    output_data = output_tensor.copyToHostTensor()
    result = postprocess_image(output_data)
    print(result)
    
  • 音響処理訓練済みのオーディオモデルを使用したオーディオ生成または処理。
    インポート MNN
    interpreter = MNN.Interpreter("audio_model.mnn")
    session = interpreter.createSession()
    input_tensor = interpreter.getSessionInput(session)
    # 前処理用の音声データを入力する。
    input_data = preprocess_audio("input audio")
    input_tensor.copyFrom(input_data)
    インタプリタ.runSession(セッション)
    output_tensor = interpreter.getSessionOutput(session)
    output_data = output_tensor.copyToHostTensor()
    result = postprocess_audio(output_data)
    print(result)
    

詳しい操作手順

  1. 推論インスタンスの作成MNNモデルを初期化し、推論セッションを作成する。
    インポート MNN
    interpreter = MNN.Interpreter("model.mnn")
    セッション = interpreter.createSession()
    
  2. 入力データの前処理モデルの種類に応じて入力データを前処理する。
    input_tensor = interpreter.getSessionInput(session)
    input_data = preprocess_data("入力データ")
    input_tensor.copyFrom(input_data)
    
  3. 経営推論推論のためのセッションを実行します。
    インタプリタ.runSession(セッション)
    
  4. 出力データの後処理出力を取得し、後処理する。
    output_tensor = interpreter.getSessionOutput(session)
    output_data = output_tensor.copyToHostTensor()
    result = postprocess_data(output_data)
    print(result)
    
シーディーエヌワン
無断転載を禁じます:チーフAIシェアリングサークル " MNN-LLM-Android: AndroidのためのMNNマルチモーダル言語モデリング

チーフAIシェアリングサークル

チーフAIシェアリングサークルは、AI学習に焦点を当て、包括的なAI学習コンテンツ、AIツール、実践指導を提供しています。私たちの目標は、高品質のコンテンツと実践的な経験の共有を通じて、ユーザーがAI技術を習得し、AIの無限の可能性を一緒に探求することです。AI初心者でも上級者でも、知識を得てスキルを向上させ、イノベーションを実現するための理想的な場所です。

お問い合わせ
ja日本語