Cadre complet pour la création d'applications d'IA mobiles multiplateformes prenant en charge les interfaces utilisateur de chat et de texte en temps réel/diffusion LLM, les services d'imagerie et le langage naturel pour les images avec plusieurs modèles et le traitement d'images.
Découvrez le didacticiel vidéo ici
Générez un nouveau projet en exécutant :
npx rn-ai
Ensuite, configurez vos variables d'environnement avec la CLI ou faites-le plus tard.
Accédez au répertoire de l'application et exécutez :
npm start
Accédez au répertoire du serveur et exécutez :
npm run dev
Pour ajouter un nouveau thème, ouvrez app/src/theme.ts
et ajoutez un nouveau thème avec la configuration suivante :
const christmas = {
// extend an esisting theme or start from scratch
... lightTheme ,
name : 'Christmas' ,
label : 'christmas' ,
tintColor : '#ff0000' ,
textColor : '#378b29' ,
tabBarActiveTintColor : '#378b29' ,
tabBarInactiveTintColor : '#ff0000' ,
placeholderTextColor : '#378b29' ,
}
En bas du fichier, exportez le nouveau thème :
export {
lightTheme , darkTheme , hackerNews , miami , vercel , christmas
}
Voici comment ajouter de nouveaux modèles LLM ou supprimer des modèles existants.
Vous pouvez ajouter ou configurer un modèle en mettant à jour MODELS
dans constants.ts
.
Pour supprimer des modèles, supprimez simplement les modèles que vous ne souhaitez pas prendre en charge.
Pour ajouter des modèles, une fois la définition du modèle ajoutée au tableau MODELS
, vous devez mettre à jour src/screens/chat.tsx
pour prendre en charge le nouveau modèle :
chat()
pour gérer le nouveau type de modèlegenerateModelReponse
pour appeler un nouveau modèlegetChatType
dans utils.ts
pour configurer le type LLM qui correspondra au chemin de votre serveur. {
chatType . label . includes ( 'newModel' ) && (
< FlatList
data = { newModelReponse . messages }
renderItem = { renderItem }
scrollEnabled = { false }
/ >
)
}
Créez un nouveau fichier dans le dossier server/src/chat
qui correspond au type de modèle que vous avez créé dans l'application mobile. Vous pouvez probablement copier et réutiliser une grande partie du code de streaming des autres chemins existants pour commencer.
Ensuite, mettez à jour server/src/chat/chatRouter
pour utiliser la nouvelle route.
Voici comment ajouter de nouveaux modèles d'image ou supprimer des modèles d'image existants.
Vous pouvez ajouter ou configurer un modèle en mettant à jour IMAGE_MODELS
dans constants.ts
.
Pour supprimer des modèles, supprimez simplement les modèles que vous ne souhaitez pas prendre en charge.
Pour ajouter des modèles, une fois la définition du modèle ajoutée au tableau IMAGE_MODELS
, vous devez mettre à jour src/screens/images.tsx
pour prendre en charge le nouveau modèle.
La principale considération est la contribution. Le modèle prend-il du texte, une image ou les deux comme entrées ?
L'application est configurée pour gérer les deux, mais vous devez mettre à jour la fonction generate
pour transmettre les valeurs à l'API en conséquence.
Dans server/src/images/fal
, mettez à jour la fonction handler pour prendre en compte le nouveau modèle.
Créez un nouveau fichier dans server/src/images/modelName
, mettez à jour la fonction de gestionnaire pour gérer le nouvel appel d'API.
Ensuite, mettez à jour server/src/images/imagesRouter
pour utiliser la nouvelle route.