用于构建跨平台移动AI应用程序的完整堆栈框架支持LLM实时 /流媒体文本,聊天UIS,图像服务和自然语言,以使用多种模型以及图像处理。
在此处查看视频教程
通过运行生成一个新项目:
npx rn-ai接下来,要么使用CLI配置环境变量,要么以后进行。
更改为应用程序目录并运行:
npm start更改为服务器目录并运行:
npm run dev服务器环境变量可在server/.env.example中使用。如果已经存在,请将此文件名更新为.env并配置服务器环境变量。
要添加一个新主题,请打开app/src/theme.ts ,并添加带有以下配置的新主题:
const christmas = {
// extend an existing theme or start from scratch
... lightTheme ,
name : 'Christmas' ,
label : 'christmas' ,
tintColor : '#ff0000' ,
textColor : '#378b29' ,
tabBarActiveTintColor : '#378b29' ,
tabBarInactiveTintColor : '#ff0000' ,
placeholderTextColor : '#378b29' ,
}在文件的底部,导出新主题:
export {
lightTheme , darkTheme , hackerNews , miami , vercel , christmas
} 这是添加新的或删除现有LLM型号的方法。
您可以通过更新constants.ts中的MODELS来添加或配置模型。
对于删除模型,只需删除您不想支持的模型即可。
对于添加模型,一旦将模型定义添加到MODELS数组中,则应更新src/screens/chat.tsx以支持新模型:
chat()函数以处理新型号类型generateModelReponse函数以调用新模型utils.ts中更新getChatType ,以配置将与您的服务器路径相对应的LLM类型。 {
chatType . label . includes ( 'newModel' ) && (
< FlatList
data = { newModelReponse . messages }
renderItem = { renderItem }
scrollEnabled = { false }
/ >
)
}在server/src/chat文件夹中创建一个与您在移动应用程序中创建的模型类型相对应的新文件。您可能可以从其他现有路径中复制并重新使用许多流码,以使您开始使用。
接下来,更新server/src/chat/chatRouter以使用新路由。
这是添加新的或删除现有映像模型的方法。
您可以通过更新constants.ts中的IMAGE_MODELS来添加或配置模型。
对于删除模型,只需删除您不想支持的模型即可。
为了添加模型,一旦将模型定义添加到IMAGE_MODELS数组中,则应更新src/screens/images.tsx以支持新模型。
主要考虑是输入。该模型是否将文本,图像或两者都作为输入?
该应用程序配置为处理两者,但是您必须更新generate函数以相应地将值传递给API。
在server/src/images/fal中,更新处理程序功能以考虑新型号。
在server/src/images/modelName中创建一个新文件,更新处理程序函数以处理新的API调用。
接下来,更新server/src/images/imagesRouter以使用新路由。