รังสีแพทย์

แอป Android ของแชทบ็อตที่ใช้ gemini api

การทำงาน

แอปนี้เป็นแอปพลิเคชันบนอุปกรณ์เคลื่อนที่ ฟังก์ชันการทำงานนี้เกิดขึ้นจากการผสานรวมความสามารถแบบมัลติโมดัลขั้นสูง ซึ่งรวมถึงการเปลี่ยนรูปแบบภาพสําหรับการวิเคราะห์รูปภาพและโมเดลภาษาขนาดใหญ่ (LLM) สําหรับการสร้างรายงาน แอปนี้พัฒนาขึ้นสำหรับ Android โดยใช้ Jetpack Compose สำหรับการออกแบบ UI, Firebase สำหรับการรับรองความถูกต้อง และ Firestore สำหรับการจัดการฐานข้อมูล
ในแอปนี้จะใช้ Gemini API เพื่อขับเคลื่อนความสามารถของการสร้างเนื้อหาของแชทบ็อต ออบเจ็กต์ GeminiData จะจัดการการโต้ตอบกับ Gemini API ซึ่งประกอบด้วยเมธอดหลัก 2 รายการ ได้แก่ getResponse และ getResponseWithImage
getResponse: เมธอดนี้จะรับพรอมต์ข้อความ และรหัสการสนทนาและการประทับเวลา (ไม่บังคับ) โดยใช้โมเดล "gemini-pro" เพื่อสร้างคำตอบที่เป็นข้อความ เมธอดนี้จะเรียกใช้การเรียก API ในเธรดเบื้องหลังโดยใช้ withContext(Dispatchers.IO) เพื่อให้ UI ทำงานได้อย่างราบรื่น โดยจะแสดงผลออบเจ็กต์ Chat ที่มีข้อความตอบกลับหรือข้อความแสดงข้อผิดพลาดหากการเรียก API ไม่สำเร็จ
getResponseWithImage: เมธอดนี้คล้ายกับเมธอดข้างต้น แต่จัดการข้อมูลรูปภาพด้วย โดยจะใช้พรอมต์ข้อความ รูปภาพ (ในรูปแบบบิตแมป) และรหัสการสนทนาและการประทับเวลา (ไม่บังคับ) โดยใช้โมเดล "gemini-pro-vision" ซึ่งจะรวมข้อมูลข้อความและรูปภาพเพื่อสร้างคำตอบ เมธอดนี้จะสร้างเนื้อหาอินพุตโดยใช้รูปภาพและข้อความที่ระบุ เรียก API ในเธรดเบื้องหลัง และแสดงผลออบเจ็กต์ Chat พร้อมการตอบกลับหรือข้อความแสดงข้อผิดพลาด

สร้างขึ้นด้วย

  • Android

ทีม

โดย

รังสีแพทย์

จาก

อียิปต์