เฟรมเวิร์กสแต็กเต็มรูปแบบสำหรับการสร้างแอป AI บนมือถือข้ามแพลตฟอร์มที่รองรับ LLM แบบเรียลไทม์ / สตรีมข้อความและแชท UIs บริการรูปภาพและภาษาที่เป็นธรรมชาติสำหรับรูปภาพที่มีหลายรุ่น และการประมวลผลรูปภาพ
ลองชมวิดีโอสอนที่นี่
สร้างโครงการใหม่โดยการรัน:
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 ที่มีอยู่
คุณสามารถเพิ่มหรือกำหนดค่าโมเดลได้โดยการอัปเดต MODELS
ใน constants.ts
หากต้องการลบโมเดล เพียงลบโมเดลที่คุณไม่ต้องการรองรับ
สำหรับการเพิ่มโมเดล เมื่อเพิ่มคำจำกัดความของโมเดลลงในอาร์เรย์ MODELS
แล้ว คุณควรอัปเดต src/screens/chat.tsx
เพื่อรองรับโมเดลใหม่:
chat()
เพื่อรองรับโมเดลรุ่นใหม่generateModelReponse
เพื่อเรียกโมเดลใหม่getChatType
ใน utils.ts
เพื่อกำหนดค่าประเภท LLM ที่จะสอดคล้องกับเส้นทางเซิร์ฟเวอร์ของคุณ {
chatType . label . includes ( 'newModel' ) && (
< FlatList
data = { newModelReponse . messages }
renderItem = { renderItem }
scrollEnabled = { false }
/ >
)
}
สร้างไฟล์ใหม่ในโฟลเดอร์ server/src/chat
ที่สอดคล้องกับประเภทโมเดลที่คุณสร้างในแอปมือถือ คุณอาจคัดลอกและใช้โค้ดสตรีมมิ่งจำนวนมากจากเส้นทางอื่นๆ ที่มีอยู่ซ้ำได้เพื่อเริ่มต้นใช้งาน
จากนั้นให้อัพเดต server/src/chat/chatRouter
เพื่อใช้เส้นทางใหม่
ต่อไปนี้เป็นวิธีเพิ่มหรือลบโมเดลรูปภาพที่มีอยู่
คุณสามารถเพิ่มหรือกำหนดค่าโมเดลได้โดยการอัปเดต IMAGE_MODELS
ใน constants.ts
หากต้องการลบโมเดล เพียงลบโมเดลที่คุณไม่ต้องการรองรับ
สำหรับการเพิ่มโมเดล เมื่อเพิ่มคำจำกัดความของโมเดลลงในอาร์เรย์ IMAGE_MODELS
แล้ว คุณควรอัปเดต src/screens/images.tsx
เพื่อรองรับโมเดลใหม่
การพิจารณาหลักคือการป้อนข้อมูล โมเดลใช้ข้อความ รูปภาพ หรือทั้งสองอย่างเป็นอินพุตหรือไม่
แอปได้รับการกำหนดค่าให้จัดการทั้งสองอย่าง แต่คุณต้องอัปเดตฟังก์ชัน generate
เพื่อส่งค่าไปยัง API ตามนั้น
ใน server/src/images/fal
ให้อัปเดตฟังก์ชันตัวจัดการโดยคำนึงถึงโมเดลใหม่
สร้างไฟล์ใหม่ใน server/src/images/modelName
อัปเดตฟังก์ชันตัวจัดการเพื่อจัดการการเรียก API ใหม่
จากนั้น ให้อัพเดต server/src/images/imagesRouter
เพื่อใช้เส้นทางใหม่