ໂຄງການແຫຼ່ງເປີດຂອງຂ້ອຍ: ກອບຮູບແບບພາສາ Multimodal ທີ່ມີຄວາມຍືດຫຍຸ່ນສໍາລັບ PyTorch ຄໍາສັນຍາຂອງ AI multimodal ແມ່ນຢູ່ທົ່ວທຸກແຫ່ງ, ຈາກການວິນິດໄສການດູແລສຸຂະພາບແບບພິເສດໄປສູ່ການສ້າງປະສົບການຂອງລູກຄ້າທີ່ອຸດົມສົມບູນ, ເຄື່ອນໄຫວຫຼາຍ. ແຕ່ສໍາລັບພວກເຮົາທີ່ຢູ່ໃນ trenches, ການກໍ່ສ້າງລະບົບ multimodal - ມີຄວາມສາມາດປະມວນຜົນຂໍ້ຄວາມ, ຮູບພາບ, ສຽງ, ແລະນອກ - ມັກຈະມີຄວາມຮູ້ສຶກຄືກັບ tangle ທີ່ບໍ່ມີທີ່ສິ້ນສຸດຂອງການເຊື່ອມໂຍງແບບກໍາຫນົດເອງ, ລະຫັດ boilerplate, ແລະບັນຫາຄວາມເຂົ້າກັນໄດ້. ນີ້ແມ່ນຄວາມອຸກອັ່ງຂອງຂ້ອຍ, ແລະໃນທີ່ສຸດມັນກໍ່ນໍາໄປສູ່ການສ້າງ . AnyModal ເປັນຫຍັງ Multimodal AI? ຂໍໃຫ້ປະເຊີນກັບມັນ: ປະຕິສໍາພັນຂອງມະນຸດກັບໂລກບໍ່ຈໍາກັດຂໍ້ມູນປະເພດດຽວ. ພວກເຮົາຕີຄວາມຫມາຍຄໍາສັບຕ່າງໆ, ການເຫັນ, ສຽງ, ແລະການຮູ້ສຶກທາງຮ່າງກາຍພ້ອມກັນ. ແນວຄວາມຄິດຂອງ AI multimodal ແມ່ນມາຈາກແນວຄວາມຄິດນີ້. ໂດຍການນໍາເອົາຂໍ້ມູນຫຼາຍປະເພດເຂົ້າໄປໃນທໍ່ປະມວນຜົນດຽວກັນ, multimodal AI ຊ່ວຍໃຫ້ຕົວແບບເພື່ອຮັບມືກັບວຽກງານທີ່ເຄີຍສັບສົນເກີນໄປສໍາລັບລະບົບແບບດຽວ. ຈິນຕະນາການຄໍາຮ້ອງສະຫມັກການດູແລສຸຂະພາບທີ່ວິເຄາະ X-rays ແລະບັນທຶກທາງການແພດຮ່ວມກັນ, ຫຼືລະບົບການບໍລິການລູກຄ້າທີ່ພິຈາລະນາທັງຂໍ້ຄວາມແລະສຽງເພື່ອວັດແທກຄວາມຮູ້ສຶກຂອງລູກຄ້າຢ່າງຖືກຕ້ອງ. ແຕ່ນີ້ແມ່ນສິ່ງທ້າທາຍ: ໃນຂະນະທີ່ແບບຈໍາລອງແບບດຽວສໍາລັບຂໍ້ຄວາມ (ເຊັ່ນ GPT) ຫຼືຮູບພາບ (ເຊັ່ນ ViT) ໄດ້ຖືກສ້າງຕັ້ງຂຶ້ນຢ່າງດີ, ການສົມທົບພວກມັນເພື່ອໂຕ້ຕອບຢ່າງຄ່ອງແຄ້ວແມ່ນບໍ່ກົງໄປກົງມາ. ຄວາມສັບສົນທາງດ້ານເຕັກນິກໄດ້ຂັດຂວາງນັກຄົ້ນຄວ້າແລະນັກພັດທະນາຈໍານວນຫຼາຍຈາກການສໍາຫຼວດ AI multimodal ຢ່າງມີປະສິດທິຜົນ. ໃສ່ . AnyModal ບັນຫາກັບການແກ້ໄຂ Multimodal ທີ່ມີຢູ່ແລ້ວ ໃນການເຮັດວຽກຂອງຂ້ອຍເອງກັບການຮຽນຮູ້ເຄື່ອງຈັກ, ຂ້ອຍສັງເກດເຫັນວ່າໃນຂະນະທີ່ເຄື່ອງມືເຊັ່ນ GPT, ViT, ແລະໂປເຊດເຊີສຽງແມ່ນມີອໍານາດໃນການໂດດດ່ຽວ, ການສ້າງລະບົບ multimodal ໂດຍການລວມເອົາເຄື່ອງມືເຫຼົ່ານີ້ມັກຈະຫມາຍເຖິງການຕິດມັນເຂົ້າກັນດ້ວຍລະຫັດສະເພາະໂຄງການ. ວິທີການນີ້ບໍ່ໄດ້ຂະຫນາດ. ວິທີແກ້ໄຂໃນປະຈຸບັນສໍາລັບການລວມຕົວແບບແມ່ນມີຄວາມຊ່ຽວຊານສູງ, ອອກແບບສະເພາະສໍາລັບວຽກງານສະເພາະ (ເຊັ່ນ: ການບັນຍາຍຮູບພາບຫຼືການຕອບຄໍາຖາມທີ່ເບິ່ງເຫັນ), ຫຼືພວກເຂົາຕ້ອງການຈໍານວນລະຫັດ boilerplate ທີ່ຫນ້າເສົ້າໃຈພຽງແຕ່ເພື່ອໃຫ້ປະເພດຂໍ້ມູນເຮັດວຽກຮ່ວມກັນ. ກອບທີ່ມີຢູ່ແລ້ວສຸມໃສ່ການລວມກັນສະເພາະຂອງ modalities, ເຮັດໃຫ້ມັນຍາກທີ່ຈະຂະຫຍາຍເຂົ້າໄປໃນປະເພດຂໍ້ມູນໃຫມ່ຫຼືປັບການຕັ້ງຄ່າດຽວກັນກັບວຽກງານທີ່ແຕກຕ່າງກັນ. ໂຄງສ້າງ "siloed" ຂອງຕົວແບບ AI ນີ້ຫມາຍຄວາມວ່າຂ້ອຍກໍາລັງປະດິດລໍ້ຢ່າງຕໍ່ເນື່ອງ. ນັ້ນແມ່ນເວລາທີ່ຂ້ອຍຕັດສິນໃຈສ້າງ — ກອບແບບໂມດູນທີ່ມີຄວາມຍືດຫຍຸ່ນ, ເຊິ່ງເອົາຂໍ້ມູນທຸກປະເພດມາຮ່ວມກັນໂດຍບໍ່ມີຄວາມຫຍຸ້ງຍາກ. AnyModal AnyModal ແມ່ນຫຍັງ? ແມ່ນໂຄງຮ່າງການທີ່ອອກແບບມາເພື່ອງ່າຍ ແລະປັບປຸງການພັດທະນາ AI multimodal. ມັນຖືກສ້າງຂຶ້ນເພື່ອຫຼຸດຜ່ອນຄວາມສັບສົນຂອງການລວມເອົາປະເພດການປ້ອນຂໍ້ມູນທີ່ຫຼາກຫຼາຍໂດຍການຈັດການ tokenization, ການເຂົ້າລະຫັດ, ແລະການຜະລິດສໍາລັບການປ້ອນຂໍ້ມູນທີ່ບໍ່ແມ່ນຂໍ້ຄວາມ, ເຮັດໃຫ້ມັນງ່າຍຂຶ້ນໃນການເພີ່ມປະເພດຂໍ້ມູນໃຫມ່ໃຫ້ກັບຕົວແບບພາສາຂະຫນາດໃຫຍ່ (LLMs). AnyModal ແນວຄວາມຄິດແມ່ນໝູນວຽນກັບວິທີການແບບໂມດູລາຕໍ່ກັບທໍ່ສົ່ງຂໍ້ມູນ. ດ້ວຍ AnyModal, ທ່ານສາມາດແລກປ່ຽນຕົວເຂົ້າລະຫັດລັກສະນະ (ເຊັ່ນ: Vision Transformer ສໍາລັບຮູບພາບຫຼືໂປເຊດເຊີ spectrogram ສໍາລັບສຽງ) ແລະເຊື່ອມຕໍ່ພວກມັນກັບ LLM ຢ່າງຕໍ່ເນື່ອງ. ກອບເປັນບົດຄັດຫຍໍ້ຂອງຄວາມສັບສົນຫຼາຍ, ຊຶ່ງຫມາຍຄວາມວ່າທ່ານບໍ່ຈໍາເປັນຕ້ອງໃຊ້ເວລາຫຼາຍອາທິດໃນການຂຽນລະຫັດເພື່ອເຮັດໃຫ້ລະບົບເຫຼົ່ານີ້ເຂົ້າກັນໄດ້ກັບກັນແລະກັນ. ພື້ນຖານຂອງ AnyModal: Input Tokenization ອົງປະກອບທີ່ສໍາຄັນຂອງ AnyModal ແມ່ນ , ເຊິ່ງສ້າງຊ່ອງຫວ່າງລະຫວ່າງຂໍ້ມູນທີ່ບໍ່ແມ່ນຂໍ້ຄວາມ ແລະການປະມວນຜົນການປ້ອນຂໍ້ມູນຕາມຂໍ້ຄວາມຂອງ LLM. ນີ້ແມ່ນວິທີທີ່ມັນເຮັດວຽກ: ເຄື່ອງໝາຍການປ້ອນຂໍ້ມູນ : ສໍາລັບແຕ່ລະໂມດູນ (ເຊັ່ນ: ຮູບພາບ ຫຼືສຽງ), ຕົວເຂົ້າລະຫັດສະເພາະແມ່ນຖືກນໍາໃຊ້ເພື່ອສະກັດລັກສະນະທີ່ສໍາຄັນ. ຕົວຢ່າງເຊັ່ນ, ເມື່ອເຮັດວຽກກັບຮູບພາບ, AnyModal ສາມາດນໍາໃຊ້ Vision Transformer (ViT) ທີ່ປະມວນຜົນຮູບພາບແລະຜົນໄດ້ຮັບຊຸດຂອງ vectors ຄຸນນະສົມບັດ. vectors ເຫຼົ່ານີ້ເກັບກໍາລັກສະນະທີ່ສໍາຄັນ, ເຊັ່ນ: ວັດຖຸ, ການພົວພັນທາງກວ້າງຂອງພື້ນ, ແລະໂຄງສ້າງ, ທີ່ສໍາຄັນສໍາລັບຄໍາຮ້ອງສະຫມັກເຊັ່ນ: ການບັນຍາຍຮູບພາບຫຼືການຕອບຄໍາຖາມທີ່ເປັນຕາ. ການເຂົ້າລະຫັດຄຸນສົມບັດ : ຫຼັງຈາກເຂົ້າລະຫັດແລ້ວ, vectors ຄຸນສົມບັດມັກຈະບໍ່ກົງກັບ token space ຂອງ LLM. ເພື່ອຮັບປະກັນການເຊື່ອມໂຍງທີ່ລຽບງ່າຍ, AnyModal ໃຊ້ຊັ້ນການຄາດຄະເນທີ່ປ່ຽນ vectors ເຫຼົ່ານີ້ໃຫ້ສອດຄ່ອງກັບ tokens ຂອງ LLM. ຕົວຢ່າງເຊັ່ນ, vectors ທີ່ຖືກເຂົ້າລະຫັດຈາກ ViT ແມ່ນແຜນທີ່ເຂົ້າໄປໃນພື້ນທີ່ຝັງຕົວຂອງ LLM, ອະນຸຍາດໃຫ້ມີການໄຫຼເຂົ້າກັນຂອງຂໍ້ມູນ multimodal ພາຍໃນສະຖາປັດຕະຍະກໍາຂອງ LLM. Projection Layer ວິທີການສອງຊັ້ນນີ້ເຮັດໃຫ້ຕົວແບບສາມາດປະຕິບັດຂໍ້ມູນ multimodal ເປັນລໍາດັບດຽວ, ເຮັດໃຫ້ມັນສາມາດສ້າງຄໍາຕອບທີ່ບັນຊີສໍາລັບທຸກປະເພດການປ້ອນຂໍ້ມູນ. ໂດຍພື້ນຖານແລ້ວ, AnyModal ຫັນປ່ຽນແຫຼ່ງຂໍ້ມູນທີ່ແຕກຕ່າງອອກໄປເປັນຮູບແບບທີ່ເປັນເອກະພາບທີ່ LLMs ສາມາດເຂົ້າໃຈໄດ້. ມັນເຮັດວຽກແນວໃດ: ຕົວຢ່າງທີ່ມີການປ້ອນຮູບພາບ ເພື່ອໃຫ້ເຈົ້າຮູ້ວ່າ AnyModal ເຮັດວຽກແນວໃດ, ໃຫ້ເບິ່ງຕົວຢ່າງຂອງການນໍາໃຊ້ຂໍ້ມູນຮູບພາບກັບ LLMs. from transformers import ViTImageProcessor, ViTForImageClassification from anymodal import MultiModalModel from vision import VisionEncoder, Projector # Step 1: Initialize Vision Components processor = ViTImageProcessor.from_pretrained('google/vit-base-patch16-224') vision_model = ViTForImageClassification.from_pretrained('google/vit-base-patch16-224') vision_encoder = VisionEncoder(vision_model) # Step 2: Define Projection Layer for Compatibility vision_tokenizer = Projector(in_features=vision_model.config.hidden_size, out_features=768) # Step 3: Initialize LLM and Tokenizer from transformers import AutoTokenizer, AutoModelForCausalLM llm_tokenizer = AutoTokenizer.from_pretrained("gpt2") llm_model = AutoModelForCausalLM.from_pretrained("gpt2") # Step 4: Build the AnyModal Multimodal Model multimodal_model = MultiModalModel( input_processor=None, input_encoder=vision_encoder, input_tokenizer=vision_tokenizer, language_tokenizer=llm_tokenizer, language_model=llm_model, input_start_token='<|imstart|>', input_end_token='<|imend|>', prompt_text="Describe this image: " ) ການຕັ້ງຄ່າໂມດູນນີ້ເຮັດໃຫ້ຜູ້ພັດທະນາສາມາດສຽບ ແລະຫຼິ້ນກັບຕົວເຂົ້າລະຫັດ ແລະ LLMs ທີ່ແຕກຕ່າງກັນ, ປັບຕົວແບບໃຫ້ເຂົ້າກັບວຽກງານ multimodal ຕ່າງໆ, ຈາກຄໍາບັນຍາຍຮູບພາບຈົນເຖິງການຕອບຄໍາຖາມ. ຄໍາຮ້ອງສະຫມັກໃນປະຈຸບັນຂອງ AnyModal AnyModal ໄດ້ຖືກນໍາໃຊ້ແລ້ວກັບກໍລະນີການນໍາໃຊ້ຫຼາຍ, ດ້ວຍຜົນໄດ້ຮັບທີ່ຫນ້າຕື່ນເຕັ້ນ: : ການແປສົມຜົນທາງຄະນິດສາດທີ່ຊັບຊ້ອນເປັນຂໍ້ຄວາມທີ່ສາມາດອ່ານໄດ້. LaTeX OCR : ສ້າງຄໍາອະທິບາຍທາງການແພດສໍາລັບການສະຫນັບສະຫນູນການວິນິດໄສໃນການດູແລສຸຂະພາບ. Chest X-Ray Captioning : ການສ້າງຄໍາບັນຍາຍອັດຕະໂນມັດສໍາລັບເນື້ອຫາພາບ, ເຊິ່ງເປັນປະໂຫຍດສໍາລັບການເຂົ້າເຖິງແລະຄໍາຮ້ອງສະຫມັກສື່. ການບັນຍາຍຮູບພາບ ໂດຍການສ້າງຕົວຕົນຂອງຄວາມສັບສົນຂອງການຈັດການປະເພດຂໍ້ມູນທີ່ແຕກຕ່າງກັນ, AnyModal ຊ່ວຍໃຫ້ນັກພັດທະນາສ້າງຕົວແບບຢ່າງໄວຫຼືປັບປຸງລະບົບຂັ້ນສູງໂດຍບໍ່ມີຂໍ້ບົກພ່ອງທີ່ປົກກະຕິແລ້ວມາພ້ອມກັບການປະສົມປະສານ multimodal. ເປັນຫຍັງຕ້ອງໃຊ້ AnyModal? ຖ້າທ່ານກໍາລັງພະຍາຍາມສ້າງລະບົບ multimodal, ທ່ານອາດຈະພົບກັບສິ່ງທ້າທາຍເຫຼົ່ານີ້: ຄວາມສັບສົນສູງໃນການຈັດປະເພດຂໍ້ມູນທີ່ແຕກຕ່າງກັນກັບ LLMs. ລະຫັດ boilerplate redundant ແລະ tedious ສໍາລັບແຕ່ລະ modality. ຄວາມສາມາດຂະຫຍາຍໄດ້ຈຳກັດເມື່ອເພີ່ມປະເພດຂໍ້ມູນໃໝ່. AnyModal ແກ້ໄຂຈຸດເຈັບປວດເຫຼົ່ານີ້ໂດຍການຫຼຸດຜ່ອນ boilerplate, ສະເຫນີໂມດູນທີ່ມີຄວາມຍືດຫຍຸ່ນ, ແລະອະນຸຍາດໃຫ້ປັບແຕ່ງໄດ້ໄວ. ແທນທີ່ຈະຕໍ່ສູ້ກັບບັນຫາຄວາມເຂົ້າກັນໄດ້, ນັກພັດທະນາສາມາດສຸມໃສ່ການສ້າງລະບົບອັດສະລິຍະໄດ້ໄວຂຶ້ນແລະມີປະສິດທິພາບຫຼາຍຂຶ້ນ. ຕໍ່ໄປແມ່ນຫຍັງສໍາລັບ AnyModal? ການເດີນທາງຂອງ AnyModal ແມ່ນພຽງແຕ່ເລີ່ມຕົ້ນ. ປະຈຸບັນຂ້ອຍກໍາລັງເຮັດວຽກກ່ຽວກັບການເພີ່ມການສະຫນັບສະຫນູນສໍາລັບຮູບແບບເພີ່ມເຕີມເຊັ່ນການບັນຍາຍສຽງແລະການຂະຫຍາຍກອບເພື່ອເຮັດໃຫ້ມັນສາມາດປັບຕົວໄດ້ຫຼາຍຂຶ້ນສໍາລັບກໍລະນີການນໍາໃຊ້ niche. ຄໍາຕິຊົມຂອງຊຸມຊົນແລະການປະກອບສ່ວນແມ່ນສໍາຄັນຕໍ່ການພັດທະນາຂອງມັນ—ຖ້າທ່ານສົນໃຈໃນ multimodal AI, ຂ້າພະເຈົ້າຢາກໄດ້ຍິນຄວາມຄິດຂອງທ່ານຫຼືຮ່ວມມື. ບ່ອນທີ່ຊອກຫາ AnyModal : GitHub https://github.com/ritabratamaiti/AnyModal?embedable=true ຊຸມຊົນ Reddit https://www.reddit.com/r/AnyModal/?embedable=true : ກອດໜ້າ https://huggingface.co/AnyModal?embedable=true ຖ້າທ່ານຕື່ນເຕັ້ນກັບ multimodal AI ຫຼືຊອກຫາການປັບປຸງຂະບວນການພັດທະນາຂອງທ່ານ, ໃຫ້ AnyModal ລອງ. ມາຮ່ວມງານກັນເພື່ອປົດລ໋ອກຊາຍແດນຕໍ່ໄປຂອງນະວັດຕະກໍາ AI.