LLMリアルタイム /ストリーミングテキストとチャットUI、画像サービス、自然言語を複数のモデルを備えた画像、および画像処理をサポートするクロスプラットフォームモバイルAIアプリを構築するためのフルスタックフレームワーク。
ビデオチュートリアルはこちらをご覧ください
実行して新しいプロジェクトを生成します。
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 }
/ >
)
}Mobileアプリで作成したモデルタイプに対応するserver/src/chatフォルダーに新しいファイルを作成します。おそらく、他の既存のパスから多くのストリーミングコードをコピーして再利用して、開始することができます。
次に、 server/src/chat/chatRouterを更新して、新しいルートを使用します。
既存の画像モデルを追加または削除する方法は次のとおりです。
IMAGE_MODELSをconstants.tsで更新して、モデルを追加または構成できます。
モデルを削除するには、サポートしたくないモデルを削除するだけです。
モデルを追加するには、モデル定義がIMAGE_MODELSアレイに追加されたら、新しいモデルをサポートするためにsrc/screens/images.tsxを更新する必要があります。
主な考慮事項は入力です。モデルはテキスト、画像、またはその両方を入力として取得しますか?
アプリは両方を処理するように構成されていますが、それに応じて値をAPIに渡すようにgenerate関数を更新する必要があります。
server/src/images/falで、ハンドラー関数を更新して、新しいモデルを考慮します。
server/src/images/modelNameで新しいファイルを作成し、ハンドラー関数を更新して新しいAPI呼び出しを処理します。
次に、 server/src/images/imagesRouterを更新して、新しいルートを使用します。