MNN-LLM-Android : Modélisation multimodale du langage par MNN pour Android

Derniers outils d'IAMise à jour il y a 4 mois Sharenet.ai
1.6K 0
Trae

Introduction générale

MNN (Mobile Neural Network) est un cadre d'apprentissage profond efficace et léger développé par Alibaba et optimisé pour les appareils mobiles.MNN permet non seulement une inférence rapide sur les appareils mobiles, mais prend également en charge des tâches multimodales, notamment la génération de texte, la génération d'images et le traitement audio, etc.MNN a été intégré dans plusieurs applications d'Alibaba telles que Taobao, MNN a été intégré dans plusieurs applications d'Alibaba telles que Taobao, Tmall, Youku, Nail et Idle Fish, couvrant plus de 70 scénarios d'utilisation tels que la diffusion en direct, la capture de courtes vidéos, la recommandation de recherche et la recherche d'images de produits.

MNN-LLM-Android:MNN 多模态语言模型的安卓应用

 

Liste des fonctions

  • soutien multimodalLe logiciel de gestion de l'information : Il prend en charge un large éventail de tâches telles que la génération de textes, la génération d'images et le traitement de l'audio.
  • Optimisation de l'inférence par l'unité centraleLe système d'inférence de l'utilisateur : Il permet d'obtenir d'excellentes performances en matière d'inférence sur les appareils mobiles.
  • Cadre légerLe cadre est conçu pour être léger et adapté aux contraintes de ressources des appareils mobiles.
  • largement utiliséIl est intégré dans plusieurs applications d'Alibaba, couvrant un large éventail de scénarios commerciaux.
  • source ouverteLe code source ouvert et la documentation sont fournis pour faciliter l'intégration et le développement secondaire.

 

Utiliser l'aide

Processus d'installation

  1. Téléchargement et installationCloner le code d'un projet à partir d'un dépôt GitHub : Cloner le code d'un projet à partir d'un dépôt GitHub.
    git clone https://github.com/alibaba/MNN.git
    cd MNN
    

2. **编译项目**:根据项目提供的README文档,配置编译环境并编译项目。
```bash
mkdir build
cd build
cmake ..
make -j4
  1. Intégration dans les applications AndroidLes fichiers de bibliothèque compilés sont intégrés dans le projet Android en modifiant le fichierbuild.gradlepour la configuration.

Utilisation

capacité multimodale

MNN prend en charge une variété de tâches multimodales, y compris la génération de texte, la génération d'images et le traitement audio. Vous trouverez ci-dessous des exemples d'utilisation de ces fonctionnalités :

  • Génération de texte: Génération de textes à l'aide de modèles linguistiques pré-entraînés.
    import 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(session)
    output_tensor = interpreter.getSessionOutput(session)
    output_data = output_tensor.copyToHostTensor()
    result = postprocess_text(output_data)
    print(result)
    
  • Génération d'images: Génération d'images à l'aide de modèles génératifs pré-entraînés.
    import 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(session)
    output_tensor = interpreter.getSessionOutput(session)
    output_data = output_tensor.copyToHostTensor()
    result = postprocess_image(output_data)
    print(result)
    
  • traitement audioGénération ou traitement audio à l'aide de modèles audio pré-entraînés.
    import MNN
    interpreter = MNN.Interpreter("audio_model.mnn")
    session = interpreter.createSession()
    input_tensor = interpreter.getSessionInput(session)
    # 输入音频数据进行预处理
    input_data = preprocess_audio("输入音频")
    input_tensor.copyFrom(input_data)
    interpreter.runSession(session)
    output_tensor = interpreter.getSessionOutput(session)
    output_data = output_tensor.copyToHostTensor()
    result = postprocess_audio(output_data)
    print(result)
    

Procédure d'utilisation détaillée

  1. Création d'instances de raisonnementInitialisation du modèle MNN et création d'une session d'inférence.
    import MNN
    interpreter = MNN.Interpreter("model.mnn")
    session = interpreter.createSession()
    
  2. Prétraitement des données d'entréeLes données d'entrée sont prétraitées en fonction du type de modèle.
    input_tensor = interpreter.getSessionInput(session)
    input_data = preprocess_data("输入数据")
    input_tensor.copyFrom(input_data)
    
  3. raisonnement exécutif: Exécutez la session pour le raisonnement.
    interpreter.runSession(session)
    
  4. Post-traitement des données de sortieLe résultat : Obtenir le résultat et le traiter a posteriori.
    output_tensor = interpreter.getSessionOutput(session)
    output_data = output_tensor.copyToHostTensor()
    result = postprocess_data(output_data)
    print(result)
    
© déclaration de droits d'auteur
AiPPT

Articles connexes

Pas de commentaires

aucun
Pas de commentaires...