用于构建跨平台移动人工智能应用程序的全栈框架,支持 LLM 实时/流文本和聊天 UI、图像服务和具有多个模型的图像的自然语言以及图像处理。
在这里查看视频教程
通过运行生成一个新项目:
npx rn-ai
接下来,使用 CLI 配置环境变量,或者稍后再配置。
切换到应用程序目录并运行:
npm start
切换到服务器目录并运行:
npm run dev
要添加新主题,请打开app/src/theme.ts
并使用以下配置添加新主题:
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' ,
}
在文件底部,导出新主题:
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
以使用新路由。